vulkan-api 0.1.0.1 → 1.1.0.0
raw patch · 692 files changed
+75554/−99369 lines, 692 files
This diff is very large; some files are shown as “too large to diff”. Download the raw patch for the complete diff.
Files
- include/vulkan/vk_platform.h +0/−28
- include/vulkan/vulkan.h +76/−7044
- include/vulkan/vulkan_android.h +126/−0
- include/vulkan/vulkan_core.h +7341/−0
- include/vulkan/vulkan_ios.h +58/−0
- include/vulkan/vulkan_macos.h +58/−0
- include/vulkan/vulkan_mir.h +65/−0
- include/vulkan/vulkan_vi.h +58/−0
- include/vulkan/vulkan_wayland.h +65/−0
- include/vulkan/vulkan_win32.h +276/−0
- include/vulkan/vulkan_xcb.h +66/−0
- include/vulkan/vulkan_xlib.h +66/−0
- include/vulkan/vulkan_xlib_xrandr.h +54/−0
- src-gen/Graphics/Vulkan/Constants.hs +30/−21
- src-gen/Graphics/Vulkan/Core.hsc +0/−3186
- src-gen/Graphics/Vulkan/Core_1_0.hsc +5937/−0
- src-gen/Graphics/Vulkan/Core_1_1.hs +2374/−0
- src-gen/Graphics/Vulkan/Ext.hs +20/−6
- src-gen/Graphics/Vulkan/Ext/VK_AMD_buffer_marker.hs +30/−3
- src-gen/Graphics/Vulkan/Ext/VK_AMD_draw_indirect_count.hs +68/−4
- src-gen/Graphics/Vulkan/Ext/VK_AMD_gcn_shader.hs +1/−1
- src-gen/Graphics/Vulkan/Ext/VK_AMD_gpu_shader_half_float.hs +2/−1
- src-gen/Graphics/Vulkan/Ext/VK_AMD_gpu_shader_int16.hs +1/−1
- src-gen/Graphics/Vulkan/Ext/VK_AMD_mixed_attachment_samples.hs +2/−1
- src-gen/Graphics/Vulkan/Ext/VK_AMD_negative_viewport_height.hs +2/−1
- src-gen/Graphics/Vulkan/Ext/VK_AMD_rasterization_order.hs +1/−1
- src-gen/Graphics/Vulkan/Ext/VK_AMD_shader_ballot.hs +1/−1
- src-gen/Graphics/Vulkan/Ext/VK_AMD_shader_explicit_vertex_parameter.hs +2/−2
- src-gen/Graphics/Vulkan/Ext/VK_AMD_shader_fragment_mask.hs +1/−1
- src-gen/Graphics/Vulkan/Ext/VK_AMD_shader_image_load_store_lod.hs +2/−1
- src-gen/Graphics/Vulkan/Ext/VK_AMD_shader_info.hs +31/−3
- src-gen/Graphics/Vulkan/Ext/VK_AMD_shader_trinary_minmax.hs +2/−1
- src-gen/Graphics/Vulkan/Ext/VK_AMD_texture_gather_bias_lod.hs +4/−3
- src-gen/Graphics/Vulkan/Ext/VK_ANDROID_external_memory_android_hardware_buffer.hs +281/−0
- src-gen/Graphics/Vulkan/Ext/VK_EXT_acquire_xlib_display.hs +44/−6
- src-gen/Graphics/Vulkan/Ext/VK_EXT_blend_operation_advanced.hs +8/−5
- src-gen/Graphics/Vulkan/Ext/VK_EXT_conservative_rasterization.hs +4/−3
- src-gen/Graphics/Vulkan/Ext/VK_EXT_debug_marker.hs +88/−9
- src-gen/Graphics/Vulkan/Ext/VK_EXT_debug_report.hs +88/−7
- src-gen/Graphics/Vulkan/Ext/VK_EXT_debug_utils.hs +483/−0
- src-gen/Graphics/Vulkan/Ext/VK_EXT_depth_range_unrestricted.hs +2/−1
- src-gen/Graphics/Vulkan/Ext/VK_EXT_direct_mode_display.hs +18/−3
- src-gen/Graphics/Vulkan/Ext/VK_EXT_discard_rectangles.hs +26/−5
- src-gen/Graphics/Vulkan/Ext/VK_EXT_display_control.hs +94/−8
- src-gen/Graphics/Vulkan/Ext/VK_EXT_display_surface_counter.hs +24/−2
- src-gen/Graphics/Vulkan/Ext/VK_EXT_external_memory_dma_buf.hs +7/−6
- src-gen/Graphics/Vulkan/Ext/VK_EXT_external_memory_host.hs +41/−14
- src-gen/Graphics/Vulkan/Ext/VK_EXT_global_priority.hs +3/−3
- src-gen/Graphics/Vulkan/Ext/VK_EXT_hdr_metadata.hs +21/−3
- src-gen/Graphics/Vulkan/Ext/VK_EXT_post_depth_coverage.hs +1/−1
- src-gen/Graphics/Vulkan/Ext/VK_EXT_queue_family_foreign.hs +3/−4
- src-gen/Graphics/Vulkan/Ext/VK_EXT_sample_locations.hs +39/−6
- src-gen/Graphics/Vulkan/Ext/VK_EXT_sampler_filter_minmax.hs +4/−3
- src-gen/Graphics/Vulkan/Ext/VK_EXT_shader_stencil_export.hs +2/−1
- src-gen/Graphics/Vulkan/Ext/VK_EXT_shader_subgroup_ballot.hs +2/−1
- src-gen/Graphics/Vulkan/Ext/VK_EXT_shader_subgroup_vote.hs +1/−1
- src-gen/Graphics/Vulkan/Ext/VK_EXT_shader_viewport_index_layer.hs +2/−1
- src-gen/Graphics/Vulkan/Ext/VK_EXT_swapchain_colorspace.hs +2/−1
- src-gen/Graphics/Vulkan/Ext/VK_EXT_validation_cache.hs +90/−7
- src-gen/Graphics/Vulkan/Ext/VK_EXT_validation_flags.hs +1/−1
- src-gen/Graphics/Vulkan/Ext/VK_EXT_vertex_attribute_divisor.hs +113/−0
- src-gen/Graphics/Vulkan/Ext/VK_GOOGLE_display_timing.hs +48/−4
- src-gen/Graphics/Vulkan/Ext/VK_IMG_filter_cubic.hs +1/−1
- src-gen/Graphics/Vulkan/Ext/VK_IMG_format_pvrtc.hs +1/−1
- src-gen/Graphics/Vulkan/Ext/VK_KHR_16bit_storage.hs +5/−21
- src-gen/Graphics/Vulkan/Ext/VK_KHR_android_surface.hs +30/−9
- src-gen/Graphics/Vulkan/Ext/VK_KHR_bind_memory2.hs +72/−31
- src-gen/Graphics/Vulkan/Ext/VK_KHR_dedicated_allocation.hs +6/−20
- src-gen/Graphics/Vulkan/Ext/VK_KHR_descriptor_update_template.hs +125/−70
- src-gen/Graphics/Vulkan/Ext/VK_KHR_device_group.hs +395/−0
- src-gen/Graphics/Vulkan/Ext/VK_KHR_device_group_creation.hs +134/−0
- src-gen/Graphics/Vulkan/Ext/VK_KHR_display.hs +167/−10
- src-gen/Graphics/Vulkan/Ext/VK_KHR_display_swapchain.hs +29/−3
- src-gen/Graphics/Vulkan/Ext/VK_KHR_external_fence.hs +15/−20
- src-gen/Graphics/Vulkan/Ext/VK_KHR_external_fence_capabilities.hs +82/−41
- src-gen/Graphics/Vulkan/Ext/VK_KHR_external_fence_fd.hs +44/−11
- src-gen/Graphics/Vulkan/Ext/VK_KHR_external_fence_win32.hs +47/−13
- src-gen/Graphics/Vulkan/Ext/VK_KHR_external_memory.hs +13/−56
- src-gen/Graphics/Vulkan/Ext/VK_KHR_external_memory_capabilities.hs +107/−72
- src-gen/Graphics/Vulkan/Ext/VK_KHR_external_memory_fd.hs +52/−12
- src-gen/Graphics/Vulkan/Ext/VK_KHR_external_memory_win32.hs +56/−14
- src-gen/Graphics/Vulkan/Ext/VK_KHR_external_semaphore.hs +13/−19
- src-gen/Graphics/Vulkan/Ext/VK_KHR_external_semaphore_capabilities.hs +85/−40
- src-gen/Graphics/Vulkan/Ext/VK_KHR_external_semaphore_fd.hs +46/−11
- src-gen/Graphics/Vulkan/Ext/VK_KHR_external_semaphore_win32.hs +49/−14
- src-gen/Graphics/Vulkan/Ext/VK_KHR_get_memory_requirements2.hs +124/−58
- src-gen/Graphics/Vulkan/Ext/VK_KHR_get_physical_device_properties2.hs +260/−118
- src-gen/Graphics/Vulkan/Ext/VK_KHR_get_surface_capabilities2.hs +49/−3
- src-gen/Graphics/Vulkan/Ext/VK_KHR_image_format_list.hs +1/−1
- src-gen/Graphics/Vulkan/Ext/VK_KHR_incremental_present.hs +1/−1
- src-gen/Graphics/Vulkan/Ext/VK_KHR_maintenance1.hs +40/−41
- src-gen/Graphics/Vulkan/Ext/VK_KHR_maintenance2.hs +40/−104
- src-gen/Graphics/Vulkan/Ext/VK_KHR_maintenance3.hs +133/−0
- src-gen/Graphics/Vulkan/Ext/VK_KHR_mir_surface.hs +44/−8
- src-gen/Graphics/Vulkan/Ext/VK_KHR_multiview.hs +86/−0
- src-gen/Graphics/Vulkan/Ext/VK_KHR_push_descriptor.hs +96/−8
- src-gen/Graphics/Vulkan/Ext/VK_KHR_relaxed_block_layout.hs +1/−1
- src-gen/Graphics/Vulkan/Ext/VK_KHR_sampler_mirror_clamp_to_edge.hs +2/−1
- src-gen/Graphics/Vulkan/Ext/VK_KHR_sampler_ycbcr_conversion.hs +243/−285
- src-gen/Graphics/Vulkan/Ext/VK_KHR_shader_draw_parameters.hs +2/−1
- src-gen/Graphics/Vulkan/Ext/VK_KHR_shared_presentable_image.hs +20/−3
- src-gen/Graphics/Vulkan/Ext/VK_KHR_storage_buffer_storage_class.hs +2/−1
- src-gen/Graphics/Vulkan/Ext/VK_KHR_surface.hs +110/−7
- src-gen/Graphics/Vulkan/Ext/VK_KHR_swapchain.hs +375/−14
- src-gen/Graphics/Vulkan/Ext/VK_KHR_variable_pointers.hs +5/−21
- src-gen/Graphics/Vulkan/Ext/VK_KHR_wayland_surface.hs +44/−8
- src-gen/Graphics/Vulkan/Ext/VK_KHR_win32_keyed_mutex.hs +3/−3
- src-gen/Graphics/Vulkan/Ext/VK_KHR_win32_surface.hs +42/−8
- src-gen/Graphics/Vulkan/Ext/VK_KHR_xcb_surface.hs +47/−8
- src-gen/Graphics/Vulkan/Ext/VK_KHR_xlib_surface.hs +47/−8
- src-gen/Graphics/Vulkan/Ext/VK_KHX_device_group.hs +0/−481
- src-gen/Graphics/Vulkan/Ext/VK_KHX_device_group_creation.hs +0/−127
- src-gen/Graphics/Vulkan/Ext/VK_KHX_multiview.hs +0/−149
- src-gen/Graphics/Vulkan/Ext/VK_MVK_ios_surface.hs +28/−5
- src-gen/Graphics/Vulkan/Ext/VK_MVK_macos_surface.hs +28/−5
- src-gen/Graphics/Vulkan/Ext/VK_NN_vi_surface.hs +28/−5
- src-gen/Graphics/Vulkan/Ext/VK_NVX_device_generated_commands.hs +194/−14
- src-gen/Graphics/Vulkan/Ext/VK_NVX_multiview_per_view_attributes.hs +6/−5
- src-gen/Graphics/Vulkan/Ext/VK_NV_clip_space_w_scaling.hs +25/−3
- src-gen/Graphics/Vulkan/Ext/VK_NV_dedicated_allocation.hs +1/−1
- src-gen/Graphics/Vulkan/Ext/VK_NV_external_memory.hs +1/−1
- src-gen/Graphics/Vulkan/Ext/VK_NV_external_memory_capabilities.hs +40/−2
- src-gen/Graphics/Vulkan/Ext/VK_NV_external_memory_win32.hs +28/−7
- src-gen/Graphics/Vulkan/Ext/VK_NV_fill_rectangle.hs +1/−1
- src-gen/Graphics/Vulkan/Ext/VK_NV_fragment_coverage_to_color.hs +2/−1
- src-gen/Graphics/Vulkan/Ext/VK_NV_framebuffer_mixed_samples.hs +2/−1
- src-gen/Graphics/Vulkan/Ext/VK_NV_geometry_shader_passthrough.hs +2/−1
- src-gen/Graphics/Vulkan/Ext/VK_NV_glsl_shader.hs +1/−1
- src-gen/Graphics/Vulkan/Ext/VK_NV_sample_mask_override_coverage.hs +2/−1
- src-gen/Graphics/Vulkan/Ext/VK_NV_viewport_array2.hs +1/−1
- src-gen/Graphics/Vulkan/Ext/VK_NV_viewport_swizzle.hs +1/−1
- src-gen/Graphics/Vulkan/Ext/VK_NV_win32_keyed_mutex.hs +3/−3
- src-gen/Graphics/Vulkan/Types/Bitmasks.hs +195/−21
- src-gen/Graphics/Vulkan/Types/Defines.hs +44/−27
- src-gen/Graphics/Vulkan/Types/Enum/VkAttachmentLoadOp.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkAttachmentStoreOp.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkBlendFactor.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkBlendOp.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkBlendOverlapEXT.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkBorderColor.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkChromaLocation.hs +54/−0
- src-gen/Graphics/Vulkan/Types/Enum/VkChromaLocationKHR.hs +11/−42
- src-gen/Graphics/Vulkan/Types/Enum/VkColorSpaceKHR.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkCommandBufferLevel.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkCompareOp.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkComponentSwizzle.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkConservativeRasterizationModeEXT.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkCoverageModulationModeNV.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkDebugReportObjectTypeEXT.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkDebugUtilsMessageSeverityFlagsEXT.hs +135/−0
- src-gen/Graphics/Vulkan/Types/Enum/VkDebugUtilsMessageTypeFlagsEXT.hs +118/−0
- src-gen/Graphics/Vulkan/Types/Enum/VkDescriptorType.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkDescriptorUpdateTemplateType.hs +51/−0
- src-gen/Graphics/Vulkan/Types/Enum/VkDescriptorUpdateTemplateTypeKHR.hs +11/−51
- src-gen/Graphics/Vulkan/Types/Enum/VkDeviceEventTypeEXT.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkDeviceGroupPresentModeFlagsKHR.hs +142/−0
- src-gen/Graphics/Vulkan/Types/Enum/VkDeviceGroupPresentModeFlagsKHX.hs +0/−142
- src-gen/Graphics/Vulkan/Types/Enum/VkDeviceQueueCreateFlagBits.hs +0/−25
- src-gen/Graphics/Vulkan/Types/Enum/VkDeviceQueueCreateFlags.hs +73/−0
- src-gen/Graphics/Vulkan/Types/Enum/VkDiscardRectangleModeEXT.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkDisplayEventTypeEXT.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkDisplayPowerStateEXT.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkDynamicState.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkExternalFenceFeatureFlagBitsKHR.hs +25/−0
- src-gen/Graphics/Vulkan/Types/Enum/VkExternalFenceFeatureFlags.hs +101/−0
- src-gen/Graphics/Vulkan/Types/Enum/VkExternalFenceFeatureFlagsKHR.hs +0/−105
- src-gen/Graphics/Vulkan/Types/Enum/VkExternalFenceHandleTypeFlagBitsKHR.hs +26/−0
- src-gen/Graphics/Vulkan/Types/Enum/VkExternalFenceHandleTypeFlags.hs +129/−0
- src-gen/Graphics/Vulkan/Types/Enum/VkExternalFenceHandleTypeFlagsKHR.hs +0/−136
- src-gen/Graphics/Vulkan/Types/Enum/VkExternalMemoryFeatureFlagBitsKHR.hs +26/−0
- src-gen/Graphics/Vulkan/Types/Enum/VkExternalMemoryFeatureFlags.hs +115/−0
- src-gen/Graphics/Vulkan/Types/Enum/VkExternalMemoryFeatureFlagsKHR.hs +0/−118
- src-gen/Graphics/Vulkan/Types/Enum/VkExternalMemoryHandleTypeFlagBitsKHR.hs +26/−0
- src-gen/Graphics/Vulkan/Types/Enum/VkExternalMemoryHandleTypeFlags.hs +166/−0
- src-gen/Graphics/Vulkan/Types/Enum/VkExternalMemoryHandleTypeFlagsKHR.hs +0/−175
- src-gen/Graphics/Vulkan/Types/Enum/VkExternalSemaphoreFeatureFlagBitsKHR.hs +26/−0
- src-gen/Graphics/Vulkan/Types/Enum/VkExternalSemaphoreFeatureFlags.hs +106/−0
- src-gen/Graphics/Vulkan/Types/Enum/VkExternalSemaphoreFeatureFlagsKHR.hs +0/−111
- src-gen/Graphics/Vulkan/Types/Enum/VkExternalSemaphoreHandleTypeFlagBitsKHR.hs +26/−0
- src-gen/Graphics/Vulkan/Types/Enum/VkExternalSemaphoreHandleTypeFlags.hs +148/−0
- src-gen/Graphics/Vulkan/Types/Enum/VkExternalSemaphoreHandleTypeFlagsKHR.hs +0/−151
- src-gen/Graphics/Vulkan/Types/Enum/VkFenceImportFlagBitsKHR.hs +25/−0
- src-gen/Graphics/Vulkan/Types/Enum/VkFenceImportFlags.hs +81/−0
- src-gen/Graphics/Vulkan/Types/Enum/VkFenceImportFlagsKHR.hs +0/−84
- src-gen/Graphics/Vulkan/Types/Enum/VkFilter.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkFormat.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkFrontFace.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkImageLayout.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkImageTiling.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkImageType.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkImageViewType.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkIndexType.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkIndirectCommandsTokenTypeNVX.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkInternalAllocationType.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkLogicOp.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkMemoryAllocateFlagBitsKHR.hs +25/−0
- src-gen/Graphics/Vulkan/Types/Enum/VkMemoryAllocateFlags.hs +86/−0
- src-gen/Graphics/Vulkan/Types/Enum/VkMemoryAllocateFlagsKHX.hs +0/−88
- src-gen/Graphics/Vulkan/Types/Enum/VkObjectEntryTypeNVX.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkObjectType.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkPeerMemoryFeatureFlagBitsKHR.hs +25/−0
- src-gen/Graphics/Vulkan/Types/Enum/VkPeerMemoryFeatureFlags.hs +130/−0
- src-gen/Graphics/Vulkan/Types/Enum/VkPeerMemoryFeatureFlagsKHX.hs +0/−133
- src-gen/Graphics/Vulkan/Types/Enum/VkPhysicalDeviceType.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkPipelineBindPoint.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkPipelineCacheHeaderVersion.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkPointClippingBehavior.hs +60/−0
- src-gen/Graphics/Vulkan/Types/Enum/VkPointClippingBehaviorKHR.hs +11/−47
- src-gen/Graphics/Vulkan/Types/Enum/VkPolygonMode.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkPresentModeKHR.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkPrimitiveTopology.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkQueryType.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkQueueGlobalPriorityEXT.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkRasterizationOrderAMD.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkResult.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkSamplerAddressMode.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkSamplerMipmapMode.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkSamplerReductionModeEXT.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkSamplerYcbcrModelConversion.hs +98/−0
- src-gen/Graphics/Vulkan/Types/Enum/VkSamplerYcbcrModelConversionKHR.hs +11/−84
- src-gen/Graphics/Vulkan/Types/Enum/VkSamplerYcbcrRange.hs +58/−0
- src-gen/Graphics/Vulkan/Types/Enum/VkSamplerYcbcrRangeKHR.hs +11/−48
- src-gen/Graphics/Vulkan/Types/Enum/VkSemaphoreImportFlagBitsKHR.hs +25/−0
- src-gen/Graphics/Vulkan/Types/Enum/VkSemaphoreImportFlags.hs +84/−0
- src-gen/Graphics/Vulkan/Types/Enum/VkSemaphoreImportFlagsKHR.hs +0/−87
- src-gen/Graphics/Vulkan/Types/Enum/VkShaderInfoTypeAMD.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkSharingMode.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkStencilOp.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkStructureType.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkSubgroupFeatureFlags.hs +174/−0
- src-gen/Graphics/Vulkan/Types/Enum/VkSubpassContents.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkSystemAllocationScope.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkTessellationDomainOrigin.hs +61/−0
- src-gen/Graphics/Vulkan/Types/Enum/VkTessellationDomainOriginKHR.hs +11/−47
- src-gen/Graphics/Vulkan/Types/Enum/VkValidationCacheHeaderVersionEXT.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkValidationCheckEXT.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkVertexInputRate.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Enum/VkViewportCoordinateSwizzleNV.hs +1/−1
- src-gen/Graphics/Vulkan/Types/Funcpointers.hs +51/−9
- src-gen/Graphics/Vulkan/Types/Handles.hs +20/−1
- src-gen/Graphics/Vulkan/Types/Include.hs +3/−23
- src-gen/Graphics/Vulkan/Types/Struct/VkAcquireNextImageInfoKHR.hsc +331/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkAcquireNextImageInfoKHX.hsc +0/−435
- src-gen/Graphics/Vulkan/Types/Struct/VkAllocationCallbacks.hsc +94/−192
- src-gen/Graphics/Vulkan/Types/Struct/VkAndroidHardwareBufferFormatPropertiesANDROID.hsc +619/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkAndroidHardwareBufferPropertiesANDROID.hsc +259/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkAndroidHardwareBufferUsageANDROID.hsc +209/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkAndroidSurfaceCreateInfoKHR.hsc +62/−123
- src-gen/Graphics/Vulkan/Types/Struct/VkApplicationInfo.hsc +101/−203
- src-gen/Graphics/Vulkan/Types/Struct/VkAttachmentDescription.hsc +131/−271
- src-gen/Graphics/Vulkan/Types/Struct/VkAttachmentReference.hsc +30/−59
- src-gen/Graphics/Vulkan/Types/Struct/VkAttachmentSampleLocationsEXT.hsc +30/−66
- src-gen/Graphics/Vulkan/Types/Struct/VkBindBufferMemoryDeviceGroupInfo.hsc +245/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkBindBufferMemoryDeviceGroupInfoKHR.hs +11/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkBindBufferMemoryDeviceGroupInfoKHX.hsc +0/−324
- src-gen/Graphics/Vulkan/Types/Struct/VkBindBufferMemoryInfo.hsc +251/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkBindBufferMemoryInfoKHR.hs +8/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkBindBufferMemoryInfoKHR.hsc +0/−335
- src-gen/Graphics/Vulkan/Types/Struct/VkBindImageMemoryDeviceGroupInfo.hsc +345/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkBindImageMemoryDeviceGroupInfoKHR.hs +11/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkBindImageMemoryDeviceGroupInfoKHX.hsc +0/−444
- src-gen/Graphics/Vulkan/Types/Struct/VkBindImageMemoryInfo.hsc +251/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkBindImageMemoryInfoKHR.hs +8/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkBindImageMemoryInfoKHR.hsc +0/−330
- src-gen/Graphics/Vulkan/Types/Struct/VkBindImageMemorySwapchainInfoKHR.hsc +235/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkBindImageMemorySwapchainInfoKHX.hsc +0/−308
- src-gen/Graphics/Vulkan/Types/Struct/VkBindImagePlaneMemoryInfo.hsc +188/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkBindImagePlaneMemoryInfoKHR.hs +9/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkBindImagePlaneMemoryInfoKHR.hsc +0/−239
- src-gen/Graphics/Vulkan/Types/Struct/VkBindSparseInfo.hsc +178/−353
- src-gen/Graphics/Vulkan/Types/Struct/VkBufferCopy.hsc +46/−87
- src-gen/Graphics/Vulkan/Types/Struct/VkBufferCreateInfo.hsc +118/−234
- src-gen/Graphics/Vulkan/Types/Struct/VkBufferImageCopy.hsc +86/−177
- src-gen/Graphics/Vulkan/Types/Struct/VkBufferMemoryBarrier.hsc +128/−264
- src-gen/Graphics/Vulkan/Types/Struct/VkBufferMemoryRequirementsInfo2.hsc +187/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkBufferMemoryRequirementsInfo2KHR.hs +11/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkBufferMemoryRequirementsInfo2KHR.hsc +0/−246
- src-gen/Graphics/Vulkan/Types/Struct/VkBufferViewCreateInfo.hsc +100/−205
- src-gen/Graphics/Vulkan/Types/Struct/VkClearAttachment.hsc +44/−89
- src-gen/Graphics/Vulkan/Types/Struct/VkClearColorValue.hsc +104/−130
- src-gen/Graphics/Vulkan/Types/Struct/VkClearDepthStencilValue.hsc +32/−63
- src-gen/Graphics/Vulkan/Types/Struct/VkClearRect.hsc +41/−85
- src-gen/Graphics/Vulkan/Types/Struct/VkClearValue.hsc +30/−57
- src-gen/Graphics/Vulkan/Types/Struct/VkCmdProcessCommandsInfoNVX.hsc +177/−380
- src-gen/Graphics/Vulkan/Types/Struct/VkCmdReserveSpaceForCommandsInfoNVX.hsc +72/−159
- src-gen/Graphics/Vulkan/Types/Struct/VkCommandBufferAllocateInfo.hsc +73/−153
- src-gen/Graphics/Vulkan/Types/Struct/VkCommandBufferBeginInfo.hsc +58/−122
- src-gen/Graphics/Vulkan/Types/Struct/VkCommandBufferInheritanceInfo.hsc +116/−252
- src-gen/Graphics/Vulkan/Types/Struct/VkCommandPoolCreateInfo.hsc +58/−121
- src-gen/Graphics/Vulkan/Types/Struct/VkComponentMapping.hsc +57/−109
- src-gen/Graphics/Vulkan/Types/Struct/VkComputePipelineCreateInfo.hsc +100/−215
- src-gen/Graphics/Vulkan/Types/Struct/VkCopyDescriptorSet.hsc +132/−260
- src-gen/Graphics/Vulkan/Types/Struct/VkD3D12FenceSubmitInfoKHR.hsc +86/−188
- src-gen/Graphics/Vulkan/Types/Struct/VkDebugMarkerMarkerInfoEXT.hsc +79/−131
- src-gen/Graphics/Vulkan/Types/Struct/VkDebugMarkerObjectNameInfoEXT.hsc +72/−153
- src-gen/Graphics/Vulkan/Types/Struct/VkDebugMarkerObjectTagInfoEXT.hsc +100/−210
- src-gen/Graphics/Vulkan/Types/Struct/VkDebugReportCallbackCreateInfoEXT.hsc +72/−163
- src-gen/Graphics/Vulkan/Types/Struct/VkDebugUtilsLabelEXT.hsc +272/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkDebugUtilsMessengerCallbackDataEXT.hsc +622/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkDebugUtilsMessengerCreateInfoEXT.hsc +371/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkDebugUtilsObjectNameInfoEXT.hsc +267/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkDebugUtilsObjectTagInfoEXT.hsc +336/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkDedicatedAllocationBufferCreateInfoNV.hsc +44/−102
- src-gen/Graphics/Vulkan/Types/Struct/VkDedicatedAllocationImageCreateInfoNV.hsc +44/−101
- src-gen/Graphics/Vulkan/Types/Struct/VkDedicatedAllocationMemoryAllocateInfoNV.hsc +58/−129
- src-gen/Graphics/Vulkan/Types/Struct/VkDescriptorBufferInfo.hsc +48/−92
- src-gen/Graphics/Vulkan/Types/Struct/VkDescriptorImageInfo.hsc +44/−89
- src-gen/Graphics/Vulkan/Types/Struct/VkDescriptorPoolCreateInfo.hsc +86/−181
- src-gen/Graphics/Vulkan/Types/Struct/VkDescriptorPoolSize.hsc +30/−59
- src-gen/Graphics/Vulkan/Types/Struct/VkDescriptorSetAllocateInfo.hsc +72/−156
- src-gen/Graphics/Vulkan/Types/Struct/VkDescriptorSetLayoutBinding.hsc +73/−161
- src-gen/Graphics/Vulkan/Types/Struct/VkDescriptorSetLayoutCreateInfo.hsc +72/−158
- src-gen/Graphics/Vulkan/Types/Struct/VkDescriptorSetLayoutSupport.hsc +187/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkDescriptorSetLayoutSupportKHR.hs +9/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkDescriptorUpdateTemplateCreateInfo.hsc +539/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkDescriptorUpdateTemplateCreateInfoKHR.hs +12/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkDescriptorUpdateTemplateCreateInfoKHR.hsc +0/−727
- src-gen/Graphics/Vulkan/Types/Struct/VkDescriptorUpdateTemplateEntry.hsc +316/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkDescriptorUpdateTemplateEntryKHR.hs +11/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkDescriptorUpdateTemplateEntryKHR.hsc +0/−435
- src-gen/Graphics/Vulkan/Types/Struct/VkDeviceCreateInfo.hsc +149/−301
- src-gen/Graphics/Vulkan/Types/Struct/VkDeviceEventInfoEXT.hsc +44/−87
- src-gen/Graphics/Vulkan/Types/Struct/VkDeviceGeneratedCommandsFeaturesNVX.hsc +45/−98
- src-gen/Graphics/Vulkan/Types/Struct/VkDeviceGeneratedCommandsLimitsNVX.hsc +105/−228
- src-gen/Graphics/Vulkan/Types/Struct/VkDeviceGroupBindSparseInfo.hsc +232/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkDeviceGroupBindSparseInfoKHR.hs +9/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkDeviceGroupBindSparseInfoKHX.hsc +0/−306
- src-gen/Graphics/Vulkan/Types/Struct/VkDeviceGroupCommandBufferBeginInfo.hsc +198/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkDeviceGroupCommandBufferBeginInfoKHR.hs +12/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkDeviceGroupCommandBufferBeginInfoKHX.hsc +0/−261
- src-gen/Graphics/Vulkan/Types/Struct/VkDeviceGroupDeviceCreateInfo.hsc +237/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkDeviceGroupDeviceCreateInfoKHR.hs +11/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkDeviceGroupDeviceCreateInfoKHX.hsc +0/−318
- src-gen/Graphics/Vulkan/Types/Struct/VkDeviceGroupPresentCapabilitiesKHR.hsc +330/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkDeviceGroupPresentCapabilitiesKHX.hsc +0/−338
- src-gen/Graphics/Vulkan/Types/Struct/VkDeviceGroupPresentInfoKHR.hsc +266/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkDeviceGroupPresentInfoKHX.hsc +0/−345
- src-gen/Graphics/Vulkan/Types/Struct/VkDeviceGroupRenderPassBeginInfo.hsc +292/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkDeviceGroupRenderPassBeginInfoKHR.hs +11/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkDeviceGroupRenderPassBeginInfoKHX.hsc +0/−386
- src-gen/Graphics/Vulkan/Types/Struct/VkDeviceGroupSubmitInfo.hsc +412/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkDeviceGroupSubmitInfoKHR.hs +8/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkDeviceGroupSubmitInfoKHX.hsc +0/−558
- src-gen/Graphics/Vulkan/Types/Struct/VkDeviceGroupSwapchainCreateInfoKHR.hsc +198/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkDeviceGroupSwapchainCreateInfoKHX.hsc +0/−250
- src-gen/Graphics/Vulkan/Types/Struct/VkDeviceQueueCreateInfo.hsc +91/−186
- src-gen/Graphics/Vulkan/Types/Struct/VkDeviceQueueGlobalPriorityCreateInfoEXT.hsc +44/−98
- src-gen/Graphics/Vulkan/Types/Struct/VkDeviceQueueInfo2.hsc +249/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkDispatchIndirectCommand.hsc +45/−87
- src-gen/Graphics/Vulkan/Types/Struct/VkDisplayEventInfoEXT.hsc +44/−88
- src-gen/Graphics/Vulkan/Types/Struct/VkDisplayModeCreateInfoKHR.hsc +58/−121
- src-gen/Graphics/Vulkan/Types/Struct/VkDisplayModeParametersKHR.hsc +30/−64
- src-gen/Graphics/Vulkan/Types/Struct/VkDisplayModePropertiesKHR.hsc +32/−57
- src-gen/Graphics/Vulkan/Types/Struct/VkDisplayPlaneCapabilitiesKHR.hsc +132/−249
- src-gen/Graphics/Vulkan/Types/Struct/VkDisplayPlanePropertiesKHR.hsc +35/−61
- src-gen/Graphics/Vulkan/Types/Struct/VkDisplayPowerInfoEXT.hsc +44/−88
- src-gen/Graphics/Vulkan/Types/Struct/VkDisplayPresentInfoKHR.hsc +72/−147
- src-gen/Graphics/Vulkan/Types/Struct/VkDisplayPropertiesKHR.hsc +102/−185
- src-gen/Graphics/Vulkan/Types/Struct/VkDisplaySurfaceCreateInfoKHR.hsc +145/−313
- src-gen/Graphics/Vulkan/Types/Struct/VkDrawIndexedIndirectCommand.hsc +74/−159
- src-gen/Graphics/Vulkan/Types/Struct/VkDrawIndirectCommand.hsc +60/−120
- src-gen/Graphics/Vulkan/Types/Struct/VkEventCreateInfo.hsc +44/−85
- src-gen/Graphics/Vulkan/Types/Struct/VkExportFenceCreateInfo.hsc +181/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkExportFenceCreateInfoKHR.hs +8/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkExportFenceCreateInfoKHR.hsc +0/−235
- src-gen/Graphics/Vulkan/Types/Struct/VkExportFenceWin32HandleInfoKHR.hsc +72/−154
- src-gen/Graphics/Vulkan/Types/Struct/VkExportMemoryAllocateInfo.hsc +187/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkExportMemoryAllocateInfoKHR.hs +9/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkExportMemoryAllocateInfoKHR.hsc +0/−239
- src-gen/Graphics/Vulkan/Types/Struct/VkExportMemoryAllocateInfoNV.hsc +44/−92
- src-gen/Graphics/Vulkan/Types/Struct/VkExportMemoryWin32HandleInfoKHR.hsc +72/−159
- src-gen/Graphics/Vulkan/Types/Struct/VkExportMemoryWin32HandleInfoNV.hsc +58/−126
- src-gen/Graphics/Vulkan/Types/Struct/VkExportSemaphoreCreateInfo.hsc +190/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkExportSemaphoreCreateInfoKHR.hs +9/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkExportSemaphoreCreateInfoKHR.hsc +0/−244
- src-gen/Graphics/Vulkan/Types/Struct/VkExportSemaphoreWin32HandleInfoKHR.hsc +72/−160
- src-gen/Graphics/Vulkan/Types/Struct/VkExtensionProperties.hsc +68/−68
- src-gen/Graphics/Vulkan/Types/Struct/VkExtent2D.hsc +28/−57
- src-gen/Graphics/Vulkan/Types/Struct/VkExtent3D.hsc +39/−84
- src-gen/Graphics/Vulkan/Types/Struct/VkExternalBufferProperties.hsc +195/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkExternalBufferPropertiesKHR.hs +9/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkExternalBufferPropertiesKHR.hsc +0/−231
- src-gen/Graphics/Vulkan/Types/Struct/VkExternalFenceProperties.hsc +284/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkExternalFencePropertiesKHR.hs +8/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkExternalFencePropertiesKHR.hsc +0/−350
- src-gen/Graphics/Vulkan/Types/Struct/VkExternalFormatANDROID.hsc +182/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkExternalImageFormatProperties.hsc +201/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkExternalImageFormatPropertiesKHR.hs +11/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkExternalImageFormatPropertiesKHR.hsc +0/−245
- src-gen/Graphics/Vulkan/Types/Struct/VkExternalImageFormatPropertiesNV.hsc +66/−110
- src-gen/Graphics/Vulkan/Types/Struct/VkExternalMemoryBufferCreateInfo.hsc +194/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkExternalMemoryBufferCreateInfoKHR.hs +11/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkExternalMemoryBufferCreateInfoKHR.hsc +0/−255
- src-gen/Graphics/Vulkan/Types/Struct/VkExternalMemoryImageCreateInfo.hsc +191/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkExternalMemoryImageCreateInfoKHR.hs +11/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkExternalMemoryImageCreateInfoKHR.hsc +0/−252
- src-gen/Graphics/Vulkan/Types/Struct/VkExternalMemoryImageCreateInfoNV.hsc +44/−99
- src-gen/Graphics/Vulkan/Types/Struct/VkExternalMemoryProperties.hsc +215/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkExternalMemoryPropertiesKHR.hs +9/−0
- src-gen/Graphics/Vulkan/Types/Struct/VkExternalMemoryPropertiesKHR.hsc +0/−258
- src-gen/Graphics/Vulkan/Types/Struct/VkExternalSemaphoreProperties.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkExternalSemaphorePropertiesKHR.hs too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkExternalSemaphorePropertiesKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkFenceCreateInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkFenceGetFdInfoKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkFenceGetWin32HandleInfoKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkFormatProperties.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkFormatProperties2.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkFormatProperties2KHR.hs too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkFormatProperties2KHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkFramebufferCreateInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkGraphicsPipelineCreateInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkHdrMetadataEXT.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkIOSSurfaceCreateInfoMVK.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkImageBlit.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkImageCopy.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkImageCreateInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkImageFormatListCreateInfoKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkImageFormatProperties.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkImageFormatProperties2.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkImageFormatProperties2KHR.hs too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkImageFormatProperties2KHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkImageMemoryBarrier.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkImageMemoryRequirementsInfo2.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkImageMemoryRequirementsInfo2KHR.hs too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkImageMemoryRequirementsInfo2KHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkImagePlaneMemoryRequirementsInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkImagePlaneMemoryRequirementsInfoKHR.hs too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkImagePlaneMemoryRequirementsInfoKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkImageResolve.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkImageSparseMemoryRequirementsInfo2.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkImageSparseMemoryRequirementsInfo2KHR.hs too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkImageSparseMemoryRequirementsInfo2KHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkImageSubresource.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkImageSubresourceLayers.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkImageSubresourceRange.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkImageSwapchainCreateInfoKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkImageSwapchainCreateInfoKHX.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkImageViewCreateInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkImageViewUsageCreateInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkImageViewUsageCreateInfoKHR.hs too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkImageViewUsageCreateInfoKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkImportAndroidHardwareBufferInfoANDROID.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkImportFenceFdInfoKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkImportFenceWin32HandleInfoKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkImportMemoryFdInfoKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkImportMemoryHostPointerInfoEXT.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkImportMemoryWin32HandleInfoKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkImportMemoryWin32HandleInfoNV.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkImportSemaphoreFdInfoKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkImportSemaphoreWin32HandleInfoKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkIndirectCommandsLayoutCreateInfoNVX.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkIndirectCommandsLayoutTokenNVX.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkIndirectCommandsTokenNVX.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkInputAttachmentAspectReference.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkInputAttachmentAspectReferenceKHR.hs too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkInputAttachmentAspectReferenceKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkInstanceCreateInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkLayerProperties.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkMacOSSurfaceCreateInfoMVK.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkMappedMemoryRange.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkMemoryAllocateFlagsInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkMemoryAllocateFlagsInfoKHR.hs too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkMemoryAllocateFlagsInfoKHX.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkMemoryAllocateInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkMemoryBarrier.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkMemoryDedicatedAllocateInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkMemoryDedicatedAllocateInfoKHR.hs too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkMemoryDedicatedAllocateInfoKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkMemoryDedicatedRequirements.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkMemoryDedicatedRequirementsKHR.hs too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkMemoryDedicatedRequirementsKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkMemoryFdPropertiesKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkMemoryGetAndroidHardwareBufferInfoANDROID.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkMemoryGetFdInfoKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkMemoryGetWin32HandleInfoKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkMemoryHeap.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkMemoryHostPointerPropertiesEXT.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkMemoryRequirements.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkMemoryRequirements2.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkMemoryRequirements2KHR.hs too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkMemoryRequirements2KHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkMemoryType.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkMemoryWin32HandlePropertiesKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkMirSurfaceCreateInfoKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkMultisamplePropertiesEXT.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkObjectTableCreateInfoNVX.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkObjectTableDescriptorSetEntryNVX.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkObjectTableEntryNVX.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkObjectTableIndexBufferEntryNVX.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkObjectTablePipelineEntryNVX.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkObjectTablePushConstantEntryNVX.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkObjectTableVertexBufferEntryNVX.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkOffset2D.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkOffset3D.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPastPresentationTimingGOOGLE.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDevice16BitStorageFeatures.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDevice16BitStorageFeaturesKHR.hs too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDevice16BitStorageFeaturesKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceConservativeRasterizationPropertiesEXT.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceDiscardRectanglePropertiesEXT.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceExternalBufferInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceExternalBufferInfoKHR.hs too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceExternalBufferInfoKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceExternalFenceInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceExternalFenceInfoKHR.hs too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceExternalFenceInfoKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceExternalImageFormatInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceExternalImageFormatInfoKHR.hs too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceExternalImageFormatInfoKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceExternalMemoryHostPropertiesEXT.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceExternalSemaphoreInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceExternalSemaphoreInfoKHR.hs too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceExternalSemaphoreInfoKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceFeatures.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceFeatures2.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceFeatures2KHR.hs too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceFeatures2KHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceGroupProperties.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceGroupPropertiesKHR.hs too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceGroupPropertiesKHX.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceIDProperties.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceIDPropertiesKHR.hs too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceIDPropertiesKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceImageFormatInfo2.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceImageFormatInfo2KHR.hs too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceImageFormatInfo2KHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceLimits.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceMaintenance3Properties.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceMaintenance3PropertiesKHR.hs too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceMemoryProperties.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceMemoryProperties2.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceMemoryProperties2KHR.hs too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceMemoryProperties2KHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceMultiviewFeatures.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceMultiviewFeaturesKHR.hs too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceMultiviewFeaturesKHX.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceMultiviewProperties.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceMultiviewPropertiesKHR.hs too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceMultiviewPropertiesKHX.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDevicePointClippingProperties.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDevicePointClippingPropertiesKHR.hs too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDevicePointClippingPropertiesKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceProperties.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceProperties2.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceProperties2KHR.hs too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceProperties2KHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceProtectedMemoryFeatures.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceProtectedMemoryProperties.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDevicePushDescriptorPropertiesKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceSampleLocationsPropertiesEXT.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceSamplerYcbcrConversionFeatures.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceSamplerYcbcrConversionFeaturesKHR.hs too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceSamplerYcbcrConversionFeaturesKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceShaderDrawParameterFeatures.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceSparseImageFormatInfo2.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceSparseImageFormatInfo2KHR.hs too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceSparseImageFormatInfo2KHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceSparseProperties.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceSubgroupProperties.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceSurfaceInfo2KHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceVariablePointerFeatures.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceVariablePointerFeaturesKHR.hs too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceVariablePointerFeaturesKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPipelineCacheCreateInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPipelineColorBlendAdvancedStateCreateInfoEXT.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPipelineColorBlendAttachmentState.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPipelineColorBlendStateCreateInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPipelineCoverageModulationStateCreateInfoNV.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPipelineCoverageToColorStateCreateInfoNV.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPipelineDepthStencilStateCreateInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPipelineDiscardRectangleStateCreateInfoEXT.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPipelineDynamicStateCreateInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPipelineInputAssemblyStateCreateInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPipelineLayoutCreateInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPipelineMultisampleStateCreateInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPipelineRasterizationConservativeStateCreateInfoEXT.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPipelineRasterizationStateCreateInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPipelineRasterizationStateRasterizationOrderAMD.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPipelineSampleLocationsStateCreateInfoEXT.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPipelineShaderStageCreateInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPipelineTessellationDomainOriginStateCreateInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPipelineTessellationDomainOriginStateCreateInfoKHR.hs too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPipelineTessellationDomainOriginStateCreateInfoKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPipelineTessellationStateCreateInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPipelineVertexInputDivisorStateCreateInfoEXT.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPipelineVertexInputStateCreateInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPipelineViewportStateCreateInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPipelineViewportSwizzleStateCreateInfoNV.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPipelineViewportWScalingStateCreateInfoNV.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPresentInfoKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPresentRegionKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPresentRegionsKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPresentTimeGOOGLE.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPresentTimesInfoGOOGLE.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkProtectedSubmitInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkPushConstantRange.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkQueryPoolCreateInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkQueueFamilyProperties.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkQueueFamilyProperties2.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkQueueFamilyProperties2KHR.hs too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkQueueFamilyProperties2KHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkRect2D.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkRectLayerKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkRefreshCycleDurationGOOGLE.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkRenderPassBeginInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkRenderPassCreateInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkRenderPassInputAttachmentAspectCreateInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkRenderPassInputAttachmentAspectCreateInfoKHR.hs too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkRenderPassInputAttachmentAspectCreateInfoKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkRenderPassMultiviewCreateInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkRenderPassMultiviewCreateInfoKHR.hs too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkRenderPassMultiviewCreateInfoKHX.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkRenderPassSampleLocationsBeginInfoEXT.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSampleLocationEXT.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSampleLocationsInfoEXT.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSamplerCreateInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSamplerReductionModeCreateInfoEXT.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSamplerYcbcrConversionCreateInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSamplerYcbcrConversionCreateInfoKHR.hs too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSamplerYcbcrConversionCreateInfoKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSamplerYcbcrConversionImageFormatProperties.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSamplerYcbcrConversionImageFormatPropertiesKHR.hs too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSamplerYcbcrConversionImageFormatPropertiesKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSamplerYcbcrConversionInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSamplerYcbcrConversionInfoKHR.hs too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSamplerYcbcrConversionInfoKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSemaphoreCreateInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSemaphoreGetFdInfoKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSemaphoreGetWin32HandleInfoKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkShaderModuleCreateInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkShaderModuleValidationCacheCreateInfoEXT.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkShaderResourceUsageAMD.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkShaderStatisticsInfoAMD.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSharedPresentSurfaceCapabilitiesKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSparseBufferMemoryBindInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSparseImageFormatProperties.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSparseImageFormatProperties2.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSparseImageFormatProperties2KHR.hs too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSparseImageFormatProperties2KHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSparseImageMemoryBind.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSparseImageMemoryBindInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSparseImageMemoryRequirements.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSparseImageMemoryRequirements2.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSparseImageMemoryRequirements2KHR.hs too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSparseImageMemoryRequirements2KHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSparseImageOpaqueMemoryBindInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSparseMemoryBind.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSpecializationInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSpecializationMapEntry.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkStencilOpState.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSubmitInfo.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSubpassDependency.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSubpassDescription.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSubpassSampleLocationsEXT.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSubresourceLayout.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSurfaceCapabilities2EXT.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSurfaceCapabilities2KHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSurfaceCapabilitiesKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSurfaceFormat2KHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSurfaceFormatKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSwapchainCounterCreateInfoEXT.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkSwapchainCreateInfoKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkTextureLODGatherFormatPropertiesAMD.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkValidationCacheCreateInfoEXT.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkValidationFlagsEXT.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkVertexInputAttributeDescription.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkVertexInputBindingDescription.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkVertexInputBindingDivisorDescriptionEXT.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkViSurfaceCreateInfoNN.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkViewport.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkViewportSwizzleNV.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkViewportWScalingNV.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkWaylandSurfaceCreateInfoKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkWin32KeyedMutexAcquireReleaseInfoKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkWin32KeyedMutexAcquireReleaseInfoNV.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkWin32SurfaceCreateInfoKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkWriteDescriptorSet.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkXYColorEXT.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkXcbSurfaceCreateInfoKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/Struct/VkXlibSurfaceCreateInfoKHR.hsc too large to diff
- src-gen/Graphics/Vulkan/Types/StructMembers.hs too large to diff
- src/Graphics/Vulkan.hs too large to diff
- src/Graphics/Vulkan/Marshal.hs too large to diff
- src/Graphics/Vulkan/Marshal/Create.hs too large to diff
- src/Graphics/Vulkan/Marshal/Internal.hs too large to diff
- vulkan-api.cabal too large to diff
@@ -89,32 +89,4 @@ } // extern "C" #endif // __cplusplus -// Platform-specific headers required by platform window system extensions.-// These are enabled prior to #including "vulkan.h". The same enable then-// controls inclusion of the extension interfaces in vulkan.h.--#ifdef VK_USE_PLATFORM_ANDROID_KHR-#include <android/native_window.h>-#endif--#ifdef VK_USE_PLATFORM_MIR_KHR-#include <mir_toolkit/client_types.h>-#endif--#ifdef VK_USE_PLATFORM_WAYLAND_KHR-#include <wayland-client.h>-#endif--#ifdef VK_USE_PLATFORM_WIN32_KHR-#include <windows.h>-#endif--#ifdef VK_USE_PLATFORM_XLIB_KHR-#include <X11/Xlib.h>-#endif--#ifdef VK_USE_PLATFORM_XCB_KHR-#include <xcb/xcb.h>-#endif- #endif
@@ -1,7047 +1,79 @@ #ifndef VULKAN_H_ #define VULKAN_H_ 1 -#ifdef __cplusplus-extern "C" {-#endif--/*-** Copyright (c) 2015-2018 The Khronos Group Inc.-**-** Licensed under the Apache License, Version 2.0 (the "License");-** you may not use this file except in compliance with the License.-** You may obtain a copy of the License at-**-** http://www.apache.org/licenses/LICENSE-2.0-**-** Unless required by applicable law or agreed to in writing, software-** distributed under the License is distributed on an "AS IS" BASIS,-** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.-** See the License for the specific language governing permissions and-** limitations under the License.-*/--/*-** This header is generated from the Khronos Vulkan XML API Registry.-**-*/---#define VK_VERSION_1_0 1-#include "vulkan/vk_platform.h"--#define VK_MAKE_VERSION(major, minor, patch) \- (((major) << 22) | ((minor) << 12) | (patch))--// DEPRECATED: This define has been removed. Specific version defines (e.g. VK_API_VERSION_1_0), or the VK_MAKE_VERSION macro, should be used instead.-//#define VK_API_VERSION VK_MAKE_VERSION(1, 0, 0) // Patch version should always be set to 0--// Vulkan 1.0 version number-#define VK_API_VERSION_1_0 VK_MAKE_VERSION(1, 0, 0)// Patch version should always be set to 0--#define VK_VERSION_MAJOR(version) ((uint32_t)(version) >> 22)-#define VK_VERSION_MINOR(version) (((uint32_t)(version) >> 12) & 0x3ff)-#define VK_VERSION_PATCH(version) ((uint32_t)(version) & 0xfff)-// Version of this file-#define VK_HEADER_VERSION 69---#define VK_NULL_HANDLE 0- ---#define VK_DEFINE_HANDLE(object) typedef struct object##_T* object;---#if !defined(VK_DEFINE_NON_DISPATCHABLE_HANDLE)-#if defined(__LP64__) || defined(_WIN64) || (defined(__x86_64__) && !defined(__ILP32__) ) || defined(_M_X64) || defined(__ia64) || defined (_M_IA64) || defined(__aarch64__) || defined(__powerpc64__)- #define VK_DEFINE_NON_DISPATCHABLE_HANDLE(object) typedef struct object##_T *object;-#else- #define VK_DEFINE_NON_DISPATCHABLE_HANDLE(object) typedef uint64_t object;-#endif-#endif- ---typedef uint32_t VkFlags;-typedef uint32_t VkBool32;-typedef uint64_t VkDeviceSize;-typedef uint32_t VkSampleMask;--VK_DEFINE_HANDLE(VkInstance)-VK_DEFINE_HANDLE(VkPhysicalDevice)-VK_DEFINE_HANDLE(VkDevice)-VK_DEFINE_HANDLE(VkQueue)-VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSemaphore)-VK_DEFINE_HANDLE(VkCommandBuffer)-VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkFence)-VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDeviceMemory)-VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkBuffer)-VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkImage)-VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkEvent)-VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkQueryPool)-VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkBufferView)-VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkImageView)-VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkShaderModule)-VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkPipelineCache)-VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkPipelineLayout)-VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkRenderPass)-VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkPipeline)-VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDescriptorSetLayout)-VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSampler)-VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDescriptorPool)-VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDescriptorSet)-VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkFramebuffer)-VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkCommandPool)--#define VK_LOD_CLAMP_NONE 1000.0f-#define VK_REMAINING_MIP_LEVELS (~0U)-#define VK_REMAINING_ARRAY_LAYERS (~0U)-#define VK_WHOLE_SIZE (~0ULL)-#define VK_ATTACHMENT_UNUSED (~0U)-#define VK_TRUE 1-#define VK_FALSE 0-#define VK_QUEUE_FAMILY_IGNORED (~0U)-#define VK_SUBPASS_EXTERNAL (~0U)-#define VK_MAX_PHYSICAL_DEVICE_NAME_SIZE 256-#define VK_UUID_SIZE 16-#define VK_MAX_MEMORY_TYPES 32-#define VK_MAX_MEMORY_HEAPS 16-#define VK_MAX_EXTENSION_NAME_SIZE 256-#define VK_MAX_DESCRIPTION_SIZE 256---typedef enum VkPipelineCacheHeaderVersion {- VK_PIPELINE_CACHE_HEADER_VERSION_ONE = 1,- VK_PIPELINE_CACHE_HEADER_VERSION_BEGIN_RANGE = VK_PIPELINE_CACHE_HEADER_VERSION_ONE,- VK_PIPELINE_CACHE_HEADER_VERSION_END_RANGE = VK_PIPELINE_CACHE_HEADER_VERSION_ONE,- VK_PIPELINE_CACHE_HEADER_VERSION_RANGE_SIZE = (VK_PIPELINE_CACHE_HEADER_VERSION_ONE - VK_PIPELINE_CACHE_HEADER_VERSION_ONE + 1),- VK_PIPELINE_CACHE_HEADER_VERSION_MAX_ENUM = 0x7FFFFFFF-} VkPipelineCacheHeaderVersion;--typedef enum VkResult {- VK_SUCCESS = 0,- VK_NOT_READY = 1,- VK_TIMEOUT = 2,- VK_EVENT_SET = 3,- VK_EVENT_RESET = 4,- VK_INCOMPLETE = 5,- VK_ERROR_OUT_OF_HOST_MEMORY = -1,- VK_ERROR_OUT_OF_DEVICE_MEMORY = -2,- VK_ERROR_INITIALIZATION_FAILED = -3,- VK_ERROR_DEVICE_LOST = -4,- VK_ERROR_MEMORY_MAP_FAILED = -5,- VK_ERROR_LAYER_NOT_PRESENT = -6,- VK_ERROR_EXTENSION_NOT_PRESENT = -7,- VK_ERROR_FEATURE_NOT_PRESENT = -8,- VK_ERROR_INCOMPATIBLE_DRIVER = -9,- VK_ERROR_TOO_MANY_OBJECTS = -10,- VK_ERROR_FORMAT_NOT_SUPPORTED = -11,- VK_ERROR_FRAGMENTED_POOL = -12,- VK_ERROR_SURFACE_LOST_KHR = -1000000000,- VK_ERROR_NATIVE_WINDOW_IN_USE_KHR = -1000000001,- VK_SUBOPTIMAL_KHR = 1000001003,- VK_ERROR_OUT_OF_DATE_KHR = -1000001004,- VK_ERROR_INCOMPATIBLE_DISPLAY_KHR = -1000003001,- VK_ERROR_VALIDATION_FAILED_EXT = -1000011001,- VK_ERROR_INVALID_SHADER_NV = -1000012000,- VK_ERROR_OUT_OF_POOL_MEMORY_KHR = -1000069000,- VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR = -1000072003,- VK_ERROR_NOT_PERMITTED_EXT = -1000174001,- VK_RESULT_BEGIN_RANGE = VK_ERROR_FRAGMENTED_POOL,- VK_RESULT_END_RANGE = VK_INCOMPLETE,- VK_RESULT_RANGE_SIZE = (VK_INCOMPLETE - VK_ERROR_FRAGMENTED_POOL + 1),- VK_RESULT_MAX_ENUM = 0x7FFFFFFF-} VkResult;--typedef enum VkStructureType {- VK_STRUCTURE_TYPE_APPLICATION_INFO = 0,- VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO = 1,- VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO = 2,- VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO = 3,- VK_STRUCTURE_TYPE_SUBMIT_INFO = 4,- VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO = 5,- VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE = 6,- VK_STRUCTURE_TYPE_BIND_SPARSE_INFO = 7,- VK_STRUCTURE_TYPE_FENCE_CREATE_INFO = 8,- VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO = 9,- VK_STRUCTURE_TYPE_EVENT_CREATE_INFO = 10,- VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO = 11,- VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO = 12,- VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO = 13,- VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO = 14,- VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO = 15,- VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO = 16,- VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO = 17,- VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO = 18,- VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO = 19,- VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO = 20,- VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO = 21,- VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO = 22,- VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO = 23,- VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO = 24,- VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO = 25,- VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO = 26,- VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO = 27,- VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO = 28,- VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO = 29,- VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO = 30,- VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO = 31,- VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO = 32,- VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO = 33,- VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO = 34,- VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET = 35,- VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET = 36,- VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO = 37,- VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO = 38,- VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO = 39,- VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO = 40,- VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO = 41,- VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO = 42,- VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO = 43,- VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER = 44,- VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER = 45,- VK_STRUCTURE_TYPE_MEMORY_BARRIER = 46,- VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO = 47,- VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO = 48,- VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR = 1000001000,- VK_STRUCTURE_TYPE_PRESENT_INFO_KHR = 1000001001,- VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR = 1000002000,- VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR = 1000002001,- VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR = 1000003000,- VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR = 1000004000,- VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR = 1000005000,- VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR = 1000006000,- VK_STRUCTURE_TYPE_MIR_SURFACE_CREATE_INFO_KHR = 1000007000,- VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR = 1000008000,- VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR = 1000009000,- VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT = 1000011000,- VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD = 1000018000,- VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT = 1000022000,- VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT = 1000022001,- VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT = 1000022002,- VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV = 1000026000,- VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV = 1000026001,- VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV = 1000026002,- VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD = 1000041000,- VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO_KHX = 1000053000,- VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES_KHX = 1000053001,- VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES_KHX = 1000053002,- VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV = 1000056000,- VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV = 1000056001,- VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV = 1000057000,- VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV = 1000057001,- VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV = 1000058000,- VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2_KHR = 1000059000,- VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2_KHR = 1000059001,- VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2_KHR = 1000059002,- VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2_KHR = 1000059003,- VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2_KHR = 1000059004,- VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2_KHR = 1000059005,- VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2_KHR = 1000059006,- VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2_KHR = 1000059007,- VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2_KHR = 1000059008,- VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO_KHX = 1000060000,- VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO_KHX = 1000060003,- VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO_KHX = 1000060004,- VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO_KHX = 1000060005,- VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO_KHX = 1000060006,- VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHX = 1000060010,- VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO_KHX = 1000060013,- VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO_KHX = 1000060014,- VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHX = 1000060007,- VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHX = 1000060008,- VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHX = 1000060009,- VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHX = 1000060011,- VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHX = 1000060012,- VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT = 1000061000,- VK_STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN = 1000062000,- VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES_KHX = 1000070000,- VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO_KHX = 1000070001,- VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO_KHR = 1000071000,- VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES_KHR = 1000071001,- VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO_KHR = 1000071002,- VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES_KHR = 1000071003,- VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES_KHR = 1000071004,- VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO_KHR = 1000072000,- VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_KHR = 1000072001,- VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_KHR = 1000072002,- VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR = 1000073000,- VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR = 1000073001,- VK_STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR = 1000073002,- VK_STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR = 1000073003,- VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR = 1000074000,- VK_STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR = 1000074001,- VK_STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR = 1000074002,- VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR = 1000075000,- VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO_KHR = 1000076000,- VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES_KHR = 1000076001,- VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO_KHR = 1000077000,- VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR = 1000078000,- VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR = 1000078001,- VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR = 1000078002,- VK_STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR = 1000078003,- VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR = 1000079000,- VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR = 1000079001,- VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR = 1000080000,- VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES_KHR = 1000083000,- VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR = 1000084000,- VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO_KHR = 1000085000,- VK_STRUCTURE_TYPE_OBJECT_TABLE_CREATE_INFO_NVX = 1000086000,- VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NVX = 1000086001,- VK_STRUCTURE_TYPE_CMD_PROCESS_COMMANDS_INFO_NVX = 1000086002,- VK_STRUCTURE_TYPE_CMD_RESERVE_SPACE_FOR_COMMANDS_INFO_NVX = 1000086003,- VK_STRUCTURE_TYPE_DEVICE_GENERATED_COMMANDS_LIMITS_NVX = 1000086004,- VK_STRUCTURE_TYPE_DEVICE_GENERATED_COMMANDS_FEATURES_NVX = 1000086005,- VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV = 1000087000,- VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT = 1000090000,- VK_STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT = 1000091000,- VK_STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT = 1000091001,- VK_STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT = 1000091002,- VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT = 1000091003,- VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE = 1000092000,- VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX = 1000097000,- VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV = 1000098000,- VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT = 1000099000,- VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT = 1000099001,- VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT = 1000101000,- VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT = 1000101001,- VK_STRUCTURE_TYPE_HDR_METADATA_EXT = 1000105000,- VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR = 1000111000,- VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO_KHR = 1000112000,- VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES_KHR = 1000112001,- VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO_KHR = 1000113000,- VK_STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR = 1000114000,- VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR = 1000114001,- VK_STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR = 1000114002,- VK_STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR = 1000115000,- VK_STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR = 1000115001,- VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES_KHR = 1000117000,- VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO_KHR = 1000117001,- VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO_KHR = 1000117002,- VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO_KHR = 1000117003,- VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR = 1000119000,- VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR = 1000119001,- VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR = 1000119002,- VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES_KHR = 1000120000,- VK_STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK = 1000122000,- VK_STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK = 1000123000,- VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS_KHR = 1000127000,- VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO_KHR = 1000127001,- VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES_EXT = 1000130000,- VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO_EXT = 1000130001,- VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT = 1000143000,- VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT = 1000143001,- VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT = 1000143002,- VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT = 1000143003,- VK_STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT = 1000143004,- VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2_KHR = 1000146000,- VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2_KHR = 1000146001,- VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2_KHR = 1000146002,- VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2_KHR = 1000146003,- VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2_KHR = 1000146004,- VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO_KHR = 1000147000,- VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT = 1000148000,- VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT = 1000148001,- VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT = 1000148002,- VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV = 1000149000,- VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV = 1000152000,- VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO_KHR = 1000156000,- VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO_KHR = 1000156001,- VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO_KHR = 1000156002,- VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO_KHR = 1000156003,- VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES_KHR = 1000156004,- VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES_KHR = 1000156005,- VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO_KHR = 1000157000,- VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO_KHR = 1000157001,- VK_STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT = 1000160000,- VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT = 1000160001,- VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT = 1000174000,- VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT = 1000178000,- VK_STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT = 1000178001,- VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT = 1000178002,- VK_STRUCTURE_TYPE_BEGIN_RANGE = VK_STRUCTURE_TYPE_APPLICATION_INFO,- VK_STRUCTURE_TYPE_END_RANGE = VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO,- VK_STRUCTURE_TYPE_RANGE_SIZE = (VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO - VK_STRUCTURE_TYPE_APPLICATION_INFO + 1),- VK_STRUCTURE_TYPE_MAX_ENUM = 0x7FFFFFFF-} VkStructureType;--typedef enum VkSystemAllocationScope {- VK_SYSTEM_ALLOCATION_SCOPE_COMMAND = 0,- VK_SYSTEM_ALLOCATION_SCOPE_OBJECT = 1,- VK_SYSTEM_ALLOCATION_SCOPE_CACHE = 2,- VK_SYSTEM_ALLOCATION_SCOPE_DEVICE = 3,- VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE = 4,- VK_SYSTEM_ALLOCATION_SCOPE_BEGIN_RANGE = VK_SYSTEM_ALLOCATION_SCOPE_COMMAND,- VK_SYSTEM_ALLOCATION_SCOPE_END_RANGE = VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE,- VK_SYSTEM_ALLOCATION_SCOPE_RANGE_SIZE = (VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE - VK_SYSTEM_ALLOCATION_SCOPE_COMMAND + 1),- VK_SYSTEM_ALLOCATION_SCOPE_MAX_ENUM = 0x7FFFFFFF-} VkSystemAllocationScope;--typedef enum VkInternalAllocationType {- VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE = 0,- VK_INTERNAL_ALLOCATION_TYPE_BEGIN_RANGE = VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE,- VK_INTERNAL_ALLOCATION_TYPE_END_RANGE = VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE,- VK_INTERNAL_ALLOCATION_TYPE_RANGE_SIZE = (VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE - VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE + 1),- VK_INTERNAL_ALLOCATION_TYPE_MAX_ENUM = 0x7FFFFFFF-} VkInternalAllocationType;--typedef enum VkFormat {- VK_FORMAT_UNDEFINED = 0,- VK_FORMAT_R4G4_UNORM_PACK8 = 1,- VK_FORMAT_R4G4B4A4_UNORM_PACK16 = 2,- VK_FORMAT_B4G4R4A4_UNORM_PACK16 = 3,- VK_FORMAT_R5G6B5_UNORM_PACK16 = 4,- VK_FORMAT_B5G6R5_UNORM_PACK16 = 5,- VK_FORMAT_R5G5B5A1_UNORM_PACK16 = 6,- VK_FORMAT_B5G5R5A1_UNORM_PACK16 = 7,- VK_FORMAT_A1R5G5B5_UNORM_PACK16 = 8,- VK_FORMAT_R8_UNORM = 9,- VK_FORMAT_R8_SNORM = 10,- VK_FORMAT_R8_USCALED = 11,- VK_FORMAT_R8_SSCALED = 12,- VK_FORMAT_R8_UINT = 13,- VK_FORMAT_R8_SINT = 14,- VK_FORMAT_R8_SRGB = 15,- VK_FORMAT_R8G8_UNORM = 16,- VK_FORMAT_R8G8_SNORM = 17,- VK_FORMAT_R8G8_USCALED = 18,- VK_FORMAT_R8G8_SSCALED = 19,- VK_FORMAT_R8G8_UINT = 20,- VK_FORMAT_R8G8_SINT = 21,- VK_FORMAT_R8G8_SRGB = 22,- VK_FORMAT_R8G8B8_UNORM = 23,- VK_FORMAT_R8G8B8_SNORM = 24,- VK_FORMAT_R8G8B8_USCALED = 25,- VK_FORMAT_R8G8B8_SSCALED = 26,- VK_FORMAT_R8G8B8_UINT = 27,- VK_FORMAT_R8G8B8_SINT = 28,- VK_FORMAT_R8G8B8_SRGB = 29,- VK_FORMAT_B8G8R8_UNORM = 30,- VK_FORMAT_B8G8R8_SNORM = 31,- VK_FORMAT_B8G8R8_USCALED = 32,- VK_FORMAT_B8G8R8_SSCALED = 33,- VK_FORMAT_B8G8R8_UINT = 34,- VK_FORMAT_B8G8R8_SINT = 35,- VK_FORMAT_B8G8R8_SRGB = 36,- VK_FORMAT_R8G8B8A8_UNORM = 37,- VK_FORMAT_R8G8B8A8_SNORM = 38,- VK_FORMAT_R8G8B8A8_USCALED = 39,- VK_FORMAT_R8G8B8A8_SSCALED = 40,- VK_FORMAT_R8G8B8A8_UINT = 41,- VK_FORMAT_R8G8B8A8_SINT = 42,- VK_FORMAT_R8G8B8A8_SRGB = 43,- VK_FORMAT_B8G8R8A8_UNORM = 44,- VK_FORMAT_B8G8R8A8_SNORM = 45,- VK_FORMAT_B8G8R8A8_USCALED = 46,- VK_FORMAT_B8G8R8A8_SSCALED = 47,- VK_FORMAT_B8G8R8A8_UINT = 48,- VK_FORMAT_B8G8R8A8_SINT = 49,- VK_FORMAT_B8G8R8A8_SRGB = 50,- VK_FORMAT_A8B8G8R8_UNORM_PACK32 = 51,- VK_FORMAT_A8B8G8R8_SNORM_PACK32 = 52,- VK_FORMAT_A8B8G8R8_USCALED_PACK32 = 53,- VK_FORMAT_A8B8G8R8_SSCALED_PACK32 = 54,- VK_FORMAT_A8B8G8R8_UINT_PACK32 = 55,- VK_FORMAT_A8B8G8R8_SINT_PACK32 = 56,- VK_FORMAT_A8B8G8R8_SRGB_PACK32 = 57,- VK_FORMAT_A2R10G10B10_UNORM_PACK32 = 58,- VK_FORMAT_A2R10G10B10_SNORM_PACK32 = 59,- VK_FORMAT_A2R10G10B10_USCALED_PACK32 = 60,- VK_FORMAT_A2R10G10B10_SSCALED_PACK32 = 61,- VK_FORMAT_A2R10G10B10_UINT_PACK32 = 62,- VK_FORMAT_A2R10G10B10_SINT_PACK32 = 63,- VK_FORMAT_A2B10G10R10_UNORM_PACK32 = 64,- VK_FORMAT_A2B10G10R10_SNORM_PACK32 = 65,- VK_FORMAT_A2B10G10R10_USCALED_PACK32 = 66,- VK_FORMAT_A2B10G10R10_SSCALED_PACK32 = 67,- VK_FORMAT_A2B10G10R10_UINT_PACK32 = 68,- VK_FORMAT_A2B10G10R10_SINT_PACK32 = 69,- VK_FORMAT_R16_UNORM = 70,- VK_FORMAT_R16_SNORM = 71,- VK_FORMAT_R16_USCALED = 72,- VK_FORMAT_R16_SSCALED = 73,- VK_FORMAT_R16_UINT = 74,- VK_FORMAT_R16_SINT = 75,- VK_FORMAT_R16_SFLOAT = 76,- VK_FORMAT_R16G16_UNORM = 77,- VK_FORMAT_R16G16_SNORM = 78,- VK_FORMAT_R16G16_USCALED = 79,- VK_FORMAT_R16G16_SSCALED = 80,- VK_FORMAT_R16G16_UINT = 81,- VK_FORMAT_R16G16_SINT = 82,- VK_FORMAT_R16G16_SFLOAT = 83,- VK_FORMAT_R16G16B16_UNORM = 84,- VK_FORMAT_R16G16B16_SNORM = 85,- VK_FORMAT_R16G16B16_USCALED = 86,- VK_FORMAT_R16G16B16_SSCALED = 87,- VK_FORMAT_R16G16B16_UINT = 88,- VK_FORMAT_R16G16B16_SINT = 89,- VK_FORMAT_R16G16B16_SFLOAT = 90,- VK_FORMAT_R16G16B16A16_UNORM = 91,- VK_FORMAT_R16G16B16A16_SNORM = 92,- VK_FORMAT_R16G16B16A16_USCALED = 93,- VK_FORMAT_R16G16B16A16_SSCALED = 94,- VK_FORMAT_R16G16B16A16_UINT = 95,- VK_FORMAT_R16G16B16A16_SINT = 96,- VK_FORMAT_R16G16B16A16_SFLOAT = 97,- VK_FORMAT_R32_UINT = 98,- VK_FORMAT_R32_SINT = 99,- VK_FORMAT_R32_SFLOAT = 100,- VK_FORMAT_R32G32_UINT = 101,- VK_FORMAT_R32G32_SINT = 102,- VK_FORMAT_R32G32_SFLOAT = 103,- VK_FORMAT_R32G32B32_UINT = 104,- VK_FORMAT_R32G32B32_SINT = 105,- VK_FORMAT_R32G32B32_SFLOAT = 106,- VK_FORMAT_R32G32B32A32_UINT = 107,- VK_FORMAT_R32G32B32A32_SINT = 108,- VK_FORMAT_R32G32B32A32_SFLOAT = 109,- VK_FORMAT_R64_UINT = 110,- VK_FORMAT_R64_SINT = 111,- VK_FORMAT_R64_SFLOAT = 112,- VK_FORMAT_R64G64_UINT = 113,- VK_FORMAT_R64G64_SINT = 114,- VK_FORMAT_R64G64_SFLOAT = 115,- VK_FORMAT_R64G64B64_UINT = 116,- VK_FORMAT_R64G64B64_SINT = 117,- VK_FORMAT_R64G64B64_SFLOAT = 118,- VK_FORMAT_R64G64B64A64_UINT = 119,- VK_FORMAT_R64G64B64A64_SINT = 120,- VK_FORMAT_R64G64B64A64_SFLOAT = 121,- VK_FORMAT_B10G11R11_UFLOAT_PACK32 = 122,- VK_FORMAT_E5B9G9R9_UFLOAT_PACK32 = 123,- VK_FORMAT_D16_UNORM = 124,- VK_FORMAT_X8_D24_UNORM_PACK32 = 125,- VK_FORMAT_D32_SFLOAT = 126,- VK_FORMAT_S8_UINT = 127,- VK_FORMAT_D16_UNORM_S8_UINT = 128,- VK_FORMAT_D24_UNORM_S8_UINT = 129,- VK_FORMAT_D32_SFLOAT_S8_UINT = 130,- VK_FORMAT_BC1_RGB_UNORM_BLOCK = 131,- VK_FORMAT_BC1_RGB_SRGB_BLOCK = 132,- VK_FORMAT_BC1_RGBA_UNORM_BLOCK = 133,- VK_FORMAT_BC1_RGBA_SRGB_BLOCK = 134,- VK_FORMAT_BC2_UNORM_BLOCK = 135,- VK_FORMAT_BC2_SRGB_BLOCK = 136,- VK_FORMAT_BC3_UNORM_BLOCK = 137,- VK_FORMAT_BC3_SRGB_BLOCK = 138,- VK_FORMAT_BC4_UNORM_BLOCK = 139,- VK_FORMAT_BC4_SNORM_BLOCK = 140,- VK_FORMAT_BC5_UNORM_BLOCK = 141,- VK_FORMAT_BC5_SNORM_BLOCK = 142,- VK_FORMAT_BC6H_UFLOAT_BLOCK = 143,- VK_FORMAT_BC6H_SFLOAT_BLOCK = 144,- VK_FORMAT_BC7_UNORM_BLOCK = 145,- VK_FORMAT_BC7_SRGB_BLOCK = 146,- VK_FORMAT_ETC2_R8G8B8_UNORM_BLOCK = 147,- VK_FORMAT_ETC2_R8G8B8_SRGB_BLOCK = 148,- VK_FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK = 149,- VK_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK = 150,- VK_FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK = 151,- VK_FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK = 152,- VK_FORMAT_EAC_R11_UNORM_BLOCK = 153,- VK_FORMAT_EAC_R11_SNORM_BLOCK = 154,- VK_FORMAT_EAC_R11G11_UNORM_BLOCK = 155,- VK_FORMAT_EAC_R11G11_SNORM_BLOCK = 156,- VK_FORMAT_ASTC_4x4_UNORM_BLOCK = 157,- VK_FORMAT_ASTC_4x4_SRGB_BLOCK = 158,- VK_FORMAT_ASTC_5x4_UNORM_BLOCK = 159,- VK_FORMAT_ASTC_5x4_SRGB_BLOCK = 160,- VK_FORMAT_ASTC_5x5_UNORM_BLOCK = 161,- VK_FORMAT_ASTC_5x5_SRGB_BLOCK = 162,- VK_FORMAT_ASTC_6x5_UNORM_BLOCK = 163,- VK_FORMAT_ASTC_6x5_SRGB_BLOCK = 164,- VK_FORMAT_ASTC_6x6_UNORM_BLOCK = 165,- VK_FORMAT_ASTC_6x6_SRGB_BLOCK = 166,- VK_FORMAT_ASTC_8x5_UNORM_BLOCK = 167,- VK_FORMAT_ASTC_8x5_SRGB_BLOCK = 168,- VK_FORMAT_ASTC_8x6_UNORM_BLOCK = 169,- VK_FORMAT_ASTC_8x6_SRGB_BLOCK = 170,- VK_FORMAT_ASTC_8x8_UNORM_BLOCK = 171,- VK_FORMAT_ASTC_8x8_SRGB_BLOCK = 172,- VK_FORMAT_ASTC_10x5_UNORM_BLOCK = 173,- VK_FORMAT_ASTC_10x5_SRGB_BLOCK = 174,- VK_FORMAT_ASTC_10x6_UNORM_BLOCK = 175,- VK_FORMAT_ASTC_10x6_SRGB_BLOCK = 176,- VK_FORMAT_ASTC_10x8_UNORM_BLOCK = 177,- VK_FORMAT_ASTC_10x8_SRGB_BLOCK = 178,- VK_FORMAT_ASTC_10x10_UNORM_BLOCK = 179,- VK_FORMAT_ASTC_10x10_SRGB_BLOCK = 180,- VK_FORMAT_ASTC_12x10_UNORM_BLOCK = 181,- VK_FORMAT_ASTC_12x10_SRGB_BLOCK = 182,- VK_FORMAT_ASTC_12x12_UNORM_BLOCK = 183,- VK_FORMAT_ASTC_12x12_SRGB_BLOCK = 184,- VK_FORMAT_PVRTC1_2BPP_UNORM_BLOCK_IMG = 1000054000,- VK_FORMAT_PVRTC1_4BPP_UNORM_BLOCK_IMG = 1000054001,- VK_FORMAT_PVRTC2_2BPP_UNORM_BLOCK_IMG = 1000054002,- VK_FORMAT_PVRTC2_4BPP_UNORM_BLOCK_IMG = 1000054003,- VK_FORMAT_PVRTC1_2BPP_SRGB_BLOCK_IMG = 1000054004,- VK_FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG = 1000054005,- VK_FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG = 1000054006,- VK_FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG = 1000054007,- VK_FORMAT_G8B8G8R8_422_UNORM_KHR = 1000156000,- VK_FORMAT_B8G8R8G8_422_UNORM_KHR = 1000156001,- VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM_KHR = 1000156002,- VK_FORMAT_G8_B8R8_2PLANE_420_UNORM_KHR = 1000156003,- VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM_KHR = 1000156004,- VK_FORMAT_G8_B8R8_2PLANE_422_UNORM_KHR = 1000156005,- VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM_KHR = 1000156006,- VK_FORMAT_R10X6_UNORM_PACK16_KHR = 1000156007,- VK_FORMAT_R10X6G10X6_UNORM_2PACK16_KHR = 1000156008,- VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16_KHR = 1000156009,- VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16_KHR = 1000156010,- VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16_KHR = 1000156011,- VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16_KHR = 1000156012,- VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16_KHR = 1000156013,- VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16_KHR = 1000156014,- VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16_KHR = 1000156015,- VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16_KHR = 1000156016,- VK_FORMAT_R12X4_UNORM_PACK16_KHR = 1000156017,- VK_FORMAT_R12X4G12X4_UNORM_2PACK16_KHR = 1000156018,- VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16_KHR = 1000156019,- VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16_KHR = 1000156020,- VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16_KHR = 1000156021,- VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16_KHR = 1000156022,- VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16_KHR = 1000156023,- VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16_KHR = 1000156024,- VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16_KHR = 1000156025,- VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16_KHR = 1000156026,- VK_FORMAT_G16B16G16R16_422_UNORM_KHR = 1000156027,- VK_FORMAT_B16G16R16G16_422_UNORM_KHR = 1000156028,- VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM_KHR = 1000156029,- VK_FORMAT_G16_B16R16_2PLANE_420_UNORM_KHR = 1000156030,- VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM_KHR = 1000156031,- VK_FORMAT_G16_B16R16_2PLANE_422_UNORM_KHR = 1000156032,- VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM_KHR = 1000156033,- VK_FORMAT_BEGIN_RANGE = VK_FORMAT_UNDEFINED,- VK_FORMAT_END_RANGE = VK_FORMAT_ASTC_12x12_SRGB_BLOCK,- VK_FORMAT_RANGE_SIZE = (VK_FORMAT_ASTC_12x12_SRGB_BLOCK - VK_FORMAT_UNDEFINED + 1),- VK_FORMAT_MAX_ENUM = 0x7FFFFFFF-} VkFormat;--typedef enum VkImageType {- VK_IMAGE_TYPE_1D = 0,- VK_IMAGE_TYPE_2D = 1,- VK_IMAGE_TYPE_3D = 2,- VK_IMAGE_TYPE_BEGIN_RANGE = VK_IMAGE_TYPE_1D,- VK_IMAGE_TYPE_END_RANGE = VK_IMAGE_TYPE_3D,- VK_IMAGE_TYPE_RANGE_SIZE = (VK_IMAGE_TYPE_3D - VK_IMAGE_TYPE_1D + 1),- VK_IMAGE_TYPE_MAX_ENUM = 0x7FFFFFFF-} VkImageType;--typedef enum VkImageTiling {- VK_IMAGE_TILING_OPTIMAL = 0,- VK_IMAGE_TILING_LINEAR = 1,- VK_IMAGE_TILING_BEGIN_RANGE = VK_IMAGE_TILING_OPTIMAL,- VK_IMAGE_TILING_END_RANGE = VK_IMAGE_TILING_LINEAR,- VK_IMAGE_TILING_RANGE_SIZE = (VK_IMAGE_TILING_LINEAR - VK_IMAGE_TILING_OPTIMAL + 1),- VK_IMAGE_TILING_MAX_ENUM = 0x7FFFFFFF-} VkImageTiling;--typedef enum VkPhysicalDeviceType {- VK_PHYSICAL_DEVICE_TYPE_OTHER = 0,- VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU = 1,- VK_PHYSICAL_DEVICE_TYPE_DISCRETE_GPU = 2,- VK_PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU = 3,- VK_PHYSICAL_DEVICE_TYPE_CPU = 4,- VK_PHYSICAL_DEVICE_TYPE_BEGIN_RANGE = VK_PHYSICAL_DEVICE_TYPE_OTHER,- VK_PHYSICAL_DEVICE_TYPE_END_RANGE = VK_PHYSICAL_DEVICE_TYPE_CPU,- VK_PHYSICAL_DEVICE_TYPE_RANGE_SIZE = (VK_PHYSICAL_DEVICE_TYPE_CPU - VK_PHYSICAL_DEVICE_TYPE_OTHER + 1),- VK_PHYSICAL_DEVICE_TYPE_MAX_ENUM = 0x7FFFFFFF-} VkPhysicalDeviceType;--typedef enum VkQueryType {- VK_QUERY_TYPE_OCCLUSION = 0,- VK_QUERY_TYPE_PIPELINE_STATISTICS = 1,- VK_QUERY_TYPE_TIMESTAMP = 2,- VK_QUERY_TYPE_BEGIN_RANGE = VK_QUERY_TYPE_OCCLUSION,- VK_QUERY_TYPE_END_RANGE = VK_QUERY_TYPE_TIMESTAMP,- VK_QUERY_TYPE_RANGE_SIZE = (VK_QUERY_TYPE_TIMESTAMP - VK_QUERY_TYPE_OCCLUSION + 1),- VK_QUERY_TYPE_MAX_ENUM = 0x7FFFFFFF-} VkQueryType;--typedef enum VkSharingMode {- VK_SHARING_MODE_EXCLUSIVE = 0,- VK_SHARING_MODE_CONCURRENT = 1,- VK_SHARING_MODE_BEGIN_RANGE = VK_SHARING_MODE_EXCLUSIVE,- VK_SHARING_MODE_END_RANGE = VK_SHARING_MODE_CONCURRENT,- VK_SHARING_MODE_RANGE_SIZE = (VK_SHARING_MODE_CONCURRENT - VK_SHARING_MODE_EXCLUSIVE + 1),- VK_SHARING_MODE_MAX_ENUM = 0x7FFFFFFF-} VkSharingMode;--typedef enum VkImageLayout {- VK_IMAGE_LAYOUT_UNDEFINED = 0,- VK_IMAGE_LAYOUT_GENERAL = 1,- VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL = 2,- VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL = 3,- VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL = 4,- VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL = 5,- VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL = 6,- VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL = 7,- VK_IMAGE_LAYOUT_PREINITIALIZED = 8,- VK_IMAGE_LAYOUT_PRESENT_SRC_KHR = 1000001002,- VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR = 1000111000,- VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL_KHR = 1000117000,- VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL_KHR = 1000117001,- VK_IMAGE_LAYOUT_BEGIN_RANGE = VK_IMAGE_LAYOUT_UNDEFINED,- VK_IMAGE_LAYOUT_END_RANGE = VK_IMAGE_LAYOUT_PREINITIALIZED,- VK_IMAGE_LAYOUT_RANGE_SIZE = (VK_IMAGE_LAYOUT_PREINITIALIZED - VK_IMAGE_LAYOUT_UNDEFINED + 1),- VK_IMAGE_LAYOUT_MAX_ENUM = 0x7FFFFFFF-} VkImageLayout;--typedef enum VkImageViewType {- VK_IMAGE_VIEW_TYPE_1D = 0,- VK_IMAGE_VIEW_TYPE_2D = 1,- VK_IMAGE_VIEW_TYPE_3D = 2,- VK_IMAGE_VIEW_TYPE_CUBE = 3,- VK_IMAGE_VIEW_TYPE_1D_ARRAY = 4,- VK_IMAGE_VIEW_TYPE_2D_ARRAY = 5,- VK_IMAGE_VIEW_TYPE_CUBE_ARRAY = 6,- VK_IMAGE_VIEW_TYPE_BEGIN_RANGE = VK_IMAGE_VIEW_TYPE_1D,- VK_IMAGE_VIEW_TYPE_END_RANGE = VK_IMAGE_VIEW_TYPE_CUBE_ARRAY,- VK_IMAGE_VIEW_TYPE_RANGE_SIZE = (VK_IMAGE_VIEW_TYPE_CUBE_ARRAY - VK_IMAGE_VIEW_TYPE_1D + 1),- VK_IMAGE_VIEW_TYPE_MAX_ENUM = 0x7FFFFFFF-} VkImageViewType;--typedef enum VkComponentSwizzle {- VK_COMPONENT_SWIZZLE_IDENTITY = 0,- VK_COMPONENT_SWIZZLE_ZERO = 1,- VK_COMPONENT_SWIZZLE_ONE = 2,- VK_COMPONENT_SWIZZLE_R = 3,- VK_COMPONENT_SWIZZLE_G = 4,- VK_COMPONENT_SWIZZLE_B = 5,- VK_COMPONENT_SWIZZLE_A = 6,- VK_COMPONENT_SWIZZLE_BEGIN_RANGE = VK_COMPONENT_SWIZZLE_IDENTITY,- VK_COMPONENT_SWIZZLE_END_RANGE = VK_COMPONENT_SWIZZLE_A,- VK_COMPONENT_SWIZZLE_RANGE_SIZE = (VK_COMPONENT_SWIZZLE_A - VK_COMPONENT_SWIZZLE_IDENTITY + 1),- VK_COMPONENT_SWIZZLE_MAX_ENUM = 0x7FFFFFFF-} VkComponentSwizzle;--typedef enum VkVertexInputRate {- VK_VERTEX_INPUT_RATE_VERTEX = 0,- VK_VERTEX_INPUT_RATE_INSTANCE = 1,- VK_VERTEX_INPUT_RATE_BEGIN_RANGE = VK_VERTEX_INPUT_RATE_VERTEX,- VK_VERTEX_INPUT_RATE_END_RANGE = VK_VERTEX_INPUT_RATE_INSTANCE,- VK_VERTEX_INPUT_RATE_RANGE_SIZE = (VK_VERTEX_INPUT_RATE_INSTANCE - VK_VERTEX_INPUT_RATE_VERTEX + 1),- VK_VERTEX_INPUT_RATE_MAX_ENUM = 0x7FFFFFFF-} VkVertexInputRate;--typedef enum VkPrimitiveTopology {- VK_PRIMITIVE_TOPOLOGY_POINT_LIST = 0,- VK_PRIMITIVE_TOPOLOGY_LINE_LIST = 1,- VK_PRIMITIVE_TOPOLOGY_LINE_STRIP = 2,- VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST = 3,- VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP = 4,- VK_PRIMITIVE_TOPOLOGY_TRIANGLE_FAN = 5,- VK_PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY = 6,- VK_PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY = 7,- VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY = 8,- VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY = 9,- VK_PRIMITIVE_TOPOLOGY_PATCH_LIST = 10,- VK_PRIMITIVE_TOPOLOGY_BEGIN_RANGE = VK_PRIMITIVE_TOPOLOGY_POINT_LIST,- VK_PRIMITIVE_TOPOLOGY_END_RANGE = VK_PRIMITIVE_TOPOLOGY_PATCH_LIST,- VK_PRIMITIVE_TOPOLOGY_RANGE_SIZE = (VK_PRIMITIVE_TOPOLOGY_PATCH_LIST - VK_PRIMITIVE_TOPOLOGY_POINT_LIST + 1),- VK_PRIMITIVE_TOPOLOGY_MAX_ENUM = 0x7FFFFFFF-} VkPrimitiveTopology;--typedef enum VkPolygonMode {- VK_POLYGON_MODE_FILL = 0,- VK_POLYGON_MODE_LINE = 1,- VK_POLYGON_MODE_POINT = 2,- VK_POLYGON_MODE_FILL_RECTANGLE_NV = 1000153000,- VK_POLYGON_MODE_BEGIN_RANGE = VK_POLYGON_MODE_FILL,- VK_POLYGON_MODE_END_RANGE = VK_POLYGON_MODE_POINT,- VK_POLYGON_MODE_RANGE_SIZE = (VK_POLYGON_MODE_POINT - VK_POLYGON_MODE_FILL + 1),- VK_POLYGON_MODE_MAX_ENUM = 0x7FFFFFFF-} VkPolygonMode;--typedef enum VkFrontFace {- VK_FRONT_FACE_COUNTER_CLOCKWISE = 0,- VK_FRONT_FACE_CLOCKWISE = 1,- VK_FRONT_FACE_BEGIN_RANGE = VK_FRONT_FACE_COUNTER_CLOCKWISE,- VK_FRONT_FACE_END_RANGE = VK_FRONT_FACE_CLOCKWISE,- VK_FRONT_FACE_RANGE_SIZE = (VK_FRONT_FACE_CLOCKWISE - VK_FRONT_FACE_COUNTER_CLOCKWISE + 1),- VK_FRONT_FACE_MAX_ENUM = 0x7FFFFFFF-} VkFrontFace;--typedef enum VkCompareOp {- VK_COMPARE_OP_NEVER = 0,- VK_COMPARE_OP_LESS = 1,- VK_COMPARE_OP_EQUAL = 2,- VK_COMPARE_OP_LESS_OR_EQUAL = 3,- VK_COMPARE_OP_GREATER = 4,- VK_COMPARE_OP_NOT_EQUAL = 5,- VK_COMPARE_OP_GREATER_OR_EQUAL = 6,- VK_COMPARE_OP_ALWAYS = 7,- VK_COMPARE_OP_BEGIN_RANGE = VK_COMPARE_OP_NEVER,- VK_COMPARE_OP_END_RANGE = VK_COMPARE_OP_ALWAYS,- VK_COMPARE_OP_RANGE_SIZE = (VK_COMPARE_OP_ALWAYS - VK_COMPARE_OP_NEVER + 1),- VK_COMPARE_OP_MAX_ENUM = 0x7FFFFFFF-} VkCompareOp;--typedef enum VkStencilOp {- VK_STENCIL_OP_KEEP = 0,- VK_STENCIL_OP_ZERO = 1,- VK_STENCIL_OP_REPLACE = 2,- VK_STENCIL_OP_INCREMENT_AND_CLAMP = 3,- VK_STENCIL_OP_DECREMENT_AND_CLAMP = 4,- VK_STENCIL_OP_INVERT = 5,- VK_STENCIL_OP_INCREMENT_AND_WRAP = 6,- VK_STENCIL_OP_DECREMENT_AND_WRAP = 7,- VK_STENCIL_OP_BEGIN_RANGE = VK_STENCIL_OP_KEEP,- VK_STENCIL_OP_END_RANGE = VK_STENCIL_OP_DECREMENT_AND_WRAP,- VK_STENCIL_OP_RANGE_SIZE = (VK_STENCIL_OP_DECREMENT_AND_WRAP - VK_STENCIL_OP_KEEP + 1),- VK_STENCIL_OP_MAX_ENUM = 0x7FFFFFFF-} VkStencilOp;--typedef enum VkLogicOp {- VK_LOGIC_OP_CLEAR = 0,- VK_LOGIC_OP_AND = 1,- VK_LOGIC_OP_AND_REVERSE = 2,- VK_LOGIC_OP_COPY = 3,- VK_LOGIC_OP_AND_INVERTED = 4,- VK_LOGIC_OP_NO_OP = 5,- VK_LOGIC_OP_XOR = 6,- VK_LOGIC_OP_OR = 7,- VK_LOGIC_OP_NOR = 8,- VK_LOGIC_OP_EQUIVALENT = 9,- VK_LOGIC_OP_INVERT = 10,- VK_LOGIC_OP_OR_REVERSE = 11,- VK_LOGIC_OP_COPY_INVERTED = 12,- VK_LOGIC_OP_OR_INVERTED = 13,- VK_LOGIC_OP_NAND = 14,- VK_LOGIC_OP_SET = 15,- VK_LOGIC_OP_BEGIN_RANGE = VK_LOGIC_OP_CLEAR,- VK_LOGIC_OP_END_RANGE = VK_LOGIC_OP_SET,- VK_LOGIC_OP_RANGE_SIZE = (VK_LOGIC_OP_SET - VK_LOGIC_OP_CLEAR + 1),- VK_LOGIC_OP_MAX_ENUM = 0x7FFFFFFF-} VkLogicOp;--typedef enum VkBlendFactor {- VK_BLEND_FACTOR_ZERO = 0,- VK_BLEND_FACTOR_ONE = 1,- VK_BLEND_FACTOR_SRC_COLOR = 2,- VK_BLEND_FACTOR_ONE_MINUS_SRC_COLOR = 3,- VK_BLEND_FACTOR_DST_COLOR = 4,- VK_BLEND_FACTOR_ONE_MINUS_DST_COLOR = 5,- VK_BLEND_FACTOR_SRC_ALPHA = 6,- VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA = 7,- VK_BLEND_FACTOR_DST_ALPHA = 8,- VK_BLEND_FACTOR_ONE_MINUS_DST_ALPHA = 9,- VK_BLEND_FACTOR_CONSTANT_COLOR = 10,- VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_COLOR = 11,- VK_BLEND_FACTOR_CONSTANT_ALPHA = 12,- VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA = 13,- VK_BLEND_FACTOR_SRC_ALPHA_SATURATE = 14,- VK_BLEND_FACTOR_SRC1_COLOR = 15,- VK_BLEND_FACTOR_ONE_MINUS_SRC1_COLOR = 16,- VK_BLEND_FACTOR_SRC1_ALPHA = 17,- VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA = 18,- VK_BLEND_FACTOR_BEGIN_RANGE = VK_BLEND_FACTOR_ZERO,- VK_BLEND_FACTOR_END_RANGE = VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA,- VK_BLEND_FACTOR_RANGE_SIZE = (VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA - VK_BLEND_FACTOR_ZERO + 1),- VK_BLEND_FACTOR_MAX_ENUM = 0x7FFFFFFF-} VkBlendFactor;--typedef enum VkBlendOp {- VK_BLEND_OP_ADD = 0,- VK_BLEND_OP_SUBTRACT = 1,- VK_BLEND_OP_REVERSE_SUBTRACT = 2,- VK_BLEND_OP_MIN = 3,- VK_BLEND_OP_MAX = 4,- VK_BLEND_OP_ZERO_EXT = 1000148000,- VK_BLEND_OP_SRC_EXT = 1000148001,- VK_BLEND_OP_DST_EXT = 1000148002,- VK_BLEND_OP_SRC_OVER_EXT = 1000148003,- VK_BLEND_OP_DST_OVER_EXT = 1000148004,- VK_BLEND_OP_SRC_IN_EXT = 1000148005,- VK_BLEND_OP_DST_IN_EXT = 1000148006,- VK_BLEND_OP_SRC_OUT_EXT = 1000148007,- VK_BLEND_OP_DST_OUT_EXT = 1000148008,- VK_BLEND_OP_SRC_ATOP_EXT = 1000148009,- VK_BLEND_OP_DST_ATOP_EXT = 1000148010,- VK_BLEND_OP_XOR_EXT = 1000148011,- VK_BLEND_OP_MULTIPLY_EXT = 1000148012,- VK_BLEND_OP_SCREEN_EXT = 1000148013,- VK_BLEND_OP_OVERLAY_EXT = 1000148014,- VK_BLEND_OP_DARKEN_EXT = 1000148015,- VK_BLEND_OP_LIGHTEN_EXT = 1000148016,- VK_BLEND_OP_COLORDODGE_EXT = 1000148017,- VK_BLEND_OP_COLORBURN_EXT = 1000148018,- VK_BLEND_OP_HARDLIGHT_EXT = 1000148019,- VK_BLEND_OP_SOFTLIGHT_EXT = 1000148020,- VK_BLEND_OP_DIFFERENCE_EXT = 1000148021,- VK_BLEND_OP_EXCLUSION_EXT = 1000148022,- VK_BLEND_OP_INVERT_EXT = 1000148023,- VK_BLEND_OP_INVERT_RGB_EXT = 1000148024,- VK_BLEND_OP_LINEARDODGE_EXT = 1000148025,- VK_BLEND_OP_LINEARBURN_EXT = 1000148026,- VK_BLEND_OP_VIVIDLIGHT_EXT = 1000148027,- VK_BLEND_OP_LINEARLIGHT_EXT = 1000148028,- VK_BLEND_OP_PINLIGHT_EXT = 1000148029,- VK_BLEND_OP_HARDMIX_EXT = 1000148030,- VK_BLEND_OP_HSL_HUE_EXT = 1000148031,- VK_BLEND_OP_HSL_SATURATION_EXT = 1000148032,- VK_BLEND_OP_HSL_COLOR_EXT = 1000148033,- VK_BLEND_OP_HSL_LUMINOSITY_EXT = 1000148034,- VK_BLEND_OP_PLUS_EXT = 1000148035,- VK_BLEND_OP_PLUS_CLAMPED_EXT = 1000148036,- VK_BLEND_OP_PLUS_CLAMPED_ALPHA_EXT = 1000148037,- VK_BLEND_OP_PLUS_DARKER_EXT = 1000148038,- VK_BLEND_OP_MINUS_EXT = 1000148039,- VK_BLEND_OP_MINUS_CLAMPED_EXT = 1000148040,- VK_BLEND_OP_CONTRAST_EXT = 1000148041,- VK_BLEND_OP_INVERT_OVG_EXT = 1000148042,- VK_BLEND_OP_RED_EXT = 1000148043,- VK_BLEND_OP_GREEN_EXT = 1000148044,- VK_BLEND_OP_BLUE_EXT = 1000148045,- VK_BLEND_OP_BEGIN_RANGE = VK_BLEND_OP_ADD,- VK_BLEND_OP_END_RANGE = VK_BLEND_OP_MAX,- VK_BLEND_OP_RANGE_SIZE = (VK_BLEND_OP_MAX - VK_BLEND_OP_ADD + 1),- VK_BLEND_OP_MAX_ENUM = 0x7FFFFFFF-} VkBlendOp;--typedef enum VkDynamicState {- VK_DYNAMIC_STATE_VIEWPORT = 0,- VK_DYNAMIC_STATE_SCISSOR = 1,- VK_DYNAMIC_STATE_LINE_WIDTH = 2,- VK_DYNAMIC_STATE_DEPTH_BIAS = 3,- VK_DYNAMIC_STATE_BLEND_CONSTANTS = 4,- VK_DYNAMIC_STATE_DEPTH_BOUNDS = 5,- VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK = 6,- VK_DYNAMIC_STATE_STENCIL_WRITE_MASK = 7,- VK_DYNAMIC_STATE_STENCIL_REFERENCE = 8,- VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV = 1000087000,- VK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT = 1000099000,- VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT = 1000143000,- VK_DYNAMIC_STATE_BEGIN_RANGE = VK_DYNAMIC_STATE_VIEWPORT,- VK_DYNAMIC_STATE_END_RANGE = VK_DYNAMIC_STATE_STENCIL_REFERENCE,- VK_DYNAMIC_STATE_RANGE_SIZE = (VK_DYNAMIC_STATE_STENCIL_REFERENCE - VK_DYNAMIC_STATE_VIEWPORT + 1),- VK_DYNAMIC_STATE_MAX_ENUM = 0x7FFFFFFF-} VkDynamicState;--typedef enum VkFilter {- VK_FILTER_NEAREST = 0,- VK_FILTER_LINEAR = 1,- VK_FILTER_CUBIC_IMG = 1000015000,- VK_FILTER_BEGIN_RANGE = VK_FILTER_NEAREST,- VK_FILTER_END_RANGE = VK_FILTER_LINEAR,- VK_FILTER_RANGE_SIZE = (VK_FILTER_LINEAR - VK_FILTER_NEAREST + 1),- VK_FILTER_MAX_ENUM = 0x7FFFFFFF-} VkFilter;--typedef enum VkSamplerMipmapMode {- VK_SAMPLER_MIPMAP_MODE_NEAREST = 0,- VK_SAMPLER_MIPMAP_MODE_LINEAR = 1,- VK_SAMPLER_MIPMAP_MODE_BEGIN_RANGE = VK_SAMPLER_MIPMAP_MODE_NEAREST,- VK_SAMPLER_MIPMAP_MODE_END_RANGE = VK_SAMPLER_MIPMAP_MODE_LINEAR,- VK_SAMPLER_MIPMAP_MODE_RANGE_SIZE = (VK_SAMPLER_MIPMAP_MODE_LINEAR - VK_SAMPLER_MIPMAP_MODE_NEAREST + 1),- VK_SAMPLER_MIPMAP_MODE_MAX_ENUM = 0x7FFFFFFF-} VkSamplerMipmapMode;--typedef enum VkSamplerAddressMode {- VK_SAMPLER_ADDRESS_MODE_REPEAT = 0,- VK_SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT = 1,- VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE = 2,- VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER = 3,- VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE = 4,- VK_SAMPLER_ADDRESS_MODE_BEGIN_RANGE = VK_SAMPLER_ADDRESS_MODE_REPEAT,- VK_SAMPLER_ADDRESS_MODE_END_RANGE = VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER,- VK_SAMPLER_ADDRESS_MODE_RANGE_SIZE = (VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER - VK_SAMPLER_ADDRESS_MODE_REPEAT + 1),- VK_SAMPLER_ADDRESS_MODE_MAX_ENUM = 0x7FFFFFFF-} VkSamplerAddressMode;--typedef enum VkBorderColor {- VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK = 0,- VK_BORDER_COLOR_INT_TRANSPARENT_BLACK = 1,- VK_BORDER_COLOR_FLOAT_OPAQUE_BLACK = 2,- VK_BORDER_COLOR_INT_OPAQUE_BLACK = 3,- VK_BORDER_COLOR_FLOAT_OPAQUE_WHITE = 4,- VK_BORDER_COLOR_INT_OPAQUE_WHITE = 5,- VK_BORDER_COLOR_BEGIN_RANGE = VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK,- VK_BORDER_COLOR_END_RANGE = VK_BORDER_COLOR_INT_OPAQUE_WHITE,- VK_BORDER_COLOR_RANGE_SIZE = (VK_BORDER_COLOR_INT_OPAQUE_WHITE - VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK + 1),- VK_BORDER_COLOR_MAX_ENUM = 0x7FFFFFFF-} VkBorderColor;--typedef enum VkDescriptorType {- VK_DESCRIPTOR_TYPE_SAMPLER = 0,- VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER = 1,- VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE = 2,- VK_DESCRIPTOR_TYPE_STORAGE_IMAGE = 3,- VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER = 4,- VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER = 5,- VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER = 6,- VK_DESCRIPTOR_TYPE_STORAGE_BUFFER = 7,- VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC = 8,- VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC = 9,- VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT = 10,- VK_DESCRIPTOR_TYPE_BEGIN_RANGE = VK_DESCRIPTOR_TYPE_SAMPLER,- VK_DESCRIPTOR_TYPE_END_RANGE = VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT,- VK_DESCRIPTOR_TYPE_RANGE_SIZE = (VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT - VK_DESCRIPTOR_TYPE_SAMPLER + 1),- VK_DESCRIPTOR_TYPE_MAX_ENUM = 0x7FFFFFFF-} VkDescriptorType;--typedef enum VkAttachmentLoadOp {- VK_ATTACHMENT_LOAD_OP_LOAD = 0,- VK_ATTACHMENT_LOAD_OP_CLEAR = 1,- VK_ATTACHMENT_LOAD_OP_DONT_CARE = 2,- VK_ATTACHMENT_LOAD_OP_BEGIN_RANGE = VK_ATTACHMENT_LOAD_OP_LOAD,- VK_ATTACHMENT_LOAD_OP_END_RANGE = VK_ATTACHMENT_LOAD_OP_DONT_CARE,- VK_ATTACHMENT_LOAD_OP_RANGE_SIZE = (VK_ATTACHMENT_LOAD_OP_DONT_CARE - VK_ATTACHMENT_LOAD_OP_LOAD + 1),- VK_ATTACHMENT_LOAD_OP_MAX_ENUM = 0x7FFFFFFF-} VkAttachmentLoadOp;--typedef enum VkAttachmentStoreOp {- VK_ATTACHMENT_STORE_OP_STORE = 0,- VK_ATTACHMENT_STORE_OP_DONT_CARE = 1,- VK_ATTACHMENT_STORE_OP_BEGIN_RANGE = VK_ATTACHMENT_STORE_OP_STORE,- VK_ATTACHMENT_STORE_OP_END_RANGE = VK_ATTACHMENT_STORE_OP_DONT_CARE,- VK_ATTACHMENT_STORE_OP_RANGE_SIZE = (VK_ATTACHMENT_STORE_OP_DONT_CARE - VK_ATTACHMENT_STORE_OP_STORE + 1),- VK_ATTACHMENT_STORE_OP_MAX_ENUM = 0x7FFFFFFF-} VkAttachmentStoreOp;--typedef enum VkPipelineBindPoint {- VK_PIPELINE_BIND_POINT_GRAPHICS = 0,- VK_PIPELINE_BIND_POINT_COMPUTE = 1,- VK_PIPELINE_BIND_POINT_BEGIN_RANGE = VK_PIPELINE_BIND_POINT_GRAPHICS,- VK_PIPELINE_BIND_POINT_END_RANGE = VK_PIPELINE_BIND_POINT_COMPUTE,- VK_PIPELINE_BIND_POINT_RANGE_SIZE = (VK_PIPELINE_BIND_POINT_COMPUTE - VK_PIPELINE_BIND_POINT_GRAPHICS + 1),- VK_PIPELINE_BIND_POINT_MAX_ENUM = 0x7FFFFFFF-} VkPipelineBindPoint;--typedef enum VkCommandBufferLevel {- VK_COMMAND_BUFFER_LEVEL_PRIMARY = 0,- VK_COMMAND_BUFFER_LEVEL_SECONDARY = 1,- VK_COMMAND_BUFFER_LEVEL_BEGIN_RANGE = VK_COMMAND_BUFFER_LEVEL_PRIMARY,- VK_COMMAND_BUFFER_LEVEL_END_RANGE = VK_COMMAND_BUFFER_LEVEL_SECONDARY,- VK_COMMAND_BUFFER_LEVEL_RANGE_SIZE = (VK_COMMAND_BUFFER_LEVEL_SECONDARY - VK_COMMAND_BUFFER_LEVEL_PRIMARY + 1),- VK_COMMAND_BUFFER_LEVEL_MAX_ENUM = 0x7FFFFFFF-} VkCommandBufferLevel;--typedef enum VkIndexType {- VK_INDEX_TYPE_UINT16 = 0,- VK_INDEX_TYPE_UINT32 = 1,- VK_INDEX_TYPE_BEGIN_RANGE = VK_INDEX_TYPE_UINT16,- VK_INDEX_TYPE_END_RANGE = VK_INDEX_TYPE_UINT32,- VK_INDEX_TYPE_RANGE_SIZE = (VK_INDEX_TYPE_UINT32 - VK_INDEX_TYPE_UINT16 + 1),- VK_INDEX_TYPE_MAX_ENUM = 0x7FFFFFFF-} VkIndexType;--typedef enum VkSubpassContents {- VK_SUBPASS_CONTENTS_INLINE = 0,- VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS = 1,- VK_SUBPASS_CONTENTS_BEGIN_RANGE = VK_SUBPASS_CONTENTS_INLINE,- VK_SUBPASS_CONTENTS_END_RANGE = VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS,- VK_SUBPASS_CONTENTS_RANGE_SIZE = (VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS - VK_SUBPASS_CONTENTS_INLINE + 1),- VK_SUBPASS_CONTENTS_MAX_ENUM = 0x7FFFFFFF-} VkSubpassContents;--typedef enum VkObjectType {- VK_OBJECT_TYPE_UNKNOWN = 0,- VK_OBJECT_TYPE_INSTANCE = 1,- VK_OBJECT_TYPE_PHYSICAL_DEVICE = 2,- VK_OBJECT_TYPE_DEVICE = 3,- VK_OBJECT_TYPE_QUEUE = 4,- VK_OBJECT_TYPE_SEMAPHORE = 5,- VK_OBJECT_TYPE_COMMAND_BUFFER = 6,- VK_OBJECT_TYPE_FENCE = 7,- VK_OBJECT_TYPE_DEVICE_MEMORY = 8,- VK_OBJECT_TYPE_BUFFER = 9,- VK_OBJECT_TYPE_IMAGE = 10,- VK_OBJECT_TYPE_EVENT = 11,- VK_OBJECT_TYPE_QUERY_POOL = 12,- VK_OBJECT_TYPE_BUFFER_VIEW = 13,- VK_OBJECT_TYPE_IMAGE_VIEW = 14,- VK_OBJECT_TYPE_SHADER_MODULE = 15,- VK_OBJECT_TYPE_PIPELINE_CACHE = 16,- VK_OBJECT_TYPE_PIPELINE_LAYOUT = 17,- VK_OBJECT_TYPE_RENDER_PASS = 18,- VK_OBJECT_TYPE_PIPELINE = 19,- VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT = 20,- VK_OBJECT_TYPE_SAMPLER = 21,- VK_OBJECT_TYPE_DESCRIPTOR_POOL = 22,- VK_OBJECT_TYPE_DESCRIPTOR_SET = 23,- VK_OBJECT_TYPE_FRAMEBUFFER = 24,- VK_OBJECT_TYPE_COMMAND_POOL = 25,- VK_OBJECT_TYPE_SURFACE_KHR = 1000000000,- VK_OBJECT_TYPE_SWAPCHAIN_KHR = 1000001000,- VK_OBJECT_TYPE_DISPLAY_KHR = 1000002000,- VK_OBJECT_TYPE_DISPLAY_MODE_KHR = 1000002001,- VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT = 1000011000,- VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR = 1000085000,- VK_OBJECT_TYPE_OBJECT_TABLE_NVX = 1000086000,- VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX = 1000086001,- VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR = 1000156000,- VK_OBJECT_TYPE_VALIDATION_CACHE_EXT = 1000160000,- VK_OBJECT_TYPE_BEGIN_RANGE = VK_OBJECT_TYPE_UNKNOWN,- VK_OBJECT_TYPE_END_RANGE = VK_OBJECT_TYPE_COMMAND_POOL,- VK_OBJECT_TYPE_RANGE_SIZE = (VK_OBJECT_TYPE_COMMAND_POOL - VK_OBJECT_TYPE_UNKNOWN + 1),- VK_OBJECT_TYPE_MAX_ENUM = 0x7FFFFFFF-} VkObjectType;--typedef VkFlags VkInstanceCreateFlags;--typedef enum VkFormatFeatureFlagBits {- VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT = 0x00000001,- VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT = 0x00000002,- VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT = 0x00000004,- VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT = 0x00000008,- VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT = 0x00000010,- VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT = 0x00000020,- VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT = 0x00000040,- VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT = 0x00000080,- VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT = 0x00000100,- VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT = 0x00000200,- VK_FORMAT_FEATURE_BLIT_SRC_BIT = 0x00000400,- VK_FORMAT_FEATURE_BLIT_DST_BIT = 0x00000800,- VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT = 0x00001000,- VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG = 0x00002000,- VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR = 0x00004000,- VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR = 0x00008000,- VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT_EXT = 0x00010000,- VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT_KHR = 0x00020000,- VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT_KHR = 0x00040000,- VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT_KHR = 0x00080000,- VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT_KHR = 0x00100000,- VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT_KHR = 0x00200000,- VK_FORMAT_FEATURE_DISJOINT_BIT_KHR = 0x00400000,- VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT_KHR = 0x00800000,- VK_FORMAT_FEATURE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF-} VkFormatFeatureFlagBits;-typedef VkFlags VkFormatFeatureFlags;--typedef enum VkImageUsageFlagBits {- VK_IMAGE_USAGE_TRANSFER_SRC_BIT = 0x00000001,- VK_IMAGE_USAGE_TRANSFER_DST_BIT = 0x00000002,- VK_IMAGE_USAGE_SAMPLED_BIT = 0x00000004,- VK_IMAGE_USAGE_STORAGE_BIT = 0x00000008,- VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT = 0x00000010,- VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT = 0x00000020,- VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT = 0x00000040,- VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT = 0x00000080,- VK_IMAGE_USAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF-} VkImageUsageFlagBits;-typedef VkFlags VkImageUsageFlags;--typedef enum VkImageCreateFlagBits {- VK_IMAGE_CREATE_SPARSE_BINDING_BIT = 0x00000001,- VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT = 0x00000002,- VK_IMAGE_CREATE_SPARSE_ALIASED_BIT = 0x00000004,- VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT = 0x00000008,- VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT = 0x00000010,- VK_IMAGE_CREATE_BIND_SFR_BIT_KHX = 0x00000040,- VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT_KHR = 0x00000020,- VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT_KHR = 0x00000080,- VK_IMAGE_CREATE_EXTENDED_USAGE_BIT_KHR = 0x00000100,- VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT = 0x00001000,- VK_IMAGE_CREATE_DISJOINT_BIT_KHR = 0x00000200,- VK_IMAGE_CREATE_ALIAS_BIT_KHR = 0x00000400,- VK_IMAGE_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF-} VkImageCreateFlagBits;-typedef VkFlags VkImageCreateFlags;--typedef enum VkSampleCountFlagBits {- VK_SAMPLE_COUNT_1_BIT = 0x00000001,- VK_SAMPLE_COUNT_2_BIT = 0x00000002,- VK_SAMPLE_COUNT_4_BIT = 0x00000004,- VK_SAMPLE_COUNT_8_BIT = 0x00000008,- VK_SAMPLE_COUNT_16_BIT = 0x00000010,- VK_SAMPLE_COUNT_32_BIT = 0x00000020,- VK_SAMPLE_COUNT_64_BIT = 0x00000040,- VK_SAMPLE_COUNT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF-} VkSampleCountFlagBits;-typedef VkFlags VkSampleCountFlags;--typedef enum VkQueueFlagBits {- VK_QUEUE_GRAPHICS_BIT = 0x00000001,- VK_QUEUE_COMPUTE_BIT = 0x00000002,- VK_QUEUE_TRANSFER_BIT = 0x00000004,- VK_QUEUE_SPARSE_BINDING_BIT = 0x00000008,- VK_QUEUE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF-} VkQueueFlagBits;-typedef VkFlags VkQueueFlags;--typedef enum VkMemoryPropertyFlagBits {- VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT = 0x00000001,- VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT = 0x00000002,- VK_MEMORY_PROPERTY_HOST_COHERENT_BIT = 0x00000004,- VK_MEMORY_PROPERTY_HOST_CACHED_BIT = 0x00000008,- VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT = 0x00000010,- VK_MEMORY_PROPERTY_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF-} VkMemoryPropertyFlagBits;-typedef VkFlags VkMemoryPropertyFlags;--typedef enum VkMemoryHeapFlagBits {- VK_MEMORY_HEAP_DEVICE_LOCAL_BIT = 0x00000001,- VK_MEMORY_HEAP_MULTI_INSTANCE_BIT_KHX = 0x00000002,- VK_MEMORY_HEAP_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF-} VkMemoryHeapFlagBits;-typedef VkFlags VkMemoryHeapFlags;-typedef VkFlags VkDeviceCreateFlags;-typedef VkFlags VkDeviceQueueCreateFlags;--typedef enum VkPipelineStageFlagBits {- VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT = 0x00000001,- VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT = 0x00000002,- VK_PIPELINE_STAGE_VERTEX_INPUT_BIT = 0x00000004,- VK_PIPELINE_STAGE_VERTEX_SHADER_BIT = 0x00000008,- VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT = 0x00000010,- VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT = 0x00000020,- VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT = 0x00000040,- VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT = 0x00000080,- VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT = 0x00000100,- VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT = 0x00000200,- VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT = 0x00000400,- VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT = 0x00000800,- VK_PIPELINE_STAGE_TRANSFER_BIT = 0x00001000,- VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT = 0x00002000,- VK_PIPELINE_STAGE_HOST_BIT = 0x00004000,- VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT = 0x00008000,- VK_PIPELINE_STAGE_ALL_COMMANDS_BIT = 0x00010000,- VK_PIPELINE_STAGE_COMMAND_PROCESS_BIT_NVX = 0x00020000,- VK_PIPELINE_STAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF-} VkPipelineStageFlagBits;-typedef VkFlags VkPipelineStageFlags;-typedef VkFlags VkMemoryMapFlags;--typedef enum VkImageAspectFlagBits {- VK_IMAGE_ASPECT_COLOR_BIT = 0x00000001,- VK_IMAGE_ASPECT_DEPTH_BIT = 0x00000002,- VK_IMAGE_ASPECT_STENCIL_BIT = 0x00000004,- VK_IMAGE_ASPECT_METADATA_BIT = 0x00000008,- VK_IMAGE_ASPECT_PLANE_0_BIT_KHR = 0x00000010,- VK_IMAGE_ASPECT_PLANE_1_BIT_KHR = 0x00000020,- VK_IMAGE_ASPECT_PLANE_2_BIT_KHR = 0x00000040,- VK_IMAGE_ASPECT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF-} VkImageAspectFlagBits;-typedef VkFlags VkImageAspectFlags;--typedef enum VkSparseImageFormatFlagBits {- VK_SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT = 0x00000001,- VK_SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT = 0x00000002,- VK_SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT = 0x00000004,- VK_SPARSE_IMAGE_FORMAT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF-} VkSparseImageFormatFlagBits;-typedef VkFlags VkSparseImageFormatFlags;--typedef enum VkSparseMemoryBindFlagBits {- VK_SPARSE_MEMORY_BIND_METADATA_BIT = 0x00000001,- VK_SPARSE_MEMORY_BIND_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF-} VkSparseMemoryBindFlagBits;-typedef VkFlags VkSparseMemoryBindFlags;--typedef enum VkFenceCreateFlagBits {- VK_FENCE_CREATE_SIGNALED_BIT = 0x00000001,- VK_FENCE_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF-} VkFenceCreateFlagBits;-typedef VkFlags VkFenceCreateFlags;-typedef VkFlags VkSemaphoreCreateFlags;-typedef VkFlags VkEventCreateFlags;-typedef VkFlags VkQueryPoolCreateFlags;--typedef enum VkQueryPipelineStatisticFlagBits {- VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT = 0x00000001,- VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT = 0x00000002,- VK_QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT = 0x00000004,- VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_INVOCATIONS_BIT = 0x00000008,- VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT = 0x00000010,- VK_QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT = 0x00000020,- VK_QUERY_PIPELINE_STATISTIC_CLIPPING_PRIMITIVES_BIT = 0x00000040,- VK_QUERY_PIPELINE_STATISTIC_FRAGMENT_SHADER_INVOCATIONS_BIT = 0x00000080,- VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT = 0x00000100,- VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT = 0x00000200,- VK_QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT = 0x00000400,- VK_QUERY_PIPELINE_STATISTIC_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF-} VkQueryPipelineStatisticFlagBits;-typedef VkFlags VkQueryPipelineStatisticFlags;--typedef enum VkQueryResultFlagBits {- VK_QUERY_RESULT_64_BIT = 0x00000001,- VK_QUERY_RESULT_WAIT_BIT = 0x00000002,- VK_QUERY_RESULT_WITH_AVAILABILITY_BIT = 0x00000004,- VK_QUERY_RESULT_PARTIAL_BIT = 0x00000008,- VK_QUERY_RESULT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF-} VkQueryResultFlagBits;-typedef VkFlags VkQueryResultFlags;--typedef enum VkBufferCreateFlagBits {- VK_BUFFER_CREATE_SPARSE_BINDING_BIT = 0x00000001,- VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT = 0x00000002,- VK_BUFFER_CREATE_SPARSE_ALIASED_BIT = 0x00000004,- VK_BUFFER_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF-} VkBufferCreateFlagBits;-typedef VkFlags VkBufferCreateFlags;--typedef enum VkBufferUsageFlagBits {- VK_BUFFER_USAGE_TRANSFER_SRC_BIT = 0x00000001,- VK_BUFFER_USAGE_TRANSFER_DST_BIT = 0x00000002,- VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT = 0x00000004,- VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT = 0x00000008,- VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT = 0x00000010,- VK_BUFFER_USAGE_STORAGE_BUFFER_BIT = 0x00000020,- VK_BUFFER_USAGE_INDEX_BUFFER_BIT = 0x00000040,- VK_BUFFER_USAGE_VERTEX_BUFFER_BIT = 0x00000080,- VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT = 0x00000100,- VK_BUFFER_USAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF-} VkBufferUsageFlagBits;-typedef VkFlags VkBufferUsageFlags;-typedef VkFlags VkBufferViewCreateFlags;-typedef VkFlags VkImageViewCreateFlags;-typedef VkFlags VkShaderModuleCreateFlags;-typedef VkFlags VkPipelineCacheCreateFlags;--typedef enum VkPipelineCreateFlagBits {- VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT = 0x00000001,- VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT = 0x00000002,- VK_PIPELINE_CREATE_DERIVATIVE_BIT = 0x00000004,- VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHX = 0x00000008,- VK_PIPELINE_CREATE_DISPATCH_BASE_KHX = 0x00000010,- VK_PIPELINE_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF-} VkPipelineCreateFlagBits;-typedef VkFlags VkPipelineCreateFlags;-typedef VkFlags VkPipelineShaderStageCreateFlags;--typedef enum VkShaderStageFlagBits {- VK_SHADER_STAGE_VERTEX_BIT = 0x00000001,- VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT = 0x00000002,- VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT = 0x00000004,- VK_SHADER_STAGE_GEOMETRY_BIT = 0x00000008,- VK_SHADER_STAGE_FRAGMENT_BIT = 0x00000010,- VK_SHADER_STAGE_COMPUTE_BIT = 0x00000020,- VK_SHADER_STAGE_ALL_GRAPHICS = 0x0000001F,- VK_SHADER_STAGE_ALL = 0x7FFFFFFF,- VK_SHADER_STAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF-} VkShaderStageFlagBits;-typedef VkFlags VkPipelineVertexInputStateCreateFlags;-typedef VkFlags VkPipelineInputAssemblyStateCreateFlags;-typedef VkFlags VkPipelineTessellationStateCreateFlags;-typedef VkFlags VkPipelineViewportStateCreateFlags;-typedef VkFlags VkPipelineRasterizationStateCreateFlags;--typedef enum VkCullModeFlagBits {- VK_CULL_MODE_NONE = 0,- VK_CULL_MODE_FRONT_BIT = 0x00000001,- VK_CULL_MODE_BACK_BIT = 0x00000002,- VK_CULL_MODE_FRONT_AND_BACK = 0x00000003,- VK_CULL_MODE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF-} VkCullModeFlagBits;-typedef VkFlags VkCullModeFlags;-typedef VkFlags VkPipelineMultisampleStateCreateFlags;-typedef VkFlags VkPipelineDepthStencilStateCreateFlags;-typedef VkFlags VkPipelineColorBlendStateCreateFlags;--typedef enum VkColorComponentFlagBits {- VK_COLOR_COMPONENT_R_BIT = 0x00000001,- VK_COLOR_COMPONENT_G_BIT = 0x00000002,- VK_COLOR_COMPONENT_B_BIT = 0x00000004,- VK_COLOR_COMPONENT_A_BIT = 0x00000008,- VK_COLOR_COMPONENT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF-} VkColorComponentFlagBits;-typedef VkFlags VkColorComponentFlags;-typedef VkFlags VkPipelineDynamicStateCreateFlags;-typedef VkFlags VkPipelineLayoutCreateFlags;-typedef VkFlags VkShaderStageFlags;-typedef VkFlags VkSamplerCreateFlags;--typedef enum VkDescriptorSetLayoutCreateFlagBits {- VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR = 0x00000001,- VK_DESCRIPTOR_SET_LAYOUT_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF-} VkDescriptorSetLayoutCreateFlagBits;-typedef VkFlags VkDescriptorSetLayoutCreateFlags;--typedef enum VkDescriptorPoolCreateFlagBits {- VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT = 0x00000001,- VK_DESCRIPTOR_POOL_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF-} VkDescriptorPoolCreateFlagBits;-typedef VkFlags VkDescriptorPoolCreateFlags;-typedef VkFlags VkDescriptorPoolResetFlags;-typedef VkFlags VkFramebufferCreateFlags;-typedef VkFlags VkRenderPassCreateFlags;--typedef enum VkAttachmentDescriptionFlagBits {- VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT = 0x00000001,- VK_ATTACHMENT_DESCRIPTION_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF-} VkAttachmentDescriptionFlagBits;-typedef VkFlags VkAttachmentDescriptionFlags;--typedef enum VkSubpassDescriptionFlagBits {- VK_SUBPASS_DESCRIPTION_PER_VIEW_ATTRIBUTES_BIT_NVX = 0x00000001,- VK_SUBPASS_DESCRIPTION_PER_VIEW_POSITION_X_ONLY_BIT_NVX = 0x00000002,- VK_SUBPASS_DESCRIPTION_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF-} VkSubpassDescriptionFlagBits;-typedef VkFlags VkSubpassDescriptionFlags;--typedef enum VkAccessFlagBits {- VK_ACCESS_INDIRECT_COMMAND_READ_BIT = 0x00000001,- VK_ACCESS_INDEX_READ_BIT = 0x00000002,- VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT = 0x00000004,- VK_ACCESS_UNIFORM_READ_BIT = 0x00000008,- VK_ACCESS_INPUT_ATTACHMENT_READ_BIT = 0x00000010,- VK_ACCESS_SHADER_READ_BIT = 0x00000020,- VK_ACCESS_SHADER_WRITE_BIT = 0x00000040,- VK_ACCESS_COLOR_ATTACHMENT_READ_BIT = 0x00000080,- VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT = 0x00000100,- VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT = 0x00000200,- VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT = 0x00000400,- VK_ACCESS_TRANSFER_READ_BIT = 0x00000800,- VK_ACCESS_TRANSFER_WRITE_BIT = 0x00001000,- VK_ACCESS_HOST_READ_BIT = 0x00002000,- VK_ACCESS_HOST_WRITE_BIT = 0x00004000,- VK_ACCESS_MEMORY_READ_BIT = 0x00008000,- VK_ACCESS_MEMORY_WRITE_BIT = 0x00010000,- VK_ACCESS_COMMAND_PROCESS_READ_BIT_NVX = 0x00020000,- VK_ACCESS_COMMAND_PROCESS_WRITE_BIT_NVX = 0x00040000,- VK_ACCESS_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT = 0x00080000,- VK_ACCESS_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF-} VkAccessFlagBits;-typedef VkFlags VkAccessFlags;--typedef enum VkDependencyFlagBits {- VK_DEPENDENCY_BY_REGION_BIT = 0x00000001,- VK_DEPENDENCY_VIEW_LOCAL_BIT_KHX = 0x00000002,- VK_DEPENDENCY_DEVICE_GROUP_BIT_KHX = 0x00000004,- VK_DEPENDENCY_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF-} VkDependencyFlagBits;-typedef VkFlags VkDependencyFlags;--typedef enum VkCommandPoolCreateFlagBits {- VK_COMMAND_POOL_CREATE_TRANSIENT_BIT = 0x00000001,- VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT = 0x00000002,- VK_COMMAND_POOL_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF-} VkCommandPoolCreateFlagBits;-typedef VkFlags VkCommandPoolCreateFlags;--typedef enum VkCommandPoolResetFlagBits {- VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT = 0x00000001,- VK_COMMAND_POOL_RESET_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF-} VkCommandPoolResetFlagBits;-typedef VkFlags VkCommandPoolResetFlags;--typedef enum VkCommandBufferUsageFlagBits {- VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT = 0x00000001,- VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT = 0x00000002,- VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT = 0x00000004,- VK_COMMAND_BUFFER_USAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF-} VkCommandBufferUsageFlagBits;-typedef VkFlags VkCommandBufferUsageFlags;--typedef enum VkQueryControlFlagBits {- VK_QUERY_CONTROL_PRECISE_BIT = 0x00000001,- VK_QUERY_CONTROL_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF-} VkQueryControlFlagBits;-typedef VkFlags VkQueryControlFlags;--typedef enum VkCommandBufferResetFlagBits {- VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT = 0x00000001,- VK_COMMAND_BUFFER_RESET_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF-} VkCommandBufferResetFlagBits;-typedef VkFlags VkCommandBufferResetFlags;--typedef enum VkStencilFaceFlagBits {- VK_STENCIL_FACE_FRONT_BIT = 0x00000001,- VK_STENCIL_FACE_BACK_BIT = 0x00000002,- VK_STENCIL_FRONT_AND_BACK = 0x00000003,- VK_STENCIL_FACE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF-} VkStencilFaceFlagBits;-typedef VkFlags VkStencilFaceFlags;--typedef struct VkApplicationInfo {- VkStructureType sType;- const void* pNext;- const char* pApplicationName;- uint32_t applicationVersion;- const char* pEngineName;- uint32_t engineVersion;- uint32_t apiVersion;-} VkApplicationInfo;--typedef struct VkInstanceCreateInfo {- VkStructureType sType;- const void* pNext;- VkInstanceCreateFlags flags;- const VkApplicationInfo* pApplicationInfo;- uint32_t enabledLayerCount;- const char* const* ppEnabledLayerNames;- uint32_t enabledExtensionCount;- const char* const* ppEnabledExtensionNames;-} VkInstanceCreateInfo;--typedef void* (VKAPI_PTR *PFN_vkAllocationFunction)(- void* pUserData,- size_t size,- size_t alignment,- VkSystemAllocationScope allocationScope);--typedef void* (VKAPI_PTR *PFN_vkReallocationFunction)(- void* pUserData,- void* pOriginal,- size_t size,- size_t alignment,- VkSystemAllocationScope allocationScope);--typedef void (VKAPI_PTR *PFN_vkFreeFunction)(- void* pUserData,- void* pMemory);--typedef void (VKAPI_PTR *PFN_vkInternalAllocationNotification)(- void* pUserData,- size_t size,- VkInternalAllocationType allocationType,- VkSystemAllocationScope allocationScope);--typedef void (VKAPI_PTR *PFN_vkInternalFreeNotification)(- void* pUserData,- size_t size,- VkInternalAllocationType allocationType,- VkSystemAllocationScope allocationScope);--typedef struct VkAllocationCallbacks {- void* pUserData;- PFN_vkAllocationFunction pfnAllocation;- PFN_vkReallocationFunction pfnReallocation;- PFN_vkFreeFunction pfnFree;- PFN_vkInternalAllocationNotification pfnInternalAllocation;- PFN_vkInternalFreeNotification pfnInternalFree;-} VkAllocationCallbacks;--typedef struct VkPhysicalDeviceFeatures {- VkBool32 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;-} VkPhysicalDeviceFeatures;--typedef struct VkFormatProperties {- VkFormatFeatureFlags linearTilingFeatures;- VkFormatFeatureFlags optimalTilingFeatures;- VkFormatFeatureFlags bufferFeatures;-} VkFormatProperties;--typedef struct VkExtent3D {- uint32_t width;- uint32_t height;- uint32_t depth;-} VkExtent3D;--typedef struct VkImageFormatProperties {- VkExtent3D maxExtent;- uint32_t maxMipLevels;- uint32_t maxArrayLayers;- VkSampleCountFlags sampleCounts;- VkDeviceSize maxResourceSize;-} VkImageFormatProperties;--typedef struct VkPhysicalDeviceLimits {- uint32_t maxImageDimension1D;- uint32_t maxImageDimension2D;- uint32_t maxImageDimension3D;- uint32_t maxImageDimensionCube;- uint32_t maxImageArrayLayers;- uint32_t maxTexelBufferElements;- uint32_t maxUniformBufferRange;- uint32_t maxStorageBufferRange;- uint32_t maxPushConstantsSize;- uint32_t maxMemoryAllocationCount;- uint32_t maxSamplerAllocationCount;- VkDeviceSize bufferImageGranularity;- VkDeviceSize sparseAddressSpaceSize;- uint32_t maxBoundDescriptorSets;- uint32_t maxPerStageDescriptorSamplers;- uint32_t maxPerStageDescriptorUniformBuffers;- uint32_t maxPerStageDescriptorStorageBuffers;- uint32_t maxPerStageDescriptorSampledImages;- uint32_t maxPerStageDescriptorStorageImages;- uint32_t maxPerStageDescriptorInputAttachments;- uint32_t maxPerStageResources;- uint32_t maxDescriptorSetSamplers;- uint32_t maxDescriptorSetUniformBuffers;- uint32_t maxDescriptorSetUniformBuffersDynamic;- uint32_t maxDescriptorSetStorageBuffers;- uint32_t maxDescriptorSetStorageBuffersDynamic;- uint32_t maxDescriptorSetSampledImages;- uint32_t maxDescriptorSetStorageImages;- uint32_t maxDescriptorSetInputAttachments;- uint32_t maxVertexInputAttributes;- uint32_t maxVertexInputBindings;- uint32_t maxVertexInputAttributeOffset;- uint32_t maxVertexInputBindingStride;- uint32_t maxVertexOutputComponents;- uint32_t maxTessellationGenerationLevel;- uint32_t maxTessellationPatchSize;- uint32_t maxTessellationControlPerVertexInputComponents;- uint32_t maxTessellationControlPerVertexOutputComponents;- uint32_t maxTessellationControlPerPatchOutputComponents;- uint32_t maxTessellationControlTotalOutputComponents;- uint32_t maxTessellationEvaluationInputComponents;- uint32_t maxTessellationEvaluationOutputComponents;- uint32_t maxGeometryShaderInvocations;- uint32_t maxGeometryInputComponents;- uint32_t maxGeometryOutputComponents;- uint32_t maxGeometryOutputVertices;- uint32_t maxGeometryTotalOutputComponents;- uint32_t maxFragmentInputComponents;- uint32_t maxFragmentOutputAttachments;- uint32_t maxFragmentDualSrcAttachments;- uint32_t maxFragmentCombinedOutputResources;- uint32_t maxComputeSharedMemorySize;- uint32_t maxComputeWorkGroupCount[3];- uint32_t maxComputeWorkGroupInvocations;- uint32_t maxComputeWorkGroupSize[3];- uint32_t subPixelPrecisionBits;- uint32_t subTexelPrecisionBits;- uint32_t mipmapPrecisionBits;- uint32_t maxDrawIndexedIndexValue;- uint32_t maxDrawIndirectCount;- float maxSamplerLodBias;- float maxSamplerAnisotropy;- uint32_t maxViewports;- uint32_t maxViewportDimensions[2];- float viewportBoundsRange[2];- uint32_t viewportSubPixelBits;- size_t minMemoryMapAlignment;- VkDeviceSize minTexelBufferOffsetAlignment;- VkDeviceSize minUniformBufferOffsetAlignment;- VkDeviceSize minStorageBufferOffsetAlignment;- int32_t minTexelOffset;- uint32_t maxTexelOffset;- int32_t minTexelGatherOffset;- uint32_t maxTexelGatherOffset;- float minInterpolationOffset;- float maxInterpolationOffset;- uint32_t subPixelInterpolationOffsetBits;- uint32_t maxFramebufferWidth;- uint32_t maxFramebufferHeight;- uint32_t maxFramebufferLayers;- VkSampleCountFlags framebufferColorSampleCounts;- VkSampleCountFlags framebufferDepthSampleCounts;- VkSampleCountFlags framebufferStencilSampleCounts;- VkSampleCountFlags framebufferNoAttachmentsSampleCounts;- uint32_t maxColorAttachments;- VkSampleCountFlags sampledImageColorSampleCounts;- VkSampleCountFlags sampledImageIntegerSampleCounts;- VkSampleCountFlags sampledImageDepthSampleCounts;- VkSampleCountFlags sampledImageStencilSampleCounts;- VkSampleCountFlags storageImageSampleCounts;- uint32_t maxSampleMaskWords;- VkBool32 timestampComputeAndGraphics;- float timestampPeriod;- uint32_t maxClipDistances;- uint32_t maxCullDistances;- uint32_t maxCombinedClipAndCullDistances;- uint32_t discreteQueuePriorities;- float pointSizeRange[2];- float lineWidthRange[2];- float pointSizeGranularity;- float lineWidthGranularity;- VkBool32 strictLines;- VkBool32 standardSampleLocations;- VkDeviceSize optimalBufferCopyOffsetAlignment;- VkDeviceSize optimalBufferCopyRowPitchAlignment;- VkDeviceSize nonCoherentAtomSize;-} VkPhysicalDeviceLimits;--typedef struct VkPhysicalDeviceSparseProperties {- VkBool32 residencyStandard2DBlockShape;- VkBool32 residencyStandard2DMultisampleBlockShape;- VkBool32 residencyStandard3DBlockShape;- VkBool32 residencyAlignedMipSize;- VkBool32 residencyNonResidentStrict;-} VkPhysicalDeviceSparseProperties;--typedef struct VkPhysicalDeviceProperties {- uint32_t apiVersion;- uint32_t driverVersion;- uint32_t vendorID;- uint32_t deviceID;- VkPhysicalDeviceType deviceType;- char deviceName[VK_MAX_PHYSICAL_DEVICE_NAME_SIZE];- uint8_t pipelineCacheUUID[VK_UUID_SIZE];- VkPhysicalDeviceLimits limits;- VkPhysicalDeviceSparseProperties sparseProperties;-} VkPhysicalDeviceProperties;--typedef struct VkQueueFamilyProperties {- VkQueueFlags queueFlags;- uint32_t queueCount;- uint32_t timestampValidBits;- VkExtent3D minImageTransferGranularity;-} VkQueueFamilyProperties;--typedef struct VkMemoryType {- VkMemoryPropertyFlags propertyFlags;- uint32_t heapIndex;-} VkMemoryType;--typedef struct VkMemoryHeap {- VkDeviceSize size;- VkMemoryHeapFlags flags;-} VkMemoryHeap;--typedef struct VkPhysicalDeviceMemoryProperties {- uint32_t memoryTypeCount;- VkMemoryType memoryTypes[VK_MAX_MEMORY_TYPES];- uint32_t memoryHeapCount;- VkMemoryHeap memoryHeaps[VK_MAX_MEMORY_HEAPS];-} VkPhysicalDeviceMemoryProperties;--typedef void (VKAPI_PTR *PFN_vkVoidFunction)(void);-typedef struct VkDeviceQueueCreateInfo {- VkStructureType sType;- const void* pNext;- VkDeviceQueueCreateFlags flags;- uint32_t queueFamilyIndex;- uint32_t queueCount;- const float* pQueuePriorities;-} VkDeviceQueueCreateInfo;--typedef struct VkDeviceCreateInfo {- VkStructureType sType;- const void* pNext;- VkDeviceCreateFlags flags;- uint32_t queueCreateInfoCount;- const VkDeviceQueueCreateInfo* pQueueCreateInfos;- uint32_t enabledLayerCount;- const char* const* ppEnabledLayerNames;- uint32_t enabledExtensionCount;- const char* const* ppEnabledExtensionNames;- const VkPhysicalDeviceFeatures* pEnabledFeatures;-} VkDeviceCreateInfo;--typedef struct VkExtensionProperties {- char extensionName[VK_MAX_EXTENSION_NAME_SIZE];- uint32_t specVersion;-} VkExtensionProperties;--typedef struct VkLayerProperties {- char layerName[VK_MAX_EXTENSION_NAME_SIZE];- uint32_t specVersion;- uint32_t implementationVersion;- char description[VK_MAX_DESCRIPTION_SIZE];-} VkLayerProperties;--typedef struct VkSubmitInfo {- VkStructureType sType;- const void* pNext;- uint32_t waitSemaphoreCount;- const VkSemaphore* pWaitSemaphores;- const VkPipelineStageFlags* pWaitDstStageMask;- uint32_t commandBufferCount;- const VkCommandBuffer* pCommandBuffers;- uint32_t signalSemaphoreCount;- const VkSemaphore* pSignalSemaphores;-} VkSubmitInfo;--typedef struct VkMemoryAllocateInfo {- VkStructureType sType;- const void* pNext;- VkDeviceSize allocationSize;- uint32_t memoryTypeIndex;-} VkMemoryAllocateInfo;--typedef struct VkMappedMemoryRange {- VkStructureType sType;- const void* pNext;- VkDeviceMemory memory;- VkDeviceSize offset;- VkDeviceSize size;-} VkMappedMemoryRange;--typedef struct VkMemoryRequirements {- VkDeviceSize size;- VkDeviceSize alignment;- uint32_t memoryTypeBits;-} VkMemoryRequirements;--typedef struct VkSparseImageFormatProperties {- VkImageAspectFlags aspectMask;- VkExtent3D imageGranularity;- VkSparseImageFormatFlags flags;-} VkSparseImageFormatProperties;--typedef struct VkSparseImageMemoryRequirements {- VkSparseImageFormatProperties formatProperties;- uint32_t imageMipTailFirstLod;- VkDeviceSize imageMipTailSize;- VkDeviceSize imageMipTailOffset;- VkDeviceSize imageMipTailStride;-} VkSparseImageMemoryRequirements;--typedef struct VkSparseMemoryBind {- VkDeviceSize resourceOffset;- VkDeviceSize size;- VkDeviceMemory memory;- VkDeviceSize memoryOffset;- VkSparseMemoryBindFlags flags;-} VkSparseMemoryBind;--typedef struct VkSparseBufferMemoryBindInfo {- VkBuffer buffer;- uint32_t bindCount;- const VkSparseMemoryBind* pBinds;-} VkSparseBufferMemoryBindInfo;--typedef struct VkSparseImageOpaqueMemoryBindInfo {- VkImage image;- uint32_t bindCount;- const VkSparseMemoryBind* pBinds;-} VkSparseImageOpaqueMemoryBindInfo;--typedef struct VkImageSubresource {- VkImageAspectFlags aspectMask;- uint32_t mipLevel;- uint32_t arrayLayer;-} VkImageSubresource;--typedef struct VkOffset3D {- int32_t x;- int32_t y;- int32_t z;-} VkOffset3D;--typedef struct VkSparseImageMemoryBind {- VkImageSubresource subresource;- VkOffset3D offset;- VkExtent3D extent;- VkDeviceMemory memory;- VkDeviceSize memoryOffset;- VkSparseMemoryBindFlags flags;-} VkSparseImageMemoryBind;--typedef struct VkSparseImageMemoryBindInfo {- VkImage image;- uint32_t bindCount;- const VkSparseImageMemoryBind* pBinds;-} VkSparseImageMemoryBindInfo;--typedef struct VkBindSparseInfo {- VkStructureType sType;- const void* pNext;- uint32_t waitSemaphoreCount;- const VkSemaphore* pWaitSemaphores;- uint32_t bufferBindCount;- const VkSparseBufferMemoryBindInfo* pBufferBinds;- uint32_t imageOpaqueBindCount;- const VkSparseImageOpaqueMemoryBindInfo* pImageOpaqueBinds;- uint32_t imageBindCount;- const VkSparseImageMemoryBindInfo* pImageBinds;- uint32_t signalSemaphoreCount;- const VkSemaphore* pSignalSemaphores;-} VkBindSparseInfo;--typedef struct VkFenceCreateInfo {- VkStructureType sType;- const void* pNext;- VkFenceCreateFlags flags;-} VkFenceCreateInfo;--typedef struct VkSemaphoreCreateInfo {- VkStructureType sType;- const void* pNext;- VkSemaphoreCreateFlags flags;-} VkSemaphoreCreateInfo;--typedef struct VkEventCreateInfo {- VkStructureType sType;- const void* pNext;- VkEventCreateFlags flags;-} VkEventCreateInfo;--typedef struct VkQueryPoolCreateInfo {- VkStructureType sType;- const void* pNext;- VkQueryPoolCreateFlags flags;- VkQueryType queryType;- uint32_t queryCount;- VkQueryPipelineStatisticFlags pipelineStatistics;-} VkQueryPoolCreateInfo;--typedef struct VkBufferCreateInfo {- VkStructureType sType;- const void* pNext;- VkBufferCreateFlags flags;- VkDeviceSize size;- VkBufferUsageFlags usage;- VkSharingMode sharingMode;- uint32_t queueFamilyIndexCount;- const uint32_t* pQueueFamilyIndices;-} VkBufferCreateInfo;--typedef struct VkBufferViewCreateInfo {- VkStructureType sType;- const void* pNext;- VkBufferViewCreateFlags flags;- VkBuffer buffer;- VkFormat format;- VkDeviceSize offset;- VkDeviceSize range;-} VkBufferViewCreateInfo;--typedef struct VkImageCreateInfo {- VkStructureType sType;- const void* pNext;- VkImageCreateFlags flags;- VkImageType imageType;- VkFormat format;- VkExtent3D extent;- uint32_t mipLevels;- uint32_t arrayLayers;- VkSampleCountFlagBits samples;- VkImageTiling tiling;- VkImageUsageFlags usage;- VkSharingMode sharingMode;- uint32_t queueFamilyIndexCount;- const uint32_t* pQueueFamilyIndices;- VkImageLayout initialLayout;-} VkImageCreateInfo;--typedef struct VkSubresourceLayout {- VkDeviceSize offset;- VkDeviceSize size;- VkDeviceSize rowPitch;- VkDeviceSize arrayPitch;- VkDeviceSize depthPitch;-} VkSubresourceLayout;--typedef struct VkComponentMapping {- VkComponentSwizzle r;- VkComponentSwizzle g;- VkComponentSwizzle b;- VkComponentSwizzle a;-} VkComponentMapping;--typedef struct VkImageSubresourceRange {- VkImageAspectFlags aspectMask;- uint32_t baseMipLevel;- uint32_t levelCount;- uint32_t baseArrayLayer;- uint32_t layerCount;-} VkImageSubresourceRange;--typedef struct VkImageViewCreateInfo {- VkStructureType sType;- const void* pNext;- VkImageViewCreateFlags flags;- VkImage image;- VkImageViewType viewType;- VkFormat format;- VkComponentMapping components;- VkImageSubresourceRange subresourceRange;-} VkImageViewCreateInfo;--typedef struct VkShaderModuleCreateInfo {- VkStructureType sType;- const void* pNext;- VkShaderModuleCreateFlags flags;- size_t codeSize;- const uint32_t* pCode;-} VkShaderModuleCreateInfo;--typedef struct VkPipelineCacheCreateInfo {- VkStructureType sType;- const void* pNext;- VkPipelineCacheCreateFlags flags;- size_t initialDataSize;- const void* pInitialData;-} VkPipelineCacheCreateInfo;--typedef struct VkSpecializationMapEntry {- uint32_t constantID;- uint32_t offset;- size_t size;-} VkSpecializationMapEntry;--typedef struct VkSpecializationInfo {- uint32_t mapEntryCount;- const VkSpecializationMapEntry* pMapEntries;- size_t dataSize;- const void* pData;-} VkSpecializationInfo;--typedef struct VkPipelineShaderStageCreateInfo {- VkStructureType sType;- const void* pNext;- VkPipelineShaderStageCreateFlags flags;- VkShaderStageFlagBits stage;- VkShaderModule module;- const char* pName;- const VkSpecializationInfo* pSpecializationInfo;-} VkPipelineShaderStageCreateInfo;--typedef struct VkVertexInputBindingDescription {- uint32_t binding;- uint32_t stride;- VkVertexInputRate inputRate;-} VkVertexInputBindingDescription;--typedef struct VkVertexInputAttributeDescription {- uint32_t location;- uint32_t binding;- VkFormat format;- uint32_t offset;-} VkVertexInputAttributeDescription;--typedef struct VkPipelineVertexInputStateCreateInfo {- VkStructureType sType;- const void* pNext;- VkPipelineVertexInputStateCreateFlags flags;- uint32_t vertexBindingDescriptionCount;- const VkVertexInputBindingDescription* pVertexBindingDescriptions;- uint32_t vertexAttributeDescriptionCount;- const VkVertexInputAttributeDescription* pVertexAttributeDescriptions;-} VkPipelineVertexInputStateCreateInfo;--typedef struct VkPipelineInputAssemblyStateCreateInfo {- VkStructureType sType;- const void* pNext;- VkPipelineInputAssemblyStateCreateFlags flags;- VkPrimitiveTopology topology;- VkBool32 primitiveRestartEnable;-} VkPipelineInputAssemblyStateCreateInfo;--typedef struct VkPipelineTessellationStateCreateInfo {- VkStructureType sType;- const void* pNext;- VkPipelineTessellationStateCreateFlags flags;- uint32_t patchControlPoints;-} VkPipelineTessellationStateCreateInfo;--typedef struct VkViewport {- float x;- float y;- float width;- float height;- float minDepth;- float maxDepth;-} VkViewport;--typedef struct VkOffset2D {- int32_t x;- int32_t y;-} VkOffset2D;--typedef struct VkExtent2D {- uint32_t width;- uint32_t height;-} VkExtent2D;--typedef struct VkRect2D {- VkOffset2D offset;- VkExtent2D extent;-} VkRect2D;--typedef struct VkPipelineViewportStateCreateInfo {- VkStructureType sType;- const void* pNext;- VkPipelineViewportStateCreateFlags flags;- uint32_t viewportCount;- const VkViewport* pViewports;- uint32_t scissorCount;- const VkRect2D* pScissors;-} VkPipelineViewportStateCreateInfo;--typedef struct VkPipelineRasterizationStateCreateInfo {- VkStructureType sType;- const void* pNext;- VkPipelineRasterizationStateCreateFlags flags;- VkBool32 depthClampEnable;- VkBool32 rasterizerDiscardEnable;- VkPolygonMode polygonMode;- VkCullModeFlags cullMode;- VkFrontFace frontFace;- VkBool32 depthBiasEnable;- float depthBiasConstantFactor;- float depthBiasClamp;- float depthBiasSlopeFactor;- float lineWidth;-} VkPipelineRasterizationStateCreateInfo;--typedef struct VkPipelineMultisampleStateCreateInfo {- VkStructureType sType;- const void* pNext;- VkPipelineMultisampleStateCreateFlags flags;- VkSampleCountFlagBits rasterizationSamples;- VkBool32 sampleShadingEnable;- float minSampleShading;- const VkSampleMask* pSampleMask;- VkBool32 alphaToCoverageEnable;- VkBool32 alphaToOneEnable;-} VkPipelineMultisampleStateCreateInfo;--typedef struct VkStencilOpState {- VkStencilOp failOp;- VkStencilOp passOp;- VkStencilOp depthFailOp;- VkCompareOp compareOp;- uint32_t compareMask;- uint32_t writeMask;- uint32_t reference;-} VkStencilOpState;--typedef struct VkPipelineDepthStencilStateCreateInfo {- VkStructureType sType;- const void* pNext;- VkPipelineDepthStencilStateCreateFlags flags;- VkBool32 depthTestEnable;- VkBool32 depthWriteEnable;- VkCompareOp depthCompareOp;- VkBool32 depthBoundsTestEnable;- VkBool32 stencilTestEnable;- VkStencilOpState front;- VkStencilOpState back;- float minDepthBounds;- float maxDepthBounds;-} VkPipelineDepthStencilStateCreateInfo;--typedef struct VkPipelineColorBlendAttachmentState {- VkBool32 blendEnable;- VkBlendFactor srcColorBlendFactor;- VkBlendFactor dstColorBlendFactor;- VkBlendOp colorBlendOp;- VkBlendFactor srcAlphaBlendFactor;- VkBlendFactor dstAlphaBlendFactor;- VkBlendOp alphaBlendOp;- VkColorComponentFlags colorWriteMask;-} VkPipelineColorBlendAttachmentState;--typedef struct VkPipelineColorBlendStateCreateInfo {- VkStructureType sType;- const void* pNext;- VkPipelineColorBlendStateCreateFlags flags;- VkBool32 logicOpEnable;- VkLogicOp logicOp;- uint32_t attachmentCount;- const VkPipelineColorBlendAttachmentState* pAttachments;- float blendConstants[4];-} VkPipelineColorBlendStateCreateInfo;--typedef struct VkPipelineDynamicStateCreateInfo {- VkStructureType sType;- const void* pNext;- VkPipelineDynamicStateCreateFlags flags;- uint32_t dynamicStateCount;- const VkDynamicState* pDynamicStates;-} VkPipelineDynamicStateCreateInfo;--typedef struct VkGraphicsPipelineCreateInfo {- VkStructureType sType;- const void* pNext;- VkPipelineCreateFlags flags;- uint32_t stageCount;- const VkPipelineShaderStageCreateInfo* pStages;- const VkPipelineVertexInputStateCreateInfo* pVertexInputState;- const VkPipelineInputAssemblyStateCreateInfo* pInputAssemblyState;- const VkPipelineTessellationStateCreateInfo* pTessellationState;- const VkPipelineViewportStateCreateInfo* pViewportState;- const VkPipelineRasterizationStateCreateInfo* pRasterizationState;- const VkPipelineMultisampleStateCreateInfo* pMultisampleState;- const VkPipelineDepthStencilStateCreateInfo* pDepthStencilState;- const VkPipelineColorBlendStateCreateInfo* pColorBlendState;- const VkPipelineDynamicStateCreateInfo* pDynamicState;- VkPipelineLayout layout;- VkRenderPass renderPass;- uint32_t subpass;- VkPipeline basePipelineHandle;- int32_t basePipelineIndex;-} VkGraphicsPipelineCreateInfo;--typedef struct VkComputePipelineCreateInfo {- VkStructureType sType;- const void* pNext;- VkPipelineCreateFlags flags;- VkPipelineShaderStageCreateInfo stage;- VkPipelineLayout layout;- VkPipeline basePipelineHandle;- int32_t basePipelineIndex;-} VkComputePipelineCreateInfo;--typedef struct VkPushConstantRange {- VkShaderStageFlags stageFlags;- uint32_t offset;- uint32_t size;-} VkPushConstantRange;--typedef struct VkPipelineLayoutCreateInfo {- VkStructureType sType;- const void* pNext;- VkPipelineLayoutCreateFlags flags;- uint32_t setLayoutCount;- const VkDescriptorSetLayout* pSetLayouts;- uint32_t pushConstantRangeCount;- const VkPushConstantRange* pPushConstantRanges;-} VkPipelineLayoutCreateInfo;--typedef struct VkSamplerCreateInfo {- VkStructureType sType;- const void* pNext;- VkSamplerCreateFlags flags;- VkFilter magFilter;- VkFilter minFilter;- VkSamplerMipmapMode mipmapMode;- VkSamplerAddressMode addressModeU;- VkSamplerAddressMode addressModeV;- VkSamplerAddressMode addressModeW;- float mipLodBias;- VkBool32 anisotropyEnable;- float maxAnisotropy;- VkBool32 compareEnable;- VkCompareOp compareOp;- float minLod;- float maxLod;- VkBorderColor borderColor;- VkBool32 unnormalizedCoordinates;-} VkSamplerCreateInfo;--typedef struct VkDescriptorSetLayoutBinding {- uint32_t binding;- VkDescriptorType descriptorType;- uint32_t descriptorCount;- VkShaderStageFlags stageFlags;- const VkSampler* pImmutableSamplers;-} VkDescriptorSetLayoutBinding;--typedef struct VkDescriptorSetLayoutCreateInfo {- VkStructureType sType;- const void* pNext;- VkDescriptorSetLayoutCreateFlags flags;- uint32_t bindingCount;- const VkDescriptorSetLayoutBinding* pBindings;-} VkDescriptorSetLayoutCreateInfo;--typedef struct VkDescriptorPoolSize {- VkDescriptorType type;- uint32_t descriptorCount;-} VkDescriptorPoolSize;--typedef struct VkDescriptorPoolCreateInfo {- VkStructureType sType;- const void* pNext;- VkDescriptorPoolCreateFlags flags;- uint32_t maxSets;- uint32_t poolSizeCount;- const VkDescriptorPoolSize* pPoolSizes;-} VkDescriptorPoolCreateInfo;--typedef struct VkDescriptorSetAllocateInfo {- VkStructureType sType;- const void* pNext;- VkDescriptorPool descriptorPool;- uint32_t descriptorSetCount;- const VkDescriptorSetLayout* pSetLayouts;-} VkDescriptorSetAllocateInfo;--typedef struct VkDescriptorImageInfo {- VkSampler sampler;- VkImageView imageView;- VkImageLayout imageLayout;-} VkDescriptorImageInfo;--typedef struct VkDescriptorBufferInfo {- VkBuffer buffer;- VkDeviceSize offset;- VkDeviceSize range;-} VkDescriptorBufferInfo;--typedef struct VkWriteDescriptorSet {- VkStructureType sType;- const void* pNext;- VkDescriptorSet dstSet;- uint32_t dstBinding;- uint32_t dstArrayElement;- uint32_t descriptorCount;- VkDescriptorType descriptorType;- const VkDescriptorImageInfo* pImageInfo;- const VkDescriptorBufferInfo* pBufferInfo;- const VkBufferView* pTexelBufferView;-} VkWriteDescriptorSet;--typedef struct VkCopyDescriptorSet {- VkStructureType sType;- const void* pNext;- VkDescriptorSet srcSet;- uint32_t srcBinding;- uint32_t srcArrayElement;- VkDescriptorSet dstSet;- uint32_t dstBinding;- uint32_t dstArrayElement;- uint32_t descriptorCount;-} VkCopyDescriptorSet;--typedef struct VkFramebufferCreateInfo {- VkStructureType sType;- const void* pNext;- VkFramebufferCreateFlags flags;- VkRenderPass renderPass;- uint32_t attachmentCount;- const VkImageView* pAttachments;- uint32_t width;- uint32_t height;- uint32_t layers;-} VkFramebufferCreateInfo;--typedef struct VkAttachmentDescription {- VkAttachmentDescriptionFlags flags;- VkFormat format;- VkSampleCountFlagBits samples;- VkAttachmentLoadOp loadOp;- VkAttachmentStoreOp storeOp;- VkAttachmentLoadOp stencilLoadOp;- VkAttachmentStoreOp stencilStoreOp;- VkImageLayout initialLayout;- VkImageLayout finalLayout;-} VkAttachmentDescription;--typedef struct VkAttachmentReference {- uint32_t attachment;- VkImageLayout layout;-} VkAttachmentReference;--typedef struct VkSubpassDescription {- VkSubpassDescriptionFlags flags;- VkPipelineBindPoint pipelineBindPoint;- uint32_t inputAttachmentCount;- const VkAttachmentReference* pInputAttachments;- uint32_t colorAttachmentCount;- const VkAttachmentReference* pColorAttachments;- const VkAttachmentReference* pResolveAttachments;- const VkAttachmentReference* pDepthStencilAttachment;- uint32_t preserveAttachmentCount;- const uint32_t* pPreserveAttachments;-} VkSubpassDescription;--typedef struct VkSubpassDependency {- uint32_t srcSubpass;- uint32_t dstSubpass;- VkPipelineStageFlags srcStageMask;- VkPipelineStageFlags dstStageMask;- VkAccessFlags srcAccessMask;- VkAccessFlags dstAccessMask;- VkDependencyFlags dependencyFlags;-} VkSubpassDependency;--typedef struct VkRenderPassCreateInfo {- VkStructureType sType;- const void* pNext;- VkRenderPassCreateFlags flags;- uint32_t attachmentCount;- const VkAttachmentDescription* pAttachments;- uint32_t subpassCount;- const VkSubpassDescription* pSubpasses;- uint32_t dependencyCount;- const VkSubpassDependency* pDependencies;-} VkRenderPassCreateInfo;--typedef struct VkCommandPoolCreateInfo {- VkStructureType sType;- const void* pNext;- VkCommandPoolCreateFlags flags;- uint32_t queueFamilyIndex;-} VkCommandPoolCreateInfo;--typedef struct VkCommandBufferAllocateInfo {- VkStructureType sType;- const void* pNext;- VkCommandPool commandPool;- VkCommandBufferLevel level;- uint32_t commandBufferCount;-} VkCommandBufferAllocateInfo;--typedef struct VkCommandBufferInheritanceInfo {- VkStructureType sType;- const void* pNext;- VkRenderPass renderPass;- uint32_t subpass;- VkFramebuffer framebuffer;- VkBool32 occlusionQueryEnable;- VkQueryControlFlags queryFlags;- VkQueryPipelineStatisticFlags pipelineStatistics;-} VkCommandBufferInheritanceInfo;--typedef struct VkCommandBufferBeginInfo {- VkStructureType sType;- const void* pNext;- VkCommandBufferUsageFlags flags;- const VkCommandBufferInheritanceInfo* pInheritanceInfo;-} VkCommandBufferBeginInfo;--typedef struct VkBufferCopy {- VkDeviceSize srcOffset;- VkDeviceSize dstOffset;- VkDeviceSize size;-} VkBufferCopy;--typedef struct VkImageSubresourceLayers {- VkImageAspectFlags aspectMask;- uint32_t mipLevel;- uint32_t baseArrayLayer;- uint32_t layerCount;-} VkImageSubresourceLayers;--typedef struct VkImageCopy {- VkImageSubresourceLayers srcSubresource;- VkOffset3D srcOffset;- VkImageSubresourceLayers dstSubresource;- VkOffset3D dstOffset;- VkExtent3D extent;-} VkImageCopy;--typedef struct VkImageBlit {- VkImageSubresourceLayers srcSubresource;- VkOffset3D srcOffsets[2];- VkImageSubresourceLayers dstSubresource;- VkOffset3D dstOffsets[2];-} VkImageBlit;--typedef struct VkBufferImageCopy {- VkDeviceSize bufferOffset;- uint32_t bufferRowLength;- uint32_t bufferImageHeight;- VkImageSubresourceLayers imageSubresource;- VkOffset3D imageOffset;- VkExtent3D imageExtent;-} VkBufferImageCopy;--typedef union VkClearColorValue {- float float32[4];- int32_t int32[4];- uint32_t uint32[4];-} VkClearColorValue;--typedef struct VkClearDepthStencilValue {- float depth;- uint32_t stencil;-} VkClearDepthStencilValue;--typedef union VkClearValue {- VkClearColorValue color;- VkClearDepthStencilValue depthStencil;-} VkClearValue;--typedef struct VkClearAttachment {- VkImageAspectFlags aspectMask;- uint32_t colorAttachment;- VkClearValue clearValue;-} VkClearAttachment;--typedef struct VkClearRect {- VkRect2D rect;- uint32_t baseArrayLayer;- uint32_t layerCount;-} VkClearRect;--typedef struct VkImageResolve {- VkImageSubresourceLayers srcSubresource;- VkOffset3D srcOffset;- VkImageSubresourceLayers dstSubresource;- VkOffset3D dstOffset;- VkExtent3D extent;-} VkImageResolve;--typedef struct VkMemoryBarrier {- VkStructureType sType;- const void* pNext;- VkAccessFlags srcAccessMask;- VkAccessFlags dstAccessMask;-} VkMemoryBarrier;--typedef struct VkBufferMemoryBarrier {- VkStructureType sType;- const void* pNext;- VkAccessFlags srcAccessMask;- VkAccessFlags dstAccessMask;- uint32_t srcQueueFamilyIndex;- uint32_t dstQueueFamilyIndex;- VkBuffer buffer;- VkDeviceSize offset;- VkDeviceSize size;-} VkBufferMemoryBarrier;--typedef struct VkImageMemoryBarrier {- VkStructureType sType;- const void* pNext;- VkAccessFlags srcAccessMask;- VkAccessFlags dstAccessMask;- VkImageLayout oldLayout;- VkImageLayout newLayout;- uint32_t srcQueueFamilyIndex;- uint32_t dstQueueFamilyIndex;- VkImage image;- VkImageSubresourceRange subresourceRange;-} VkImageMemoryBarrier;--typedef struct VkRenderPassBeginInfo {- VkStructureType sType;- const void* pNext;- VkRenderPass renderPass;- VkFramebuffer framebuffer;- VkRect2D renderArea;- uint32_t clearValueCount;- const VkClearValue* pClearValues;-} VkRenderPassBeginInfo;--typedef struct VkDispatchIndirectCommand {- uint32_t x;- uint32_t y;- uint32_t z;-} VkDispatchIndirectCommand;--typedef struct VkDrawIndexedIndirectCommand {- uint32_t indexCount;- uint32_t instanceCount;- uint32_t firstIndex;- int32_t vertexOffset;- uint32_t firstInstance;-} VkDrawIndexedIndirectCommand;--typedef struct VkDrawIndirectCommand {- uint32_t vertexCount;- uint32_t instanceCount;- uint32_t firstVertex;- uint32_t firstInstance;-} VkDrawIndirectCommand;---typedef VkResult (VKAPI_PTR *PFN_vkCreateInstance)(const VkInstanceCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkInstance* pInstance);-typedef void (VKAPI_PTR *PFN_vkDestroyInstance)(VkInstance instance, const VkAllocationCallbacks* pAllocator);-typedef VkResult (VKAPI_PTR *PFN_vkEnumeratePhysicalDevices)(VkInstance instance, uint32_t* pPhysicalDeviceCount, VkPhysicalDevice* pPhysicalDevices);-typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceFeatures)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceFeatures* pFeatures);-typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceFormatProperties)(VkPhysicalDevice physicalDevice, VkFormat format, VkFormatProperties* pFormatProperties);-typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceImageFormatProperties)(VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type, VkImageTiling tiling, VkImageUsageFlags usage, VkImageCreateFlags flags, VkImageFormatProperties* pImageFormatProperties);-typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceProperties)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceProperties* pProperties);-typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceQueueFamilyProperties)(VkPhysicalDevice physicalDevice, uint32_t* pQueueFamilyPropertyCount, VkQueueFamilyProperties* pQueueFamilyProperties);-typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceMemoryProperties)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceMemoryProperties* pMemoryProperties);-typedef PFN_vkVoidFunction (VKAPI_PTR *PFN_vkGetInstanceProcAddr)(VkInstance instance, const char* pName);-typedef PFN_vkVoidFunction (VKAPI_PTR *PFN_vkGetDeviceProcAddr)(VkDevice device, const char* pName);-typedef VkResult (VKAPI_PTR *PFN_vkCreateDevice)(VkPhysicalDevice physicalDevice, const VkDeviceCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDevice* pDevice);-typedef void (VKAPI_PTR *PFN_vkDestroyDevice)(VkDevice device, const VkAllocationCallbacks* pAllocator);-typedef VkResult (VKAPI_PTR *PFN_vkEnumerateInstanceExtensionProperties)(const char* pLayerName, uint32_t* pPropertyCount, VkExtensionProperties* pProperties);-typedef VkResult (VKAPI_PTR *PFN_vkEnumerateDeviceExtensionProperties)(VkPhysicalDevice physicalDevice, const char* pLayerName, uint32_t* pPropertyCount, VkExtensionProperties* pProperties);-typedef VkResult (VKAPI_PTR *PFN_vkEnumerateInstanceLayerProperties)(uint32_t* pPropertyCount, VkLayerProperties* pProperties);-typedef VkResult (VKAPI_PTR *PFN_vkEnumerateDeviceLayerProperties)(VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkLayerProperties* pProperties);-typedef void (VKAPI_PTR *PFN_vkGetDeviceQueue)(VkDevice device, uint32_t queueFamilyIndex, uint32_t queueIndex, VkQueue* pQueue);-typedef VkResult (VKAPI_PTR *PFN_vkQueueSubmit)(VkQueue queue, uint32_t submitCount, const VkSubmitInfo* pSubmits, VkFence fence);-typedef VkResult (VKAPI_PTR *PFN_vkQueueWaitIdle)(VkQueue queue);-typedef VkResult (VKAPI_PTR *PFN_vkDeviceWaitIdle)(VkDevice device);-typedef VkResult (VKAPI_PTR *PFN_vkAllocateMemory)(VkDevice device, const VkMemoryAllocateInfo* pAllocateInfo, const VkAllocationCallbacks* pAllocator, VkDeviceMemory* pMemory);-typedef void (VKAPI_PTR *PFN_vkFreeMemory)(VkDevice device, VkDeviceMemory memory, const VkAllocationCallbacks* pAllocator);-typedef VkResult (VKAPI_PTR *PFN_vkMapMemory)(VkDevice device, VkDeviceMemory memory, VkDeviceSize offset, VkDeviceSize size, VkMemoryMapFlags flags, void** ppData);-typedef void (VKAPI_PTR *PFN_vkUnmapMemory)(VkDevice device, VkDeviceMemory memory);-typedef VkResult (VKAPI_PTR *PFN_vkFlushMappedMemoryRanges)(VkDevice device, uint32_t memoryRangeCount, const VkMappedMemoryRange* pMemoryRanges);-typedef VkResult (VKAPI_PTR *PFN_vkInvalidateMappedMemoryRanges)(VkDevice device, uint32_t memoryRangeCount, const VkMappedMemoryRange* pMemoryRanges);-typedef void (VKAPI_PTR *PFN_vkGetDeviceMemoryCommitment)(VkDevice device, VkDeviceMemory memory, VkDeviceSize* pCommittedMemoryInBytes);-typedef VkResult (VKAPI_PTR *PFN_vkBindBufferMemory)(VkDevice device, VkBuffer buffer, VkDeviceMemory memory, VkDeviceSize memoryOffset);-typedef VkResult (VKAPI_PTR *PFN_vkBindImageMemory)(VkDevice device, VkImage image, VkDeviceMemory memory, VkDeviceSize memoryOffset);-typedef void (VKAPI_PTR *PFN_vkGetBufferMemoryRequirements)(VkDevice device, VkBuffer buffer, VkMemoryRequirements* pMemoryRequirements);-typedef void (VKAPI_PTR *PFN_vkGetImageMemoryRequirements)(VkDevice device, VkImage image, VkMemoryRequirements* pMemoryRequirements);-typedef void (VKAPI_PTR *PFN_vkGetImageSparseMemoryRequirements)(VkDevice device, VkImage image, uint32_t* pSparseMemoryRequirementCount, VkSparseImageMemoryRequirements* pSparseMemoryRequirements);-typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceSparseImageFormatProperties)(VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type, VkSampleCountFlagBits samples, VkImageUsageFlags usage, VkImageTiling tiling, uint32_t* pPropertyCount, VkSparseImageFormatProperties* pProperties);-typedef VkResult (VKAPI_PTR *PFN_vkQueueBindSparse)(VkQueue queue, uint32_t bindInfoCount, const VkBindSparseInfo* pBindInfo, VkFence fence);-typedef VkResult (VKAPI_PTR *PFN_vkCreateFence)(VkDevice device, const VkFenceCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkFence* pFence);-typedef void (VKAPI_PTR *PFN_vkDestroyFence)(VkDevice device, VkFence fence, const VkAllocationCallbacks* pAllocator);-typedef VkResult (VKAPI_PTR *PFN_vkResetFences)(VkDevice device, uint32_t fenceCount, const VkFence* pFences);-typedef VkResult (VKAPI_PTR *PFN_vkGetFenceStatus)(VkDevice device, VkFence fence);-typedef VkResult (VKAPI_PTR *PFN_vkWaitForFences)(VkDevice device, uint32_t fenceCount, const VkFence* pFences, VkBool32 waitAll, uint64_t timeout);-typedef VkResult (VKAPI_PTR *PFN_vkCreateSemaphore)(VkDevice device, const VkSemaphoreCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSemaphore* pSemaphore);-typedef void (VKAPI_PTR *PFN_vkDestroySemaphore)(VkDevice device, VkSemaphore semaphore, const VkAllocationCallbacks* pAllocator);-typedef VkResult (VKAPI_PTR *PFN_vkCreateEvent)(VkDevice device, const VkEventCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkEvent* pEvent);-typedef void (VKAPI_PTR *PFN_vkDestroyEvent)(VkDevice device, VkEvent event, const VkAllocationCallbacks* pAllocator);-typedef VkResult (VKAPI_PTR *PFN_vkGetEventStatus)(VkDevice device, VkEvent event);-typedef VkResult (VKAPI_PTR *PFN_vkSetEvent)(VkDevice device, VkEvent event);-typedef VkResult (VKAPI_PTR *PFN_vkResetEvent)(VkDevice device, VkEvent event);-typedef VkResult (VKAPI_PTR *PFN_vkCreateQueryPool)(VkDevice device, const VkQueryPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkQueryPool* pQueryPool);-typedef void (VKAPI_PTR *PFN_vkDestroyQueryPool)(VkDevice device, VkQueryPool queryPool, const VkAllocationCallbacks* pAllocator);-typedef VkResult (VKAPI_PTR *PFN_vkGetQueryPoolResults)(VkDevice device, VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount, size_t dataSize, void* pData, VkDeviceSize stride, VkQueryResultFlags flags);-typedef VkResult (VKAPI_PTR *PFN_vkCreateBuffer)(VkDevice device, const VkBufferCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkBuffer* pBuffer);-typedef void (VKAPI_PTR *PFN_vkDestroyBuffer)(VkDevice device, VkBuffer buffer, const VkAllocationCallbacks* pAllocator);-typedef VkResult (VKAPI_PTR *PFN_vkCreateBufferView)(VkDevice device, const VkBufferViewCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkBufferView* pView);-typedef void (VKAPI_PTR *PFN_vkDestroyBufferView)(VkDevice device, VkBufferView bufferView, const VkAllocationCallbacks* pAllocator);-typedef VkResult (VKAPI_PTR *PFN_vkCreateImage)(VkDevice device, const VkImageCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkImage* pImage);-typedef void (VKAPI_PTR *PFN_vkDestroyImage)(VkDevice device, VkImage image, const VkAllocationCallbacks* pAllocator);-typedef void (VKAPI_PTR *PFN_vkGetImageSubresourceLayout)(VkDevice device, VkImage image, const VkImageSubresource* pSubresource, VkSubresourceLayout* pLayout);-typedef VkResult (VKAPI_PTR *PFN_vkCreateImageView)(VkDevice device, const VkImageViewCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkImageView* pView);-typedef void (VKAPI_PTR *PFN_vkDestroyImageView)(VkDevice device, VkImageView imageView, const VkAllocationCallbacks* pAllocator);-typedef VkResult (VKAPI_PTR *PFN_vkCreateShaderModule)(VkDevice device, const VkShaderModuleCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkShaderModule* pShaderModule);-typedef void (VKAPI_PTR *PFN_vkDestroyShaderModule)(VkDevice device, VkShaderModule shaderModule, const VkAllocationCallbacks* pAllocator);-typedef VkResult (VKAPI_PTR *PFN_vkCreatePipelineCache)(VkDevice device, const VkPipelineCacheCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkPipelineCache* pPipelineCache);-typedef void (VKAPI_PTR *PFN_vkDestroyPipelineCache)(VkDevice device, VkPipelineCache pipelineCache, const VkAllocationCallbacks* pAllocator);-typedef VkResult (VKAPI_PTR *PFN_vkGetPipelineCacheData)(VkDevice device, VkPipelineCache pipelineCache, size_t* pDataSize, void* pData);-typedef VkResult (VKAPI_PTR *PFN_vkMergePipelineCaches)(VkDevice device, VkPipelineCache dstCache, uint32_t srcCacheCount, const VkPipelineCache* pSrcCaches);-typedef VkResult (VKAPI_PTR *PFN_vkCreateGraphicsPipelines)(VkDevice device, VkPipelineCache pipelineCache, uint32_t createInfoCount, const VkGraphicsPipelineCreateInfo* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines);-typedef VkResult (VKAPI_PTR *PFN_vkCreateComputePipelines)(VkDevice device, VkPipelineCache pipelineCache, uint32_t createInfoCount, const VkComputePipelineCreateInfo* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines);-typedef void (VKAPI_PTR *PFN_vkDestroyPipeline)(VkDevice device, VkPipeline pipeline, const VkAllocationCallbacks* pAllocator);-typedef VkResult (VKAPI_PTR *PFN_vkCreatePipelineLayout)(VkDevice device, const VkPipelineLayoutCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkPipelineLayout* pPipelineLayout);-typedef void (VKAPI_PTR *PFN_vkDestroyPipelineLayout)(VkDevice device, VkPipelineLayout pipelineLayout, const VkAllocationCallbacks* pAllocator);-typedef VkResult (VKAPI_PTR *PFN_vkCreateSampler)(VkDevice device, const VkSamplerCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSampler* pSampler);-typedef void (VKAPI_PTR *PFN_vkDestroySampler)(VkDevice device, VkSampler sampler, const VkAllocationCallbacks* pAllocator);-typedef VkResult (VKAPI_PTR *PFN_vkCreateDescriptorSetLayout)(VkDevice device, const VkDescriptorSetLayoutCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorSetLayout* pSetLayout);-typedef void (VKAPI_PTR *PFN_vkDestroyDescriptorSetLayout)(VkDevice device, VkDescriptorSetLayout descriptorSetLayout, const VkAllocationCallbacks* pAllocator);-typedef VkResult (VKAPI_PTR *PFN_vkCreateDescriptorPool)(VkDevice device, const VkDescriptorPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorPool* pDescriptorPool);-typedef void (VKAPI_PTR *PFN_vkDestroyDescriptorPool)(VkDevice device, VkDescriptorPool descriptorPool, const VkAllocationCallbacks* pAllocator);-typedef VkResult (VKAPI_PTR *PFN_vkResetDescriptorPool)(VkDevice device, VkDescriptorPool descriptorPool, VkDescriptorPoolResetFlags flags);-typedef VkResult (VKAPI_PTR *PFN_vkAllocateDescriptorSets)(VkDevice device, const VkDescriptorSetAllocateInfo* pAllocateInfo, VkDescriptorSet* pDescriptorSets);-typedef VkResult (VKAPI_PTR *PFN_vkFreeDescriptorSets)(VkDevice device, VkDescriptorPool descriptorPool, uint32_t descriptorSetCount, const VkDescriptorSet* pDescriptorSets);-typedef void (VKAPI_PTR *PFN_vkUpdateDescriptorSets)(VkDevice device, uint32_t descriptorWriteCount, const VkWriteDescriptorSet* pDescriptorWrites, uint32_t descriptorCopyCount, const VkCopyDescriptorSet* pDescriptorCopies);-typedef VkResult (VKAPI_PTR *PFN_vkCreateFramebuffer)(VkDevice device, const VkFramebufferCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkFramebuffer* pFramebuffer);-typedef void (VKAPI_PTR *PFN_vkDestroyFramebuffer)(VkDevice device, VkFramebuffer framebuffer, const VkAllocationCallbacks* pAllocator);-typedef VkResult (VKAPI_PTR *PFN_vkCreateRenderPass)(VkDevice device, const VkRenderPassCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkRenderPass* pRenderPass);-typedef void (VKAPI_PTR *PFN_vkDestroyRenderPass)(VkDevice device, VkRenderPass renderPass, const VkAllocationCallbacks* pAllocator);-typedef void (VKAPI_PTR *PFN_vkGetRenderAreaGranularity)(VkDevice device, VkRenderPass renderPass, VkExtent2D* pGranularity);-typedef VkResult (VKAPI_PTR *PFN_vkCreateCommandPool)(VkDevice device, const VkCommandPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkCommandPool* pCommandPool);-typedef void (VKAPI_PTR *PFN_vkDestroyCommandPool)(VkDevice device, VkCommandPool commandPool, const VkAllocationCallbacks* pAllocator);-typedef VkResult (VKAPI_PTR *PFN_vkResetCommandPool)(VkDevice device, VkCommandPool commandPool, VkCommandPoolResetFlags flags);-typedef VkResult (VKAPI_PTR *PFN_vkAllocateCommandBuffers)(VkDevice device, const VkCommandBufferAllocateInfo* pAllocateInfo, VkCommandBuffer* pCommandBuffers);-typedef void (VKAPI_PTR *PFN_vkFreeCommandBuffers)(VkDevice device, VkCommandPool commandPool, uint32_t commandBufferCount, const VkCommandBuffer* pCommandBuffers);-typedef VkResult (VKAPI_PTR *PFN_vkBeginCommandBuffer)(VkCommandBuffer commandBuffer, const VkCommandBufferBeginInfo* pBeginInfo);-typedef VkResult (VKAPI_PTR *PFN_vkEndCommandBuffer)(VkCommandBuffer commandBuffer);-typedef VkResult (VKAPI_PTR *PFN_vkResetCommandBuffer)(VkCommandBuffer commandBuffer, VkCommandBufferResetFlags flags);-typedef void (VKAPI_PTR *PFN_vkCmdBindPipeline)(VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipeline pipeline);-typedef void (VKAPI_PTR *PFN_vkCmdSetViewport)(VkCommandBuffer commandBuffer, uint32_t firstViewport, uint32_t viewportCount, const VkViewport* pViewports);-typedef void (VKAPI_PTR *PFN_vkCmdSetScissor)(VkCommandBuffer commandBuffer, uint32_t firstScissor, uint32_t scissorCount, const VkRect2D* pScissors);-typedef void (VKAPI_PTR *PFN_vkCmdSetLineWidth)(VkCommandBuffer commandBuffer, float lineWidth);-typedef void (VKAPI_PTR *PFN_vkCmdSetDepthBias)(VkCommandBuffer commandBuffer, float depthBiasConstantFactor, float depthBiasClamp, float depthBiasSlopeFactor);-typedef void (VKAPI_PTR *PFN_vkCmdSetBlendConstants)(VkCommandBuffer commandBuffer, const float blendConstants[4]);-typedef void (VKAPI_PTR *PFN_vkCmdSetDepthBounds)(VkCommandBuffer commandBuffer, float minDepthBounds, float maxDepthBounds);-typedef void (VKAPI_PTR *PFN_vkCmdSetStencilCompareMask)(VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, uint32_t compareMask);-typedef void (VKAPI_PTR *PFN_vkCmdSetStencilWriteMask)(VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, uint32_t writeMask);-typedef void (VKAPI_PTR *PFN_vkCmdSetStencilReference)(VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, uint32_t reference);-typedef void (VKAPI_PTR *PFN_vkCmdBindDescriptorSets)(VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipelineLayout layout, uint32_t firstSet, uint32_t descriptorSetCount, const VkDescriptorSet* pDescriptorSets, uint32_t dynamicOffsetCount, const uint32_t* pDynamicOffsets);-typedef void (VKAPI_PTR *PFN_vkCmdBindIndexBuffer)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkIndexType indexType);-typedef void (VKAPI_PTR *PFN_vkCmdBindVertexBuffers)(VkCommandBuffer commandBuffer, uint32_t firstBinding, uint32_t bindingCount, const VkBuffer* pBuffers, const VkDeviceSize* pOffsets);-typedef void (VKAPI_PTR *PFN_vkCmdDraw)(VkCommandBuffer commandBuffer, uint32_t vertexCount, uint32_t instanceCount, uint32_t firstVertex, uint32_t firstInstance);-typedef void (VKAPI_PTR *PFN_vkCmdDrawIndexed)(VkCommandBuffer commandBuffer, uint32_t indexCount, uint32_t instanceCount, uint32_t firstIndex, int32_t vertexOffset, uint32_t firstInstance);-typedef void (VKAPI_PTR *PFN_vkCmdDrawIndirect)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, uint32_t drawCount, uint32_t stride);-typedef void (VKAPI_PTR *PFN_vkCmdDrawIndexedIndirect)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, uint32_t drawCount, uint32_t stride);-typedef void (VKAPI_PTR *PFN_vkCmdDispatch)(VkCommandBuffer commandBuffer, uint32_t groupCountX, uint32_t groupCountY, uint32_t groupCountZ);-typedef void (VKAPI_PTR *PFN_vkCmdDispatchIndirect)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset);-typedef void (VKAPI_PTR *PFN_vkCmdCopyBuffer)(VkCommandBuffer commandBuffer, VkBuffer srcBuffer, VkBuffer dstBuffer, uint32_t regionCount, const VkBufferCopy* pRegions);-typedef void (VKAPI_PTR *PFN_vkCmdCopyImage)(VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkImageCopy* pRegions);-typedef void (VKAPI_PTR *PFN_vkCmdBlitImage)(VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkImageBlit* pRegions, VkFilter filter);-typedef void (VKAPI_PTR *PFN_vkCmdCopyBufferToImage)(VkCommandBuffer commandBuffer, VkBuffer srcBuffer, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkBufferImageCopy* pRegions);-typedef void (VKAPI_PTR *PFN_vkCmdCopyImageToBuffer)(VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkBuffer dstBuffer, uint32_t regionCount, const VkBufferImageCopy* pRegions);-typedef void (VKAPI_PTR *PFN_vkCmdUpdateBuffer)(VkCommandBuffer commandBuffer, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize dataSize, const void* pData);-typedef void (VKAPI_PTR *PFN_vkCmdFillBuffer)(VkCommandBuffer commandBuffer, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize size, uint32_t data);-typedef void (VKAPI_PTR *PFN_vkCmdClearColorImage)(VkCommandBuffer commandBuffer, VkImage image, VkImageLayout imageLayout, const VkClearColorValue* pColor, uint32_t rangeCount, const VkImageSubresourceRange* pRanges);-typedef void (VKAPI_PTR *PFN_vkCmdClearDepthStencilImage)(VkCommandBuffer commandBuffer, VkImage image, VkImageLayout imageLayout, const VkClearDepthStencilValue* pDepthStencil, uint32_t rangeCount, const VkImageSubresourceRange* pRanges);-typedef void (VKAPI_PTR *PFN_vkCmdClearAttachments)(VkCommandBuffer commandBuffer, uint32_t attachmentCount, const VkClearAttachment* pAttachments, uint32_t rectCount, const VkClearRect* pRects);-typedef void (VKAPI_PTR *PFN_vkCmdResolveImage)(VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkImageResolve* pRegions);-typedef void (VKAPI_PTR *PFN_vkCmdSetEvent)(VkCommandBuffer commandBuffer, VkEvent event, VkPipelineStageFlags stageMask);-typedef void (VKAPI_PTR *PFN_vkCmdResetEvent)(VkCommandBuffer commandBuffer, VkEvent event, VkPipelineStageFlags stageMask);-typedef void (VKAPI_PTR *PFN_vkCmdWaitEvents)(VkCommandBuffer commandBuffer, uint32_t eventCount, const VkEvent* pEvents, VkPipelineStageFlags srcStageMask, VkPipelineStageFlags dstStageMask, uint32_t memoryBarrierCount, const VkMemoryBarrier* pMemoryBarriers, uint32_t bufferMemoryBarrierCount, const VkBufferMemoryBarrier* pBufferMemoryBarriers, uint32_t imageMemoryBarrierCount, const VkImageMemoryBarrier* pImageMemoryBarriers);-typedef void (VKAPI_PTR *PFN_vkCmdPipelineBarrier)(VkCommandBuffer commandBuffer, VkPipelineStageFlags srcStageMask, VkPipelineStageFlags dstStageMask, VkDependencyFlags dependencyFlags, uint32_t memoryBarrierCount, const VkMemoryBarrier* pMemoryBarriers, uint32_t bufferMemoryBarrierCount, const VkBufferMemoryBarrier* pBufferMemoryBarriers, uint32_t imageMemoryBarrierCount, const VkImageMemoryBarrier* pImageMemoryBarriers);-typedef void (VKAPI_PTR *PFN_vkCmdBeginQuery)(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t query, VkQueryControlFlags flags);-typedef void (VKAPI_PTR *PFN_vkCmdEndQuery)(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t query);-typedef void (VKAPI_PTR *PFN_vkCmdResetQueryPool)(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount);-typedef void (VKAPI_PTR *PFN_vkCmdWriteTimestamp)(VkCommandBuffer commandBuffer, VkPipelineStageFlagBits pipelineStage, VkQueryPool queryPool, uint32_t query);-typedef void (VKAPI_PTR *PFN_vkCmdCopyQueryPoolResults)(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize stride, VkQueryResultFlags flags);-typedef void (VKAPI_PTR *PFN_vkCmdPushConstants)(VkCommandBuffer commandBuffer, VkPipelineLayout layout, VkShaderStageFlags stageFlags, uint32_t offset, uint32_t size, const void* pValues);-typedef void (VKAPI_PTR *PFN_vkCmdBeginRenderPass)(VkCommandBuffer commandBuffer, const VkRenderPassBeginInfo* pRenderPassBegin, VkSubpassContents contents);-typedef void (VKAPI_PTR *PFN_vkCmdNextSubpass)(VkCommandBuffer commandBuffer, VkSubpassContents contents);-typedef void (VKAPI_PTR *PFN_vkCmdEndRenderPass)(VkCommandBuffer commandBuffer);-typedef void (VKAPI_PTR *PFN_vkCmdExecuteCommands)(VkCommandBuffer commandBuffer, uint32_t commandBufferCount, const VkCommandBuffer* pCommandBuffers);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR VkResult VKAPI_CALL vkCreateInstance(- const VkInstanceCreateInfo* pCreateInfo,- const VkAllocationCallbacks* pAllocator,- VkInstance* pInstance);--VKAPI_ATTR void VKAPI_CALL vkDestroyInstance(- VkInstance instance,- const VkAllocationCallbacks* pAllocator);--VKAPI_ATTR VkResult VKAPI_CALL vkEnumeratePhysicalDevices(- VkInstance instance,- uint32_t* pPhysicalDeviceCount,- VkPhysicalDevice* pPhysicalDevices);--VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceFeatures(- VkPhysicalDevice physicalDevice,- VkPhysicalDeviceFeatures* pFeatures);--VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceFormatProperties(- VkPhysicalDevice physicalDevice,- VkFormat format,- VkFormatProperties* pFormatProperties);--VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceImageFormatProperties(- VkPhysicalDevice physicalDevice,- VkFormat format,- VkImageType type,- VkImageTiling tiling,- VkImageUsageFlags usage,- VkImageCreateFlags flags,- VkImageFormatProperties* pImageFormatProperties);--VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceProperties(- VkPhysicalDevice physicalDevice,- VkPhysicalDeviceProperties* pProperties);--VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceQueueFamilyProperties(- VkPhysicalDevice physicalDevice,- uint32_t* pQueueFamilyPropertyCount,- VkQueueFamilyProperties* pQueueFamilyProperties);--VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceMemoryProperties(- VkPhysicalDevice physicalDevice,- VkPhysicalDeviceMemoryProperties* pMemoryProperties);--VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL vkGetInstanceProcAddr(- VkInstance instance,- const char* pName);--VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL vkGetDeviceProcAddr(- VkDevice device,- const char* pName);--VKAPI_ATTR VkResult VKAPI_CALL vkCreateDevice(- VkPhysicalDevice physicalDevice,- const VkDeviceCreateInfo* pCreateInfo,- const VkAllocationCallbacks* pAllocator,- VkDevice* pDevice);--VKAPI_ATTR void VKAPI_CALL vkDestroyDevice(- VkDevice device,- const VkAllocationCallbacks* pAllocator);--VKAPI_ATTR VkResult VKAPI_CALL vkEnumerateInstanceExtensionProperties(- const char* pLayerName,- uint32_t* pPropertyCount,- VkExtensionProperties* pProperties);--VKAPI_ATTR VkResult VKAPI_CALL vkEnumerateDeviceExtensionProperties(- VkPhysicalDevice physicalDevice,- const char* pLayerName,- uint32_t* pPropertyCount,- VkExtensionProperties* pProperties);--VKAPI_ATTR VkResult VKAPI_CALL vkEnumerateInstanceLayerProperties(- uint32_t* pPropertyCount,- VkLayerProperties* pProperties);--VKAPI_ATTR VkResult VKAPI_CALL vkEnumerateDeviceLayerProperties(- VkPhysicalDevice physicalDevice,- uint32_t* pPropertyCount,- VkLayerProperties* pProperties);--VKAPI_ATTR void VKAPI_CALL vkGetDeviceQueue(- VkDevice device,- uint32_t queueFamilyIndex,- uint32_t queueIndex,- VkQueue* pQueue);--VKAPI_ATTR VkResult VKAPI_CALL vkQueueSubmit(- VkQueue queue,- uint32_t submitCount,- const VkSubmitInfo* pSubmits,- VkFence fence);--VKAPI_ATTR VkResult VKAPI_CALL vkQueueWaitIdle(- VkQueue queue);--VKAPI_ATTR VkResult VKAPI_CALL vkDeviceWaitIdle(- VkDevice device);--VKAPI_ATTR VkResult VKAPI_CALL vkAllocateMemory(- VkDevice device,- const VkMemoryAllocateInfo* pAllocateInfo,- const VkAllocationCallbacks* pAllocator,- VkDeviceMemory* pMemory);--VKAPI_ATTR void VKAPI_CALL vkFreeMemory(- VkDevice device,- VkDeviceMemory memory,- const VkAllocationCallbacks* pAllocator);--VKAPI_ATTR VkResult VKAPI_CALL vkMapMemory(- VkDevice device,- VkDeviceMemory memory,- VkDeviceSize offset,- VkDeviceSize size,- VkMemoryMapFlags flags,- void** ppData);--VKAPI_ATTR void VKAPI_CALL vkUnmapMemory(- VkDevice device,- VkDeviceMemory memory);--VKAPI_ATTR VkResult VKAPI_CALL vkFlushMappedMemoryRanges(- VkDevice device,- uint32_t memoryRangeCount,- const VkMappedMemoryRange* pMemoryRanges);--VKAPI_ATTR VkResult VKAPI_CALL vkInvalidateMappedMemoryRanges(- VkDevice device,- uint32_t memoryRangeCount,- const VkMappedMemoryRange* pMemoryRanges);--VKAPI_ATTR void VKAPI_CALL vkGetDeviceMemoryCommitment(- VkDevice device,- VkDeviceMemory memory,- VkDeviceSize* pCommittedMemoryInBytes);--VKAPI_ATTR VkResult VKAPI_CALL vkBindBufferMemory(- VkDevice device,- VkBuffer buffer,- VkDeviceMemory memory,- VkDeviceSize memoryOffset);--VKAPI_ATTR VkResult VKAPI_CALL vkBindImageMemory(- VkDevice device,- VkImage image,- VkDeviceMemory memory,- VkDeviceSize memoryOffset);--VKAPI_ATTR void VKAPI_CALL vkGetBufferMemoryRequirements(- VkDevice device,- VkBuffer buffer,- VkMemoryRequirements* pMemoryRequirements);--VKAPI_ATTR void VKAPI_CALL vkGetImageMemoryRequirements(- VkDevice device,- VkImage image,- VkMemoryRequirements* pMemoryRequirements);--VKAPI_ATTR void VKAPI_CALL vkGetImageSparseMemoryRequirements(- VkDevice device,- VkImage image,- uint32_t* pSparseMemoryRequirementCount,- VkSparseImageMemoryRequirements* pSparseMemoryRequirements);--VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceSparseImageFormatProperties(- VkPhysicalDevice physicalDevice,- VkFormat format,- VkImageType type,- VkSampleCountFlagBits samples,- VkImageUsageFlags usage,- VkImageTiling tiling,- uint32_t* pPropertyCount,- VkSparseImageFormatProperties* pProperties);--VKAPI_ATTR VkResult VKAPI_CALL vkQueueBindSparse(- VkQueue queue,- uint32_t bindInfoCount,- const VkBindSparseInfo* pBindInfo,- VkFence fence);--VKAPI_ATTR VkResult VKAPI_CALL vkCreateFence(- VkDevice device,- const VkFenceCreateInfo* pCreateInfo,- const VkAllocationCallbacks* pAllocator,- VkFence* pFence);--VKAPI_ATTR void VKAPI_CALL vkDestroyFence(- VkDevice device,- VkFence fence,- const VkAllocationCallbacks* pAllocator);--VKAPI_ATTR VkResult VKAPI_CALL vkResetFences(- VkDevice device,- uint32_t fenceCount,- const VkFence* pFences);--VKAPI_ATTR VkResult VKAPI_CALL vkGetFenceStatus(- VkDevice device,- VkFence fence);--VKAPI_ATTR VkResult VKAPI_CALL vkWaitForFences(- VkDevice device,- uint32_t fenceCount,- const VkFence* pFences,- VkBool32 waitAll,- uint64_t timeout);--VKAPI_ATTR VkResult VKAPI_CALL vkCreateSemaphore(- VkDevice device,- const VkSemaphoreCreateInfo* pCreateInfo,- const VkAllocationCallbacks* pAllocator,- VkSemaphore* pSemaphore);--VKAPI_ATTR void VKAPI_CALL vkDestroySemaphore(- VkDevice device,- VkSemaphore semaphore,- const VkAllocationCallbacks* pAllocator);--VKAPI_ATTR VkResult VKAPI_CALL vkCreateEvent(- VkDevice device,- const VkEventCreateInfo* pCreateInfo,- const VkAllocationCallbacks* pAllocator,- VkEvent* pEvent);--VKAPI_ATTR void VKAPI_CALL vkDestroyEvent(- VkDevice device,- VkEvent event,- const VkAllocationCallbacks* pAllocator);--VKAPI_ATTR VkResult VKAPI_CALL vkGetEventStatus(- VkDevice device,- VkEvent event);--VKAPI_ATTR VkResult VKAPI_CALL vkSetEvent(- VkDevice device,- VkEvent event);--VKAPI_ATTR VkResult VKAPI_CALL vkResetEvent(- VkDevice device,- VkEvent event);--VKAPI_ATTR VkResult VKAPI_CALL vkCreateQueryPool(- VkDevice device,- const VkQueryPoolCreateInfo* pCreateInfo,- const VkAllocationCallbacks* pAllocator,- VkQueryPool* pQueryPool);--VKAPI_ATTR void VKAPI_CALL vkDestroyQueryPool(- VkDevice device,- VkQueryPool queryPool,- const VkAllocationCallbacks* pAllocator);--VKAPI_ATTR VkResult VKAPI_CALL vkGetQueryPoolResults(- VkDevice device,- VkQueryPool queryPool,- uint32_t firstQuery,- uint32_t queryCount,- size_t dataSize,- void* pData,- VkDeviceSize stride,- VkQueryResultFlags flags);--VKAPI_ATTR VkResult VKAPI_CALL vkCreateBuffer(- VkDevice device,- const VkBufferCreateInfo* pCreateInfo,- const VkAllocationCallbacks* pAllocator,- VkBuffer* pBuffer);--VKAPI_ATTR void VKAPI_CALL vkDestroyBuffer(- VkDevice device,- VkBuffer buffer,- const VkAllocationCallbacks* pAllocator);--VKAPI_ATTR VkResult VKAPI_CALL vkCreateBufferView(- VkDevice device,- const VkBufferViewCreateInfo* pCreateInfo,- const VkAllocationCallbacks* pAllocator,- VkBufferView* pView);--VKAPI_ATTR void VKAPI_CALL vkDestroyBufferView(- VkDevice device,- VkBufferView bufferView,- const VkAllocationCallbacks* pAllocator);--VKAPI_ATTR VkResult VKAPI_CALL vkCreateImage(- VkDevice device,- const VkImageCreateInfo* pCreateInfo,- const VkAllocationCallbacks* pAllocator,- VkImage* pImage);--VKAPI_ATTR void VKAPI_CALL vkDestroyImage(- VkDevice device,- VkImage image,- const VkAllocationCallbacks* pAllocator);--VKAPI_ATTR void VKAPI_CALL vkGetImageSubresourceLayout(- VkDevice device,- VkImage image,- const VkImageSubresource* pSubresource,- VkSubresourceLayout* pLayout);--VKAPI_ATTR VkResult VKAPI_CALL vkCreateImageView(- VkDevice device,- const VkImageViewCreateInfo* pCreateInfo,- const VkAllocationCallbacks* pAllocator,- VkImageView* pView);--VKAPI_ATTR void VKAPI_CALL vkDestroyImageView(- VkDevice device,- VkImageView imageView,- const VkAllocationCallbacks* pAllocator);--VKAPI_ATTR VkResult VKAPI_CALL vkCreateShaderModule(- VkDevice device,- const VkShaderModuleCreateInfo* pCreateInfo,- const VkAllocationCallbacks* pAllocator,- VkShaderModule* pShaderModule);--VKAPI_ATTR void VKAPI_CALL vkDestroyShaderModule(- VkDevice device,- VkShaderModule shaderModule,- const VkAllocationCallbacks* pAllocator);--VKAPI_ATTR VkResult VKAPI_CALL vkCreatePipelineCache(- VkDevice device,- const VkPipelineCacheCreateInfo* pCreateInfo,- const VkAllocationCallbacks* pAllocator,- VkPipelineCache* pPipelineCache);--VKAPI_ATTR void VKAPI_CALL vkDestroyPipelineCache(- VkDevice device,- VkPipelineCache pipelineCache,- const VkAllocationCallbacks* pAllocator);--VKAPI_ATTR VkResult VKAPI_CALL vkGetPipelineCacheData(- VkDevice device,- VkPipelineCache pipelineCache,- size_t* pDataSize,- void* pData);--VKAPI_ATTR VkResult VKAPI_CALL vkMergePipelineCaches(- VkDevice device,- VkPipelineCache dstCache,- uint32_t srcCacheCount,- const VkPipelineCache* pSrcCaches);--VKAPI_ATTR VkResult VKAPI_CALL vkCreateGraphicsPipelines(- VkDevice device,- VkPipelineCache pipelineCache,- uint32_t createInfoCount,- const VkGraphicsPipelineCreateInfo* pCreateInfos,- const VkAllocationCallbacks* pAllocator,- VkPipeline* pPipelines);--VKAPI_ATTR VkResult VKAPI_CALL vkCreateComputePipelines(- VkDevice device,- VkPipelineCache pipelineCache,- uint32_t createInfoCount,- const VkComputePipelineCreateInfo* pCreateInfos,- const VkAllocationCallbacks* pAllocator,- VkPipeline* pPipelines);--VKAPI_ATTR void VKAPI_CALL vkDestroyPipeline(- VkDevice device,- VkPipeline pipeline,- const VkAllocationCallbacks* pAllocator);--VKAPI_ATTR VkResult VKAPI_CALL vkCreatePipelineLayout(- VkDevice device,- const VkPipelineLayoutCreateInfo* pCreateInfo,- const VkAllocationCallbacks* pAllocator,- VkPipelineLayout* pPipelineLayout);--VKAPI_ATTR void VKAPI_CALL vkDestroyPipelineLayout(- VkDevice device,- VkPipelineLayout pipelineLayout,- const VkAllocationCallbacks* pAllocator);--VKAPI_ATTR VkResult VKAPI_CALL vkCreateSampler(- VkDevice device,- const VkSamplerCreateInfo* pCreateInfo,- const VkAllocationCallbacks* pAllocator,- VkSampler* pSampler);--VKAPI_ATTR void VKAPI_CALL vkDestroySampler(- VkDevice device,- VkSampler sampler,- const VkAllocationCallbacks* pAllocator);--VKAPI_ATTR VkResult VKAPI_CALL vkCreateDescriptorSetLayout(- VkDevice device,- const VkDescriptorSetLayoutCreateInfo* pCreateInfo,- const VkAllocationCallbacks* pAllocator,- VkDescriptorSetLayout* pSetLayout);--VKAPI_ATTR void VKAPI_CALL vkDestroyDescriptorSetLayout(- VkDevice device,- VkDescriptorSetLayout descriptorSetLayout,- const VkAllocationCallbacks* pAllocator);--VKAPI_ATTR VkResult VKAPI_CALL vkCreateDescriptorPool(- VkDevice device,- const VkDescriptorPoolCreateInfo* pCreateInfo,- const VkAllocationCallbacks* pAllocator,- VkDescriptorPool* pDescriptorPool);--VKAPI_ATTR void VKAPI_CALL vkDestroyDescriptorPool(- VkDevice device,- VkDescriptorPool descriptorPool,- const VkAllocationCallbacks* pAllocator);--VKAPI_ATTR VkResult VKAPI_CALL vkResetDescriptorPool(- VkDevice device,- VkDescriptorPool descriptorPool,- VkDescriptorPoolResetFlags flags);--VKAPI_ATTR VkResult VKAPI_CALL vkAllocateDescriptorSets(- VkDevice device,- const VkDescriptorSetAllocateInfo* pAllocateInfo,- VkDescriptorSet* pDescriptorSets);--VKAPI_ATTR VkResult VKAPI_CALL vkFreeDescriptorSets(- VkDevice device,- VkDescriptorPool descriptorPool,- uint32_t descriptorSetCount,- const VkDescriptorSet* pDescriptorSets);--VKAPI_ATTR void VKAPI_CALL vkUpdateDescriptorSets(- VkDevice device,- uint32_t descriptorWriteCount,- const VkWriteDescriptorSet* pDescriptorWrites,- uint32_t descriptorCopyCount,- const VkCopyDescriptorSet* pDescriptorCopies);--VKAPI_ATTR VkResult VKAPI_CALL vkCreateFramebuffer(- VkDevice device,- const VkFramebufferCreateInfo* pCreateInfo,- const VkAllocationCallbacks* pAllocator,- VkFramebuffer* pFramebuffer);--VKAPI_ATTR void VKAPI_CALL vkDestroyFramebuffer(- VkDevice device,- VkFramebuffer framebuffer,- const VkAllocationCallbacks* pAllocator);--VKAPI_ATTR VkResult VKAPI_CALL vkCreateRenderPass(- VkDevice device,- const VkRenderPassCreateInfo* pCreateInfo,- const VkAllocationCallbacks* pAllocator,- VkRenderPass* pRenderPass);--VKAPI_ATTR void VKAPI_CALL vkDestroyRenderPass(- VkDevice device,- VkRenderPass renderPass,- const VkAllocationCallbacks* pAllocator);--VKAPI_ATTR void VKAPI_CALL vkGetRenderAreaGranularity(- VkDevice device,- VkRenderPass renderPass,- VkExtent2D* pGranularity);--VKAPI_ATTR VkResult VKAPI_CALL vkCreateCommandPool(- VkDevice device,- const VkCommandPoolCreateInfo* pCreateInfo,- const VkAllocationCallbacks* pAllocator,- VkCommandPool* pCommandPool);--VKAPI_ATTR void VKAPI_CALL vkDestroyCommandPool(- VkDevice device,- VkCommandPool commandPool,- const VkAllocationCallbacks* pAllocator);--VKAPI_ATTR VkResult VKAPI_CALL vkResetCommandPool(- VkDevice device,- VkCommandPool commandPool,- VkCommandPoolResetFlags flags);--VKAPI_ATTR VkResult VKAPI_CALL vkAllocateCommandBuffers(- VkDevice device,- const VkCommandBufferAllocateInfo* pAllocateInfo,- VkCommandBuffer* pCommandBuffers);--VKAPI_ATTR void VKAPI_CALL vkFreeCommandBuffers(- VkDevice device,- VkCommandPool commandPool,- uint32_t commandBufferCount,- const VkCommandBuffer* pCommandBuffers);--VKAPI_ATTR VkResult VKAPI_CALL vkBeginCommandBuffer(- VkCommandBuffer commandBuffer,- const VkCommandBufferBeginInfo* pBeginInfo);--VKAPI_ATTR VkResult VKAPI_CALL vkEndCommandBuffer(- VkCommandBuffer commandBuffer);--VKAPI_ATTR VkResult VKAPI_CALL vkResetCommandBuffer(- VkCommandBuffer commandBuffer,- VkCommandBufferResetFlags flags);--VKAPI_ATTR void VKAPI_CALL vkCmdBindPipeline(- VkCommandBuffer commandBuffer,- VkPipelineBindPoint pipelineBindPoint,- VkPipeline pipeline);--VKAPI_ATTR void VKAPI_CALL vkCmdSetViewport(- VkCommandBuffer commandBuffer,- uint32_t firstViewport,- uint32_t viewportCount,- const VkViewport* pViewports);--VKAPI_ATTR void VKAPI_CALL vkCmdSetScissor(- VkCommandBuffer commandBuffer,- uint32_t firstScissor,- uint32_t scissorCount,- const VkRect2D* pScissors);--VKAPI_ATTR void VKAPI_CALL vkCmdSetLineWidth(- VkCommandBuffer commandBuffer,- float lineWidth);--VKAPI_ATTR void VKAPI_CALL vkCmdSetDepthBias(- VkCommandBuffer commandBuffer,- float depthBiasConstantFactor,- float depthBiasClamp,- float depthBiasSlopeFactor);--VKAPI_ATTR void VKAPI_CALL vkCmdSetBlendConstants(- VkCommandBuffer commandBuffer,- const float blendConstants[4]);--VKAPI_ATTR void VKAPI_CALL vkCmdSetDepthBounds(- VkCommandBuffer commandBuffer,- float minDepthBounds,- float maxDepthBounds);--VKAPI_ATTR void VKAPI_CALL vkCmdSetStencilCompareMask(- VkCommandBuffer commandBuffer,- VkStencilFaceFlags faceMask,- uint32_t compareMask);--VKAPI_ATTR void VKAPI_CALL vkCmdSetStencilWriteMask(- VkCommandBuffer commandBuffer,- VkStencilFaceFlags faceMask,- uint32_t writeMask);--VKAPI_ATTR void VKAPI_CALL vkCmdSetStencilReference(- VkCommandBuffer commandBuffer,- VkStencilFaceFlags faceMask,- uint32_t reference);--VKAPI_ATTR void VKAPI_CALL vkCmdBindDescriptorSets(- VkCommandBuffer commandBuffer,- VkPipelineBindPoint pipelineBindPoint,- VkPipelineLayout layout,- uint32_t firstSet,- uint32_t descriptorSetCount,- const VkDescriptorSet* pDescriptorSets,- uint32_t dynamicOffsetCount,- const uint32_t* pDynamicOffsets);--VKAPI_ATTR void VKAPI_CALL vkCmdBindIndexBuffer(- VkCommandBuffer commandBuffer,- VkBuffer buffer,- VkDeviceSize offset,- VkIndexType indexType);--VKAPI_ATTR void VKAPI_CALL vkCmdBindVertexBuffers(- VkCommandBuffer commandBuffer,- uint32_t firstBinding,- uint32_t bindingCount,- const VkBuffer* pBuffers,- const VkDeviceSize* pOffsets);--VKAPI_ATTR void VKAPI_CALL vkCmdDraw(- VkCommandBuffer commandBuffer,- uint32_t vertexCount,- uint32_t instanceCount,- uint32_t firstVertex,- uint32_t firstInstance);--VKAPI_ATTR void VKAPI_CALL vkCmdDrawIndexed(- VkCommandBuffer commandBuffer,- uint32_t indexCount,- uint32_t instanceCount,- uint32_t firstIndex,- int32_t vertexOffset,- uint32_t firstInstance);--VKAPI_ATTR void VKAPI_CALL vkCmdDrawIndirect(- VkCommandBuffer commandBuffer,- VkBuffer buffer,- VkDeviceSize offset,- uint32_t drawCount,- uint32_t stride);--VKAPI_ATTR void VKAPI_CALL vkCmdDrawIndexedIndirect(- VkCommandBuffer commandBuffer,- VkBuffer buffer,- VkDeviceSize offset,- uint32_t drawCount,- uint32_t stride);--VKAPI_ATTR void VKAPI_CALL vkCmdDispatch(- VkCommandBuffer commandBuffer,- uint32_t groupCountX,- uint32_t groupCountY,- uint32_t groupCountZ);--VKAPI_ATTR void VKAPI_CALL vkCmdDispatchIndirect(- VkCommandBuffer commandBuffer,- VkBuffer buffer,- VkDeviceSize offset);--VKAPI_ATTR void VKAPI_CALL vkCmdCopyBuffer(- VkCommandBuffer commandBuffer,- VkBuffer srcBuffer,- VkBuffer dstBuffer,- uint32_t regionCount,- const VkBufferCopy* pRegions);--VKAPI_ATTR void VKAPI_CALL vkCmdCopyImage(- VkCommandBuffer commandBuffer,- VkImage srcImage,- VkImageLayout srcImageLayout,- VkImage dstImage,- VkImageLayout dstImageLayout,- uint32_t regionCount,- const VkImageCopy* pRegions);--VKAPI_ATTR void VKAPI_CALL vkCmdBlitImage(- VkCommandBuffer commandBuffer,- VkImage srcImage,- VkImageLayout srcImageLayout,- VkImage dstImage,- VkImageLayout dstImageLayout,- uint32_t regionCount,- const VkImageBlit* pRegions,- VkFilter filter);--VKAPI_ATTR void VKAPI_CALL vkCmdCopyBufferToImage(- VkCommandBuffer commandBuffer,- VkBuffer srcBuffer,- VkImage dstImage,- VkImageLayout dstImageLayout,- uint32_t regionCount,- const VkBufferImageCopy* pRegions);--VKAPI_ATTR void VKAPI_CALL vkCmdCopyImageToBuffer(- VkCommandBuffer commandBuffer,- VkImage srcImage,- VkImageLayout srcImageLayout,- VkBuffer dstBuffer,- uint32_t regionCount,- const VkBufferImageCopy* pRegions);--VKAPI_ATTR void VKAPI_CALL vkCmdUpdateBuffer(- VkCommandBuffer commandBuffer,- VkBuffer dstBuffer,- VkDeviceSize dstOffset,- VkDeviceSize dataSize,- const void* pData);--VKAPI_ATTR void VKAPI_CALL vkCmdFillBuffer(- VkCommandBuffer commandBuffer,- VkBuffer dstBuffer,- VkDeviceSize dstOffset,- VkDeviceSize size,- uint32_t data);--VKAPI_ATTR void VKAPI_CALL vkCmdClearColorImage(- VkCommandBuffer commandBuffer,- VkImage image,- VkImageLayout imageLayout,- const VkClearColorValue* pColor,- uint32_t rangeCount,- const VkImageSubresourceRange* pRanges);--VKAPI_ATTR void VKAPI_CALL vkCmdClearDepthStencilImage(- VkCommandBuffer commandBuffer,- VkImage image,- VkImageLayout imageLayout,- const VkClearDepthStencilValue* pDepthStencil,- uint32_t rangeCount,- const VkImageSubresourceRange* pRanges);--VKAPI_ATTR void VKAPI_CALL vkCmdClearAttachments(- VkCommandBuffer commandBuffer,- uint32_t attachmentCount,- const VkClearAttachment* pAttachments,- uint32_t rectCount,- const VkClearRect* pRects);--VKAPI_ATTR void VKAPI_CALL vkCmdResolveImage(- VkCommandBuffer commandBuffer,- VkImage srcImage,- VkImageLayout srcImageLayout,- VkImage dstImage,- VkImageLayout dstImageLayout,- uint32_t regionCount,- const VkImageResolve* pRegions);--VKAPI_ATTR void VKAPI_CALL vkCmdSetEvent(- VkCommandBuffer commandBuffer,- VkEvent event,- VkPipelineStageFlags stageMask);--VKAPI_ATTR void VKAPI_CALL vkCmdResetEvent(- VkCommandBuffer commandBuffer,- VkEvent event,- VkPipelineStageFlags stageMask);--VKAPI_ATTR void VKAPI_CALL vkCmdWaitEvents(- VkCommandBuffer commandBuffer,- uint32_t eventCount,- const VkEvent* pEvents,- VkPipelineStageFlags srcStageMask,- VkPipelineStageFlags dstStageMask,- uint32_t memoryBarrierCount,- const VkMemoryBarrier* pMemoryBarriers,- uint32_t bufferMemoryBarrierCount,- const VkBufferMemoryBarrier* pBufferMemoryBarriers,- uint32_t imageMemoryBarrierCount,- const VkImageMemoryBarrier* pImageMemoryBarriers);--VKAPI_ATTR void VKAPI_CALL vkCmdPipelineBarrier(- VkCommandBuffer commandBuffer,- VkPipelineStageFlags srcStageMask,- VkPipelineStageFlags dstStageMask,- VkDependencyFlags dependencyFlags,- uint32_t memoryBarrierCount,- const VkMemoryBarrier* pMemoryBarriers,- uint32_t bufferMemoryBarrierCount,- const VkBufferMemoryBarrier* pBufferMemoryBarriers,- uint32_t imageMemoryBarrierCount,- const VkImageMemoryBarrier* pImageMemoryBarriers);--VKAPI_ATTR void VKAPI_CALL vkCmdBeginQuery(- VkCommandBuffer commandBuffer,- VkQueryPool queryPool,- uint32_t query,- VkQueryControlFlags flags);--VKAPI_ATTR void VKAPI_CALL vkCmdEndQuery(- VkCommandBuffer commandBuffer,- VkQueryPool queryPool,- uint32_t query);--VKAPI_ATTR void VKAPI_CALL vkCmdResetQueryPool(- VkCommandBuffer commandBuffer,- VkQueryPool queryPool,- uint32_t firstQuery,- uint32_t queryCount);--VKAPI_ATTR void VKAPI_CALL vkCmdWriteTimestamp(- VkCommandBuffer commandBuffer,- VkPipelineStageFlagBits pipelineStage,- VkQueryPool queryPool,- uint32_t query);--VKAPI_ATTR void VKAPI_CALL vkCmdCopyQueryPoolResults(- VkCommandBuffer commandBuffer,- VkQueryPool queryPool,- uint32_t firstQuery,- uint32_t queryCount,- VkBuffer dstBuffer,- VkDeviceSize dstOffset,- VkDeviceSize stride,- VkQueryResultFlags flags);--VKAPI_ATTR void VKAPI_CALL vkCmdPushConstants(- VkCommandBuffer commandBuffer,- VkPipelineLayout layout,- VkShaderStageFlags stageFlags,- uint32_t offset,- uint32_t size,- const void* pValues);--VKAPI_ATTR void VKAPI_CALL vkCmdBeginRenderPass(- VkCommandBuffer commandBuffer,- const VkRenderPassBeginInfo* pRenderPassBegin,- VkSubpassContents contents);--VKAPI_ATTR void VKAPI_CALL vkCmdNextSubpass(- VkCommandBuffer commandBuffer,- VkSubpassContents contents);--VKAPI_ATTR void VKAPI_CALL vkCmdEndRenderPass(- VkCommandBuffer commandBuffer);--VKAPI_ATTR void VKAPI_CALL vkCmdExecuteCommands(- VkCommandBuffer commandBuffer,- uint32_t commandBufferCount,- const VkCommandBuffer* pCommandBuffers);-#endif--#define VK_KHR_surface 1-VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSurfaceKHR)--#define VK_KHR_SURFACE_SPEC_VERSION 25-#define VK_KHR_SURFACE_EXTENSION_NAME "VK_KHR_surface"-#define VK_COLORSPACE_SRGB_NONLINEAR_KHR VK_COLOR_SPACE_SRGB_NONLINEAR_KHR---typedef enum VkColorSpaceKHR {- VK_COLOR_SPACE_SRGB_NONLINEAR_KHR = 0,- VK_COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT = 1000104001,- VK_COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT = 1000104002,- VK_COLOR_SPACE_DCI_P3_LINEAR_EXT = 1000104003,- VK_COLOR_SPACE_DCI_P3_NONLINEAR_EXT = 1000104004,- VK_COLOR_SPACE_BT709_LINEAR_EXT = 1000104005,- VK_COLOR_SPACE_BT709_NONLINEAR_EXT = 1000104006,- VK_COLOR_SPACE_BT2020_LINEAR_EXT = 1000104007,- VK_COLOR_SPACE_HDR10_ST2084_EXT = 1000104008,- VK_COLOR_SPACE_DOLBYVISION_EXT = 1000104009,- VK_COLOR_SPACE_HDR10_HLG_EXT = 1000104010,- VK_COLOR_SPACE_ADOBERGB_LINEAR_EXT = 1000104011,- VK_COLOR_SPACE_ADOBERGB_NONLINEAR_EXT = 1000104012,- VK_COLOR_SPACE_PASS_THROUGH_EXT = 1000104013,- VK_COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT = 1000104014,- VK_COLOR_SPACE_BEGIN_RANGE_KHR = VK_COLOR_SPACE_SRGB_NONLINEAR_KHR,- VK_COLOR_SPACE_END_RANGE_KHR = VK_COLOR_SPACE_SRGB_NONLINEAR_KHR,- VK_COLOR_SPACE_RANGE_SIZE_KHR = (VK_COLOR_SPACE_SRGB_NONLINEAR_KHR - VK_COLOR_SPACE_SRGB_NONLINEAR_KHR + 1),- VK_COLOR_SPACE_MAX_ENUM_KHR = 0x7FFFFFFF-} VkColorSpaceKHR;--typedef enum VkPresentModeKHR {- VK_PRESENT_MODE_IMMEDIATE_KHR = 0,- VK_PRESENT_MODE_MAILBOX_KHR = 1,- VK_PRESENT_MODE_FIFO_KHR = 2,- VK_PRESENT_MODE_FIFO_RELAXED_KHR = 3,- VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR = 1000111000,- VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR = 1000111001,- VK_PRESENT_MODE_BEGIN_RANGE_KHR = VK_PRESENT_MODE_IMMEDIATE_KHR,- VK_PRESENT_MODE_END_RANGE_KHR = VK_PRESENT_MODE_FIFO_RELAXED_KHR,- VK_PRESENT_MODE_RANGE_SIZE_KHR = (VK_PRESENT_MODE_FIFO_RELAXED_KHR - VK_PRESENT_MODE_IMMEDIATE_KHR + 1),- VK_PRESENT_MODE_MAX_ENUM_KHR = 0x7FFFFFFF-} VkPresentModeKHR;---typedef enum VkSurfaceTransformFlagBitsKHR {- VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR = 0x00000001,- VK_SURFACE_TRANSFORM_ROTATE_90_BIT_KHR = 0x00000002,- VK_SURFACE_TRANSFORM_ROTATE_180_BIT_KHR = 0x00000004,- VK_SURFACE_TRANSFORM_ROTATE_270_BIT_KHR = 0x00000008,- VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR = 0x00000010,- VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR = 0x00000020,- VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR = 0x00000040,- VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR = 0x00000080,- VK_SURFACE_TRANSFORM_INHERIT_BIT_KHR = 0x00000100,- VK_SURFACE_TRANSFORM_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF-} VkSurfaceTransformFlagBitsKHR;-typedef VkFlags VkSurfaceTransformFlagsKHR;--typedef enum VkCompositeAlphaFlagBitsKHR {- VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR = 0x00000001,- VK_COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR = 0x00000002,- VK_COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR = 0x00000004,- VK_COMPOSITE_ALPHA_INHERIT_BIT_KHR = 0x00000008,- VK_COMPOSITE_ALPHA_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF-} VkCompositeAlphaFlagBitsKHR;-typedef VkFlags VkCompositeAlphaFlagsKHR;--typedef struct VkSurfaceCapabilitiesKHR {- uint32_t minImageCount;- uint32_t maxImageCount;- VkExtent2D currentExtent;- VkExtent2D minImageExtent;- VkExtent2D maxImageExtent;- uint32_t maxImageArrayLayers;- VkSurfaceTransformFlagsKHR supportedTransforms;- VkSurfaceTransformFlagBitsKHR currentTransform;- VkCompositeAlphaFlagsKHR supportedCompositeAlpha;- VkImageUsageFlags supportedUsageFlags;-} VkSurfaceCapabilitiesKHR;--typedef struct VkSurfaceFormatKHR {- VkFormat format;- VkColorSpaceKHR colorSpace;-} VkSurfaceFormatKHR;---typedef void (VKAPI_PTR *PFN_vkDestroySurfaceKHR)(VkInstance instance, VkSurfaceKHR surface, const VkAllocationCallbacks* pAllocator);-typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, VkSurfaceKHR surface, VkBool32* pSupported);-typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR)(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, VkSurfaceCapabilitiesKHR* pSurfaceCapabilities);-typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceFormatsKHR)(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, uint32_t* pSurfaceFormatCount, VkSurfaceFormatKHR* pSurfaceFormats);-typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfacePresentModesKHR)(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, uint32_t* pPresentModeCount, VkPresentModeKHR* pPresentModes);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR void VKAPI_CALL vkDestroySurfaceKHR(- VkInstance instance,- VkSurfaceKHR surface,- const VkAllocationCallbacks* pAllocator);--VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceSupportKHR(- VkPhysicalDevice physicalDevice,- uint32_t queueFamilyIndex,- VkSurfaceKHR surface,- VkBool32* pSupported);--VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceCapabilitiesKHR(- VkPhysicalDevice physicalDevice,- VkSurfaceKHR surface,- VkSurfaceCapabilitiesKHR* pSurfaceCapabilities);--VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceFormatsKHR(- VkPhysicalDevice physicalDevice,- VkSurfaceKHR surface,- uint32_t* pSurfaceFormatCount,- VkSurfaceFormatKHR* pSurfaceFormats);--VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfacePresentModesKHR(- VkPhysicalDevice physicalDevice,- VkSurfaceKHR surface,- uint32_t* pPresentModeCount,- VkPresentModeKHR* pPresentModes);-#endif--#define VK_KHR_swapchain 1-VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSwapchainKHR)--#define VK_KHR_SWAPCHAIN_SPEC_VERSION 68-#define VK_KHR_SWAPCHAIN_EXTENSION_NAME "VK_KHR_swapchain"---typedef enum VkSwapchainCreateFlagBitsKHR {- VK_SWAPCHAIN_CREATE_BIND_SFR_BIT_KHX = 0x00000001,- VK_SWAPCHAIN_CREATE_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF-} VkSwapchainCreateFlagBitsKHR;-typedef VkFlags VkSwapchainCreateFlagsKHR;--typedef struct VkSwapchainCreateInfoKHR {- VkStructureType sType;- const void* pNext;- VkSwapchainCreateFlagsKHR flags;- VkSurfaceKHR surface;- uint32_t minImageCount;- VkFormat imageFormat;- VkColorSpaceKHR imageColorSpace;- VkExtent2D imageExtent;- uint32_t imageArrayLayers;- VkImageUsageFlags imageUsage;- VkSharingMode imageSharingMode;- uint32_t queueFamilyIndexCount;- const uint32_t* pQueueFamilyIndices;- VkSurfaceTransformFlagBitsKHR preTransform;- VkCompositeAlphaFlagBitsKHR compositeAlpha;- VkPresentModeKHR presentMode;- VkBool32 clipped;- VkSwapchainKHR oldSwapchain;-} VkSwapchainCreateInfoKHR;--typedef struct VkPresentInfoKHR {- VkStructureType sType;- const void* pNext;- uint32_t waitSemaphoreCount;- const VkSemaphore* pWaitSemaphores;- uint32_t swapchainCount;- const VkSwapchainKHR* pSwapchains;- const uint32_t* pImageIndices;- VkResult* pResults;-} VkPresentInfoKHR;---typedef VkResult (VKAPI_PTR *PFN_vkCreateSwapchainKHR)(VkDevice device, const VkSwapchainCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSwapchainKHR* pSwapchain);-typedef void (VKAPI_PTR *PFN_vkDestroySwapchainKHR)(VkDevice device, VkSwapchainKHR swapchain, const VkAllocationCallbacks* pAllocator);-typedef VkResult (VKAPI_PTR *PFN_vkGetSwapchainImagesKHR)(VkDevice device, VkSwapchainKHR swapchain, uint32_t* pSwapchainImageCount, VkImage* pSwapchainImages);-typedef VkResult (VKAPI_PTR *PFN_vkAcquireNextImageKHR)(VkDevice device, VkSwapchainKHR swapchain, uint64_t timeout, VkSemaphore semaphore, VkFence fence, uint32_t* pImageIndex);-typedef VkResult (VKAPI_PTR *PFN_vkQueuePresentKHR)(VkQueue queue, const VkPresentInfoKHR* pPresentInfo);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR VkResult VKAPI_CALL vkCreateSwapchainKHR(- VkDevice device,- const VkSwapchainCreateInfoKHR* pCreateInfo,- const VkAllocationCallbacks* pAllocator,- VkSwapchainKHR* pSwapchain);--VKAPI_ATTR void VKAPI_CALL vkDestroySwapchainKHR(- VkDevice device,- VkSwapchainKHR swapchain,- const VkAllocationCallbacks* pAllocator);--VKAPI_ATTR VkResult VKAPI_CALL vkGetSwapchainImagesKHR(- VkDevice device,- VkSwapchainKHR swapchain,- uint32_t* pSwapchainImageCount,- VkImage* pSwapchainImages);--VKAPI_ATTR VkResult VKAPI_CALL vkAcquireNextImageKHR(- VkDevice device,- VkSwapchainKHR swapchain,- uint64_t timeout,- VkSemaphore semaphore,- VkFence fence,- uint32_t* pImageIndex);--VKAPI_ATTR VkResult VKAPI_CALL vkQueuePresentKHR(- VkQueue queue,- const VkPresentInfoKHR* pPresentInfo);-#endif--#define VK_KHR_display 1-VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDisplayKHR)-VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDisplayModeKHR)--#define VK_KHR_DISPLAY_SPEC_VERSION 21-#define VK_KHR_DISPLAY_EXTENSION_NAME "VK_KHR_display"---typedef enum VkDisplayPlaneAlphaFlagBitsKHR {- VK_DISPLAY_PLANE_ALPHA_OPAQUE_BIT_KHR = 0x00000001,- VK_DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR = 0x00000002,- VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_BIT_KHR = 0x00000004,- VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_PREMULTIPLIED_BIT_KHR = 0x00000008,- VK_DISPLAY_PLANE_ALPHA_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF-} VkDisplayPlaneAlphaFlagBitsKHR;-typedef VkFlags VkDisplayPlaneAlphaFlagsKHR;-typedef VkFlags VkDisplayModeCreateFlagsKHR;-typedef VkFlags VkDisplaySurfaceCreateFlagsKHR;--typedef struct VkDisplayPropertiesKHR {- VkDisplayKHR display;- const char* displayName;- VkExtent2D physicalDimensions;- VkExtent2D physicalResolution;- VkSurfaceTransformFlagsKHR supportedTransforms;- VkBool32 planeReorderPossible;- VkBool32 persistentContent;-} VkDisplayPropertiesKHR;--typedef struct VkDisplayModeParametersKHR {- VkExtent2D visibleRegion;- uint32_t refreshRate;-} VkDisplayModeParametersKHR;--typedef struct VkDisplayModePropertiesKHR {- VkDisplayModeKHR displayMode;- VkDisplayModeParametersKHR parameters;-} VkDisplayModePropertiesKHR;--typedef struct VkDisplayModeCreateInfoKHR {- VkStructureType sType;- const void* pNext;- VkDisplayModeCreateFlagsKHR flags;- VkDisplayModeParametersKHR parameters;-} VkDisplayModeCreateInfoKHR;--typedef struct VkDisplayPlaneCapabilitiesKHR {- VkDisplayPlaneAlphaFlagsKHR supportedAlpha;- VkOffset2D minSrcPosition;- VkOffset2D maxSrcPosition;- VkExtent2D minSrcExtent;- VkExtent2D maxSrcExtent;- VkOffset2D minDstPosition;- VkOffset2D maxDstPosition;- VkExtent2D minDstExtent;- VkExtent2D maxDstExtent;-} VkDisplayPlaneCapabilitiesKHR;--typedef struct VkDisplayPlanePropertiesKHR {- VkDisplayKHR currentDisplay;- uint32_t currentStackIndex;-} VkDisplayPlanePropertiesKHR;--typedef struct VkDisplaySurfaceCreateInfoKHR {- VkStructureType sType;- const void* pNext;- VkDisplaySurfaceCreateFlagsKHR flags;- VkDisplayModeKHR displayMode;- uint32_t planeIndex;- uint32_t planeStackIndex;- VkSurfaceTransformFlagBitsKHR transform;- float globalAlpha;- VkDisplayPlaneAlphaFlagBitsKHR alphaMode;- VkExtent2D imageExtent;-} VkDisplaySurfaceCreateInfoKHR;---typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceDisplayPropertiesKHR)(VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkDisplayPropertiesKHR* pProperties);-typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR)(VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkDisplayPlanePropertiesKHR* pProperties);-typedef VkResult (VKAPI_PTR *PFN_vkGetDisplayPlaneSupportedDisplaysKHR)(VkPhysicalDevice physicalDevice, uint32_t planeIndex, uint32_t* pDisplayCount, VkDisplayKHR* pDisplays);-typedef VkResult (VKAPI_PTR *PFN_vkGetDisplayModePropertiesKHR)(VkPhysicalDevice physicalDevice, VkDisplayKHR display, uint32_t* pPropertyCount, VkDisplayModePropertiesKHR* pProperties);-typedef VkResult (VKAPI_PTR *PFN_vkCreateDisplayModeKHR)(VkPhysicalDevice physicalDevice, VkDisplayKHR display, const VkDisplayModeCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDisplayModeKHR* pMode);-typedef VkResult (VKAPI_PTR *PFN_vkGetDisplayPlaneCapabilitiesKHR)(VkPhysicalDevice physicalDevice, VkDisplayModeKHR mode, uint32_t planeIndex, VkDisplayPlaneCapabilitiesKHR* pCapabilities);-typedef VkResult (VKAPI_PTR *PFN_vkCreateDisplayPlaneSurfaceKHR)(VkInstance instance, const VkDisplaySurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceDisplayPropertiesKHR(- VkPhysicalDevice physicalDevice,- uint32_t* pPropertyCount,- VkDisplayPropertiesKHR* pProperties);--VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceDisplayPlanePropertiesKHR(- VkPhysicalDevice physicalDevice,- uint32_t* pPropertyCount,- VkDisplayPlanePropertiesKHR* pProperties);--VKAPI_ATTR VkResult VKAPI_CALL vkGetDisplayPlaneSupportedDisplaysKHR(- VkPhysicalDevice physicalDevice,- uint32_t planeIndex,- uint32_t* pDisplayCount,- VkDisplayKHR* pDisplays);--VKAPI_ATTR VkResult VKAPI_CALL vkGetDisplayModePropertiesKHR(- VkPhysicalDevice physicalDevice,- VkDisplayKHR display,- uint32_t* pPropertyCount,- VkDisplayModePropertiesKHR* pProperties);--VKAPI_ATTR VkResult VKAPI_CALL vkCreateDisplayModeKHR(- VkPhysicalDevice physicalDevice,- VkDisplayKHR display,- const VkDisplayModeCreateInfoKHR* pCreateInfo,- const VkAllocationCallbacks* pAllocator,- VkDisplayModeKHR* pMode);--VKAPI_ATTR VkResult VKAPI_CALL vkGetDisplayPlaneCapabilitiesKHR(- VkPhysicalDevice physicalDevice,- VkDisplayModeKHR mode,- uint32_t planeIndex,- VkDisplayPlaneCapabilitiesKHR* pCapabilities);--VKAPI_ATTR VkResult VKAPI_CALL vkCreateDisplayPlaneSurfaceKHR(- VkInstance instance,- const VkDisplaySurfaceCreateInfoKHR* pCreateInfo,- const VkAllocationCallbacks* pAllocator,- VkSurfaceKHR* pSurface);-#endif--#define VK_KHR_display_swapchain 1-#define VK_KHR_DISPLAY_SWAPCHAIN_SPEC_VERSION 9-#define VK_KHR_DISPLAY_SWAPCHAIN_EXTENSION_NAME "VK_KHR_display_swapchain"--typedef struct VkDisplayPresentInfoKHR {- VkStructureType sType;- const void* pNext;- VkRect2D srcRect;- VkRect2D dstRect;- VkBool32 persistent;-} VkDisplayPresentInfoKHR;---typedef VkResult (VKAPI_PTR *PFN_vkCreateSharedSwapchainsKHR)(VkDevice device, uint32_t swapchainCount, const VkSwapchainCreateInfoKHR* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkSwapchainKHR* pSwapchains);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR VkResult VKAPI_CALL vkCreateSharedSwapchainsKHR(- VkDevice device,- uint32_t swapchainCount,- const VkSwapchainCreateInfoKHR* pCreateInfos,- const VkAllocationCallbacks* pAllocator,- VkSwapchainKHR* pSwapchains);-#endif--#ifdef VK_USE_PLATFORM_XLIB_KHR-#define VK_KHR_xlib_surface 1-#include <X11/Xlib.h>--#define VK_KHR_XLIB_SURFACE_SPEC_VERSION 6-#define VK_KHR_XLIB_SURFACE_EXTENSION_NAME "VK_KHR_xlib_surface"--typedef VkFlags VkXlibSurfaceCreateFlagsKHR;--typedef struct VkXlibSurfaceCreateInfoKHR {- VkStructureType sType;- const void* pNext;- VkXlibSurfaceCreateFlagsKHR flags;- Display* dpy;- Window window;-} VkXlibSurfaceCreateInfoKHR;---typedef VkResult (VKAPI_PTR *PFN_vkCreateXlibSurfaceKHR)(VkInstance instance, const VkXlibSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);-typedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, Display* dpy, VisualID visualID);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR VkResult VKAPI_CALL vkCreateXlibSurfaceKHR(- VkInstance instance,- const VkXlibSurfaceCreateInfoKHR* pCreateInfo,- const VkAllocationCallbacks* pAllocator,- VkSurfaceKHR* pSurface);--VKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceXlibPresentationSupportKHR(- VkPhysicalDevice physicalDevice,- uint32_t queueFamilyIndex,- Display* dpy,- VisualID visualID);-#endif-#endif /* VK_USE_PLATFORM_XLIB_KHR */--#ifdef VK_USE_PLATFORM_XCB_KHR-#define VK_KHR_xcb_surface 1-#include <xcb/xcb.h>--#define VK_KHR_XCB_SURFACE_SPEC_VERSION 6-#define VK_KHR_XCB_SURFACE_EXTENSION_NAME "VK_KHR_xcb_surface"--typedef VkFlags VkXcbSurfaceCreateFlagsKHR;--typedef struct VkXcbSurfaceCreateInfoKHR {- VkStructureType sType;- const void* pNext;- VkXcbSurfaceCreateFlagsKHR flags;- xcb_connection_t* connection;- xcb_window_t window;-} VkXcbSurfaceCreateInfoKHR;---typedef VkResult (VKAPI_PTR *PFN_vkCreateXcbSurfaceKHR)(VkInstance instance, const VkXcbSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);-typedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, xcb_connection_t* connection, xcb_visualid_t visual_id);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR VkResult VKAPI_CALL vkCreateXcbSurfaceKHR(- VkInstance instance,- const VkXcbSurfaceCreateInfoKHR* pCreateInfo,- const VkAllocationCallbacks* pAllocator,- VkSurfaceKHR* pSurface);--VKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceXcbPresentationSupportKHR(- VkPhysicalDevice physicalDevice,- uint32_t queueFamilyIndex,- xcb_connection_t* connection,- xcb_visualid_t visual_id);-#endif-#endif /* VK_USE_PLATFORM_XCB_KHR */--#ifdef VK_USE_PLATFORM_WAYLAND_KHR-#define VK_KHR_wayland_surface 1-#include <wayland-client.h>--#define VK_KHR_WAYLAND_SURFACE_SPEC_VERSION 6-#define VK_KHR_WAYLAND_SURFACE_EXTENSION_NAME "VK_KHR_wayland_surface"--typedef VkFlags VkWaylandSurfaceCreateFlagsKHR;--typedef struct VkWaylandSurfaceCreateInfoKHR {- VkStructureType sType;- const void* pNext;- VkWaylandSurfaceCreateFlagsKHR flags;- struct wl_display* display;- struct wl_surface* surface;-} VkWaylandSurfaceCreateInfoKHR;---typedef VkResult (VKAPI_PTR *PFN_vkCreateWaylandSurfaceKHR)(VkInstance instance, const VkWaylandSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);-typedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, struct wl_display* display);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR VkResult VKAPI_CALL vkCreateWaylandSurfaceKHR(- VkInstance instance,- const VkWaylandSurfaceCreateInfoKHR* pCreateInfo,- const VkAllocationCallbacks* pAllocator,- VkSurfaceKHR* pSurface);--VKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceWaylandPresentationSupportKHR(- VkPhysicalDevice physicalDevice,- uint32_t queueFamilyIndex,- struct wl_display* display);-#endif-#endif /* VK_USE_PLATFORM_WAYLAND_KHR */--#ifdef VK_USE_PLATFORM_MIR_KHR-#define VK_KHR_mir_surface 1-#include <mir_toolkit/client_types.h>--#define VK_KHR_MIR_SURFACE_SPEC_VERSION 4-#define VK_KHR_MIR_SURFACE_EXTENSION_NAME "VK_KHR_mir_surface"--typedef VkFlags VkMirSurfaceCreateFlagsKHR;--typedef struct VkMirSurfaceCreateInfoKHR {- VkStructureType sType;- const void* pNext;- VkMirSurfaceCreateFlagsKHR flags;- MirConnection* connection;- MirSurface* mirSurface;-} VkMirSurfaceCreateInfoKHR;---typedef VkResult (VKAPI_PTR *PFN_vkCreateMirSurfaceKHR)(VkInstance instance, const VkMirSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);-typedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceMirPresentationSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, MirConnection* connection);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR VkResult VKAPI_CALL vkCreateMirSurfaceKHR(- VkInstance instance,- const VkMirSurfaceCreateInfoKHR* pCreateInfo,- const VkAllocationCallbacks* pAllocator,- VkSurfaceKHR* pSurface);--VKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceMirPresentationSupportKHR(- VkPhysicalDevice physicalDevice,- uint32_t queueFamilyIndex,- MirConnection* connection);-#endif-#endif /* VK_USE_PLATFORM_MIR_KHR */--#ifdef VK_USE_PLATFORM_ANDROID_KHR-#define VK_KHR_android_surface 1-#include <android/native_window.h>--#define VK_KHR_ANDROID_SURFACE_SPEC_VERSION 6-#define VK_KHR_ANDROID_SURFACE_EXTENSION_NAME "VK_KHR_android_surface"--typedef VkFlags VkAndroidSurfaceCreateFlagsKHR;--typedef struct VkAndroidSurfaceCreateInfoKHR {- VkStructureType sType;- const void* pNext;- VkAndroidSurfaceCreateFlagsKHR flags;- ANativeWindow* window;-} VkAndroidSurfaceCreateInfoKHR;---typedef VkResult (VKAPI_PTR *PFN_vkCreateAndroidSurfaceKHR)(VkInstance instance, const VkAndroidSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR VkResult VKAPI_CALL vkCreateAndroidSurfaceKHR(- VkInstance instance,- const VkAndroidSurfaceCreateInfoKHR* pCreateInfo,- const VkAllocationCallbacks* pAllocator,- VkSurfaceKHR* pSurface);-#endif-#endif /* VK_USE_PLATFORM_ANDROID_KHR */--#ifdef VK_USE_PLATFORM_WIN32_KHR-#define VK_KHR_win32_surface 1-#include <windows.h>--#define VK_KHR_WIN32_SURFACE_SPEC_VERSION 6-#define VK_KHR_WIN32_SURFACE_EXTENSION_NAME "VK_KHR_win32_surface"--typedef VkFlags VkWin32SurfaceCreateFlagsKHR;--typedef struct VkWin32SurfaceCreateInfoKHR {- VkStructureType sType;- const void* pNext;- VkWin32SurfaceCreateFlagsKHR flags;- HINSTANCE hinstance;- HWND hwnd;-} VkWin32SurfaceCreateInfoKHR;---typedef VkResult (VKAPI_PTR *PFN_vkCreateWin32SurfaceKHR)(VkInstance instance, const VkWin32SurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);-typedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR VkResult VKAPI_CALL vkCreateWin32SurfaceKHR(- VkInstance instance,- const VkWin32SurfaceCreateInfoKHR* pCreateInfo,- const VkAllocationCallbacks* pAllocator,- VkSurfaceKHR* pSurface);--VKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceWin32PresentationSupportKHR(- VkPhysicalDevice physicalDevice,- uint32_t queueFamilyIndex);-#endif-#endif /* VK_USE_PLATFORM_WIN32_KHR */--#define VK_KHR_sampler_mirror_clamp_to_edge 1-#define VK_KHR_SAMPLER_MIRROR_CLAMP_TO_EDGE_SPEC_VERSION 1-#define VK_KHR_SAMPLER_MIRROR_CLAMP_TO_EDGE_EXTENSION_NAME "VK_KHR_sampler_mirror_clamp_to_edge"---#define VK_KHR_get_physical_device_properties2 1-#define VK_KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_SPEC_VERSION 1-#define VK_KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_EXTENSION_NAME "VK_KHR_get_physical_device_properties2"--typedef struct VkPhysicalDeviceFeatures2KHR {- VkStructureType sType;- void* pNext;- VkPhysicalDeviceFeatures features;-} VkPhysicalDeviceFeatures2KHR;--typedef struct VkPhysicalDeviceProperties2KHR {- VkStructureType sType;- void* pNext;- VkPhysicalDeviceProperties properties;-} VkPhysicalDeviceProperties2KHR;--typedef struct VkFormatProperties2KHR {- VkStructureType sType;- void* pNext;- VkFormatProperties formatProperties;-} VkFormatProperties2KHR;--typedef struct VkImageFormatProperties2KHR {- VkStructureType sType;- void* pNext;- VkImageFormatProperties imageFormatProperties;-} VkImageFormatProperties2KHR;--typedef struct VkPhysicalDeviceImageFormatInfo2KHR {- VkStructureType sType;- const void* pNext;- VkFormat format;- VkImageType type;- VkImageTiling tiling;- VkImageUsageFlags usage;- VkImageCreateFlags flags;-} VkPhysicalDeviceImageFormatInfo2KHR;--typedef struct VkQueueFamilyProperties2KHR {- VkStructureType sType;- void* pNext;- VkQueueFamilyProperties queueFamilyProperties;-} VkQueueFamilyProperties2KHR;--typedef struct VkPhysicalDeviceMemoryProperties2KHR {- VkStructureType sType;- void* pNext;- VkPhysicalDeviceMemoryProperties memoryProperties;-} VkPhysicalDeviceMemoryProperties2KHR;--typedef struct VkSparseImageFormatProperties2KHR {- VkStructureType sType;- void* pNext;- VkSparseImageFormatProperties properties;-} VkSparseImageFormatProperties2KHR;--typedef struct VkPhysicalDeviceSparseImageFormatInfo2KHR {- VkStructureType sType;- const void* pNext;- VkFormat format;- VkImageType type;- VkSampleCountFlagBits samples;- VkImageUsageFlags usage;- VkImageTiling tiling;-} VkPhysicalDeviceSparseImageFormatInfo2KHR;---typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceFeatures2KHR)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceFeatures2KHR* pFeatures);-typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceProperties2KHR)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceProperties2KHR* pProperties);-typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceFormatProperties2KHR)(VkPhysicalDevice physicalDevice, VkFormat format, VkFormatProperties2KHR* pFormatProperties);-typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceImageFormatProperties2KHR)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceImageFormatInfo2KHR* pImageFormatInfo, VkImageFormatProperties2KHR* pImageFormatProperties);-typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceQueueFamilyProperties2KHR)(VkPhysicalDevice physicalDevice, uint32_t* pQueueFamilyPropertyCount, VkQueueFamilyProperties2KHR* pQueueFamilyProperties);-typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceMemoryProperties2KHR)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceMemoryProperties2KHR* pMemoryProperties);-typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceSparseImageFormatProperties2KHR)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceSparseImageFormatInfo2KHR* pFormatInfo, uint32_t* pPropertyCount, VkSparseImageFormatProperties2KHR* pProperties);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceFeatures2KHR(- VkPhysicalDevice physicalDevice,- VkPhysicalDeviceFeatures2KHR* pFeatures);--VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceProperties2KHR(- VkPhysicalDevice physicalDevice,- VkPhysicalDeviceProperties2KHR* pProperties);--VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceFormatProperties2KHR(- VkPhysicalDevice physicalDevice,- VkFormat format,- VkFormatProperties2KHR* pFormatProperties);--VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceImageFormatProperties2KHR(- VkPhysicalDevice physicalDevice,- const VkPhysicalDeviceImageFormatInfo2KHR* pImageFormatInfo,- VkImageFormatProperties2KHR* pImageFormatProperties);--VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceQueueFamilyProperties2KHR(- VkPhysicalDevice physicalDevice,- uint32_t* pQueueFamilyPropertyCount,- VkQueueFamilyProperties2KHR* pQueueFamilyProperties);--VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceMemoryProperties2KHR(- VkPhysicalDevice physicalDevice,- VkPhysicalDeviceMemoryProperties2KHR* pMemoryProperties);--VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceSparseImageFormatProperties2KHR(- VkPhysicalDevice physicalDevice,- const VkPhysicalDeviceSparseImageFormatInfo2KHR* pFormatInfo,- uint32_t* pPropertyCount,- VkSparseImageFormatProperties2KHR* pProperties);-#endif--#define VK_KHR_shader_draw_parameters 1-#define VK_KHR_SHADER_DRAW_PARAMETERS_SPEC_VERSION 1-#define VK_KHR_SHADER_DRAW_PARAMETERS_EXTENSION_NAME "VK_KHR_shader_draw_parameters"---#define VK_KHR_maintenance1 1-#define VK_KHR_MAINTENANCE1_SPEC_VERSION 1-#define VK_KHR_MAINTENANCE1_EXTENSION_NAME "VK_KHR_maintenance1"--typedef VkFlags VkCommandPoolTrimFlagsKHR;--typedef void (VKAPI_PTR *PFN_vkTrimCommandPoolKHR)(VkDevice device, VkCommandPool commandPool, VkCommandPoolTrimFlagsKHR flags);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR void VKAPI_CALL vkTrimCommandPoolKHR(- VkDevice device,- VkCommandPool commandPool,- VkCommandPoolTrimFlagsKHR flags);-#endif--#define VK_KHR_external_memory_capabilities 1-#define VK_LUID_SIZE_KHR 8-#define VK_KHR_EXTERNAL_MEMORY_CAPABILITIES_SPEC_VERSION 1-#define VK_KHR_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME "VK_KHR_external_memory_capabilities"---typedef enum VkExternalMemoryHandleTypeFlagBitsKHR {- VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT_KHR = 0x00000001,- VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR = 0x00000002,- VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR = 0x00000004,- VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT_KHR = 0x00000008,- VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT_KHR = 0x00000010,- VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT_KHR = 0x00000020,- VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT_KHR = 0x00000040,- VK_EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT = 0x00000200,- VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT = 0x00000080,- VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT = 0x00000100,- VK_EXTERNAL_MEMORY_HANDLE_TYPE_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF-} VkExternalMemoryHandleTypeFlagBitsKHR;-typedef VkFlags VkExternalMemoryHandleTypeFlagsKHR;--typedef enum VkExternalMemoryFeatureFlagBitsKHR {- VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_KHR = 0x00000001,- VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_KHR = 0x00000002,- VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_KHR = 0x00000004,- VK_EXTERNAL_MEMORY_FEATURE_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF-} VkExternalMemoryFeatureFlagBitsKHR;-typedef VkFlags VkExternalMemoryFeatureFlagsKHR;--typedef struct VkExternalMemoryPropertiesKHR {- VkExternalMemoryFeatureFlagsKHR externalMemoryFeatures;- VkExternalMemoryHandleTypeFlagsKHR exportFromImportedHandleTypes;- VkExternalMemoryHandleTypeFlagsKHR compatibleHandleTypes;-} VkExternalMemoryPropertiesKHR;--typedef struct VkPhysicalDeviceExternalImageFormatInfoKHR {- VkStructureType sType;- const void* pNext;- VkExternalMemoryHandleTypeFlagBitsKHR handleType;-} VkPhysicalDeviceExternalImageFormatInfoKHR;--typedef struct VkExternalImageFormatPropertiesKHR {- VkStructureType sType;- void* pNext;- VkExternalMemoryPropertiesKHR externalMemoryProperties;-} VkExternalImageFormatPropertiesKHR;--typedef struct VkPhysicalDeviceExternalBufferInfoKHR {- VkStructureType sType;- const void* pNext;- VkBufferCreateFlags flags;- VkBufferUsageFlags usage;- VkExternalMemoryHandleTypeFlagBitsKHR handleType;-} VkPhysicalDeviceExternalBufferInfoKHR;--typedef struct VkExternalBufferPropertiesKHR {- VkStructureType sType;- void* pNext;- VkExternalMemoryPropertiesKHR externalMemoryProperties;-} VkExternalBufferPropertiesKHR;--typedef struct VkPhysicalDeviceIDPropertiesKHR {- VkStructureType sType;- void* pNext;- uint8_t deviceUUID[VK_UUID_SIZE];- uint8_t driverUUID[VK_UUID_SIZE];- uint8_t deviceLUID[VK_LUID_SIZE_KHR];- uint32_t deviceNodeMask;- VkBool32 deviceLUIDValid;-} VkPhysicalDeviceIDPropertiesKHR;---typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceExternalBufferPropertiesKHR)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalBufferInfoKHR* pExternalBufferInfo, VkExternalBufferPropertiesKHR* pExternalBufferProperties);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceExternalBufferPropertiesKHR(- VkPhysicalDevice physicalDevice,- const VkPhysicalDeviceExternalBufferInfoKHR* pExternalBufferInfo,- VkExternalBufferPropertiesKHR* pExternalBufferProperties);-#endif--#define VK_KHR_external_memory 1-#define VK_KHR_EXTERNAL_MEMORY_SPEC_VERSION 1-#define VK_KHR_EXTERNAL_MEMORY_EXTENSION_NAME "VK_KHR_external_memory"-#define VK_QUEUE_FAMILY_EXTERNAL_KHR (~0U-1)--typedef struct VkExternalMemoryImageCreateInfoKHR {- VkStructureType sType;- const void* pNext;- VkExternalMemoryHandleTypeFlagsKHR handleTypes;-} VkExternalMemoryImageCreateInfoKHR;--typedef struct VkExternalMemoryBufferCreateInfoKHR {- VkStructureType sType;- const void* pNext;- VkExternalMemoryHandleTypeFlagsKHR handleTypes;-} VkExternalMemoryBufferCreateInfoKHR;--typedef struct VkExportMemoryAllocateInfoKHR {- VkStructureType sType;- const void* pNext;- VkExternalMemoryHandleTypeFlagsKHR handleTypes;-} VkExportMemoryAllocateInfoKHR;----#ifdef VK_USE_PLATFORM_WIN32_KHR-#define VK_KHR_external_memory_win32 1-#define VK_KHR_EXTERNAL_MEMORY_WIN32_SPEC_VERSION 1-#define VK_KHR_EXTERNAL_MEMORY_WIN32_EXTENSION_NAME "VK_KHR_external_memory_win32"--typedef struct VkImportMemoryWin32HandleInfoKHR {- VkStructureType sType;- const void* pNext;- VkExternalMemoryHandleTypeFlagBitsKHR handleType;- HANDLE handle;- LPCWSTR name;-} VkImportMemoryWin32HandleInfoKHR;--typedef struct VkExportMemoryWin32HandleInfoKHR {- VkStructureType sType;- const void* pNext;- const SECURITY_ATTRIBUTES* pAttributes;- DWORD dwAccess;- LPCWSTR name;-} VkExportMemoryWin32HandleInfoKHR;--typedef struct VkMemoryWin32HandlePropertiesKHR {- VkStructureType sType;- void* pNext;- uint32_t memoryTypeBits;-} VkMemoryWin32HandlePropertiesKHR;--typedef struct VkMemoryGetWin32HandleInfoKHR {- VkStructureType sType;- const void* pNext;- VkDeviceMemory memory;- VkExternalMemoryHandleTypeFlagBitsKHR handleType;-} VkMemoryGetWin32HandleInfoKHR;---typedef VkResult (VKAPI_PTR *PFN_vkGetMemoryWin32HandleKHR)(VkDevice device, const VkMemoryGetWin32HandleInfoKHR* pGetWin32HandleInfo, HANDLE* pHandle);-typedef VkResult (VKAPI_PTR *PFN_vkGetMemoryWin32HandlePropertiesKHR)(VkDevice device, VkExternalMemoryHandleTypeFlagBitsKHR handleType, HANDLE handle, VkMemoryWin32HandlePropertiesKHR* pMemoryWin32HandleProperties);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryWin32HandleKHR(- VkDevice device,- const VkMemoryGetWin32HandleInfoKHR* pGetWin32HandleInfo,- HANDLE* pHandle);--VKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryWin32HandlePropertiesKHR(- VkDevice device,- VkExternalMemoryHandleTypeFlagBitsKHR handleType,- HANDLE handle,- VkMemoryWin32HandlePropertiesKHR* pMemoryWin32HandleProperties);-#endif-#endif /* VK_USE_PLATFORM_WIN32_KHR */--#define VK_KHR_external_memory_fd 1-#define VK_KHR_EXTERNAL_MEMORY_FD_SPEC_VERSION 1-#define VK_KHR_EXTERNAL_MEMORY_FD_EXTENSION_NAME "VK_KHR_external_memory_fd"--typedef struct VkImportMemoryFdInfoKHR {- VkStructureType sType;- const void* pNext;- VkExternalMemoryHandleTypeFlagBitsKHR handleType;- int fd;-} VkImportMemoryFdInfoKHR;--typedef struct VkMemoryFdPropertiesKHR {- VkStructureType sType;- void* pNext;- uint32_t memoryTypeBits;-} VkMemoryFdPropertiesKHR;--typedef struct VkMemoryGetFdInfoKHR {- VkStructureType sType;- const void* pNext;- VkDeviceMemory memory;- VkExternalMemoryHandleTypeFlagBitsKHR handleType;-} VkMemoryGetFdInfoKHR;---typedef VkResult (VKAPI_PTR *PFN_vkGetMemoryFdKHR)(VkDevice device, const VkMemoryGetFdInfoKHR* pGetFdInfo, int* pFd);-typedef VkResult (VKAPI_PTR *PFN_vkGetMemoryFdPropertiesKHR)(VkDevice device, VkExternalMemoryHandleTypeFlagBitsKHR handleType, int fd, VkMemoryFdPropertiesKHR* pMemoryFdProperties);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryFdKHR(- VkDevice device,- const VkMemoryGetFdInfoKHR* pGetFdInfo,- int* pFd);--VKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryFdPropertiesKHR(- VkDevice device,- VkExternalMemoryHandleTypeFlagBitsKHR handleType,- int fd,- VkMemoryFdPropertiesKHR* pMemoryFdProperties);-#endif--#ifdef VK_USE_PLATFORM_WIN32_KHR-#define VK_KHR_win32_keyed_mutex 1-#define VK_KHR_WIN32_KEYED_MUTEX_SPEC_VERSION 1-#define VK_KHR_WIN32_KEYED_MUTEX_EXTENSION_NAME "VK_KHR_win32_keyed_mutex"--typedef struct VkWin32KeyedMutexAcquireReleaseInfoKHR {- VkStructureType sType;- const void* pNext;- uint32_t acquireCount;- const VkDeviceMemory* pAcquireSyncs;- const uint64_t* pAcquireKeys;- const uint32_t* pAcquireTimeouts;- uint32_t releaseCount;- const VkDeviceMemory* pReleaseSyncs;- const uint64_t* pReleaseKeys;-} VkWin32KeyedMutexAcquireReleaseInfoKHR;---#endif /* VK_USE_PLATFORM_WIN32_KHR */--#define VK_KHR_external_semaphore_capabilities 1-#define VK_KHR_EXTERNAL_SEMAPHORE_CAPABILITIES_SPEC_VERSION 1-#define VK_KHR_EXTERNAL_SEMAPHORE_CAPABILITIES_EXTENSION_NAME "VK_KHR_external_semaphore_capabilities"---typedef enum VkExternalSemaphoreHandleTypeFlagBitsKHR {- VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR = 0x00000001,- VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR = 0x00000002,- VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR = 0x00000004,- VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT_KHR = 0x00000008,- VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT_KHR = 0x00000010,- VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF-} VkExternalSemaphoreHandleTypeFlagBitsKHR;-typedef VkFlags VkExternalSemaphoreHandleTypeFlagsKHR;--typedef enum VkExternalSemaphoreFeatureFlagBitsKHR {- VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT_KHR = 0x00000001,- VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT_KHR = 0x00000002,- VK_EXTERNAL_SEMAPHORE_FEATURE_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF-} VkExternalSemaphoreFeatureFlagBitsKHR;-typedef VkFlags VkExternalSemaphoreFeatureFlagsKHR;--typedef struct VkPhysicalDeviceExternalSemaphoreInfoKHR {- VkStructureType sType;- const void* pNext;- VkExternalSemaphoreHandleTypeFlagBitsKHR handleType;-} VkPhysicalDeviceExternalSemaphoreInfoKHR;--typedef struct VkExternalSemaphorePropertiesKHR {- VkStructureType sType;- void* pNext;- VkExternalSemaphoreHandleTypeFlagsKHR exportFromImportedHandleTypes;- VkExternalSemaphoreHandleTypeFlagsKHR compatibleHandleTypes;- VkExternalSemaphoreFeatureFlagsKHR externalSemaphoreFeatures;-} VkExternalSemaphorePropertiesKHR;---typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceExternalSemaphorePropertiesKHR)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalSemaphoreInfoKHR* pExternalSemaphoreInfo, VkExternalSemaphorePropertiesKHR* pExternalSemaphoreProperties);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceExternalSemaphorePropertiesKHR(- VkPhysicalDevice physicalDevice,- const VkPhysicalDeviceExternalSemaphoreInfoKHR* pExternalSemaphoreInfo,- VkExternalSemaphorePropertiesKHR* pExternalSemaphoreProperties);-#endif--#define VK_KHR_external_semaphore 1-#define VK_KHR_EXTERNAL_SEMAPHORE_SPEC_VERSION 1-#define VK_KHR_EXTERNAL_SEMAPHORE_EXTENSION_NAME "VK_KHR_external_semaphore"---typedef enum VkSemaphoreImportFlagBitsKHR {- VK_SEMAPHORE_IMPORT_TEMPORARY_BIT_KHR = 0x00000001,- VK_SEMAPHORE_IMPORT_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF-} VkSemaphoreImportFlagBitsKHR;-typedef VkFlags VkSemaphoreImportFlagsKHR;--typedef struct VkExportSemaphoreCreateInfoKHR {- VkStructureType sType;- const void* pNext;- VkExternalSemaphoreHandleTypeFlagsKHR handleTypes;-} VkExportSemaphoreCreateInfoKHR;----#ifdef VK_USE_PLATFORM_WIN32_KHR-#define VK_KHR_external_semaphore_win32 1-#define VK_KHR_EXTERNAL_SEMAPHORE_WIN32_SPEC_VERSION 1-#define VK_KHR_EXTERNAL_SEMAPHORE_WIN32_EXTENSION_NAME "VK_KHR_external_semaphore_win32"--typedef struct VkImportSemaphoreWin32HandleInfoKHR {- VkStructureType sType;- const void* pNext;- VkSemaphore semaphore;- VkSemaphoreImportFlagsKHR flags;- VkExternalSemaphoreHandleTypeFlagBitsKHR handleType;- HANDLE handle;- LPCWSTR name;-} VkImportSemaphoreWin32HandleInfoKHR;--typedef struct VkExportSemaphoreWin32HandleInfoKHR {- VkStructureType sType;- const void* pNext;- const SECURITY_ATTRIBUTES* pAttributes;- DWORD dwAccess;- LPCWSTR name;-} VkExportSemaphoreWin32HandleInfoKHR;--typedef struct VkD3D12FenceSubmitInfoKHR {- VkStructureType sType;- const void* pNext;- uint32_t waitSemaphoreValuesCount;- const uint64_t* pWaitSemaphoreValues;- uint32_t signalSemaphoreValuesCount;- const uint64_t* pSignalSemaphoreValues;-} VkD3D12FenceSubmitInfoKHR;--typedef struct VkSemaphoreGetWin32HandleInfoKHR {- VkStructureType sType;- const void* pNext;- VkSemaphore semaphore;- VkExternalSemaphoreHandleTypeFlagBitsKHR handleType;-} VkSemaphoreGetWin32HandleInfoKHR;---typedef VkResult (VKAPI_PTR *PFN_vkImportSemaphoreWin32HandleKHR)(VkDevice device, const VkImportSemaphoreWin32HandleInfoKHR* pImportSemaphoreWin32HandleInfo);-typedef VkResult (VKAPI_PTR *PFN_vkGetSemaphoreWin32HandleKHR)(VkDevice device, const VkSemaphoreGetWin32HandleInfoKHR* pGetWin32HandleInfo, HANDLE* pHandle);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR VkResult VKAPI_CALL vkImportSemaphoreWin32HandleKHR(- VkDevice device,- const VkImportSemaphoreWin32HandleInfoKHR* pImportSemaphoreWin32HandleInfo);--VKAPI_ATTR VkResult VKAPI_CALL vkGetSemaphoreWin32HandleKHR(- VkDevice device,- const VkSemaphoreGetWin32HandleInfoKHR* pGetWin32HandleInfo,- HANDLE* pHandle);-#endif-#endif /* VK_USE_PLATFORM_WIN32_KHR */--#define VK_KHR_external_semaphore_fd 1-#define VK_KHR_EXTERNAL_SEMAPHORE_FD_SPEC_VERSION 1-#define VK_KHR_EXTERNAL_SEMAPHORE_FD_EXTENSION_NAME "VK_KHR_external_semaphore_fd"--typedef struct VkImportSemaphoreFdInfoKHR {- VkStructureType sType;- const void* pNext;- VkSemaphore semaphore;- VkSemaphoreImportFlagsKHR flags;- VkExternalSemaphoreHandleTypeFlagBitsKHR handleType;- int fd;-} VkImportSemaphoreFdInfoKHR;--typedef struct VkSemaphoreGetFdInfoKHR {- VkStructureType sType;- const void* pNext;- VkSemaphore semaphore;- VkExternalSemaphoreHandleTypeFlagBitsKHR handleType;-} VkSemaphoreGetFdInfoKHR;---typedef VkResult (VKAPI_PTR *PFN_vkImportSemaphoreFdKHR)(VkDevice device, const VkImportSemaphoreFdInfoKHR* pImportSemaphoreFdInfo);-typedef VkResult (VKAPI_PTR *PFN_vkGetSemaphoreFdKHR)(VkDevice device, const VkSemaphoreGetFdInfoKHR* pGetFdInfo, int* pFd);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR VkResult VKAPI_CALL vkImportSemaphoreFdKHR(- VkDevice device,- const VkImportSemaphoreFdInfoKHR* pImportSemaphoreFdInfo);--VKAPI_ATTR VkResult VKAPI_CALL vkGetSemaphoreFdKHR(- VkDevice device,- const VkSemaphoreGetFdInfoKHR* pGetFdInfo,- int* pFd);-#endif--#define VK_KHR_push_descriptor 1-#define VK_KHR_PUSH_DESCRIPTOR_SPEC_VERSION 1-#define VK_KHR_PUSH_DESCRIPTOR_EXTENSION_NAME "VK_KHR_push_descriptor"--typedef struct VkPhysicalDevicePushDescriptorPropertiesKHR {- VkStructureType sType;- void* pNext;- uint32_t maxPushDescriptors;-} VkPhysicalDevicePushDescriptorPropertiesKHR;---typedef void (VKAPI_PTR *PFN_vkCmdPushDescriptorSetKHR)(VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipelineLayout layout, uint32_t set, uint32_t descriptorWriteCount, const VkWriteDescriptorSet* pDescriptorWrites);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR void VKAPI_CALL vkCmdPushDescriptorSetKHR(- VkCommandBuffer commandBuffer,- VkPipelineBindPoint pipelineBindPoint,- VkPipelineLayout layout,- uint32_t set,- uint32_t descriptorWriteCount,- const VkWriteDescriptorSet* pDescriptorWrites);-#endif--#define VK_KHR_16bit_storage 1-#define VK_KHR_16BIT_STORAGE_SPEC_VERSION 1-#define VK_KHR_16BIT_STORAGE_EXTENSION_NAME "VK_KHR_16bit_storage"--typedef struct VkPhysicalDevice16BitStorageFeaturesKHR {- VkStructureType sType;- void* pNext;- VkBool32 storageBuffer16BitAccess;- VkBool32 uniformAndStorageBuffer16BitAccess;- VkBool32 storagePushConstant16;- VkBool32 storageInputOutput16;-} VkPhysicalDevice16BitStorageFeaturesKHR;----#define VK_KHR_incremental_present 1-#define VK_KHR_INCREMENTAL_PRESENT_SPEC_VERSION 1-#define VK_KHR_INCREMENTAL_PRESENT_EXTENSION_NAME "VK_KHR_incremental_present"--typedef struct VkRectLayerKHR {- VkOffset2D offset;- VkExtent2D extent;- uint32_t layer;-} VkRectLayerKHR;--typedef struct VkPresentRegionKHR {- uint32_t rectangleCount;- const VkRectLayerKHR* pRectangles;-} VkPresentRegionKHR;--typedef struct VkPresentRegionsKHR {- VkStructureType sType;- const void* pNext;- uint32_t swapchainCount;- const VkPresentRegionKHR* pRegions;-} VkPresentRegionsKHR;----#define VK_KHR_descriptor_update_template 1-VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDescriptorUpdateTemplateKHR)--#define VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_SPEC_VERSION 1-#define VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME "VK_KHR_descriptor_update_template"---typedef enum VkDescriptorUpdateTemplateTypeKHR {- VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR = 0,- VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR = 1,- VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_BEGIN_RANGE_KHR = VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR,- VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_END_RANGE_KHR = VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR,- VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_RANGE_SIZE_KHR = (VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR - VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR + 1),- VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_MAX_ENUM_KHR = 0x7FFFFFFF-} VkDescriptorUpdateTemplateTypeKHR;--typedef VkFlags VkDescriptorUpdateTemplateCreateFlagsKHR;--typedef struct VkDescriptorUpdateTemplateEntryKHR {- uint32_t dstBinding;- uint32_t dstArrayElement;- uint32_t descriptorCount;- VkDescriptorType descriptorType;- size_t offset;- size_t stride;-} VkDescriptorUpdateTemplateEntryKHR;--typedef struct VkDescriptorUpdateTemplateCreateInfoKHR {- VkStructureType sType;- void* pNext;- VkDescriptorUpdateTemplateCreateFlagsKHR flags;- uint32_t descriptorUpdateEntryCount;- const VkDescriptorUpdateTemplateEntryKHR* pDescriptorUpdateEntries;- VkDescriptorUpdateTemplateTypeKHR templateType;- VkDescriptorSetLayout descriptorSetLayout;- VkPipelineBindPoint pipelineBindPoint;- VkPipelineLayout pipelineLayout;- uint32_t set;-} VkDescriptorUpdateTemplateCreateInfoKHR;---typedef VkResult (VKAPI_PTR *PFN_vkCreateDescriptorUpdateTemplateKHR)(VkDevice device, const VkDescriptorUpdateTemplateCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorUpdateTemplateKHR* pDescriptorUpdateTemplate);-typedef void (VKAPI_PTR *PFN_vkDestroyDescriptorUpdateTemplateKHR)(VkDevice device, VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, const VkAllocationCallbacks* pAllocator);-typedef void (VKAPI_PTR *PFN_vkUpdateDescriptorSetWithTemplateKHR)(VkDevice device, VkDescriptorSet descriptorSet, VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, const void* pData);-typedef void (VKAPI_PTR *PFN_vkCmdPushDescriptorSetWithTemplateKHR)(VkCommandBuffer commandBuffer, VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, VkPipelineLayout layout, uint32_t set, const void* pData);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR VkResult VKAPI_CALL vkCreateDescriptorUpdateTemplateKHR(- VkDevice device,- const VkDescriptorUpdateTemplateCreateInfoKHR* pCreateInfo,- const VkAllocationCallbacks* pAllocator,- VkDescriptorUpdateTemplateKHR* pDescriptorUpdateTemplate);--VKAPI_ATTR void VKAPI_CALL vkDestroyDescriptorUpdateTemplateKHR(- VkDevice device,- VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate,- const VkAllocationCallbacks* pAllocator);--VKAPI_ATTR void VKAPI_CALL vkUpdateDescriptorSetWithTemplateKHR(- VkDevice device,- VkDescriptorSet descriptorSet,- VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate,- const void* pData);--VKAPI_ATTR void VKAPI_CALL vkCmdPushDescriptorSetWithTemplateKHR(- VkCommandBuffer commandBuffer,- VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate,- VkPipelineLayout layout,- uint32_t set,- const void* pData);-#endif--#define VK_KHR_shared_presentable_image 1-#define VK_KHR_SHARED_PRESENTABLE_IMAGE_SPEC_VERSION 1-#define VK_KHR_SHARED_PRESENTABLE_IMAGE_EXTENSION_NAME "VK_KHR_shared_presentable_image"--typedef struct VkSharedPresentSurfaceCapabilitiesKHR {- VkStructureType sType;- void* pNext;- VkImageUsageFlags sharedPresentSupportedUsageFlags;-} VkSharedPresentSurfaceCapabilitiesKHR;---typedef VkResult (VKAPI_PTR *PFN_vkGetSwapchainStatusKHR)(VkDevice device, VkSwapchainKHR swapchain);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR VkResult VKAPI_CALL vkGetSwapchainStatusKHR(- VkDevice device,- VkSwapchainKHR swapchain);-#endif--#define VK_KHR_external_fence_capabilities 1-#define VK_KHR_EXTERNAL_FENCE_CAPABILITIES_SPEC_VERSION 1-#define VK_KHR_EXTERNAL_FENCE_CAPABILITIES_EXTENSION_NAME "VK_KHR_external_fence_capabilities"---typedef enum VkExternalFenceHandleTypeFlagBitsKHR {- VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR = 0x00000001,- VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR = 0x00000002,- VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR = 0x00000004,- VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT_KHR = 0x00000008,- VK_EXTERNAL_FENCE_HANDLE_TYPE_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF-} VkExternalFenceHandleTypeFlagBitsKHR;-typedef VkFlags VkExternalFenceHandleTypeFlagsKHR;--typedef enum VkExternalFenceFeatureFlagBitsKHR {- VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT_KHR = 0x00000001,- VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT_KHR = 0x00000002,- VK_EXTERNAL_FENCE_FEATURE_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF-} VkExternalFenceFeatureFlagBitsKHR;-typedef VkFlags VkExternalFenceFeatureFlagsKHR;--typedef struct VkPhysicalDeviceExternalFenceInfoKHR {- VkStructureType sType;- const void* pNext;- VkExternalFenceHandleTypeFlagBitsKHR handleType;-} VkPhysicalDeviceExternalFenceInfoKHR;--typedef struct VkExternalFencePropertiesKHR {- VkStructureType sType;- void* pNext;- VkExternalFenceHandleTypeFlagsKHR exportFromImportedHandleTypes;- VkExternalFenceHandleTypeFlagsKHR compatibleHandleTypes;- VkExternalFenceFeatureFlagsKHR externalFenceFeatures;-} VkExternalFencePropertiesKHR;---typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceExternalFencePropertiesKHR)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalFenceInfoKHR* pExternalFenceInfo, VkExternalFencePropertiesKHR* pExternalFenceProperties);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceExternalFencePropertiesKHR(- VkPhysicalDevice physicalDevice,- const VkPhysicalDeviceExternalFenceInfoKHR* pExternalFenceInfo,- VkExternalFencePropertiesKHR* pExternalFenceProperties);-#endif--#define VK_KHR_external_fence 1-#define VK_KHR_EXTERNAL_FENCE_SPEC_VERSION 1-#define VK_KHR_EXTERNAL_FENCE_EXTENSION_NAME "VK_KHR_external_fence"---typedef enum VkFenceImportFlagBitsKHR {- VK_FENCE_IMPORT_TEMPORARY_BIT_KHR = 0x00000001,- VK_FENCE_IMPORT_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF-} VkFenceImportFlagBitsKHR;-typedef VkFlags VkFenceImportFlagsKHR;--typedef struct VkExportFenceCreateInfoKHR {- VkStructureType sType;- const void* pNext;- VkExternalFenceHandleTypeFlagsKHR handleTypes;-} VkExportFenceCreateInfoKHR;----#ifdef VK_USE_PLATFORM_WIN32_KHR-#define VK_KHR_external_fence_win32 1-#define VK_KHR_EXTERNAL_FENCE_WIN32_SPEC_VERSION 1-#define VK_KHR_EXTERNAL_FENCE_WIN32_EXTENSION_NAME "VK_KHR_external_fence_win32"--typedef struct VkImportFenceWin32HandleInfoKHR {- VkStructureType sType;- const void* pNext;- VkFence fence;- VkFenceImportFlagsKHR flags;- VkExternalFenceHandleTypeFlagBitsKHR handleType;- HANDLE handle;- LPCWSTR name;-} VkImportFenceWin32HandleInfoKHR;--typedef struct VkExportFenceWin32HandleInfoKHR {- VkStructureType sType;- const void* pNext;- const SECURITY_ATTRIBUTES* pAttributes;- DWORD dwAccess;- LPCWSTR name;-} VkExportFenceWin32HandleInfoKHR;--typedef struct VkFenceGetWin32HandleInfoKHR {- VkStructureType sType;- const void* pNext;- VkFence fence;- VkExternalFenceHandleTypeFlagBitsKHR handleType;-} VkFenceGetWin32HandleInfoKHR;---typedef VkResult (VKAPI_PTR *PFN_vkImportFenceWin32HandleKHR)(VkDevice device, const VkImportFenceWin32HandleInfoKHR* pImportFenceWin32HandleInfo);-typedef VkResult (VKAPI_PTR *PFN_vkGetFenceWin32HandleKHR)(VkDevice device, const VkFenceGetWin32HandleInfoKHR* pGetWin32HandleInfo, HANDLE* pHandle);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR VkResult VKAPI_CALL vkImportFenceWin32HandleKHR(- VkDevice device,- const VkImportFenceWin32HandleInfoKHR* pImportFenceWin32HandleInfo);--VKAPI_ATTR VkResult VKAPI_CALL vkGetFenceWin32HandleKHR(- VkDevice device,- const VkFenceGetWin32HandleInfoKHR* pGetWin32HandleInfo,- HANDLE* pHandle);-#endif-#endif /* VK_USE_PLATFORM_WIN32_KHR */--#define VK_KHR_external_fence_fd 1-#define VK_KHR_EXTERNAL_FENCE_FD_SPEC_VERSION 1-#define VK_KHR_EXTERNAL_FENCE_FD_EXTENSION_NAME "VK_KHR_external_fence_fd"--typedef struct VkImportFenceFdInfoKHR {- VkStructureType sType;- const void* pNext;- VkFence fence;- VkFenceImportFlagsKHR flags;- VkExternalFenceHandleTypeFlagBitsKHR handleType;- int fd;-} VkImportFenceFdInfoKHR;--typedef struct VkFenceGetFdInfoKHR {- VkStructureType sType;- const void* pNext;- VkFence fence;- VkExternalFenceHandleTypeFlagBitsKHR handleType;-} VkFenceGetFdInfoKHR;---typedef VkResult (VKAPI_PTR *PFN_vkImportFenceFdKHR)(VkDevice device, const VkImportFenceFdInfoKHR* pImportFenceFdInfo);-typedef VkResult (VKAPI_PTR *PFN_vkGetFenceFdKHR)(VkDevice device, const VkFenceGetFdInfoKHR* pGetFdInfo, int* pFd);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR VkResult VKAPI_CALL vkImportFenceFdKHR(- VkDevice device,- const VkImportFenceFdInfoKHR* pImportFenceFdInfo);--VKAPI_ATTR VkResult VKAPI_CALL vkGetFenceFdKHR(- VkDevice device,- const VkFenceGetFdInfoKHR* pGetFdInfo,- int* pFd);-#endif--#define VK_KHR_maintenance2 1-#define VK_KHR_MAINTENANCE2_SPEC_VERSION 1-#define VK_KHR_MAINTENANCE2_EXTENSION_NAME "VK_KHR_maintenance2"---typedef enum VkPointClippingBehaviorKHR {- VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES_KHR = 0,- VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY_KHR = 1,- VK_POINT_CLIPPING_BEHAVIOR_BEGIN_RANGE_KHR = VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES_KHR,- VK_POINT_CLIPPING_BEHAVIOR_END_RANGE_KHR = VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY_KHR,- VK_POINT_CLIPPING_BEHAVIOR_RANGE_SIZE_KHR = (VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY_KHR - VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES_KHR + 1),- VK_POINT_CLIPPING_BEHAVIOR_MAX_ENUM_KHR = 0x7FFFFFFF-} VkPointClippingBehaviorKHR;--typedef enum VkTessellationDomainOriginKHR {- VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT_KHR = 0,- VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT_KHR = 1,- VK_TESSELLATION_DOMAIN_ORIGIN_BEGIN_RANGE_KHR = VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT_KHR,- VK_TESSELLATION_DOMAIN_ORIGIN_END_RANGE_KHR = VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT_KHR,- VK_TESSELLATION_DOMAIN_ORIGIN_RANGE_SIZE_KHR = (VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT_KHR - VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT_KHR + 1),- VK_TESSELLATION_DOMAIN_ORIGIN_MAX_ENUM_KHR = 0x7FFFFFFF-} VkTessellationDomainOriginKHR;--typedef struct VkPhysicalDevicePointClippingPropertiesKHR {- VkStructureType sType;- void* pNext;- VkPointClippingBehaviorKHR pointClippingBehavior;-} VkPhysicalDevicePointClippingPropertiesKHR;--typedef struct VkInputAttachmentAspectReferenceKHR {- uint32_t subpass;- uint32_t inputAttachmentIndex;- VkImageAspectFlags aspectMask;-} VkInputAttachmentAspectReferenceKHR;--typedef struct VkRenderPassInputAttachmentAspectCreateInfoKHR {- VkStructureType sType;- const void* pNext;- uint32_t aspectReferenceCount;- const VkInputAttachmentAspectReferenceKHR* pAspectReferences;-} VkRenderPassInputAttachmentAspectCreateInfoKHR;--typedef struct VkImageViewUsageCreateInfoKHR {- VkStructureType sType;- const void* pNext;- VkImageUsageFlags usage;-} VkImageViewUsageCreateInfoKHR;--typedef struct VkPipelineTessellationDomainOriginStateCreateInfoKHR {- VkStructureType sType;- const void* pNext;- VkTessellationDomainOriginKHR domainOrigin;-} VkPipelineTessellationDomainOriginStateCreateInfoKHR;----#define VK_KHR_get_surface_capabilities2 1-#define VK_KHR_GET_SURFACE_CAPABILITIES_2_SPEC_VERSION 1-#define VK_KHR_GET_SURFACE_CAPABILITIES_2_EXTENSION_NAME "VK_KHR_get_surface_capabilities2"--typedef struct VkPhysicalDeviceSurfaceInfo2KHR {- VkStructureType sType;- const void* pNext;- VkSurfaceKHR surface;-} VkPhysicalDeviceSurfaceInfo2KHR;--typedef struct VkSurfaceCapabilities2KHR {- VkStructureType sType;- void* pNext;- VkSurfaceCapabilitiesKHR surfaceCapabilities;-} VkSurfaceCapabilities2KHR;--typedef struct VkSurfaceFormat2KHR {- VkStructureType sType;- void* pNext;- VkSurfaceFormatKHR surfaceFormat;-} VkSurfaceFormat2KHR;---typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo, VkSurfaceCapabilities2KHR* pSurfaceCapabilities);-typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceFormats2KHR)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo, uint32_t* pSurfaceFormatCount, VkSurfaceFormat2KHR* pSurfaceFormats);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceCapabilities2KHR(- VkPhysicalDevice physicalDevice,- const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo,- VkSurfaceCapabilities2KHR* pSurfaceCapabilities);--VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceFormats2KHR(- VkPhysicalDevice physicalDevice,- const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo,- uint32_t* pSurfaceFormatCount,- VkSurfaceFormat2KHR* pSurfaceFormats);-#endif--#define VK_KHR_variable_pointers 1-#define VK_KHR_VARIABLE_POINTERS_SPEC_VERSION 1-#define VK_KHR_VARIABLE_POINTERS_EXTENSION_NAME "VK_KHR_variable_pointers"--typedef struct VkPhysicalDeviceVariablePointerFeaturesKHR {- VkStructureType sType;- void* pNext;- VkBool32 variablePointersStorageBuffer;- VkBool32 variablePointers;-} VkPhysicalDeviceVariablePointerFeaturesKHR;----#define VK_KHR_dedicated_allocation 1-#define VK_KHR_DEDICATED_ALLOCATION_SPEC_VERSION 3-#define VK_KHR_DEDICATED_ALLOCATION_EXTENSION_NAME "VK_KHR_dedicated_allocation"--typedef struct VkMemoryDedicatedRequirementsKHR {- VkStructureType sType;- void* pNext;- VkBool32 prefersDedicatedAllocation;- VkBool32 requiresDedicatedAllocation;-} VkMemoryDedicatedRequirementsKHR;--typedef struct VkMemoryDedicatedAllocateInfoKHR {- VkStructureType sType;- const void* pNext;- VkImage image;- VkBuffer buffer;-} VkMemoryDedicatedAllocateInfoKHR;----#define VK_KHR_storage_buffer_storage_class 1-#define VK_KHR_STORAGE_BUFFER_STORAGE_CLASS_SPEC_VERSION 1-#define VK_KHR_STORAGE_BUFFER_STORAGE_CLASS_EXTENSION_NAME "VK_KHR_storage_buffer_storage_class"---#define VK_KHR_relaxed_block_layout 1-#define VK_KHR_RELAXED_BLOCK_LAYOUT_SPEC_VERSION 1-#define VK_KHR_RELAXED_BLOCK_LAYOUT_EXTENSION_NAME "VK_KHR_relaxed_block_layout"---#define VK_KHR_get_memory_requirements2 1-#define VK_KHR_GET_MEMORY_REQUIREMENTS_2_SPEC_VERSION 1-#define VK_KHR_GET_MEMORY_REQUIREMENTS_2_EXTENSION_NAME "VK_KHR_get_memory_requirements2"--typedef struct VkBufferMemoryRequirementsInfo2KHR {- VkStructureType sType;- const void* pNext;- VkBuffer buffer;-} VkBufferMemoryRequirementsInfo2KHR;--typedef struct VkImageMemoryRequirementsInfo2KHR {- VkStructureType sType;- const void* pNext;- VkImage image;-} VkImageMemoryRequirementsInfo2KHR;--typedef struct VkImageSparseMemoryRequirementsInfo2KHR {- VkStructureType sType;- const void* pNext;- VkImage image;-} VkImageSparseMemoryRequirementsInfo2KHR;--typedef struct VkMemoryRequirements2KHR {- VkStructureType sType;- void* pNext;- VkMemoryRequirements memoryRequirements;-} VkMemoryRequirements2KHR;--typedef struct VkSparseImageMemoryRequirements2KHR {- VkStructureType sType;- void* pNext;- VkSparseImageMemoryRequirements memoryRequirements;-} VkSparseImageMemoryRequirements2KHR;---typedef void (VKAPI_PTR *PFN_vkGetImageMemoryRequirements2KHR)(VkDevice device, const VkImageMemoryRequirementsInfo2KHR* pInfo, VkMemoryRequirements2KHR* pMemoryRequirements);-typedef void (VKAPI_PTR *PFN_vkGetBufferMemoryRequirements2KHR)(VkDevice device, const VkBufferMemoryRequirementsInfo2KHR* pInfo, VkMemoryRequirements2KHR* pMemoryRequirements);-typedef void (VKAPI_PTR *PFN_vkGetImageSparseMemoryRequirements2KHR)(VkDevice device, const VkImageSparseMemoryRequirementsInfo2KHR* pInfo, uint32_t* pSparseMemoryRequirementCount, VkSparseImageMemoryRequirements2KHR* pSparseMemoryRequirements);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR void VKAPI_CALL vkGetImageMemoryRequirements2KHR(- VkDevice device,- const VkImageMemoryRequirementsInfo2KHR* pInfo,- VkMemoryRequirements2KHR* pMemoryRequirements);--VKAPI_ATTR void VKAPI_CALL vkGetBufferMemoryRequirements2KHR(- VkDevice device,- const VkBufferMemoryRequirementsInfo2KHR* pInfo,- VkMemoryRequirements2KHR* pMemoryRequirements);--VKAPI_ATTR void VKAPI_CALL vkGetImageSparseMemoryRequirements2KHR(- VkDevice device,- const VkImageSparseMemoryRequirementsInfo2KHR* pInfo,- uint32_t* pSparseMemoryRequirementCount,- VkSparseImageMemoryRequirements2KHR* pSparseMemoryRequirements);-#endif--#define VK_KHR_image_format_list 1-#define VK_KHR_IMAGE_FORMAT_LIST_SPEC_VERSION 1-#define VK_KHR_IMAGE_FORMAT_LIST_EXTENSION_NAME "VK_KHR_image_format_list"--typedef struct VkImageFormatListCreateInfoKHR {- VkStructureType sType;- const void* pNext;- uint32_t viewFormatCount;- const VkFormat* pViewFormats;-} VkImageFormatListCreateInfoKHR;----#define VK_KHR_sampler_ycbcr_conversion 1-VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSamplerYcbcrConversionKHR)--#define VK_KHR_SAMPLER_YCBCR_CONVERSION_SPEC_VERSION 1-#define VK_KHR_SAMPLER_YCBCR_CONVERSION_EXTENSION_NAME "VK_KHR_sampler_ycbcr_conversion"---typedef enum VkSamplerYcbcrModelConversionKHR {- VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY_KHR = 0,- VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY_KHR = 1,- VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709_KHR = 2,- VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601_KHR = 3,- VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020_KHR = 4,- VK_SAMPLER_YCBCR_MODEL_CONVERSION_BEGIN_RANGE_KHR = VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY_KHR,- VK_SAMPLER_YCBCR_MODEL_CONVERSION_END_RANGE_KHR = VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020_KHR,- VK_SAMPLER_YCBCR_MODEL_CONVERSION_RANGE_SIZE_KHR = (VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020_KHR - VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY_KHR + 1),- VK_SAMPLER_YCBCR_MODEL_CONVERSION_MAX_ENUM_KHR = 0x7FFFFFFF-} VkSamplerYcbcrModelConversionKHR;--typedef enum VkSamplerYcbcrRangeKHR {- VK_SAMPLER_YCBCR_RANGE_ITU_FULL_KHR = 0,- VK_SAMPLER_YCBCR_RANGE_ITU_NARROW_KHR = 1,- VK_SAMPLER_YCBCR_RANGE_BEGIN_RANGE_KHR = VK_SAMPLER_YCBCR_RANGE_ITU_FULL_KHR,- VK_SAMPLER_YCBCR_RANGE_END_RANGE_KHR = VK_SAMPLER_YCBCR_RANGE_ITU_NARROW_KHR,- VK_SAMPLER_YCBCR_RANGE_RANGE_SIZE_KHR = (VK_SAMPLER_YCBCR_RANGE_ITU_NARROW_KHR - VK_SAMPLER_YCBCR_RANGE_ITU_FULL_KHR + 1),- VK_SAMPLER_YCBCR_RANGE_MAX_ENUM_KHR = 0x7FFFFFFF-} VkSamplerYcbcrRangeKHR;--typedef enum VkChromaLocationKHR {- VK_CHROMA_LOCATION_COSITED_EVEN_KHR = 0,- VK_CHROMA_LOCATION_MIDPOINT_KHR = 1,- VK_CHROMA_LOCATION_BEGIN_RANGE_KHR = VK_CHROMA_LOCATION_COSITED_EVEN_KHR,- VK_CHROMA_LOCATION_END_RANGE_KHR = VK_CHROMA_LOCATION_MIDPOINT_KHR,- VK_CHROMA_LOCATION_RANGE_SIZE_KHR = (VK_CHROMA_LOCATION_MIDPOINT_KHR - VK_CHROMA_LOCATION_COSITED_EVEN_KHR + 1),- VK_CHROMA_LOCATION_MAX_ENUM_KHR = 0x7FFFFFFF-} VkChromaLocationKHR;--typedef struct VkSamplerYcbcrConversionCreateInfoKHR {- VkStructureType sType;- const void* pNext;- VkFormat format;- VkSamplerYcbcrModelConversionKHR ycbcrModel;- VkSamplerYcbcrRangeKHR ycbcrRange;- VkComponentMapping components;- VkChromaLocationKHR xChromaOffset;- VkChromaLocationKHR yChromaOffset;- VkFilter chromaFilter;- VkBool32 forceExplicitReconstruction;-} VkSamplerYcbcrConversionCreateInfoKHR;--typedef struct VkSamplerYcbcrConversionInfoKHR {- VkStructureType sType;- const void* pNext;- VkSamplerYcbcrConversionKHR conversion;-} VkSamplerYcbcrConversionInfoKHR;--typedef struct VkBindImagePlaneMemoryInfoKHR {- VkStructureType sType;- const void* pNext;- VkImageAspectFlagBits planeAspect;-} VkBindImagePlaneMemoryInfoKHR;--typedef struct VkImagePlaneMemoryRequirementsInfoKHR {- VkStructureType sType;- const void* pNext;- VkImageAspectFlagBits planeAspect;-} VkImagePlaneMemoryRequirementsInfoKHR;--typedef struct VkPhysicalDeviceSamplerYcbcrConversionFeaturesKHR {- VkStructureType sType;- void* pNext;- VkBool32 samplerYcbcrConversion;-} VkPhysicalDeviceSamplerYcbcrConversionFeaturesKHR;--typedef struct VkSamplerYcbcrConversionImageFormatPropertiesKHR {- VkStructureType sType;- void* pNext;- uint32_t combinedImageSamplerDescriptorCount;-} VkSamplerYcbcrConversionImageFormatPropertiesKHR;---typedef VkResult (VKAPI_PTR *PFN_vkCreateSamplerYcbcrConversionKHR)(VkDevice device, const VkSamplerYcbcrConversionCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSamplerYcbcrConversionKHR* pYcbcrConversion);-typedef void (VKAPI_PTR *PFN_vkDestroySamplerYcbcrConversionKHR)(VkDevice device, VkSamplerYcbcrConversionKHR ycbcrConversion, const VkAllocationCallbacks* pAllocator);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR VkResult VKAPI_CALL vkCreateSamplerYcbcrConversionKHR(- VkDevice device,- const VkSamplerYcbcrConversionCreateInfoKHR* pCreateInfo,- const VkAllocationCallbacks* pAllocator,- VkSamplerYcbcrConversionKHR* pYcbcrConversion);--VKAPI_ATTR void VKAPI_CALL vkDestroySamplerYcbcrConversionKHR(- VkDevice device,- VkSamplerYcbcrConversionKHR ycbcrConversion,- const VkAllocationCallbacks* pAllocator);-#endif--#define VK_KHR_bind_memory2 1-#define VK_KHR_BIND_MEMORY_2_SPEC_VERSION 1-#define VK_KHR_BIND_MEMORY_2_EXTENSION_NAME "VK_KHR_bind_memory2"--typedef struct VkBindBufferMemoryInfoKHR {- VkStructureType sType;- const void* pNext;- VkBuffer buffer;- VkDeviceMemory memory;- VkDeviceSize memoryOffset;-} VkBindBufferMemoryInfoKHR;--typedef struct VkBindImageMemoryInfoKHR {- VkStructureType sType;- const void* pNext;- VkImage image;- VkDeviceMemory memory;- VkDeviceSize memoryOffset;-} VkBindImageMemoryInfoKHR;---typedef VkResult (VKAPI_PTR *PFN_vkBindBufferMemory2KHR)(VkDevice device, uint32_t bindInfoCount, const VkBindBufferMemoryInfoKHR* pBindInfos);-typedef VkResult (VKAPI_PTR *PFN_vkBindImageMemory2KHR)(VkDevice device, uint32_t bindInfoCount, const VkBindImageMemoryInfoKHR* pBindInfos);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR VkResult VKAPI_CALL vkBindBufferMemory2KHR(- VkDevice device,- uint32_t bindInfoCount,- const VkBindBufferMemoryInfoKHR* pBindInfos);--VKAPI_ATTR VkResult VKAPI_CALL vkBindImageMemory2KHR(- VkDevice device,- uint32_t bindInfoCount,- const VkBindImageMemoryInfoKHR* pBindInfos);-#endif--#define VK_EXT_debug_report 1-VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDebugReportCallbackEXT)--#define VK_EXT_DEBUG_REPORT_SPEC_VERSION 9-#define VK_EXT_DEBUG_REPORT_EXTENSION_NAME "VK_EXT_debug_report"-#define VK_STRUCTURE_TYPE_DEBUG_REPORT_CREATE_INFO_EXT VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT-#define VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT---typedef enum VkDebugReportObjectTypeEXT {- VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT = 0,- VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT = 1,- VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT = 2,- VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT = 3,- VK_DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT = 4,- VK_DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT = 5,- VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT = 6,- VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT = 7,- VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT = 8,- VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT = 9,- VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT = 10,- VK_DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT = 11,- VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT = 12,- VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT = 13,- VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT = 14,- VK_DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT = 15,- VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT = 16,- VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT = 17,- VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT = 18,- VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT = 19,- VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT = 20,- VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT = 21,- VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT = 22,- VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT = 23,- VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT = 24,- VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT = 25,- VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT = 26,- VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT = 27,- VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT = 28,- VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT = 29,- VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT = 30,- VK_DEBUG_REPORT_OBJECT_TYPE_OBJECT_TABLE_NVX_EXT = 31,- VK_DEBUG_REPORT_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX_EXT = 32,- VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT = 33,- VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT = 1000085000,- VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR_EXT = 1000156000,- VK_DEBUG_REPORT_OBJECT_TYPE_BEGIN_RANGE_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT,- VK_DEBUG_REPORT_OBJECT_TYPE_END_RANGE_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT,- VK_DEBUG_REPORT_OBJECT_TYPE_RANGE_SIZE_EXT = (VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT - VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT + 1),- VK_DEBUG_REPORT_OBJECT_TYPE_MAX_ENUM_EXT = 0x7FFFFFFF-} VkDebugReportObjectTypeEXT;---typedef enum VkDebugReportFlagBitsEXT {- VK_DEBUG_REPORT_INFORMATION_BIT_EXT = 0x00000001,- VK_DEBUG_REPORT_WARNING_BIT_EXT = 0x00000002,- VK_DEBUG_REPORT_PERFORMANCE_WARNING_BIT_EXT = 0x00000004,- VK_DEBUG_REPORT_ERROR_BIT_EXT = 0x00000008,- VK_DEBUG_REPORT_DEBUG_BIT_EXT = 0x00000010,- VK_DEBUG_REPORT_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF-} VkDebugReportFlagBitsEXT;-typedef VkFlags VkDebugReportFlagsEXT;--typedef VkBool32 (VKAPI_PTR *PFN_vkDebugReportCallbackEXT)(- VkDebugReportFlagsEXT flags,- VkDebugReportObjectTypeEXT objectType,- uint64_t object,- size_t location,- int32_t messageCode,- const char* pLayerPrefix,- const char* pMessage,- void* pUserData);--typedef struct VkDebugReportCallbackCreateInfoEXT {- VkStructureType sType;- const void* pNext;- VkDebugReportFlagsEXT flags;- PFN_vkDebugReportCallbackEXT pfnCallback;- void* pUserData;-} VkDebugReportCallbackCreateInfoEXT;---typedef VkResult (VKAPI_PTR *PFN_vkCreateDebugReportCallbackEXT)(VkInstance instance, const VkDebugReportCallbackCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDebugReportCallbackEXT* pCallback);-typedef void (VKAPI_PTR *PFN_vkDestroyDebugReportCallbackEXT)(VkInstance instance, VkDebugReportCallbackEXT callback, const VkAllocationCallbacks* pAllocator);-typedef void (VKAPI_PTR *PFN_vkDebugReportMessageEXT)(VkInstance instance, VkDebugReportFlagsEXT flags, VkDebugReportObjectTypeEXT objectType, uint64_t object, size_t location, int32_t messageCode, const char* pLayerPrefix, const char* pMessage);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR VkResult VKAPI_CALL vkCreateDebugReportCallbackEXT(- VkInstance instance,- const VkDebugReportCallbackCreateInfoEXT* pCreateInfo,- const VkAllocationCallbacks* pAllocator,- VkDebugReportCallbackEXT* pCallback);--VKAPI_ATTR void VKAPI_CALL vkDestroyDebugReportCallbackEXT(- VkInstance instance,- VkDebugReportCallbackEXT callback,- const VkAllocationCallbacks* pAllocator);--VKAPI_ATTR void VKAPI_CALL vkDebugReportMessageEXT(- VkInstance instance,- VkDebugReportFlagsEXT flags,- VkDebugReportObjectTypeEXT objectType,- uint64_t object,- size_t location,- int32_t messageCode,- const char* pLayerPrefix,- const char* pMessage);-#endif--#define VK_NV_glsl_shader 1-#define VK_NV_GLSL_SHADER_SPEC_VERSION 1-#define VK_NV_GLSL_SHADER_EXTENSION_NAME "VK_NV_glsl_shader"---#define VK_EXT_depth_range_unrestricted 1-#define VK_EXT_DEPTH_RANGE_UNRESTRICTED_SPEC_VERSION 1-#define VK_EXT_DEPTH_RANGE_UNRESTRICTED_EXTENSION_NAME "VK_EXT_depth_range_unrestricted"---#define VK_IMG_filter_cubic 1-#define VK_IMG_FILTER_CUBIC_SPEC_VERSION 1-#define VK_IMG_FILTER_CUBIC_EXTENSION_NAME "VK_IMG_filter_cubic"---#define VK_AMD_rasterization_order 1-#define VK_AMD_RASTERIZATION_ORDER_SPEC_VERSION 1-#define VK_AMD_RASTERIZATION_ORDER_EXTENSION_NAME "VK_AMD_rasterization_order"---typedef enum VkRasterizationOrderAMD {- VK_RASTERIZATION_ORDER_STRICT_AMD = 0,- VK_RASTERIZATION_ORDER_RELAXED_AMD = 1,- VK_RASTERIZATION_ORDER_BEGIN_RANGE_AMD = VK_RASTERIZATION_ORDER_STRICT_AMD,- VK_RASTERIZATION_ORDER_END_RANGE_AMD = VK_RASTERIZATION_ORDER_RELAXED_AMD,- VK_RASTERIZATION_ORDER_RANGE_SIZE_AMD = (VK_RASTERIZATION_ORDER_RELAXED_AMD - VK_RASTERIZATION_ORDER_STRICT_AMD + 1),- VK_RASTERIZATION_ORDER_MAX_ENUM_AMD = 0x7FFFFFFF-} VkRasterizationOrderAMD;--typedef struct VkPipelineRasterizationStateRasterizationOrderAMD {- VkStructureType sType;- const void* pNext;- VkRasterizationOrderAMD rasterizationOrder;-} VkPipelineRasterizationStateRasterizationOrderAMD;----#define VK_AMD_shader_trinary_minmax 1-#define VK_AMD_SHADER_TRINARY_MINMAX_SPEC_VERSION 1-#define VK_AMD_SHADER_TRINARY_MINMAX_EXTENSION_NAME "VK_AMD_shader_trinary_minmax"---#define VK_AMD_shader_explicit_vertex_parameter 1-#define VK_AMD_SHADER_EXPLICIT_VERTEX_PARAMETER_SPEC_VERSION 1-#define VK_AMD_SHADER_EXPLICIT_VERTEX_PARAMETER_EXTENSION_NAME "VK_AMD_shader_explicit_vertex_parameter"---#define VK_EXT_debug_marker 1-#define VK_EXT_DEBUG_MARKER_SPEC_VERSION 4-#define VK_EXT_DEBUG_MARKER_EXTENSION_NAME "VK_EXT_debug_marker"--typedef struct VkDebugMarkerObjectNameInfoEXT {- VkStructureType sType;- const void* pNext;- VkDebugReportObjectTypeEXT objectType;- uint64_t object;- const char* pObjectName;-} VkDebugMarkerObjectNameInfoEXT;--typedef struct VkDebugMarkerObjectTagInfoEXT {- VkStructureType sType;- const void* pNext;- VkDebugReportObjectTypeEXT objectType;- uint64_t object;- uint64_t tagName;- size_t tagSize;- const void* pTag;-} VkDebugMarkerObjectTagInfoEXT;--typedef struct VkDebugMarkerMarkerInfoEXT {- VkStructureType sType;- const void* pNext;- const char* pMarkerName;- float color[4];-} VkDebugMarkerMarkerInfoEXT;---typedef VkResult (VKAPI_PTR *PFN_vkDebugMarkerSetObjectTagEXT)(VkDevice device, const VkDebugMarkerObjectTagInfoEXT* pTagInfo);-typedef VkResult (VKAPI_PTR *PFN_vkDebugMarkerSetObjectNameEXT)(VkDevice device, const VkDebugMarkerObjectNameInfoEXT* pNameInfo);-typedef void (VKAPI_PTR *PFN_vkCmdDebugMarkerBeginEXT)(VkCommandBuffer commandBuffer, const VkDebugMarkerMarkerInfoEXT* pMarkerInfo);-typedef void (VKAPI_PTR *PFN_vkCmdDebugMarkerEndEXT)(VkCommandBuffer commandBuffer);-typedef void (VKAPI_PTR *PFN_vkCmdDebugMarkerInsertEXT)(VkCommandBuffer commandBuffer, const VkDebugMarkerMarkerInfoEXT* pMarkerInfo);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR VkResult VKAPI_CALL vkDebugMarkerSetObjectTagEXT(- VkDevice device,- const VkDebugMarkerObjectTagInfoEXT* pTagInfo);--VKAPI_ATTR VkResult VKAPI_CALL vkDebugMarkerSetObjectNameEXT(- VkDevice device,- const VkDebugMarkerObjectNameInfoEXT* pNameInfo);--VKAPI_ATTR void VKAPI_CALL vkCmdDebugMarkerBeginEXT(- VkCommandBuffer commandBuffer,- const VkDebugMarkerMarkerInfoEXT* pMarkerInfo);--VKAPI_ATTR void VKAPI_CALL vkCmdDebugMarkerEndEXT(- VkCommandBuffer commandBuffer);--VKAPI_ATTR void VKAPI_CALL vkCmdDebugMarkerInsertEXT(- VkCommandBuffer commandBuffer,- const VkDebugMarkerMarkerInfoEXT* pMarkerInfo);-#endif--#define VK_AMD_gcn_shader 1-#define VK_AMD_GCN_SHADER_SPEC_VERSION 1-#define VK_AMD_GCN_SHADER_EXTENSION_NAME "VK_AMD_gcn_shader"---#define VK_NV_dedicated_allocation 1-#define VK_NV_DEDICATED_ALLOCATION_SPEC_VERSION 1-#define VK_NV_DEDICATED_ALLOCATION_EXTENSION_NAME "VK_NV_dedicated_allocation"--typedef struct VkDedicatedAllocationImageCreateInfoNV {- VkStructureType sType;- const void* pNext;- VkBool32 dedicatedAllocation;-} VkDedicatedAllocationImageCreateInfoNV;--typedef struct VkDedicatedAllocationBufferCreateInfoNV {- VkStructureType sType;- const void* pNext;- VkBool32 dedicatedAllocation;-} VkDedicatedAllocationBufferCreateInfoNV;--typedef struct VkDedicatedAllocationMemoryAllocateInfoNV {- VkStructureType sType;- const void* pNext;- VkImage image;- VkBuffer buffer;-} VkDedicatedAllocationMemoryAllocateInfoNV;----#define VK_AMD_draw_indirect_count 1-#define VK_AMD_DRAW_INDIRECT_COUNT_SPEC_VERSION 1-#define VK_AMD_DRAW_INDIRECT_COUNT_EXTENSION_NAME "VK_AMD_draw_indirect_count"--typedef void (VKAPI_PTR *PFN_vkCmdDrawIndirectCountAMD)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride);-typedef void (VKAPI_PTR *PFN_vkCmdDrawIndexedIndirectCountAMD)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR void VKAPI_CALL vkCmdDrawIndirectCountAMD(- VkCommandBuffer commandBuffer,- VkBuffer buffer,- VkDeviceSize offset,- VkBuffer countBuffer,- VkDeviceSize countBufferOffset,- uint32_t maxDrawCount,- uint32_t stride);--VKAPI_ATTR void VKAPI_CALL vkCmdDrawIndexedIndirectCountAMD(- VkCommandBuffer commandBuffer,- VkBuffer buffer,- VkDeviceSize offset,- VkBuffer countBuffer,- VkDeviceSize countBufferOffset,- uint32_t maxDrawCount,- uint32_t stride);-#endif--#define VK_AMD_negative_viewport_height 1-#define VK_AMD_NEGATIVE_VIEWPORT_HEIGHT_SPEC_VERSION 1-#define VK_AMD_NEGATIVE_VIEWPORT_HEIGHT_EXTENSION_NAME "VK_AMD_negative_viewport_height"---#define VK_AMD_gpu_shader_half_float 1-#define VK_AMD_GPU_SHADER_HALF_FLOAT_SPEC_VERSION 1-#define VK_AMD_GPU_SHADER_HALF_FLOAT_EXTENSION_NAME "VK_AMD_gpu_shader_half_float"---#define VK_AMD_shader_ballot 1-#define VK_AMD_SHADER_BALLOT_SPEC_VERSION 1-#define VK_AMD_SHADER_BALLOT_EXTENSION_NAME "VK_AMD_shader_ballot"---#define VK_AMD_texture_gather_bias_lod 1-#define VK_AMD_TEXTURE_GATHER_BIAS_LOD_SPEC_VERSION 1-#define VK_AMD_TEXTURE_GATHER_BIAS_LOD_EXTENSION_NAME "VK_AMD_texture_gather_bias_lod"--typedef struct VkTextureLODGatherFormatPropertiesAMD {- VkStructureType sType;- void* pNext;- VkBool32 supportsTextureGatherLODBiasAMD;-} VkTextureLODGatherFormatPropertiesAMD;----#define VK_AMD_shader_info 1-#define VK_AMD_SHADER_INFO_SPEC_VERSION 1-#define VK_AMD_SHADER_INFO_EXTENSION_NAME "VK_AMD_shader_info"---typedef enum VkShaderInfoTypeAMD {- VK_SHADER_INFO_TYPE_STATISTICS_AMD = 0,- VK_SHADER_INFO_TYPE_BINARY_AMD = 1,- VK_SHADER_INFO_TYPE_DISASSEMBLY_AMD = 2,- VK_SHADER_INFO_TYPE_BEGIN_RANGE_AMD = VK_SHADER_INFO_TYPE_STATISTICS_AMD,- VK_SHADER_INFO_TYPE_END_RANGE_AMD = VK_SHADER_INFO_TYPE_DISASSEMBLY_AMD,- VK_SHADER_INFO_TYPE_RANGE_SIZE_AMD = (VK_SHADER_INFO_TYPE_DISASSEMBLY_AMD - VK_SHADER_INFO_TYPE_STATISTICS_AMD + 1),- VK_SHADER_INFO_TYPE_MAX_ENUM_AMD = 0x7FFFFFFF-} VkShaderInfoTypeAMD;--typedef struct VkShaderResourceUsageAMD {- uint32_t numUsedVgprs;- uint32_t numUsedSgprs;- uint32_t ldsSizePerLocalWorkGroup;- size_t ldsUsageSizeInBytes;- size_t scratchMemUsageInBytes;-} VkShaderResourceUsageAMD;--typedef struct VkShaderStatisticsInfoAMD {- VkShaderStageFlags shaderStageMask;- VkShaderResourceUsageAMD resourceUsage;- uint32_t numPhysicalVgprs;- uint32_t numPhysicalSgprs;- uint32_t numAvailableVgprs;- uint32_t numAvailableSgprs;- uint32_t computeWorkGroupSize[3];-} VkShaderStatisticsInfoAMD;---typedef VkResult (VKAPI_PTR *PFN_vkGetShaderInfoAMD)(VkDevice device, VkPipeline pipeline, VkShaderStageFlagBits shaderStage, VkShaderInfoTypeAMD infoType, size_t* pInfoSize, void* pInfo);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR VkResult VKAPI_CALL vkGetShaderInfoAMD(- VkDevice device,- VkPipeline pipeline,- VkShaderStageFlagBits shaderStage,- VkShaderInfoTypeAMD infoType,- size_t* pInfoSize,- void* pInfo);-#endif--#define VK_AMD_shader_image_load_store_lod 1-#define VK_AMD_SHADER_IMAGE_LOAD_STORE_LOD_SPEC_VERSION 1-#define VK_AMD_SHADER_IMAGE_LOAD_STORE_LOD_EXTENSION_NAME "VK_AMD_shader_image_load_store_lod"---#define VK_KHX_multiview 1-#define VK_KHX_MULTIVIEW_SPEC_VERSION 1-#define VK_KHX_MULTIVIEW_EXTENSION_NAME "VK_KHX_multiview"--typedef struct VkRenderPassMultiviewCreateInfoKHX {- VkStructureType sType;- const void* pNext;- uint32_t subpassCount;- const uint32_t* pViewMasks;- uint32_t dependencyCount;- const int32_t* pViewOffsets;- uint32_t correlationMaskCount;- const uint32_t* pCorrelationMasks;-} VkRenderPassMultiviewCreateInfoKHX;--typedef struct VkPhysicalDeviceMultiviewFeaturesKHX {- VkStructureType sType;- void* pNext;- VkBool32 multiview;- VkBool32 multiviewGeometryShader;- VkBool32 multiviewTessellationShader;-} VkPhysicalDeviceMultiviewFeaturesKHX;--typedef struct VkPhysicalDeviceMultiviewPropertiesKHX {- VkStructureType sType;- void* pNext;- uint32_t maxMultiviewViewCount;- uint32_t maxMultiviewInstanceIndex;-} VkPhysicalDeviceMultiviewPropertiesKHX;----#define VK_IMG_format_pvrtc 1-#define VK_IMG_FORMAT_PVRTC_SPEC_VERSION 1-#define VK_IMG_FORMAT_PVRTC_EXTENSION_NAME "VK_IMG_format_pvrtc"---#define VK_NV_external_memory_capabilities 1-#define VK_NV_EXTERNAL_MEMORY_CAPABILITIES_SPEC_VERSION 1-#define VK_NV_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME "VK_NV_external_memory_capabilities"---typedef enum VkExternalMemoryHandleTypeFlagBitsNV {- VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_NV = 0x00000001,- VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_NV = 0x00000002,- VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_BIT_NV = 0x00000004,- VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_KMT_BIT_NV = 0x00000008,- VK_EXTERNAL_MEMORY_HANDLE_TYPE_FLAG_BITS_MAX_ENUM_NV = 0x7FFFFFFF-} VkExternalMemoryHandleTypeFlagBitsNV;-typedef VkFlags VkExternalMemoryHandleTypeFlagsNV;--typedef enum VkExternalMemoryFeatureFlagBitsNV {- VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_NV = 0x00000001,- VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_NV = 0x00000002,- VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_NV = 0x00000004,- VK_EXTERNAL_MEMORY_FEATURE_FLAG_BITS_MAX_ENUM_NV = 0x7FFFFFFF-} VkExternalMemoryFeatureFlagBitsNV;-typedef VkFlags VkExternalMemoryFeatureFlagsNV;--typedef struct VkExternalImageFormatPropertiesNV {- VkImageFormatProperties imageFormatProperties;- VkExternalMemoryFeatureFlagsNV externalMemoryFeatures;- VkExternalMemoryHandleTypeFlagsNV exportFromImportedHandleTypes;- VkExternalMemoryHandleTypeFlagsNV compatibleHandleTypes;-} VkExternalImageFormatPropertiesNV;---typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV)(VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type, VkImageTiling tiling, VkImageUsageFlags usage, VkImageCreateFlags flags, VkExternalMemoryHandleTypeFlagsNV externalHandleType, VkExternalImageFormatPropertiesNV* pExternalImageFormatProperties);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceExternalImageFormatPropertiesNV(- VkPhysicalDevice physicalDevice,- VkFormat format,- VkImageType type,- VkImageTiling tiling,- VkImageUsageFlags usage,- VkImageCreateFlags flags,- VkExternalMemoryHandleTypeFlagsNV externalHandleType,- VkExternalImageFormatPropertiesNV* pExternalImageFormatProperties);-#endif--#define VK_NV_external_memory 1-#define VK_NV_EXTERNAL_MEMORY_SPEC_VERSION 1-#define VK_NV_EXTERNAL_MEMORY_EXTENSION_NAME "VK_NV_external_memory"--typedef struct VkExternalMemoryImageCreateInfoNV {- VkStructureType sType;- const void* pNext;- VkExternalMemoryHandleTypeFlagsNV handleTypes;-} VkExternalMemoryImageCreateInfoNV;--typedef struct VkExportMemoryAllocateInfoNV {- VkStructureType sType;- const void* pNext;- VkExternalMemoryHandleTypeFlagsNV handleTypes;-} VkExportMemoryAllocateInfoNV;----#ifdef VK_USE_PLATFORM_WIN32_KHR-#define VK_NV_external_memory_win32 1-#define VK_NV_EXTERNAL_MEMORY_WIN32_SPEC_VERSION 1-#define VK_NV_EXTERNAL_MEMORY_WIN32_EXTENSION_NAME "VK_NV_external_memory_win32"--typedef struct VkImportMemoryWin32HandleInfoNV {- VkStructureType sType;- const void* pNext;- VkExternalMemoryHandleTypeFlagsNV handleType;- HANDLE handle;-} VkImportMemoryWin32HandleInfoNV;--typedef struct VkExportMemoryWin32HandleInfoNV {- VkStructureType sType;- const void* pNext;- const SECURITY_ATTRIBUTES* pAttributes;- DWORD dwAccess;-} VkExportMemoryWin32HandleInfoNV;---typedef VkResult (VKAPI_PTR *PFN_vkGetMemoryWin32HandleNV)(VkDevice device, VkDeviceMemory memory, VkExternalMemoryHandleTypeFlagsNV handleType, HANDLE* pHandle);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryWin32HandleNV(- VkDevice device,- VkDeviceMemory memory,- VkExternalMemoryHandleTypeFlagsNV handleType,- HANDLE* pHandle);-#endif-#endif /* VK_USE_PLATFORM_WIN32_KHR */--#ifdef VK_USE_PLATFORM_WIN32_KHR-#define VK_NV_win32_keyed_mutex 1-#define VK_NV_WIN32_KEYED_MUTEX_SPEC_VERSION 1-#define VK_NV_WIN32_KEYED_MUTEX_EXTENSION_NAME "VK_NV_win32_keyed_mutex"--typedef struct VkWin32KeyedMutexAcquireReleaseInfoNV {- VkStructureType sType;- const void* pNext;- uint32_t acquireCount;- const VkDeviceMemory* pAcquireSyncs;- const uint64_t* pAcquireKeys;- const uint32_t* pAcquireTimeoutMilliseconds;- uint32_t releaseCount;- const VkDeviceMemory* pReleaseSyncs;- const uint64_t* pReleaseKeys;-} VkWin32KeyedMutexAcquireReleaseInfoNV;---#endif /* VK_USE_PLATFORM_WIN32_KHR */--#define VK_KHX_device_group 1-#define VK_KHX_DEVICE_GROUP_SPEC_VERSION 2-#define VK_KHX_DEVICE_GROUP_EXTENSION_NAME "VK_KHX_device_group"-#define VK_MAX_DEVICE_GROUP_SIZE_KHX 32---typedef enum VkPeerMemoryFeatureFlagBitsKHX {- VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT_KHX = 0x00000001,- VK_PEER_MEMORY_FEATURE_COPY_DST_BIT_KHX = 0x00000002,- VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT_KHX = 0x00000004,- VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT_KHX = 0x00000008,- VK_PEER_MEMORY_FEATURE_FLAG_BITS_MAX_ENUM_KHX = 0x7FFFFFFF-} VkPeerMemoryFeatureFlagBitsKHX;-typedef VkFlags VkPeerMemoryFeatureFlagsKHX;--typedef enum VkMemoryAllocateFlagBitsKHX {- VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT_KHX = 0x00000001,- VK_MEMORY_ALLOCATE_FLAG_BITS_MAX_ENUM_KHX = 0x7FFFFFFF-} VkMemoryAllocateFlagBitsKHX;-typedef VkFlags VkMemoryAllocateFlagsKHX;--typedef enum VkDeviceGroupPresentModeFlagBitsKHX {- VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHX = 0x00000001,- VK_DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHX = 0x00000002,- VK_DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHX = 0x00000004,- VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHX = 0x00000008,- VK_DEVICE_GROUP_PRESENT_MODE_FLAG_BITS_MAX_ENUM_KHX = 0x7FFFFFFF-} VkDeviceGroupPresentModeFlagBitsKHX;-typedef VkFlags VkDeviceGroupPresentModeFlagsKHX;--typedef struct VkMemoryAllocateFlagsInfoKHX {- VkStructureType sType;- const void* pNext;- VkMemoryAllocateFlagsKHX flags;- uint32_t deviceMask;-} VkMemoryAllocateFlagsInfoKHX;--typedef struct VkDeviceGroupRenderPassBeginInfoKHX {- VkStructureType sType;- const void* pNext;- uint32_t deviceMask;- uint32_t deviceRenderAreaCount;- const VkRect2D* pDeviceRenderAreas;-} VkDeviceGroupRenderPassBeginInfoKHX;--typedef struct VkDeviceGroupCommandBufferBeginInfoKHX {- VkStructureType sType;- const void* pNext;- uint32_t deviceMask;-} VkDeviceGroupCommandBufferBeginInfoKHX;--typedef struct VkDeviceGroupSubmitInfoKHX {- VkStructureType sType;- const void* pNext;- uint32_t waitSemaphoreCount;- const uint32_t* pWaitSemaphoreDeviceIndices;- uint32_t commandBufferCount;- const uint32_t* pCommandBufferDeviceMasks;- uint32_t signalSemaphoreCount;- const uint32_t* pSignalSemaphoreDeviceIndices;-} VkDeviceGroupSubmitInfoKHX;--typedef struct VkDeviceGroupBindSparseInfoKHX {- VkStructureType sType;- const void* pNext;- uint32_t resourceDeviceIndex;- uint32_t memoryDeviceIndex;-} VkDeviceGroupBindSparseInfoKHX;--typedef struct VkBindBufferMemoryDeviceGroupInfoKHX {- VkStructureType sType;- const void* pNext;- uint32_t deviceIndexCount;- const uint32_t* pDeviceIndices;-} VkBindBufferMemoryDeviceGroupInfoKHX;--typedef struct VkBindImageMemoryDeviceGroupInfoKHX {- VkStructureType sType;- const void* pNext;- uint32_t deviceIndexCount;- const uint32_t* pDeviceIndices;- uint32_t SFRRectCount;- const VkRect2D* pSFRRects;-} VkBindImageMemoryDeviceGroupInfoKHX;--typedef struct VkDeviceGroupPresentCapabilitiesKHX {- VkStructureType sType;- const void* pNext;- uint32_t presentMask[VK_MAX_DEVICE_GROUP_SIZE_KHX];- VkDeviceGroupPresentModeFlagsKHX modes;-} VkDeviceGroupPresentCapabilitiesKHX;--typedef struct VkImageSwapchainCreateInfoKHX {- VkStructureType sType;- const void* pNext;- VkSwapchainKHR swapchain;-} VkImageSwapchainCreateInfoKHX;--typedef struct VkBindImageMemorySwapchainInfoKHX {- VkStructureType sType;- const void* pNext;- VkSwapchainKHR swapchain;- uint32_t imageIndex;-} VkBindImageMemorySwapchainInfoKHX;--typedef struct VkAcquireNextImageInfoKHX {- VkStructureType sType;- const void* pNext;- VkSwapchainKHR swapchain;- uint64_t timeout;- VkSemaphore semaphore;- VkFence fence;- uint32_t deviceMask;-} VkAcquireNextImageInfoKHX;--typedef struct VkDeviceGroupPresentInfoKHX {- VkStructureType sType;- const void* pNext;- uint32_t swapchainCount;- const uint32_t* pDeviceMasks;- VkDeviceGroupPresentModeFlagBitsKHX mode;-} VkDeviceGroupPresentInfoKHX;--typedef struct VkDeviceGroupSwapchainCreateInfoKHX {- VkStructureType sType;- const void* pNext;- VkDeviceGroupPresentModeFlagsKHX modes;-} VkDeviceGroupSwapchainCreateInfoKHX;---typedef void (VKAPI_PTR *PFN_vkGetDeviceGroupPeerMemoryFeaturesKHX)(VkDevice device, uint32_t heapIndex, uint32_t localDeviceIndex, uint32_t remoteDeviceIndex, VkPeerMemoryFeatureFlagsKHX* pPeerMemoryFeatures);-typedef void (VKAPI_PTR *PFN_vkCmdSetDeviceMaskKHX)(VkCommandBuffer commandBuffer, uint32_t deviceMask);-typedef void (VKAPI_PTR *PFN_vkCmdDispatchBaseKHX)(VkCommandBuffer commandBuffer, uint32_t baseGroupX, uint32_t baseGroupY, uint32_t baseGroupZ, uint32_t groupCountX, uint32_t groupCountY, uint32_t groupCountZ);-typedef VkResult (VKAPI_PTR *PFN_vkGetDeviceGroupPresentCapabilitiesKHX)(VkDevice device, VkDeviceGroupPresentCapabilitiesKHX* pDeviceGroupPresentCapabilities);-typedef VkResult (VKAPI_PTR *PFN_vkGetDeviceGroupSurfacePresentModesKHX)(VkDevice device, VkSurfaceKHR surface, VkDeviceGroupPresentModeFlagsKHX* pModes);-typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDevicePresentRectanglesKHX)(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, uint32_t* pRectCount, VkRect2D* pRects);-typedef VkResult (VKAPI_PTR *PFN_vkAcquireNextImage2KHX)(VkDevice device, const VkAcquireNextImageInfoKHX* pAcquireInfo, uint32_t* pImageIndex);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR void VKAPI_CALL vkGetDeviceGroupPeerMemoryFeaturesKHX(- VkDevice device,- uint32_t heapIndex,- uint32_t localDeviceIndex,- uint32_t remoteDeviceIndex,- VkPeerMemoryFeatureFlagsKHX* pPeerMemoryFeatures);--VKAPI_ATTR void VKAPI_CALL vkCmdSetDeviceMaskKHX(- VkCommandBuffer commandBuffer,- uint32_t deviceMask);--VKAPI_ATTR void VKAPI_CALL vkCmdDispatchBaseKHX(- VkCommandBuffer commandBuffer,- uint32_t baseGroupX,- uint32_t baseGroupY,- uint32_t baseGroupZ,- uint32_t groupCountX,- uint32_t groupCountY,- uint32_t groupCountZ);--VKAPI_ATTR VkResult VKAPI_CALL vkGetDeviceGroupPresentCapabilitiesKHX(- VkDevice device,- VkDeviceGroupPresentCapabilitiesKHX* pDeviceGroupPresentCapabilities);--VKAPI_ATTR VkResult VKAPI_CALL vkGetDeviceGroupSurfacePresentModesKHX(- VkDevice device,- VkSurfaceKHR surface,- VkDeviceGroupPresentModeFlagsKHX* pModes);--VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDevicePresentRectanglesKHX(- VkPhysicalDevice physicalDevice,- VkSurfaceKHR surface,- uint32_t* pRectCount,- VkRect2D* pRects);--VKAPI_ATTR VkResult VKAPI_CALL vkAcquireNextImage2KHX(- VkDevice device,- const VkAcquireNextImageInfoKHX* pAcquireInfo,- uint32_t* pImageIndex);-#endif--#define VK_EXT_validation_flags 1-#define VK_EXT_VALIDATION_FLAGS_SPEC_VERSION 1-#define VK_EXT_VALIDATION_FLAGS_EXTENSION_NAME "VK_EXT_validation_flags"---typedef enum VkValidationCheckEXT {- VK_VALIDATION_CHECK_ALL_EXT = 0,- VK_VALIDATION_CHECK_SHADERS_EXT = 1,- VK_VALIDATION_CHECK_BEGIN_RANGE_EXT = VK_VALIDATION_CHECK_ALL_EXT,- VK_VALIDATION_CHECK_END_RANGE_EXT = VK_VALIDATION_CHECK_SHADERS_EXT,- VK_VALIDATION_CHECK_RANGE_SIZE_EXT = (VK_VALIDATION_CHECK_SHADERS_EXT - VK_VALIDATION_CHECK_ALL_EXT + 1),- VK_VALIDATION_CHECK_MAX_ENUM_EXT = 0x7FFFFFFF-} VkValidationCheckEXT;--typedef struct VkValidationFlagsEXT {- VkStructureType sType;- const void* pNext;- uint32_t disabledValidationCheckCount;- VkValidationCheckEXT* pDisabledValidationChecks;-} VkValidationFlagsEXT;----#ifdef VK_USE_PLATFORM_VI_NN-#define VK_NN_vi_surface 1-#define VK_NN_VI_SURFACE_SPEC_VERSION 1-#define VK_NN_VI_SURFACE_EXTENSION_NAME "VK_NN_vi_surface"--typedef VkFlags VkViSurfaceCreateFlagsNN;--typedef struct VkViSurfaceCreateInfoNN {- VkStructureType sType;- const void* pNext;- VkViSurfaceCreateFlagsNN flags;- void* window;-} VkViSurfaceCreateInfoNN;---typedef VkResult (VKAPI_PTR *PFN_vkCreateViSurfaceNN)(VkInstance instance, const VkViSurfaceCreateInfoNN* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR VkResult VKAPI_CALL vkCreateViSurfaceNN(- VkInstance instance,- const VkViSurfaceCreateInfoNN* pCreateInfo,- const VkAllocationCallbacks* pAllocator,- VkSurfaceKHR* pSurface);-#endif-#endif /* VK_USE_PLATFORM_VI_NN */--#define VK_EXT_shader_subgroup_ballot 1-#define VK_EXT_SHADER_SUBGROUP_BALLOT_SPEC_VERSION 1-#define VK_EXT_SHADER_SUBGROUP_BALLOT_EXTENSION_NAME "VK_EXT_shader_subgroup_ballot"---#define VK_EXT_shader_subgroup_vote 1-#define VK_EXT_SHADER_SUBGROUP_VOTE_SPEC_VERSION 1-#define VK_EXT_SHADER_SUBGROUP_VOTE_EXTENSION_NAME "VK_EXT_shader_subgroup_vote"---#define VK_KHX_device_group_creation 1-#define VK_KHX_DEVICE_GROUP_CREATION_SPEC_VERSION 1-#define VK_KHX_DEVICE_GROUP_CREATION_EXTENSION_NAME "VK_KHX_device_group_creation"--typedef struct VkPhysicalDeviceGroupPropertiesKHX {- VkStructureType sType;- void* pNext;- uint32_t physicalDeviceCount;- VkPhysicalDevice physicalDevices[VK_MAX_DEVICE_GROUP_SIZE_KHX];- VkBool32 subsetAllocation;-} VkPhysicalDeviceGroupPropertiesKHX;--typedef struct VkDeviceGroupDeviceCreateInfoKHX {- VkStructureType sType;- const void* pNext;- uint32_t physicalDeviceCount;- const VkPhysicalDevice* pPhysicalDevices;-} VkDeviceGroupDeviceCreateInfoKHX;---typedef VkResult (VKAPI_PTR *PFN_vkEnumeratePhysicalDeviceGroupsKHX)(VkInstance instance, uint32_t* pPhysicalDeviceGroupCount, VkPhysicalDeviceGroupPropertiesKHX* pPhysicalDeviceGroupProperties);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR VkResult VKAPI_CALL vkEnumeratePhysicalDeviceGroupsKHX(- VkInstance instance,- uint32_t* pPhysicalDeviceGroupCount,- VkPhysicalDeviceGroupPropertiesKHX* pPhysicalDeviceGroupProperties);-#endif--#define VK_NVX_device_generated_commands 1-VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkObjectTableNVX)-VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkIndirectCommandsLayoutNVX)--#define VK_NVX_DEVICE_GENERATED_COMMANDS_SPEC_VERSION 3-#define VK_NVX_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME "VK_NVX_device_generated_commands"---typedef enum VkIndirectCommandsTokenTypeNVX {- VK_INDIRECT_COMMANDS_TOKEN_TYPE_PIPELINE_NVX = 0,- VK_INDIRECT_COMMANDS_TOKEN_TYPE_DESCRIPTOR_SET_NVX = 1,- VK_INDIRECT_COMMANDS_TOKEN_TYPE_INDEX_BUFFER_NVX = 2,- VK_INDIRECT_COMMANDS_TOKEN_TYPE_VERTEX_BUFFER_NVX = 3,- VK_INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NVX = 4,- VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_INDEXED_NVX = 5,- VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_NVX = 6,- VK_INDIRECT_COMMANDS_TOKEN_TYPE_DISPATCH_NVX = 7,- VK_INDIRECT_COMMANDS_TOKEN_TYPE_BEGIN_RANGE_NVX = VK_INDIRECT_COMMANDS_TOKEN_TYPE_PIPELINE_NVX,- VK_INDIRECT_COMMANDS_TOKEN_TYPE_END_RANGE_NVX = VK_INDIRECT_COMMANDS_TOKEN_TYPE_DISPATCH_NVX,- VK_INDIRECT_COMMANDS_TOKEN_TYPE_RANGE_SIZE_NVX = (VK_INDIRECT_COMMANDS_TOKEN_TYPE_DISPATCH_NVX - VK_INDIRECT_COMMANDS_TOKEN_TYPE_PIPELINE_NVX + 1),- VK_INDIRECT_COMMANDS_TOKEN_TYPE_MAX_ENUM_NVX = 0x7FFFFFFF-} VkIndirectCommandsTokenTypeNVX;--typedef enum VkObjectEntryTypeNVX {- VK_OBJECT_ENTRY_TYPE_DESCRIPTOR_SET_NVX = 0,- VK_OBJECT_ENTRY_TYPE_PIPELINE_NVX = 1,- VK_OBJECT_ENTRY_TYPE_INDEX_BUFFER_NVX = 2,- VK_OBJECT_ENTRY_TYPE_VERTEX_BUFFER_NVX = 3,- VK_OBJECT_ENTRY_TYPE_PUSH_CONSTANT_NVX = 4,- VK_OBJECT_ENTRY_TYPE_BEGIN_RANGE_NVX = VK_OBJECT_ENTRY_TYPE_DESCRIPTOR_SET_NVX,- VK_OBJECT_ENTRY_TYPE_END_RANGE_NVX = VK_OBJECT_ENTRY_TYPE_PUSH_CONSTANT_NVX,- VK_OBJECT_ENTRY_TYPE_RANGE_SIZE_NVX = (VK_OBJECT_ENTRY_TYPE_PUSH_CONSTANT_NVX - VK_OBJECT_ENTRY_TYPE_DESCRIPTOR_SET_NVX + 1),- VK_OBJECT_ENTRY_TYPE_MAX_ENUM_NVX = 0x7FFFFFFF-} VkObjectEntryTypeNVX;---typedef enum VkIndirectCommandsLayoutUsageFlagBitsNVX {- VK_INDIRECT_COMMANDS_LAYOUT_USAGE_UNORDERED_SEQUENCES_BIT_NVX = 0x00000001,- VK_INDIRECT_COMMANDS_LAYOUT_USAGE_SPARSE_SEQUENCES_BIT_NVX = 0x00000002,- VK_INDIRECT_COMMANDS_LAYOUT_USAGE_EMPTY_EXECUTIONS_BIT_NVX = 0x00000004,- VK_INDIRECT_COMMANDS_LAYOUT_USAGE_INDEXED_SEQUENCES_BIT_NVX = 0x00000008,- VK_INDIRECT_COMMANDS_LAYOUT_USAGE_FLAG_BITS_MAX_ENUM_NVX = 0x7FFFFFFF-} VkIndirectCommandsLayoutUsageFlagBitsNVX;-typedef VkFlags VkIndirectCommandsLayoutUsageFlagsNVX;--typedef enum VkObjectEntryUsageFlagBitsNVX {- VK_OBJECT_ENTRY_USAGE_GRAPHICS_BIT_NVX = 0x00000001,- VK_OBJECT_ENTRY_USAGE_COMPUTE_BIT_NVX = 0x00000002,- VK_OBJECT_ENTRY_USAGE_FLAG_BITS_MAX_ENUM_NVX = 0x7FFFFFFF-} VkObjectEntryUsageFlagBitsNVX;-typedef VkFlags VkObjectEntryUsageFlagsNVX;--typedef struct VkDeviceGeneratedCommandsFeaturesNVX {- VkStructureType sType;- const void* pNext;- VkBool32 computeBindingPointSupport;-} VkDeviceGeneratedCommandsFeaturesNVX;--typedef struct VkDeviceGeneratedCommandsLimitsNVX {- VkStructureType sType;- const void* pNext;- uint32_t maxIndirectCommandsLayoutTokenCount;- uint32_t maxObjectEntryCounts;- uint32_t minSequenceCountBufferOffsetAlignment;- uint32_t minSequenceIndexBufferOffsetAlignment;- uint32_t minCommandsTokenBufferOffsetAlignment;-} VkDeviceGeneratedCommandsLimitsNVX;--typedef struct VkIndirectCommandsTokenNVX {- VkIndirectCommandsTokenTypeNVX tokenType;- VkBuffer buffer;- VkDeviceSize offset;-} VkIndirectCommandsTokenNVX;--typedef struct VkIndirectCommandsLayoutTokenNVX {- VkIndirectCommandsTokenTypeNVX tokenType;- uint32_t bindingUnit;- uint32_t dynamicCount;- uint32_t divisor;-} VkIndirectCommandsLayoutTokenNVX;--typedef struct VkIndirectCommandsLayoutCreateInfoNVX {- VkStructureType sType;- const void* pNext;- VkPipelineBindPoint pipelineBindPoint;- VkIndirectCommandsLayoutUsageFlagsNVX flags;- uint32_t tokenCount;- const VkIndirectCommandsLayoutTokenNVX* pTokens;-} VkIndirectCommandsLayoutCreateInfoNVX;--typedef struct VkCmdProcessCommandsInfoNVX {- VkStructureType sType;- const void* pNext;- VkObjectTableNVX objectTable;- VkIndirectCommandsLayoutNVX indirectCommandsLayout;- uint32_t indirectCommandsTokenCount;- const VkIndirectCommandsTokenNVX* pIndirectCommandsTokens;- uint32_t maxSequencesCount;- VkCommandBuffer targetCommandBuffer;- VkBuffer sequencesCountBuffer;- VkDeviceSize sequencesCountOffset;- VkBuffer sequencesIndexBuffer;- VkDeviceSize sequencesIndexOffset;-} VkCmdProcessCommandsInfoNVX;--typedef struct VkCmdReserveSpaceForCommandsInfoNVX {- VkStructureType sType;- const void* pNext;- VkObjectTableNVX objectTable;- VkIndirectCommandsLayoutNVX indirectCommandsLayout;- uint32_t maxSequencesCount;-} VkCmdReserveSpaceForCommandsInfoNVX;--typedef struct VkObjectTableCreateInfoNVX {- VkStructureType sType;- const void* pNext;- uint32_t objectCount;- const VkObjectEntryTypeNVX* pObjectEntryTypes;- const uint32_t* pObjectEntryCounts;- const VkObjectEntryUsageFlagsNVX* pObjectEntryUsageFlags;- uint32_t maxUniformBuffersPerDescriptor;- uint32_t maxStorageBuffersPerDescriptor;- uint32_t maxStorageImagesPerDescriptor;- uint32_t maxSampledImagesPerDescriptor;- uint32_t maxPipelineLayouts;-} VkObjectTableCreateInfoNVX;--typedef struct VkObjectTableEntryNVX {- VkObjectEntryTypeNVX type;- VkObjectEntryUsageFlagsNVX flags;-} VkObjectTableEntryNVX;--typedef struct VkObjectTablePipelineEntryNVX {- VkObjectEntryTypeNVX type;- VkObjectEntryUsageFlagsNVX flags;- VkPipeline pipeline;-} VkObjectTablePipelineEntryNVX;--typedef struct VkObjectTableDescriptorSetEntryNVX {- VkObjectEntryTypeNVX type;- VkObjectEntryUsageFlagsNVX flags;- VkPipelineLayout pipelineLayout;- VkDescriptorSet descriptorSet;-} VkObjectTableDescriptorSetEntryNVX;--typedef struct VkObjectTableVertexBufferEntryNVX {- VkObjectEntryTypeNVX type;- VkObjectEntryUsageFlagsNVX flags;- VkBuffer buffer;-} VkObjectTableVertexBufferEntryNVX;--typedef struct VkObjectTableIndexBufferEntryNVX {- VkObjectEntryTypeNVX type;- VkObjectEntryUsageFlagsNVX flags;- VkBuffer buffer;- VkIndexType indexType;-} VkObjectTableIndexBufferEntryNVX;--typedef struct VkObjectTablePushConstantEntryNVX {- VkObjectEntryTypeNVX type;- VkObjectEntryUsageFlagsNVX flags;- VkPipelineLayout pipelineLayout;- VkShaderStageFlags stageFlags;-} VkObjectTablePushConstantEntryNVX;---typedef void (VKAPI_PTR *PFN_vkCmdProcessCommandsNVX)(VkCommandBuffer commandBuffer, const VkCmdProcessCommandsInfoNVX* pProcessCommandsInfo);-typedef void (VKAPI_PTR *PFN_vkCmdReserveSpaceForCommandsNVX)(VkCommandBuffer commandBuffer, const VkCmdReserveSpaceForCommandsInfoNVX* pReserveSpaceInfo);-typedef VkResult (VKAPI_PTR *PFN_vkCreateIndirectCommandsLayoutNVX)(VkDevice device, const VkIndirectCommandsLayoutCreateInfoNVX* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkIndirectCommandsLayoutNVX* pIndirectCommandsLayout);-typedef void (VKAPI_PTR *PFN_vkDestroyIndirectCommandsLayoutNVX)(VkDevice device, VkIndirectCommandsLayoutNVX indirectCommandsLayout, const VkAllocationCallbacks* pAllocator);-typedef VkResult (VKAPI_PTR *PFN_vkCreateObjectTableNVX)(VkDevice device, const VkObjectTableCreateInfoNVX* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkObjectTableNVX* pObjectTable);-typedef void (VKAPI_PTR *PFN_vkDestroyObjectTableNVX)(VkDevice device, VkObjectTableNVX objectTable, const VkAllocationCallbacks* pAllocator);-typedef VkResult (VKAPI_PTR *PFN_vkRegisterObjectsNVX)(VkDevice device, VkObjectTableNVX objectTable, uint32_t objectCount, const VkObjectTableEntryNVX* const* ppObjectTableEntries, const uint32_t* pObjectIndices);-typedef VkResult (VKAPI_PTR *PFN_vkUnregisterObjectsNVX)(VkDevice device, VkObjectTableNVX objectTable, uint32_t objectCount, const VkObjectEntryTypeNVX* pObjectEntryTypes, const uint32_t* pObjectIndices);-typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceGeneratedCommandsPropertiesNVX)(VkPhysicalDevice physicalDevice, VkDeviceGeneratedCommandsFeaturesNVX* pFeatures, VkDeviceGeneratedCommandsLimitsNVX* pLimits);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR void VKAPI_CALL vkCmdProcessCommandsNVX(- VkCommandBuffer commandBuffer,- const VkCmdProcessCommandsInfoNVX* pProcessCommandsInfo);--VKAPI_ATTR void VKAPI_CALL vkCmdReserveSpaceForCommandsNVX(- VkCommandBuffer commandBuffer,- const VkCmdReserveSpaceForCommandsInfoNVX* pReserveSpaceInfo);--VKAPI_ATTR VkResult VKAPI_CALL vkCreateIndirectCommandsLayoutNVX(- VkDevice device,- const VkIndirectCommandsLayoutCreateInfoNVX* pCreateInfo,- const VkAllocationCallbacks* pAllocator,- VkIndirectCommandsLayoutNVX* pIndirectCommandsLayout);--VKAPI_ATTR void VKAPI_CALL vkDestroyIndirectCommandsLayoutNVX(- VkDevice device,- VkIndirectCommandsLayoutNVX indirectCommandsLayout,- const VkAllocationCallbacks* pAllocator);--VKAPI_ATTR VkResult VKAPI_CALL vkCreateObjectTableNVX(- VkDevice device,- const VkObjectTableCreateInfoNVX* pCreateInfo,- const VkAllocationCallbacks* pAllocator,- VkObjectTableNVX* pObjectTable);--VKAPI_ATTR void VKAPI_CALL vkDestroyObjectTableNVX(- VkDevice device,- VkObjectTableNVX objectTable,- const VkAllocationCallbacks* pAllocator);--VKAPI_ATTR VkResult VKAPI_CALL vkRegisterObjectsNVX(- VkDevice device,- VkObjectTableNVX objectTable,- uint32_t objectCount,- const VkObjectTableEntryNVX* const* ppObjectTableEntries,- const uint32_t* pObjectIndices);--VKAPI_ATTR VkResult VKAPI_CALL vkUnregisterObjectsNVX(- VkDevice device,- VkObjectTableNVX objectTable,- uint32_t objectCount,- const VkObjectEntryTypeNVX* pObjectEntryTypes,- const uint32_t* pObjectIndices);--VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceGeneratedCommandsPropertiesNVX(- VkPhysicalDevice physicalDevice,- VkDeviceGeneratedCommandsFeaturesNVX* pFeatures,- VkDeviceGeneratedCommandsLimitsNVX* pLimits);-#endif--#define VK_NV_clip_space_w_scaling 1-#define VK_NV_CLIP_SPACE_W_SCALING_SPEC_VERSION 1-#define VK_NV_CLIP_SPACE_W_SCALING_EXTENSION_NAME "VK_NV_clip_space_w_scaling"--typedef struct VkViewportWScalingNV {- float xcoeff;- float ycoeff;-} VkViewportWScalingNV;--typedef struct VkPipelineViewportWScalingStateCreateInfoNV {- VkStructureType sType;- const void* pNext;- VkBool32 viewportWScalingEnable;- uint32_t viewportCount;- const VkViewportWScalingNV* pViewportWScalings;-} VkPipelineViewportWScalingStateCreateInfoNV;---typedef void (VKAPI_PTR *PFN_vkCmdSetViewportWScalingNV)(VkCommandBuffer commandBuffer, uint32_t firstViewport, uint32_t viewportCount, const VkViewportWScalingNV* pViewportWScalings);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR void VKAPI_CALL vkCmdSetViewportWScalingNV(- VkCommandBuffer commandBuffer,- uint32_t firstViewport,- uint32_t viewportCount,- const VkViewportWScalingNV* pViewportWScalings);-#endif--#define VK_EXT_direct_mode_display 1-#define VK_EXT_DIRECT_MODE_DISPLAY_SPEC_VERSION 1-#define VK_EXT_DIRECT_MODE_DISPLAY_EXTENSION_NAME "VK_EXT_direct_mode_display"--typedef VkResult (VKAPI_PTR *PFN_vkReleaseDisplayEXT)(VkPhysicalDevice physicalDevice, VkDisplayKHR display);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR VkResult VKAPI_CALL vkReleaseDisplayEXT(- VkPhysicalDevice physicalDevice,- VkDisplayKHR display);-#endif--#ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT-#define VK_EXT_acquire_xlib_display 1-#include <X11/extensions/Xrandr.h>--#define VK_EXT_ACQUIRE_XLIB_DISPLAY_SPEC_VERSION 1-#define VK_EXT_ACQUIRE_XLIB_DISPLAY_EXTENSION_NAME "VK_EXT_acquire_xlib_display"--typedef VkResult (VKAPI_PTR *PFN_vkAcquireXlibDisplayEXT)(VkPhysicalDevice physicalDevice, Display* dpy, VkDisplayKHR display);-typedef VkResult (VKAPI_PTR *PFN_vkGetRandROutputDisplayEXT)(VkPhysicalDevice physicalDevice, Display* dpy, RROutput rrOutput, VkDisplayKHR* pDisplay);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR VkResult VKAPI_CALL vkAcquireXlibDisplayEXT(- VkPhysicalDevice physicalDevice,- Display* dpy,- VkDisplayKHR display);--VKAPI_ATTR VkResult VKAPI_CALL vkGetRandROutputDisplayEXT(- VkPhysicalDevice physicalDevice,- Display* dpy,- RROutput rrOutput,- VkDisplayKHR* pDisplay);-#endif-#endif /* VK_USE_PLATFORM_XLIB_XRANDR_EXT */--#define VK_EXT_display_surface_counter 1-#define VK_EXT_DISPLAY_SURFACE_COUNTER_SPEC_VERSION 1-#define VK_EXT_DISPLAY_SURFACE_COUNTER_EXTENSION_NAME "VK_EXT_display_surface_counter"-#define VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES2_EXT VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT---typedef enum VkSurfaceCounterFlagBitsEXT {- VK_SURFACE_COUNTER_VBLANK_EXT = 0x00000001,- VK_SURFACE_COUNTER_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF-} VkSurfaceCounterFlagBitsEXT;-typedef VkFlags VkSurfaceCounterFlagsEXT;--typedef struct VkSurfaceCapabilities2EXT {- VkStructureType sType;- void* pNext;- uint32_t minImageCount;- uint32_t maxImageCount;- VkExtent2D currentExtent;- VkExtent2D minImageExtent;- VkExtent2D maxImageExtent;- uint32_t maxImageArrayLayers;- VkSurfaceTransformFlagsKHR supportedTransforms;- VkSurfaceTransformFlagBitsKHR currentTransform;- VkCompositeAlphaFlagsKHR supportedCompositeAlpha;- VkImageUsageFlags supportedUsageFlags;- VkSurfaceCounterFlagsEXT supportedSurfaceCounters;-} VkSurfaceCapabilities2EXT;---typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT)(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, VkSurfaceCapabilities2EXT* pSurfaceCapabilities);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceCapabilities2EXT(- VkPhysicalDevice physicalDevice,- VkSurfaceKHR surface,- VkSurfaceCapabilities2EXT* pSurfaceCapabilities);-#endif--#define VK_EXT_display_control 1-#define VK_EXT_DISPLAY_CONTROL_SPEC_VERSION 1-#define VK_EXT_DISPLAY_CONTROL_EXTENSION_NAME "VK_EXT_display_control"---typedef enum VkDisplayPowerStateEXT {- VK_DISPLAY_POWER_STATE_OFF_EXT = 0,- VK_DISPLAY_POWER_STATE_SUSPEND_EXT = 1,- VK_DISPLAY_POWER_STATE_ON_EXT = 2,- VK_DISPLAY_POWER_STATE_BEGIN_RANGE_EXT = VK_DISPLAY_POWER_STATE_OFF_EXT,- VK_DISPLAY_POWER_STATE_END_RANGE_EXT = VK_DISPLAY_POWER_STATE_ON_EXT,- VK_DISPLAY_POWER_STATE_RANGE_SIZE_EXT = (VK_DISPLAY_POWER_STATE_ON_EXT - VK_DISPLAY_POWER_STATE_OFF_EXT + 1),- VK_DISPLAY_POWER_STATE_MAX_ENUM_EXT = 0x7FFFFFFF-} VkDisplayPowerStateEXT;--typedef enum VkDeviceEventTypeEXT {- VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT = 0,- VK_DEVICE_EVENT_TYPE_BEGIN_RANGE_EXT = VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT,- VK_DEVICE_EVENT_TYPE_END_RANGE_EXT = VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT,- VK_DEVICE_EVENT_TYPE_RANGE_SIZE_EXT = (VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT - VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT + 1),- VK_DEVICE_EVENT_TYPE_MAX_ENUM_EXT = 0x7FFFFFFF-} VkDeviceEventTypeEXT;--typedef enum VkDisplayEventTypeEXT {- VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT = 0,- VK_DISPLAY_EVENT_TYPE_BEGIN_RANGE_EXT = VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT,- VK_DISPLAY_EVENT_TYPE_END_RANGE_EXT = VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT,- VK_DISPLAY_EVENT_TYPE_RANGE_SIZE_EXT = (VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT - VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT + 1),- VK_DISPLAY_EVENT_TYPE_MAX_ENUM_EXT = 0x7FFFFFFF-} VkDisplayEventTypeEXT;--typedef struct VkDisplayPowerInfoEXT {- VkStructureType sType;- const void* pNext;- VkDisplayPowerStateEXT powerState;-} VkDisplayPowerInfoEXT;--typedef struct VkDeviceEventInfoEXT {- VkStructureType sType;- const void* pNext;- VkDeviceEventTypeEXT deviceEvent;-} VkDeviceEventInfoEXT;--typedef struct VkDisplayEventInfoEXT {- VkStructureType sType;- const void* pNext;- VkDisplayEventTypeEXT displayEvent;-} VkDisplayEventInfoEXT;--typedef struct VkSwapchainCounterCreateInfoEXT {- VkStructureType sType;- const void* pNext;- VkSurfaceCounterFlagsEXT surfaceCounters;-} VkSwapchainCounterCreateInfoEXT;---typedef VkResult (VKAPI_PTR *PFN_vkDisplayPowerControlEXT)(VkDevice device, VkDisplayKHR display, const VkDisplayPowerInfoEXT* pDisplayPowerInfo);-typedef VkResult (VKAPI_PTR *PFN_vkRegisterDeviceEventEXT)(VkDevice device, const VkDeviceEventInfoEXT* pDeviceEventInfo, const VkAllocationCallbacks* pAllocator, VkFence* pFence);-typedef VkResult (VKAPI_PTR *PFN_vkRegisterDisplayEventEXT)(VkDevice device, VkDisplayKHR display, const VkDisplayEventInfoEXT* pDisplayEventInfo, const VkAllocationCallbacks* pAllocator, VkFence* pFence);-typedef VkResult (VKAPI_PTR *PFN_vkGetSwapchainCounterEXT)(VkDevice device, VkSwapchainKHR swapchain, VkSurfaceCounterFlagBitsEXT counter, uint64_t* pCounterValue);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR VkResult VKAPI_CALL vkDisplayPowerControlEXT(- VkDevice device,- VkDisplayKHR display,- const VkDisplayPowerInfoEXT* pDisplayPowerInfo);--VKAPI_ATTR VkResult VKAPI_CALL vkRegisterDeviceEventEXT(- VkDevice device,- const VkDeviceEventInfoEXT* pDeviceEventInfo,- const VkAllocationCallbacks* pAllocator,- VkFence* pFence);--VKAPI_ATTR VkResult VKAPI_CALL vkRegisterDisplayEventEXT(- VkDevice device,- VkDisplayKHR display,- const VkDisplayEventInfoEXT* pDisplayEventInfo,- const VkAllocationCallbacks* pAllocator,- VkFence* pFence);--VKAPI_ATTR VkResult VKAPI_CALL vkGetSwapchainCounterEXT(- VkDevice device,- VkSwapchainKHR swapchain,- VkSurfaceCounterFlagBitsEXT counter,- uint64_t* pCounterValue);-#endif--#define VK_GOOGLE_display_timing 1-#define VK_GOOGLE_DISPLAY_TIMING_SPEC_VERSION 1-#define VK_GOOGLE_DISPLAY_TIMING_EXTENSION_NAME "VK_GOOGLE_display_timing"--typedef struct VkRefreshCycleDurationGOOGLE {- uint64_t refreshDuration;-} VkRefreshCycleDurationGOOGLE;--typedef struct VkPastPresentationTimingGOOGLE {- uint32_t presentID;- uint64_t desiredPresentTime;- uint64_t actualPresentTime;- uint64_t earliestPresentTime;- uint64_t presentMargin;-} VkPastPresentationTimingGOOGLE;--typedef struct VkPresentTimeGOOGLE {- uint32_t presentID;- uint64_t desiredPresentTime;-} VkPresentTimeGOOGLE;--typedef struct VkPresentTimesInfoGOOGLE {- VkStructureType sType;- const void* pNext;- uint32_t swapchainCount;- const VkPresentTimeGOOGLE* pTimes;-} VkPresentTimesInfoGOOGLE;---typedef VkResult (VKAPI_PTR *PFN_vkGetRefreshCycleDurationGOOGLE)(VkDevice device, VkSwapchainKHR swapchain, VkRefreshCycleDurationGOOGLE* pDisplayTimingProperties);-typedef VkResult (VKAPI_PTR *PFN_vkGetPastPresentationTimingGOOGLE)(VkDevice device, VkSwapchainKHR swapchain, uint32_t* pPresentationTimingCount, VkPastPresentationTimingGOOGLE* pPresentationTimings);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR VkResult VKAPI_CALL vkGetRefreshCycleDurationGOOGLE(- VkDevice device,- VkSwapchainKHR swapchain,- VkRefreshCycleDurationGOOGLE* pDisplayTimingProperties);--VKAPI_ATTR VkResult VKAPI_CALL vkGetPastPresentationTimingGOOGLE(- VkDevice device,- VkSwapchainKHR swapchain,- uint32_t* pPresentationTimingCount,- VkPastPresentationTimingGOOGLE* pPresentationTimings);-#endif--#define VK_NV_sample_mask_override_coverage 1-#define VK_NV_SAMPLE_MASK_OVERRIDE_COVERAGE_SPEC_VERSION 1-#define VK_NV_SAMPLE_MASK_OVERRIDE_COVERAGE_EXTENSION_NAME "VK_NV_sample_mask_override_coverage"---#define VK_NV_geometry_shader_passthrough 1-#define VK_NV_GEOMETRY_SHADER_PASSTHROUGH_SPEC_VERSION 1-#define VK_NV_GEOMETRY_SHADER_PASSTHROUGH_EXTENSION_NAME "VK_NV_geometry_shader_passthrough"---#define VK_NV_viewport_array2 1-#define VK_NV_VIEWPORT_ARRAY2_SPEC_VERSION 1-#define VK_NV_VIEWPORT_ARRAY2_EXTENSION_NAME "VK_NV_viewport_array2"---#define VK_NVX_multiview_per_view_attributes 1-#define VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_SPEC_VERSION 1-#define VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_EXTENSION_NAME "VK_NVX_multiview_per_view_attributes"--typedef struct VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX {- VkStructureType sType;- void* pNext;- VkBool32 perViewPositionAllComponents;-} VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX;----#define VK_NV_viewport_swizzle 1-#define VK_NV_VIEWPORT_SWIZZLE_SPEC_VERSION 1-#define VK_NV_VIEWPORT_SWIZZLE_EXTENSION_NAME "VK_NV_viewport_swizzle"---typedef enum VkViewportCoordinateSwizzleNV {- VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_X_NV = 0,- VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_X_NV = 1,- VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Y_NV = 2,- VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Y_NV = 3,- VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Z_NV = 4,- VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Z_NV = 5,- VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_W_NV = 6,- VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_W_NV = 7,- VK_VIEWPORT_COORDINATE_SWIZZLE_BEGIN_RANGE_NV = VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_X_NV,- VK_VIEWPORT_COORDINATE_SWIZZLE_END_RANGE_NV = VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_W_NV,- VK_VIEWPORT_COORDINATE_SWIZZLE_RANGE_SIZE_NV = (VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_W_NV - VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_X_NV + 1),- VK_VIEWPORT_COORDINATE_SWIZZLE_MAX_ENUM_NV = 0x7FFFFFFF-} VkViewportCoordinateSwizzleNV;--typedef VkFlags VkPipelineViewportSwizzleStateCreateFlagsNV;--typedef struct VkViewportSwizzleNV {- VkViewportCoordinateSwizzleNV x;- VkViewportCoordinateSwizzleNV y;- VkViewportCoordinateSwizzleNV z;- VkViewportCoordinateSwizzleNV w;-} VkViewportSwizzleNV;--typedef struct VkPipelineViewportSwizzleStateCreateInfoNV {- VkStructureType sType;- const void* pNext;- VkPipelineViewportSwizzleStateCreateFlagsNV flags;- uint32_t viewportCount;- const VkViewportSwizzleNV* pViewportSwizzles;-} VkPipelineViewportSwizzleStateCreateInfoNV;----#define VK_EXT_discard_rectangles 1-#define VK_EXT_DISCARD_RECTANGLES_SPEC_VERSION 1-#define VK_EXT_DISCARD_RECTANGLES_EXTENSION_NAME "VK_EXT_discard_rectangles"---typedef enum VkDiscardRectangleModeEXT {- VK_DISCARD_RECTANGLE_MODE_INCLUSIVE_EXT = 0,- VK_DISCARD_RECTANGLE_MODE_EXCLUSIVE_EXT = 1,- VK_DISCARD_RECTANGLE_MODE_BEGIN_RANGE_EXT = VK_DISCARD_RECTANGLE_MODE_INCLUSIVE_EXT,- VK_DISCARD_RECTANGLE_MODE_END_RANGE_EXT = VK_DISCARD_RECTANGLE_MODE_EXCLUSIVE_EXT,- VK_DISCARD_RECTANGLE_MODE_RANGE_SIZE_EXT = (VK_DISCARD_RECTANGLE_MODE_EXCLUSIVE_EXT - VK_DISCARD_RECTANGLE_MODE_INCLUSIVE_EXT + 1),- VK_DISCARD_RECTANGLE_MODE_MAX_ENUM_EXT = 0x7FFFFFFF-} VkDiscardRectangleModeEXT;--typedef VkFlags VkPipelineDiscardRectangleStateCreateFlagsEXT;--typedef struct VkPhysicalDeviceDiscardRectanglePropertiesEXT {- VkStructureType sType;- void* pNext;- uint32_t maxDiscardRectangles;-} VkPhysicalDeviceDiscardRectanglePropertiesEXT;--typedef struct VkPipelineDiscardRectangleStateCreateInfoEXT {- VkStructureType sType;- const void* pNext;- VkPipelineDiscardRectangleStateCreateFlagsEXT flags;- VkDiscardRectangleModeEXT discardRectangleMode;- uint32_t discardRectangleCount;- const VkRect2D* pDiscardRectangles;-} VkPipelineDiscardRectangleStateCreateInfoEXT;---typedef void (VKAPI_PTR *PFN_vkCmdSetDiscardRectangleEXT)(VkCommandBuffer commandBuffer, uint32_t firstDiscardRectangle, uint32_t discardRectangleCount, const VkRect2D* pDiscardRectangles);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR void VKAPI_CALL vkCmdSetDiscardRectangleEXT(- VkCommandBuffer commandBuffer,- uint32_t firstDiscardRectangle,- uint32_t discardRectangleCount,- const VkRect2D* pDiscardRectangles);-#endif--#define VK_EXT_conservative_rasterization 1-#define VK_EXT_CONSERVATIVE_RASTERIZATION_SPEC_VERSION 1-#define VK_EXT_CONSERVATIVE_RASTERIZATION_EXTENSION_NAME "VK_EXT_conservative_rasterization"---typedef enum VkConservativeRasterizationModeEXT {- VK_CONSERVATIVE_RASTERIZATION_MODE_DISABLED_EXT = 0,- VK_CONSERVATIVE_RASTERIZATION_MODE_OVERESTIMATE_EXT = 1,- VK_CONSERVATIVE_RASTERIZATION_MODE_UNDERESTIMATE_EXT = 2,- VK_CONSERVATIVE_RASTERIZATION_MODE_BEGIN_RANGE_EXT = VK_CONSERVATIVE_RASTERIZATION_MODE_DISABLED_EXT,- VK_CONSERVATIVE_RASTERIZATION_MODE_END_RANGE_EXT = VK_CONSERVATIVE_RASTERIZATION_MODE_UNDERESTIMATE_EXT,- VK_CONSERVATIVE_RASTERIZATION_MODE_RANGE_SIZE_EXT = (VK_CONSERVATIVE_RASTERIZATION_MODE_UNDERESTIMATE_EXT - VK_CONSERVATIVE_RASTERIZATION_MODE_DISABLED_EXT + 1),- VK_CONSERVATIVE_RASTERIZATION_MODE_MAX_ENUM_EXT = 0x7FFFFFFF-} VkConservativeRasterizationModeEXT;--typedef VkFlags VkPipelineRasterizationConservativeStateCreateFlagsEXT;--typedef struct VkPhysicalDeviceConservativeRasterizationPropertiesEXT {- VkStructureType sType;- void* pNext;- float primitiveOverestimationSize;- float maxExtraPrimitiveOverestimationSize;- float extraPrimitiveOverestimationSizeGranularity;- VkBool32 primitiveUnderestimation;- VkBool32 conservativePointAndLineRasterization;- VkBool32 degenerateTrianglesRasterized;- VkBool32 degenerateLinesRasterized;- VkBool32 fullyCoveredFragmentShaderInputVariable;- VkBool32 conservativeRasterizationPostDepthCoverage;-} VkPhysicalDeviceConservativeRasterizationPropertiesEXT;--typedef struct VkPipelineRasterizationConservativeStateCreateInfoEXT {- VkStructureType sType;- const void* pNext;- VkPipelineRasterizationConservativeStateCreateFlagsEXT flags;- VkConservativeRasterizationModeEXT conservativeRasterizationMode;- float extraPrimitiveOverestimationSize;-} VkPipelineRasterizationConservativeStateCreateInfoEXT;----#define VK_EXT_swapchain_colorspace 1-#define VK_EXT_SWAPCHAIN_COLOR_SPACE_SPEC_VERSION 3-#define VK_EXT_SWAPCHAIN_COLOR_SPACE_EXTENSION_NAME "VK_EXT_swapchain_colorspace"---#define VK_EXT_hdr_metadata 1-#define VK_EXT_HDR_METADATA_SPEC_VERSION 1-#define VK_EXT_HDR_METADATA_EXTENSION_NAME "VK_EXT_hdr_metadata"--typedef struct VkXYColorEXT {- float x;- float y;-} VkXYColorEXT;--typedef struct VkHdrMetadataEXT {- VkStructureType sType;- const void* pNext;- VkXYColorEXT displayPrimaryRed;- VkXYColorEXT displayPrimaryGreen;- VkXYColorEXT displayPrimaryBlue;- VkXYColorEXT whitePoint;- float maxLuminance;- float minLuminance;- float maxContentLightLevel;- float maxFrameAverageLightLevel;-} VkHdrMetadataEXT;---typedef void (VKAPI_PTR *PFN_vkSetHdrMetadataEXT)(VkDevice device, uint32_t swapchainCount, const VkSwapchainKHR* pSwapchains, const VkHdrMetadataEXT* pMetadata);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR void VKAPI_CALL vkSetHdrMetadataEXT(- VkDevice device,- uint32_t swapchainCount,- const VkSwapchainKHR* pSwapchains,- const VkHdrMetadataEXT* pMetadata);-#endif--#ifdef VK_USE_PLATFORM_IOS_MVK-#define VK_MVK_ios_surface 1-#define VK_MVK_IOS_SURFACE_SPEC_VERSION 2-#define VK_MVK_IOS_SURFACE_EXTENSION_NAME "VK_MVK_ios_surface"--typedef VkFlags VkIOSSurfaceCreateFlagsMVK;--typedef struct VkIOSSurfaceCreateInfoMVK {- VkStructureType sType;- const void* pNext;- VkIOSSurfaceCreateFlagsMVK flags;- const void* pView;-} VkIOSSurfaceCreateInfoMVK;---typedef VkResult (VKAPI_PTR *PFN_vkCreateIOSSurfaceMVK)(VkInstance instance, const VkIOSSurfaceCreateInfoMVK* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR VkResult VKAPI_CALL vkCreateIOSSurfaceMVK(- VkInstance instance,- const VkIOSSurfaceCreateInfoMVK* pCreateInfo,- const VkAllocationCallbacks* pAllocator,- VkSurfaceKHR* pSurface);-#endif-#endif /* VK_USE_PLATFORM_IOS_MVK */--#ifdef VK_USE_PLATFORM_MACOS_MVK-#define VK_MVK_macos_surface 1-#define VK_MVK_MACOS_SURFACE_SPEC_VERSION 2-#define VK_MVK_MACOS_SURFACE_EXTENSION_NAME "VK_MVK_macos_surface"--typedef VkFlags VkMacOSSurfaceCreateFlagsMVK;--typedef struct VkMacOSSurfaceCreateInfoMVK {- VkStructureType sType;- const void* pNext;- VkMacOSSurfaceCreateFlagsMVK flags;- const void* pView;-} VkMacOSSurfaceCreateInfoMVK;---typedef VkResult (VKAPI_PTR *PFN_vkCreateMacOSSurfaceMVK)(VkInstance instance, const VkMacOSSurfaceCreateInfoMVK* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR VkResult VKAPI_CALL vkCreateMacOSSurfaceMVK(- VkInstance instance,- const VkMacOSSurfaceCreateInfoMVK* pCreateInfo,- const VkAllocationCallbacks* pAllocator,- VkSurfaceKHR* pSurface);-#endif-#endif /* VK_USE_PLATFORM_MACOS_MVK */--#define VK_EXT_external_memory_dma_buf 1-#define VK_EXT_EXTERNAL_MEMORY_DMA_BUF_SPEC_VERSION 1-#define VK_EXT_EXTERNAL_MEMORY_DMA_BUF_EXTENSION_NAME "VK_EXT_external_memory_dma_buf"---#define VK_EXT_queue_family_foreign 1-#define VK_EXT_QUEUE_FAMILY_FOREIGN_SPEC_VERSION 1-#define VK_EXT_QUEUE_FAMILY_FOREIGN_EXTENSION_NAME "VK_EXT_queue_family_foreign"-#define VK_QUEUE_FAMILY_FOREIGN_EXT (~0U-2)---#define VK_EXT_sampler_filter_minmax 1-#define VK_EXT_SAMPLER_FILTER_MINMAX_SPEC_VERSION 1-#define VK_EXT_SAMPLER_FILTER_MINMAX_EXTENSION_NAME "VK_EXT_sampler_filter_minmax"---typedef enum VkSamplerReductionModeEXT {- VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE_EXT = 0,- VK_SAMPLER_REDUCTION_MODE_MIN_EXT = 1,- VK_SAMPLER_REDUCTION_MODE_MAX_EXT = 2,- VK_SAMPLER_REDUCTION_MODE_BEGIN_RANGE_EXT = VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE_EXT,- VK_SAMPLER_REDUCTION_MODE_END_RANGE_EXT = VK_SAMPLER_REDUCTION_MODE_MAX_EXT,- VK_SAMPLER_REDUCTION_MODE_RANGE_SIZE_EXT = (VK_SAMPLER_REDUCTION_MODE_MAX_EXT - VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE_EXT + 1),- VK_SAMPLER_REDUCTION_MODE_MAX_ENUM_EXT = 0x7FFFFFFF-} VkSamplerReductionModeEXT;--typedef struct VkSamplerReductionModeCreateInfoEXT {- VkStructureType sType;- const void* pNext;- VkSamplerReductionModeEXT reductionMode;-} VkSamplerReductionModeCreateInfoEXT;--typedef struct VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT {- VkStructureType sType;- void* pNext;- VkBool32 filterMinmaxSingleComponentFormats;- VkBool32 filterMinmaxImageComponentMapping;-} VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT;----#define VK_AMD_gpu_shader_int16 1-#define VK_AMD_GPU_SHADER_INT16_SPEC_VERSION 1-#define VK_AMD_GPU_SHADER_INT16_EXTENSION_NAME "VK_AMD_gpu_shader_int16"---#define VK_AMD_mixed_attachment_samples 1-#define VK_AMD_MIXED_ATTACHMENT_SAMPLES_SPEC_VERSION 1-#define VK_AMD_MIXED_ATTACHMENT_SAMPLES_EXTENSION_NAME "VK_AMD_mixed_attachment_samples"---#define VK_AMD_shader_fragment_mask 1-#define VK_AMD_SHADER_FRAGMENT_MASK_SPEC_VERSION 1-#define VK_AMD_SHADER_FRAGMENT_MASK_EXTENSION_NAME "VK_AMD_shader_fragment_mask"---#define VK_EXT_shader_stencil_export 1-#define VK_EXT_SHADER_STENCIL_EXPORT_SPEC_VERSION 1-#define VK_EXT_SHADER_STENCIL_EXPORT_EXTENSION_NAME "VK_EXT_shader_stencil_export"---#define VK_EXT_sample_locations 1-#define VK_EXT_SAMPLE_LOCATIONS_SPEC_VERSION 1-#define VK_EXT_SAMPLE_LOCATIONS_EXTENSION_NAME "VK_EXT_sample_locations"--typedef struct VkSampleLocationEXT {- float x;- float y;-} VkSampleLocationEXT;--typedef struct VkSampleLocationsInfoEXT {- VkStructureType sType;- const void* pNext;- VkSampleCountFlagBits sampleLocationsPerPixel;- VkExtent2D sampleLocationGridSize;- uint32_t sampleLocationsCount;- const VkSampleLocationEXT* pSampleLocations;-} VkSampleLocationsInfoEXT;--typedef struct VkAttachmentSampleLocationsEXT {- uint32_t attachmentIndex;- VkSampleLocationsInfoEXT sampleLocationsInfo;-} VkAttachmentSampleLocationsEXT;--typedef struct VkSubpassSampleLocationsEXT {- uint32_t subpassIndex;- VkSampleLocationsInfoEXT sampleLocationsInfo;-} VkSubpassSampleLocationsEXT;--typedef struct VkRenderPassSampleLocationsBeginInfoEXT {- VkStructureType sType;- const void* pNext;- uint32_t attachmentInitialSampleLocationsCount;- const VkAttachmentSampleLocationsEXT* pAttachmentInitialSampleLocations;- uint32_t postSubpassSampleLocationsCount;- const VkSubpassSampleLocationsEXT* pPostSubpassSampleLocations;-} VkRenderPassSampleLocationsBeginInfoEXT;--typedef struct VkPipelineSampleLocationsStateCreateInfoEXT {- VkStructureType sType;- const void* pNext;- VkBool32 sampleLocationsEnable;- VkSampleLocationsInfoEXT sampleLocationsInfo;-} VkPipelineSampleLocationsStateCreateInfoEXT;--typedef struct VkPhysicalDeviceSampleLocationsPropertiesEXT {- VkStructureType sType;- void* pNext;- VkSampleCountFlags sampleLocationSampleCounts;- VkExtent2D maxSampleLocationGridSize;- float sampleLocationCoordinateRange[2];- uint32_t sampleLocationSubPixelBits;- VkBool32 variableSampleLocations;-} VkPhysicalDeviceSampleLocationsPropertiesEXT;--typedef struct VkMultisamplePropertiesEXT {- VkStructureType sType;- void* pNext;- VkExtent2D maxSampleLocationGridSize;-} VkMultisamplePropertiesEXT;---typedef void (VKAPI_PTR *PFN_vkCmdSetSampleLocationsEXT)(VkCommandBuffer commandBuffer, const VkSampleLocationsInfoEXT* pSampleLocationsInfo);-typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceMultisamplePropertiesEXT)(VkPhysicalDevice physicalDevice, VkSampleCountFlagBits samples, VkMultisamplePropertiesEXT* pMultisampleProperties);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR void VKAPI_CALL vkCmdSetSampleLocationsEXT(- VkCommandBuffer commandBuffer,- const VkSampleLocationsInfoEXT* pSampleLocationsInfo);--VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceMultisamplePropertiesEXT(- VkPhysicalDevice physicalDevice,- VkSampleCountFlagBits samples,- VkMultisamplePropertiesEXT* pMultisampleProperties);-#endif--#define VK_EXT_blend_operation_advanced 1-#define VK_EXT_BLEND_OPERATION_ADVANCED_SPEC_VERSION 2-#define VK_EXT_BLEND_OPERATION_ADVANCED_EXTENSION_NAME "VK_EXT_blend_operation_advanced"---typedef enum VkBlendOverlapEXT {- VK_BLEND_OVERLAP_UNCORRELATED_EXT = 0,- VK_BLEND_OVERLAP_DISJOINT_EXT = 1,- VK_BLEND_OVERLAP_CONJOINT_EXT = 2,- VK_BLEND_OVERLAP_BEGIN_RANGE_EXT = VK_BLEND_OVERLAP_UNCORRELATED_EXT,- VK_BLEND_OVERLAP_END_RANGE_EXT = VK_BLEND_OVERLAP_CONJOINT_EXT,- VK_BLEND_OVERLAP_RANGE_SIZE_EXT = (VK_BLEND_OVERLAP_CONJOINT_EXT - VK_BLEND_OVERLAP_UNCORRELATED_EXT + 1),- VK_BLEND_OVERLAP_MAX_ENUM_EXT = 0x7FFFFFFF-} VkBlendOverlapEXT;--typedef struct VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT {- VkStructureType sType;- void* pNext;- VkBool32 advancedBlendCoherentOperations;-} VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT;--typedef struct VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT {- VkStructureType sType;- void* pNext;- uint32_t advancedBlendMaxColorAttachments;- VkBool32 advancedBlendIndependentBlend;- VkBool32 advancedBlendNonPremultipliedSrcColor;- VkBool32 advancedBlendNonPremultipliedDstColor;- VkBool32 advancedBlendCorrelatedOverlap;- VkBool32 advancedBlendAllOperations;-} VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT;--typedef struct VkPipelineColorBlendAdvancedStateCreateInfoEXT {- VkStructureType sType;- const void* pNext;- VkBool32 srcPremultiplied;- VkBool32 dstPremultiplied;- VkBlendOverlapEXT blendOverlap;-} VkPipelineColorBlendAdvancedStateCreateInfoEXT;----#define VK_NV_fragment_coverage_to_color 1-#define VK_NV_FRAGMENT_COVERAGE_TO_COLOR_SPEC_VERSION 1-#define VK_NV_FRAGMENT_COVERAGE_TO_COLOR_EXTENSION_NAME "VK_NV_fragment_coverage_to_color"--typedef VkFlags VkPipelineCoverageToColorStateCreateFlagsNV;--typedef struct VkPipelineCoverageToColorStateCreateInfoNV {- VkStructureType sType;- const void* pNext;- VkPipelineCoverageToColorStateCreateFlagsNV flags;- VkBool32 coverageToColorEnable;- uint32_t coverageToColorLocation;-} VkPipelineCoverageToColorStateCreateInfoNV;----#define VK_NV_framebuffer_mixed_samples 1-#define VK_NV_FRAMEBUFFER_MIXED_SAMPLES_SPEC_VERSION 1-#define VK_NV_FRAMEBUFFER_MIXED_SAMPLES_EXTENSION_NAME "VK_NV_framebuffer_mixed_samples"---typedef enum VkCoverageModulationModeNV {- VK_COVERAGE_MODULATION_MODE_NONE_NV = 0,- VK_COVERAGE_MODULATION_MODE_RGB_NV = 1,- VK_COVERAGE_MODULATION_MODE_ALPHA_NV = 2,- VK_COVERAGE_MODULATION_MODE_RGBA_NV = 3,- VK_COVERAGE_MODULATION_MODE_BEGIN_RANGE_NV = VK_COVERAGE_MODULATION_MODE_NONE_NV,- VK_COVERAGE_MODULATION_MODE_END_RANGE_NV = VK_COVERAGE_MODULATION_MODE_RGBA_NV,- VK_COVERAGE_MODULATION_MODE_RANGE_SIZE_NV = (VK_COVERAGE_MODULATION_MODE_RGBA_NV - VK_COVERAGE_MODULATION_MODE_NONE_NV + 1),- VK_COVERAGE_MODULATION_MODE_MAX_ENUM_NV = 0x7FFFFFFF-} VkCoverageModulationModeNV;--typedef VkFlags VkPipelineCoverageModulationStateCreateFlagsNV;--typedef struct VkPipelineCoverageModulationStateCreateInfoNV {- VkStructureType sType;- const void* pNext;- VkPipelineCoverageModulationStateCreateFlagsNV flags;- VkCoverageModulationModeNV coverageModulationMode;- VkBool32 coverageModulationTableEnable;- uint32_t coverageModulationTableCount;- const float* pCoverageModulationTable;-} VkPipelineCoverageModulationStateCreateInfoNV;----#define VK_NV_fill_rectangle 1-#define VK_NV_FILL_RECTANGLE_SPEC_VERSION 1-#define VK_NV_FILL_RECTANGLE_EXTENSION_NAME "VK_NV_fill_rectangle"---#define VK_EXT_post_depth_coverage 1-#define VK_EXT_POST_DEPTH_COVERAGE_SPEC_VERSION 1-#define VK_EXT_POST_DEPTH_COVERAGE_EXTENSION_NAME "VK_EXT_post_depth_coverage"---#define VK_EXT_validation_cache 1-VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkValidationCacheEXT)--#define VK_EXT_VALIDATION_CACHE_SPEC_VERSION 1-#define VK_EXT_VALIDATION_CACHE_EXTENSION_NAME "VK_EXT_validation_cache"-#define VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT---typedef enum VkValidationCacheHeaderVersionEXT {- VK_VALIDATION_CACHE_HEADER_VERSION_ONE_EXT = 1,- VK_VALIDATION_CACHE_HEADER_VERSION_BEGIN_RANGE_EXT = VK_VALIDATION_CACHE_HEADER_VERSION_ONE_EXT,- VK_VALIDATION_CACHE_HEADER_VERSION_END_RANGE_EXT = VK_VALIDATION_CACHE_HEADER_VERSION_ONE_EXT,- VK_VALIDATION_CACHE_HEADER_VERSION_RANGE_SIZE_EXT = (VK_VALIDATION_CACHE_HEADER_VERSION_ONE_EXT - VK_VALIDATION_CACHE_HEADER_VERSION_ONE_EXT + 1),- VK_VALIDATION_CACHE_HEADER_VERSION_MAX_ENUM_EXT = 0x7FFFFFFF-} VkValidationCacheHeaderVersionEXT;--typedef VkFlags VkValidationCacheCreateFlagsEXT;--typedef struct VkValidationCacheCreateInfoEXT {- VkStructureType sType;- const void* pNext;- VkValidationCacheCreateFlagsEXT flags;- size_t initialDataSize;- const void* pInitialData;-} VkValidationCacheCreateInfoEXT;--typedef struct VkShaderModuleValidationCacheCreateInfoEXT {- VkStructureType sType;- const void* pNext;- VkValidationCacheEXT validationCache;-} VkShaderModuleValidationCacheCreateInfoEXT;---typedef VkResult (VKAPI_PTR *PFN_vkCreateValidationCacheEXT)(VkDevice device, const VkValidationCacheCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkValidationCacheEXT* pValidationCache);-typedef void (VKAPI_PTR *PFN_vkDestroyValidationCacheEXT)(VkDevice device, VkValidationCacheEXT validationCache, const VkAllocationCallbacks* pAllocator);-typedef VkResult (VKAPI_PTR *PFN_vkMergeValidationCachesEXT)(VkDevice device, VkValidationCacheEXT dstCache, uint32_t srcCacheCount, const VkValidationCacheEXT* pSrcCaches);-typedef VkResult (VKAPI_PTR *PFN_vkGetValidationCacheDataEXT)(VkDevice device, VkValidationCacheEXT validationCache, size_t* pDataSize, void* pData);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR VkResult VKAPI_CALL vkCreateValidationCacheEXT(- VkDevice device,- const VkValidationCacheCreateInfoEXT* pCreateInfo,- const VkAllocationCallbacks* pAllocator,- VkValidationCacheEXT* pValidationCache);--VKAPI_ATTR void VKAPI_CALL vkDestroyValidationCacheEXT(- VkDevice device,- VkValidationCacheEXT validationCache,- const VkAllocationCallbacks* pAllocator);--VKAPI_ATTR VkResult VKAPI_CALL vkMergeValidationCachesEXT(- VkDevice device,- VkValidationCacheEXT dstCache,- uint32_t srcCacheCount,- const VkValidationCacheEXT* pSrcCaches);--VKAPI_ATTR VkResult VKAPI_CALL vkGetValidationCacheDataEXT(- VkDevice device,- VkValidationCacheEXT validationCache,- size_t* pDataSize,- void* pData);-#endif--#define VK_EXT_shader_viewport_index_layer 1-#define VK_EXT_SHADER_VIEWPORT_INDEX_LAYER_SPEC_VERSION 1-#define VK_EXT_SHADER_VIEWPORT_INDEX_LAYER_EXTENSION_NAME "VK_EXT_shader_viewport_index_layer"---#define VK_EXT_global_priority 1-#define VK_EXT_GLOBAL_PRIORITY_SPEC_VERSION 2-#define VK_EXT_GLOBAL_PRIORITY_EXTENSION_NAME "VK_EXT_global_priority"---typedef enum VkQueueGlobalPriorityEXT {- VK_QUEUE_GLOBAL_PRIORITY_LOW_EXT = 128,- VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_EXT = 256,- VK_QUEUE_GLOBAL_PRIORITY_HIGH_EXT = 512,- VK_QUEUE_GLOBAL_PRIORITY_REALTIME_EXT = 1024,- VK_QUEUE_GLOBAL_PRIORITY_BEGIN_RANGE_EXT = VK_QUEUE_GLOBAL_PRIORITY_LOW_EXT,- VK_QUEUE_GLOBAL_PRIORITY_END_RANGE_EXT = VK_QUEUE_GLOBAL_PRIORITY_REALTIME_EXT,- VK_QUEUE_GLOBAL_PRIORITY_RANGE_SIZE_EXT = (VK_QUEUE_GLOBAL_PRIORITY_REALTIME_EXT - VK_QUEUE_GLOBAL_PRIORITY_LOW_EXT + 1),- VK_QUEUE_GLOBAL_PRIORITY_MAX_ENUM_EXT = 0x7FFFFFFF-} VkQueueGlobalPriorityEXT;--typedef struct VkDeviceQueueGlobalPriorityCreateInfoEXT {- VkStructureType sType;- const void* pNext;- VkQueueGlobalPriorityEXT globalPriority;-} VkDeviceQueueGlobalPriorityCreateInfoEXT;----#define VK_EXT_external_memory_host 1-#define VK_EXT_EXTERNAL_MEMORY_HOST_SPEC_VERSION 1-#define VK_EXT_EXTERNAL_MEMORY_HOST_EXTENSION_NAME "VK_EXT_external_memory_host"--typedef struct VkImportMemoryHostPointerInfoEXT {- VkStructureType sType;- const void* pNext;- VkExternalMemoryHandleTypeFlagBitsKHR handleType;- void* pHostPointer;-} VkImportMemoryHostPointerInfoEXT;--typedef struct VkMemoryHostPointerPropertiesEXT {- VkStructureType sType;- void* pNext;- uint32_t memoryTypeBits;-} VkMemoryHostPointerPropertiesEXT;--typedef struct VkPhysicalDeviceExternalMemoryHostPropertiesEXT {- VkStructureType sType;- void* pNext;- VkDeviceSize minImportedHostPointerAlignment;-} VkPhysicalDeviceExternalMemoryHostPropertiesEXT;---typedef VkResult (VKAPI_PTR *PFN_vkGetMemoryHostPointerPropertiesEXT)(VkDevice device, VkExternalMemoryHandleTypeFlagBitsKHR handleType, const void* pHostPointer, VkMemoryHostPointerPropertiesEXT* pMemoryHostPointerProperties);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryHostPointerPropertiesEXT(- VkDevice device,- VkExternalMemoryHandleTypeFlagBitsKHR handleType,- const void* pHostPointer,- VkMemoryHostPointerPropertiesEXT* pMemoryHostPointerProperties);-#endif--#define VK_AMD_buffer_marker 1-#define VK_AMD_BUFFER_MARKER_SPEC_VERSION 1-#define VK_AMD_BUFFER_MARKER_EXTENSION_NAME "VK_AMD_buffer_marker"--typedef void (VKAPI_PTR *PFN_vkCmdWriteBufferMarkerAMD)(VkCommandBuffer commandBuffer, VkPipelineStageFlagBits pipelineStage, VkBuffer dstBuffer, VkDeviceSize dstOffset, uint32_t marker);--#ifndef VK_NO_PROTOTYPES-VKAPI_ATTR void VKAPI_CALL vkCmdWriteBufferMarkerAMD(- VkCommandBuffer commandBuffer,- VkPipelineStageFlagBits pipelineStage,- VkBuffer dstBuffer,- VkDeviceSize dstOffset,- uint32_t marker);-#endif--#ifdef __cplusplus-}-#endif--#endif+/*+** Copyright (c) 2015-2018 The Khronos Group Inc.+**+** Licensed under the Apache License, Version 2.0 (the "License");+** you may not use this file except in compliance with the License.+** You may obtain a copy of the License at+**+** http://www.apache.org/licenses/LICENSE-2.0+**+** Unless required by applicable law or agreed to in writing, software+** distributed under the License is distributed on an "AS IS" BASIS,+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.+** See the License for the specific language governing permissions and+** limitations under the License.+*/++#include "vk_platform.h"+#include "vulkan_core.h"++#ifdef VK_USE_PLATFORM_ANDROID_KHR+#include "vulkan_android.h"+#endif+++#ifdef VK_USE_PLATFORM_IOS_MVK+#include "vulkan_ios.h"+#endif+++#ifdef VK_USE_PLATFORM_MACOS_MVK+#include "vulkan_macos.h"+#endif+++#ifdef VK_USE_PLATFORM_MIR_KHR+#include <mir_toolkit/client_types.h>+#include "vulkan_mir.h"+#endif+++#ifdef VK_USE_PLATFORM_VI_NN+#include "vulkan_vi.h"+#endif+++#ifdef VK_USE_PLATFORM_WAYLAND_KHR+#include <wayland-client.h>+#include "vulkan_wayland.h"+#endif+++#ifdef VK_USE_PLATFORM_WIN32_KHR+#include <windows.h>+#include "vulkan_win32.h"+#endif+++#ifdef VK_USE_PLATFORM_XCB_KHR+#include <xcb/xcb.h>+#include "vulkan_xcb.h"+#endif+++#ifdef VK_USE_PLATFORM_XLIB_KHR+#include <X11/Xlib.h>+#include "vulkan_xlib.h"+#endif+++#ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT+#include <X11/Xlib.h>+#include <X11/extensions/Xrandr.h>+#include "vulkan_xlib_xrandr.h"+#endif++#endif // VULKAN_H_
@@ -0,0 +1,126 @@+#ifndef VULKAN_ANDROID_H_+#define VULKAN_ANDROID_H_ 1++#ifdef __cplusplus+extern "C" {+#endif++/*+** Copyright (c) 2015-2018 The Khronos Group Inc.+**+** Licensed under the Apache License, Version 2.0 (the "License");+** you may not use this file except in compliance with the License.+** You may obtain a copy of the License at+**+** http://www.apache.org/licenses/LICENSE-2.0+**+** Unless required by applicable law or agreed to in writing, software+** distributed under the License is distributed on an "AS IS" BASIS,+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.+** See the License for the specific language governing permissions and+** limitations under the License.+*/++/*+** This header is generated from the Khronos Vulkan XML API Registry.+**+*/+++#define VK_KHR_android_surface 1+struct ANativeWindow;++#define VK_KHR_ANDROID_SURFACE_SPEC_VERSION 6+#define VK_KHR_ANDROID_SURFACE_EXTENSION_NAME "VK_KHR_android_surface"++typedef VkFlags VkAndroidSurfaceCreateFlagsKHR;++typedef struct VkAndroidSurfaceCreateInfoKHR {+ VkStructureType sType;+ const void* pNext;+ VkAndroidSurfaceCreateFlagsKHR flags;+ struct ANativeWindow* window;+} VkAndroidSurfaceCreateInfoKHR;+++typedef VkResult (VKAPI_PTR *PFN_vkCreateAndroidSurfaceKHR)(VkInstance instance, const VkAndroidSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR VkResult VKAPI_CALL vkCreateAndroidSurfaceKHR(+ VkInstance instance,+ const VkAndroidSurfaceCreateInfoKHR* pCreateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkSurfaceKHR* pSurface);+#endif++#define VK_ANDROID_external_memory_android_hardware_buffer 1+struct AHardwareBuffer;++#define VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_SPEC_VERSION 3+#define VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_EXTENSION_NAME "VK_ANDROID_external_memory_android_hardware_buffer"++typedef struct VkAndroidHardwareBufferUsageANDROID {+ VkStructureType sType;+ void* pNext;+ uint64_t androidHardwareBufferUsage;+} VkAndroidHardwareBufferUsageANDROID;++typedef struct VkAndroidHardwareBufferPropertiesANDROID {+ VkStructureType sType;+ void* pNext;+ VkDeviceSize allocationSize;+ uint32_t memoryTypeBits;+} VkAndroidHardwareBufferPropertiesANDROID;++typedef struct VkAndroidHardwareBufferFormatPropertiesANDROID {+ VkStructureType sType;+ void* pNext;+ VkFormat format;+ uint64_t externalFormat;+ VkFormatFeatureFlags formatFeatures;+ VkComponentMapping samplerYcbcrConversionComponents;+ VkSamplerYcbcrModelConversion suggestedYcbcrModel;+ VkSamplerYcbcrRange suggestedYcbcrRange;+ VkChromaLocation suggestedXChromaOffset;+ VkChromaLocation suggestedYChromaOffset;+} VkAndroidHardwareBufferFormatPropertiesANDROID;++typedef struct VkImportAndroidHardwareBufferInfoANDROID {+ VkStructureType sType;+ const void* pNext;+ struct AHardwareBuffer* buffer;+} VkImportAndroidHardwareBufferInfoANDROID;++typedef struct VkMemoryGetAndroidHardwareBufferInfoANDROID {+ VkStructureType sType;+ const void* pNext;+ VkDeviceMemory memory;+} VkMemoryGetAndroidHardwareBufferInfoANDROID;++typedef struct VkExternalFormatANDROID {+ VkStructureType sType;+ void* pNext;+ uint64_t externalFormat;+} VkExternalFormatANDROID;+++typedef VkResult (VKAPI_PTR *PFN_vkGetAndroidHardwareBufferPropertiesANDROID)(VkDevice device, const struct AHardwareBuffer* buffer, VkAndroidHardwareBufferPropertiesANDROID* pProperties);+typedef VkResult (VKAPI_PTR *PFN_vkGetMemoryAndroidHardwareBufferANDROID)(VkDevice device, const VkMemoryGetAndroidHardwareBufferInfoANDROID* pInfo, struct AHardwareBuffer** pBuffer);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR VkResult VKAPI_CALL vkGetAndroidHardwareBufferPropertiesANDROID(+ VkDevice device,+ const struct AHardwareBuffer* buffer,+ VkAndroidHardwareBufferPropertiesANDROID* pProperties);++VKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryAndroidHardwareBufferANDROID(+ VkDevice device,+ const VkMemoryGetAndroidHardwareBufferInfoANDROID* pInfo,+ struct AHardwareBuffer** pBuffer);+#endif++#ifdef __cplusplus+}+#endif++#endif
@@ -0,0 +1,7341 @@+#ifndef VULKAN_CORE_H_+#define VULKAN_CORE_H_ 1++#ifdef __cplusplus+extern "C" {+#endif++/*+** Copyright (c) 2015-2018 The Khronos Group Inc.+**+** Licensed under the Apache License, Version 2.0 (the "License");+** you may not use this file except in compliance with the License.+** You may obtain a copy of the License at+**+** http://www.apache.org/licenses/LICENSE-2.0+**+** Unless required by applicable law or agreed to in writing, software+** distributed under the License is distributed on an "AS IS" BASIS,+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.+** See the License for the specific language governing permissions and+** limitations under the License.+*/++/*+** This header is generated from the Khronos Vulkan XML API Registry.+**+*/+++#define VK_VERSION_1_0 1+#include "vk_platform.h"++#define VK_MAKE_VERSION(major, minor, patch) \+ (((major) << 22) | ((minor) << 12) | (patch))++// DEPRECATED: This define has been removed. Specific version defines (e.g. VK_API_VERSION_1_0), or the VK_MAKE_VERSION macro, should be used instead.+//#define VK_API_VERSION VK_MAKE_VERSION(1, 0, 0) // Patch version should always be set to 0++// Vulkan 1.0 version number+#define VK_API_VERSION_1_0 VK_MAKE_VERSION(1, 0, 0)// Patch version should always be set to 0++#define VK_VERSION_MAJOR(version) ((uint32_t)(version) >> 22)+#define VK_VERSION_MINOR(version) (((uint32_t)(version) >> 12) & 0x3ff)+#define VK_VERSION_PATCH(version) ((uint32_t)(version) & 0xfff)+// Version of this file+#define VK_HEADER_VERSION 71+++#define VK_NULL_HANDLE 0+ +++#define VK_DEFINE_HANDLE(object) typedef struct object##_T* object;+++#if !defined(VK_DEFINE_NON_DISPATCHABLE_HANDLE)+#if defined(__LP64__) || defined(_WIN64) || (defined(__x86_64__) && !defined(__ILP32__) ) || defined(_M_X64) || defined(__ia64) || defined (_M_IA64) || defined(__aarch64__) || defined(__powerpc64__)+ #define VK_DEFINE_NON_DISPATCHABLE_HANDLE(object) typedef struct object##_T *object;+#else+ #define VK_DEFINE_NON_DISPATCHABLE_HANDLE(object) typedef uint64_t object;+#endif+#endif+ +++typedef uint32_t VkFlags;+typedef uint32_t VkBool32;+typedef uint64_t VkDeviceSize;+typedef uint32_t VkSampleMask;++VK_DEFINE_HANDLE(VkInstance)+VK_DEFINE_HANDLE(VkPhysicalDevice)+VK_DEFINE_HANDLE(VkDevice)+VK_DEFINE_HANDLE(VkQueue)+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSemaphore)+VK_DEFINE_HANDLE(VkCommandBuffer)+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkFence)+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDeviceMemory)+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkBuffer)+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkImage)+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkEvent)+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkQueryPool)+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkBufferView)+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkImageView)+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkShaderModule)+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkPipelineCache)+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkPipelineLayout)+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkRenderPass)+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkPipeline)+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDescriptorSetLayout)+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSampler)+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDescriptorPool)+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDescriptorSet)+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkFramebuffer)+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkCommandPool)++#define VK_LOD_CLAMP_NONE 1000.0f+#define VK_REMAINING_MIP_LEVELS (~0U)+#define VK_REMAINING_ARRAY_LAYERS (~0U)+#define VK_WHOLE_SIZE (~0ULL)+#define VK_ATTACHMENT_UNUSED (~0U)+#define VK_TRUE 1+#define VK_FALSE 0+#define VK_QUEUE_FAMILY_IGNORED (~0U)+#define VK_SUBPASS_EXTERNAL (~0U)+#define VK_MAX_PHYSICAL_DEVICE_NAME_SIZE 256+#define VK_UUID_SIZE 16+#define VK_MAX_MEMORY_TYPES 32+#define VK_MAX_MEMORY_HEAPS 16+#define VK_MAX_EXTENSION_NAME_SIZE 256+#define VK_MAX_DESCRIPTION_SIZE 256+++typedef enum VkPipelineCacheHeaderVersion {+ VK_PIPELINE_CACHE_HEADER_VERSION_ONE = 1,+ VK_PIPELINE_CACHE_HEADER_VERSION_BEGIN_RANGE = VK_PIPELINE_CACHE_HEADER_VERSION_ONE,+ VK_PIPELINE_CACHE_HEADER_VERSION_END_RANGE = VK_PIPELINE_CACHE_HEADER_VERSION_ONE,+ VK_PIPELINE_CACHE_HEADER_VERSION_RANGE_SIZE = (VK_PIPELINE_CACHE_HEADER_VERSION_ONE - VK_PIPELINE_CACHE_HEADER_VERSION_ONE + 1),+ VK_PIPELINE_CACHE_HEADER_VERSION_MAX_ENUM = 0x7FFFFFFF+} VkPipelineCacheHeaderVersion;++typedef enum VkResult {+ VK_SUCCESS = 0,+ VK_NOT_READY = 1,+ VK_TIMEOUT = 2,+ VK_EVENT_SET = 3,+ VK_EVENT_RESET = 4,+ VK_INCOMPLETE = 5,+ VK_ERROR_OUT_OF_HOST_MEMORY = -1,+ VK_ERROR_OUT_OF_DEVICE_MEMORY = -2,+ VK_ERROR_INITIALIZATION_FAILED = -3,+ VK_ERROR_DEVICE_LOST = -4,+ VK_ERROR_MEMORY_MAP_FAILED = -5,+ VK_ERROR_LAYER_NOT_PRESENT = -6,+ VK_ERROR_EXTENSION_NOT_PRESENT = -7,+ VK_ERROR_FEATURE_NOT_PRESENT = -8,+ VK_ERROR_INCOMPATIBLE_DRIVER = -9,+ VK_ERROR_TOO_MANY_OBJECTS = -10,+ VK_ERROR_FORMAT_NOT_SUPPORTED = -11,+ VK_ERROR_FRAGMENTED_POOL = -12,+ VK_ERROR_OUT_OF_POOL_MEMORY = -1000069000,+ VK_ERROR_INVALID_EXTERNAL_HANDLE = -1000072003,+ VK_ERROR_SURFACE_LOST_KHR = -1000000000,+ VK_ERROR_NATIVE_WINDOW_IN_USE_KHR = -1000000001,+ VK_SUBOPTIMAL_KHR = 1000001003,+ VK_ERROR_OUT_OF_DATE_KHR = -1000001004,+ VK_ERROR_INCOMPATIBLE_DISPLAY_KHR = -1000003001,+ VK_ERROR_VALIDATION_FAILED_EXT = -1000011001,+ VK_ERROR_INVALID_SHADER_NV = -1000012000,+ VK_ERROR_NOT_PERMITTED_EXT = -1000174001,+ VK_ERROR_OUT_OF_POOL_MEMORY_KHR = VK_ERROR_OUT_OF_POOL_MEMORY,+ VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR = VK_ERROR_INVALID_EXTERNAL_HANDLE,+ VK_RESULT_BEGIN_RANGE = VK_ERROR_FRAGMENTED_POOL,+ VK_RESULT_END_RANGE = VK_INCOMPLETE,+ VK_RESULT_RANGE_SIZE = (VK_INCOMPLETE - VK_ERROR_FRAGMENTED_POOL + 1),+ VK_RESULT_MAX_ENUM = 0x7FFFFFFF+} VkResult;++typedef enum VkStructureType {+ VK_STRUCTURE_TYPE_APPLICATION_INFO = 0,+ VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO = 1,+ VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO = 2,+ VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO = 3,+ VK_STRUCTURE_TYPE_SUBMIT_INFO = 4,+ VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO = 5,+ VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE = 6,+ VK_STRUCTURE_TYPE_BIND_SPARSE_INFO = 7,+ VK_STRUCTURE_TYPE_FENCE_CREATE_INFO = 8,+ VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO = 9,+ VK_STRUCTURE_TYPE_EVENT_CREATE_INFO = 10,+ VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO = 11,+ VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO = 12,+ VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO = 13,+ VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO = 14,+ VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO = 15,+ VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO = 16,+ VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO = 17,+ VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO = 18,+ VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO = 19,+ VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO = 20,+ VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO = 21,+ VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO = 22,+ VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO = 23,+ VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO = 24,+ VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO = 25,+ VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO = 26,+ VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO = 27,+ VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO = 28,+ VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO = 29,+ VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO = 30,+ VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO = 31,+ VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO = 32,+ VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO = 33,+ VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO = 34,+ VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET = 35,+ VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET = 36,+ VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO = 37,+ VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO = 38,+ VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO = 39,+ VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO = 40,+ VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO = 41,+ VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO = 42,+ VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO = 43,+ VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER = 44,+ VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER = 45,+ VK_STRUCTURE_TYPE_MEMORY_BARRIER = 46,+ VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO = 47,+ VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO = 48,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES = 1000094000,+ VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO = 1000157000,+ VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO = 1000157001,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES = 1000083000,+ VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS = 1000127000,+ VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO = 1000127001,+ VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO = 1000060000,+ VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO = 1000060003,+ VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO = 1000060004,+ VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO = 1000060005,+ VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO = 1000060006,+ VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO = 1000060013,+ VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO = 1000060014,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES = 1000070000,+ VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO = 1000070001,+ VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 = 1000146000,+ VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 = 1000146001,+ VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 = 1000146002,+ VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 = 1000146003,+ VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 = 1000146004,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 = 1000059000,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 = 1000059001,+ VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2 = 1000059002,+ VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 = 1000059003,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 = 1000059004,+ VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 = 1000059005,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 = 1000059006,+ VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 = 1000059007,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 = 1000059008,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES = 1000117000,+ VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO = 1000117001,+ VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO = 1000117002,+ VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO = 1000117003,+ VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO = 1000053000,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES = 1000053001,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES = 1000053002,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES = 1000120000,+ VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO = 1000145000,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES = 1000145001,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES = 1000145002,+ VK_STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 = 1000145003,+ VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO = 1000156000,+ VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO = 1000156001,+ VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO = 1000156002,+ VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO = 1000156003,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES = 1000156004,+ VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES = 1000156005,+ VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO = 1000085000,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO = 1000071000,+ VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES = 1000071001,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO = 1000071002,+ VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES = 1000071003,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES = 1000071004,+ VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO = 1000072000,+ VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO = 1000072001,+ VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO = 1000072002,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO = 1000112000,+ VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES = 1000112001,+ VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO = 1000113000,+ VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO = 1000077000,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO = 1000076000,+ VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES = 1000076001,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES = 1000168000,+ VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT = 1000168001,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURES = 1000063000,+ VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR = 1000001000,+ VK_STRUCTURE_TYPE_PRESENT_INFO_KHR = 1000001001,+ VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR = 1000060007,+ VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR = 1000060008,+ VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR = 1000060009,+ VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR = 1000060010,+ VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR = 1000060011,+ VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR = 1000060012,+ VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR = 1000002000,+ VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR = 1000002001,+ VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR = 1000003000,+ VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR = 1000004000,+ VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR = 1000005000,+ VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR = 1000006000,+ VK_STRUCTURE_TYPE_MIR_SURFACE_CREATE_INFO_KHR = 1000007000,+ VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR = 1000008000,+ VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR = 1000009000,+ VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT = 1000011000,+ VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD = 1000018000,+ VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT = 1000022000,+ VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT = 1000022001,+ VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT = 1000022002,+ VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV = 1000026000,+ VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV = 1000026001,+ VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV = 1000026002,+ VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD = 1000041000,+ VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV = 1000056000,+ VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV = 1000056001,+ VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV = 1000057000,+ VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV = 1000057001,+ VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV = 1000058000,+ VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT = 1000061000,+ VK_STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN = 1000062000,+ VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR = 1000073000,+ VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR = 1000073001,+ VK_STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR = 1000073002,+ VK_STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR = 1000073003,+ VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR = 1000074000,+ VK_STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR = 1000074001,+ VK_STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR = 1000074002,+ VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR = 1000075000,+ VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR = 1000078000,+ VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR = 1000078001,+ VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR = 1000078002,+ VK_STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR = 1000078003,+ VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR = 1000079000,+ VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR = 1000079001,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR = 1000080000,+ VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR = 1000084000,+ VK_STRUCTURE_TYPE_OBJECT_TABLE_CREATE_INFO_NVX = 1000086000,+ VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NVX = 1000086001,+ VK_STRUCTURE_TYPE_CMD_PROCESS_COMMANDS_INFO_NVX = 1000086002,+ VK_STRUCTURE_TYPE_CMD_RESERVE_SPACE_FOR_COMMANDS_INFO_NVX = 1000086003,+ VK_STRUCTURE_TYPE_DEVICE_GENERATED_COMMANDS_LIMITS_NVX = 1000086004,+ VK_STRUCTURE_TYPE_DEVICE_GENERATED_COMMANDS_FEATURES_NVX = 1000086005,+ VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV = 1000087000,+ VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT = 1000090000,+ VK_STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT = 1000091000,+ VK_STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT = 1000091001,+ VK_STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT = 1000091002,+ VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT = 1000091003,+ VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE = 1000092000,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX = 1000097000,+ VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV = 1000098000,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT = 1000099000,+ VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT = 1000099001,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT = 1000101000,+ VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT = 1000101001,+ VK_STRUCTURE_TYPE_HDR_METADATA_EXT = 1000105000,+ VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR = 1000111000,+ VK_STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR = 1000114000,+ VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR = 1000114001,+ VK_STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR = 1000114002,+ VK_STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR = 1000115000,+ VK_STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR = 1000115001,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR = 1000119000,+ VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR = 1000119001,+ VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR = 1000119002,+ VK_STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK = 1000122000,+ VK_STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK = 1000123000,+ VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT = 1000128000,+ VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT = 1000128001,+ VK_STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT = 1000128002,+ VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT = 1000128003,+ VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT = 1000128004,+ VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID = 1000129000,+ VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID = 1000129001,+ VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID = 1000129002,+ VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID = 1000129003,+ VK_STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID = 1000129004,+ VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID = 1000129005,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES_EXT = 1000130000,+ VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO_EXT = 1000130001,+ VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT = 1000143000,+ VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT = 1000143001,+ VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT = 1000143002,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT = 1000143003,+ VK_STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT = 1000143004,+ VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO_KHR = 1000147000,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT = 1000148000,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT = 1000148001,+ VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT = 1000148002,+ VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV = 1000149000,+ VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV = 1000152000,+ VK_STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT = 1000160000,+ VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT = 1000160001,+ VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT = 1000174000,+ VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT = 1000178000,+ VK_STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT = 1000178001,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT = 1000178002,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT = 1000190000,+ VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT = 1000190001,+ VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2,+ VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2_KHR = VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2,+ VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2_KHR = VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2,+ VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2_KHR = VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2,+ VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2_KHR = VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2,+ VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO_KHR = VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO,+ VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO_KHR = VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO,+ VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO_KHR = VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO,+ VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO_KHR = VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO,+ VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO_KHR = VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO,+ VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO_KHR = VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO,+ VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO_KHR = VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES,+ VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO,+ VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES_KHR = VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO,+ VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES_KHR = VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES,+ VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO,+ VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO,+ VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_KHR = VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO,+ VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES_KHR = VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES,+ VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES,+ VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO,+ VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES_KHR = VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES,+ VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES,+ VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO,+ VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO,+ VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES,+ VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS_KHR = VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS,+ VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO_KHR = VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO,+ VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2_KHR = VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2,+ VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2_KHR = VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2,+ VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2_KHR = VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2,+ VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2_KHR = VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2,+ VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2_KHR = VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2,+ VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO,+ VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO_KHR = VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO,+ VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO_KHR = VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO,+ VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO_KHR = VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES,+ VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES_KHR = VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES,+ VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO_KHR = VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO,+ VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO_KHR = VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO,+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES,+ VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT_KHR = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT,+ VK_STRUCTURE_TYPE_BEGIN_RANGE = VK_STRUCTURE_TYPE_APPLICATION_INFO,+ VK_STRUCTURE_TYPE_END_RANGE = VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO,+ VK_STRUCTURE_TYPE_RANGE_SIZE = (VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO - VK_STRUCTURE_TYPE_APPLICATION_INFO + 1),+ VK_STRUCTURE_TYPE_MAX_ENUM = 0x7FFFFFFF+} VkStructureType;++typedef enum VkSystemAllocationScope {+ VK_SYSTEM_ALLOCATION_SCOPE_COMMAND = 0,+ VK_SYSTEM_ALLOCATION_SCOPE_OBJECT = 1,+ VK_SYSTEM_ALLOCATION_SCOPE_CACHE = 2,+ VK_SYSTEM_ALLOCATION_SCOPE_DEVICE = 3,+ VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE = 4,+ VK_SYSTEM_ALLOCATION_SCOPE_BEGIN_RANGE = VK_SYSTEM_ALLOCATION_SCOPE_COMMAND,+ VK_SYSTEM_ALLOCATION_SCOPE_END_RANGE = VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE,+ VK_SYSTEM_ALLOCATION_SCOPE_RANGE_SIZE = (VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE - VK_SYSTEM_ALLOCATION_SCOPE_COMMAND + 1),+ VK_SYSTEM_ALLOCATION_SCOPE_MAX_ENUM = 0x7FFFFFFF+} VkSystemAllocationScope;++typedef enum VkInternalAllocationType {+ VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE = 0,+ VK_INTERNAL_ALLOCATION_TYPE_BEGIN_RANGE = VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE,+ VK_INTERNAL_ALLOCATION_TYPE_END_RANGE = VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE,+ VK_INTERNAL_ALLOCATION_TYPE_RANGE_SIZE = (VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE - VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE + 1),+ VK_INTERNAL_ALLOCATION_TYPE_MAX_ENUM = 0x7FFFFFFF+} VkInternalAllocationType;++typedef enum VkFormat {+ VK_FORMAT_UNDEFINED = 0,+ VK_FORMAT_R4G4_UNORM_PACK8 = 1,+ VK_FORMAT_R4G4B4A4_UNORM_PACK16 = 2,+ VK_FORMAT_B4G4R4A4_UNORM_PACK16 = 3,+ VK_FORMAT_R5G6B5_UNORM_PACK16 = 4,+ VK_FORMAT_B5G6R5_UNORM_PACK16 = 5,+ VK_FORMAT_R5G5B5A1_UNORM_PACK16 = 6,+ VK_FORMAT_B5G5R5A1_UNORM_PACK16 = 7,+ VK_FORMAT_A1R5G5B5_UNORM_PACK16 = 8,+ VK_FORMAT_R8_UNORM = 9,+ VK_FORMAT_R8_SNORM = 10,+ VK_FORMAT_R8_USCALED = 11,+ VK_FORMAT_R8_SSCALED = 12,+ VK_FORMAT_R8_UINT = 13,+ VK_FORMAT_R8_SINT = 14,+ VK_FORMAT_R8_SRGB = 15,+ VK_FORMAT_R8G8_UNORM = 16,+ VK_FORMAT_R8G8_SNORM = 17,+ VK_FORMAT_R8G8_USCALED = 18,+ VK_FORMAT_R8G8_SSCALED = 19,+ VK_FORMAT_R8G8_UINT = 20,+ VK_FORMAT_R8G8_SINT = 21,+ VK_FORMAT_R8G8_SRGB = 22,+ VK_FORMAT_R8G8B8_UNORM = 23,+ VK_FORMAT_R8G8B8_SNORM = 24,+ VK_FORMAT_R8G8B8_USCALED = 25,+ VK_FORMAT_R8G8B8_SSCALED = 26,+ VK_FORMAT_R8G8B8_UINT = 27,+ VK_FORMAT_R8G8B8_SINT = 28,+ VK_FORMAT_R8G8B8_SRGB = 29,+ VK_FORMAT_B8G8R8_UNORM = 30,+ VK_FORMAT_B8G8R8_SNORM = 31,+ VK_FORMAT_B8G8R8_USCALED = 32,+ VK_FORMAT_B8G8R8_SSCALED = 33,+ VK_FORMAT_B8G8R8_UINT = 34,+ VK_FORMAT_B8G8R8_SINT = 35,+ VK_FORMAT_B8G8R8_SRGB = 36,+ VK_FORMAT_R8G8B8A8_UNORM = 37,+ VK_FORMAT_R8G8B8A8_SNORM = 38,+ VK_FORMAT_R8G8B8A8_USCALED = 39,+ VK_FORMAT_R8G8B8A8_SSCALED = 40,+ VK_FORMAT_R8G8B8A8_UINT = 41,+ VK_FORMAT_R8G8B8A8_SINT = 42,+ VK_FORMAT_R8G8B8A8_SRGB = 43,+ VK_FORMAT_B8G8R8A8_UNORM = 44,+ VK_FORMAT_B8G8R8A8_SNORM = 45,+ VK_FORMAT_B8G8R8A8_USCALED = 46,+ VK_FORMAT_B8G8R8A8_SSCALED = 47,+ VK_FORMAT_B8G8R8A8_UINT = 48,+ VK_FORMAT_B8G8R8A8_SINT = 49,+ VK_FORMAT_B8G8R8A8_SRGB = 50,+ VK_FORMAT_A8B8G8R8_UNORM_PACK32 = 51,+ VK_FORMAT_A8B8G8R8_SNORM_PACK32 = 52,+ VK_FORMAT_A8B8G8R8_USCALED_PACK32 = 53,+ VK_FORMAT_A8B8G8R8_SSCALED_PACK32 = 54,+ VK_FORMAT_A8B8G8R8_UINT_PACK32 = 55,+ VK_FORMAT_A8B8G8R8_SINT_PACK32 = 56,+ VK_FORMAT_A8B8G8R8_SRGB_PACK32 = 57,+ VK_FORMAT_A2R10G10B10_UNORM_PACK32 = 58,+ VK_FORMAT_A2R10G10B10_SNORM_PACK32 = 59,+ VK_FORMAT_A2R10G10B10_USCALED_PACK32 = 60,+ VK_FORMAT_A2R10G10B10_SSCALED_PACK32 = 61,+ VK_FORMAT_A2R10G10B10_UINT_PACK32 = 62,+ VK_FORMAT_A2R10G10B10_SINT_PACK32 = 63,+ VK_FORMAT_A2B10G10R10_UNORM_PACK32 = 64,+ VK_FORMAT_A2B10G10R10_SNORM_PACK32 = 65,+ VK_FORMAT_A2B10G10R10_USCALED_PACK32 = 66,+ VK_FORMAT_A2B10G10R10_SSCALED_PACK32 = 67,+ VK_FORMAT_A2B10G10R10_UINT_PACK32 = 68,+ VK_FORMAT_A2B10G10R10_SINT_PACK32 = 69,+ VK_FORMAT_R16_UNORM = 70,+ VK_FORMAT_R16_SNORM = 71,+ VK_FORMAT_R16_USCALED = 72,+ VK_FORMAT_R16_SSCALED = 73,+ VK_FORMAT_R16_UINT = 74,+ VK_FORMAT_R16_SINT = 75,+ VK_FORMAT_R16_SFLOAT = 76,+ VK_FORMAT_R16G16_UNORM = 77,+ VK_FORMAT_R16G16_SNORM = 78,+ VK_FORMAT_R16G16_USCALED = 79,+ VK_FORMAT_R16G16_SSCALED = 80,+ VK_FORMAT_R16G16_UINT = 81,+ VK_FORMAT_R16G16_SINT = 82,+ VK_FORMAT_R16G16_SFLOAT = 83,+ VK_FORMAT_R16G16B16_UNORM = 84,+ VK_FORMAT_R16G16B16_SNORM = 85,+ VK_FORMAT_R16G16B16_USCALED = 86,+ VK_FORMAT_R16G16B16_SSCALED = 87,+ VK_FORMAT_R16G16B16_UINT = 88,+ VK_FORMAT_R16G16B16_SINT = 89,+ VK_FORMAT_R16G16B16_SFLOAT = 90,+ VK_FORMAT_R16G16B16A16_UNORM = 91,+ VK_FORMAT_R16G16B16A16_SNORM = 92,+ VK_FORMAT_R16G16B16A16_USCALED = 93,+ VK_FORMAT_R16G16B16A16_SSCALED = 94,+ VK_FORMAT_R16G16B16A16_UINT = 95,+ VK_FORMAT_R16G16B16A16_SINT = 96,+ VK_FORMAT_R16G16B16A16_SFLOAT = 97,+ VK_FORMAT_R32_UINT = 98,+ VK_FORMAT_R32_SINT = 99,+ VK_FORMAT_R32_SFLOAT = 100,+ VK_FORMAT_R32G32_UINT = 101,+ VK_FORMAT_R32G32_SINT = 102,+ VK_FORMAT_R32G32_SFLOAT = 103,+ VK_FORMAT_R32G32B32_UINT = 104,+ VK_FORMAT_R32G32B32_SINT = 105,+ VK_FORMAT_R32G32B32_SFLOAT = 106,+ VK_FORMAT_R32G32B32A32_UINT = 107,+ VK_FORMAT_R32G32B32A32_SINT = 108,+ VK_FORMAT_R32G32B32A32_SFLOAT = 109,+ VK_FORMAT_R64_UINT = 110,+ VK_FORMAT_R64_SINT = 111,+ VK_FORMAT_R64_SFLOAT = 112,+ VK_FORMAT_R64G64_UINT = 113,+ VK_FORMAT_R64G64_SINT = 114,+ VK_FORMAT_R64G64_SFLOAT = 115,+ VK_FORMAT_R64G64B64_UINT = 116,+ VK_FORMAT_R64G64B64_SINT = 117,+ VK_FORMAT_R64G64B64_SFLOAT = 118,+ VK_FORMAT_R64G64B64A64_UINT = 119,+ VK_FORMAT_R64G64B64A64_SINT = 120,+ VK_FORMAT_R64G64B64A64_SFLOAT = 121,+ VK_FORMAT_B10G11R11_UFLOAT_PACK32 = 122,+ VK_FORMAT_E5B9G9R9_UFLOAT_PACK32 = 123,+ VK_FORMAT_D16_UNORM = 124,+ VK_FORMAT_X8_D24_UNORM_PACK32 = 125,+ VK_FORMAT_D32_SFLOAT = 126,+ VK_FORMAT_S8_UINT = 127,+ VK_FORMAT_D16_UNORM_S8_UINT = 128,+ VK_FORMAT_D24_UNORM_S8_UINT = 129,+ VK_FORMAT_D32_SFLOAT_S8_UINT = 130,+ VK_FORMAT_BC1_RGB_UNORM_BLOCK = 131,+ VK_FORMAT_BC1_RGB_SRGB_BLOCK = 132,+ VK_FORMAT_BC1_RGBA_UNORM_BLOCK = 133,+ VK_FORMAT_BC1_RGBA_SRGB_BLOCK = 134,+ VK_FORMAT_BC2_UNORM_BLOCK = 135,+ VK_FORMAT_BC2_SRGB_BLOCK = 136,+ VK_FORMAT_BC3_UNORM_BLOCK = 137,+ VK_FORMAT_BC3_SRGB_BLOCK = 138,+ VK_FORMAT_BC4_UNORM_BLOCK = 139,+ VK_FORMAT_BC4_SNORM_BLOCK = 140,+ VK_FORMAT_BC5_UNORM_BLOCK = 141,+ VK_FORMAT_BC5_SNORM_BLOCK = 142,+ VK_FORMAT_BC6H_UFLOAT_BLOCK = 143,+ VK_FORMAT_BC6H_SFLOAT_BLOCK = 144,+ VK_FORMAT_BC7_UNORM_BLOCK = 145,+ VK_FORMAT_BC7_SRGB_BLOCK = 146,+ VK_FORMAT_ETC2_R8G8B8_UNORM_BLOCK = 147,+ VK_FORMAT_ETC2_R8G8B8_SRGB_BLOCK = 148,+ VK_FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK = 149,+ VK_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK = 150,+ VK_FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK = 151,+ VK_FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK = 152,+ VK_FORMAT_EAC_R11_UNORM_BLOCK = 153,+ VK_FORMAT_EAC_R11_SNORM_BLOCK = 154,+ VK_FORMAT_EAC_R11G11_UNORM_BLOCK = 155,+ VK_FORMAT_EAC_R11G11_SNORM_BLOCK = 156,+ VK_FORMAT_ASTC_4x4_UNORM_BLOCK = 157,+ VK_FORMAT_ASTC_4x4_SRGB_BLOCK = 158,+ VK_FORMAT_ASTC_5x4_UNORM_BLOCK = 159,+ VK_FORMAT_ASTC_5x4_SRGB_BLOCK = 160,+ VK_FORMAT_ASTC_5x5_UNORM_BLOCK = 161,+ VK_FORMAT_ASTC_5x5_SRGB_BLOCK = 162,+ VK_FORMAT_ASTC_6x5_UNORM_BLOCK = 163,+ VK_FORMAT_ASTC_6x5_SRGB_BLOCK = 164,+ VK_FORMAT_ASTC_6x6_UNORM_BLOCK = 165,+ VK_FORMAT_ASTC_6x6_SRGB_BLOCK = 166,+ VK_FORMAT_ASTC_8x5_UNORM_BLOCK = 167,+ VK_FORMAT_ASTC_8x5_SRGB_BLOCK = 168,+ VK_FORMAT_ASTC_8x6_UNORM_BLOCK = 169,+ VK_FORMAT_ASTC_8x6_SRGB_BLOCK = 170,+ VK_FORMAT_ASTC_8x8_UNORM_BLOCK = 171,+ VK_FORMAT_ASTC_8x8_SRGB_BLOCK = 172,+ VK_FORMAT_ASTC_10x5_UNORM_BLOCK = 173,+ VK_FORMAT_ASTC_10x5_SRGB_BLOCK = 174,+ VK_FORMAT_ASTC_10x6_UNORM_BLOCK = 175,+ VK_FORMAT_ASTC_10x6_SRGB_BLOCK = 176,+ VK_FORMAT_ASTC_10x8_UNORM_BLOCK = 177,+ VK_FORMAT_ASTC_10x8_SRGB_BLOCK = 178,+ VK_FORMAT_ASTC_10x10_UNORM_BLOCK = 179,+ VK_FORMAT_ASTC_10x10_SRGB_BLOCK = 180,+ VK_FORMAT_ASTC_12x10_UNORM_BLOCK = 181,+ VK_FORMAT_ASTC_12x10_SRGB_BLOCK = 182,+ VK_FORMAT_ASTC_12x12_UNORM_BLOCK = 183,+ VK_FORMAT_ASTC_12x12_SRGB_BLOCK = 184,+ VK_FORMAT_G8B8G8R8_422_UNORM = 1000156000,+ VK_FORMAT_B8G8R8G8_422_UNORM = 1000156001,+ VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM = 1000156002,+ VK_FORMAT_G8_B8R8_2PLANE_420_UNORM = 1000156003,+ VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM = 1000156004,+ VK_FORMAT_G8_B8R8_2PLANE_422_UNORM = 1000156005,+ VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM = 1000156006,+ VK_FORMAT_R10X6_UNORM_PACK16 = 1000156007,+ VK_FORMAT_R10X6G10X6_UNORM_2PACK16 = 1000156008,+ VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16 = 1000156009,+ VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16 = 1000156010,+ VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16 = 1000156011,+ VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16 = 1000156012,+ VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16 = 1000156013,+ VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16 = 1000156014,+ VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16 = 1000156015,+ VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16 = 1000156016,+ VK_FORMAT_R12X4_UNORM_PACK16 = 1000156017,+ VK_FORMAT_R12X4G12X4_UNORM_2PACK16 = 1000156018,+ VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16 = 1000156019,+ VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16 = 1000156020,+ VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16 = 1000156021,+ VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16 = 1000156022,+ VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16 = 1000156023,+ VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16 = 1000156024,+ VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16 = 1000156025,+ VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16 = 1000156026,+ VK_FORMAT_G16B16G16R16_422_UNORM = 1000156027,+ VK_FORMAT_B16G16R16G16_422_UNORM = 1000156028,+ VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM = 1000156029,+ VK_FORMAT_G16_B16R16_2PLANE_420_UNORM = 1000156030,+ VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM = 1000156031,+ VK_FORMAT_G16_B16R16_2PLANE_422_UNORM = 1000156032,+ VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM = 1000156033,+ VK_FORMAT_PVRTC1_2BPP_UNORM_BLOCK_IMG = 1000054000,+ VK_FORMAT_PVRTC1_4BPP_UNORM_BLOCK_IMG = 1000054001,+ VK_FORMAT_PVRTC2_2BPP_UNORM_BLOCK_IMG = 1000054002,+ VK_FORMAT_PVRTC2_4BPP_UNORM_BLOCK_IMG = 1000054003,+ VK_FORMAT_PVRTC1_2BPP_SRGB_BLOCK_IMG = 1000054004,+ VK_FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG = 1000054005,+ VK_FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG = 1000054006,+ VK_FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG = 1000054007,+ VK_FORMAT_G8B8G8R8_422_UNORM_KHR = VK_FORMAT_G8B8G8R8_422_UNORM,+ VK_FORMAT_B8G8R8G8_422_UNORM_KHR = VK_FORMAT_B8G8R8G8_422_UNORM,+ VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM_KHR = VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM,+ VK_FORMAT_G8_B8R8_2PLANE_420_UNORM_KHR = VK_FORMAT_G8_B8R8_2PLANE_420_UNORM,+ VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM_KHR = VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM,+ VK_FORMAT_G8_B8R8_2PLANE_422_UNORM_KHR = VK_FORMAT_G8_B8R8_2PLANE_422_UNORM,+ VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM_KHR = VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM,+ VK_FORMAT_R10X6_UNORM_PACK16_KHR = VK_FORMAT_R10X6_UNORM_PACK16,+ VK_FORMAT_R10X6G10X6_UNORM_2PACK16_KHR = VK_FORMAT_R10X6G10X6_UNORM_2PACK16,+ VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16_KHR = VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16,+ VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16_KHR = VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16,+ VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16_KHR = VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16,+ VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16_KHR = VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16,+ VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16_KHR = VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16,+ VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16_KHR = VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16,+ VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16_KHR = VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16,+ VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16_KHR = VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16,+ VK_FORMAT_R12X4_UNORM_PACK16_KHR = VK_FORMAT_R12X4_UNORM_PACK16,+ VK_FORMAT_R12X4G12X4_UNORM_2PACK16_KHR = VK_FORMAT_R12X4G12X4_UNORM_2PACK16,+ VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16_KHR = VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16,+ VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16_KHR = VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16,+ VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16_KHR = VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16,+ VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16_KHR = VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16,+ VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16_KHR = VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16,+ VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16_KHR = VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16,+ VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16_KHR = VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16,+ VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16_KHR = VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16,+ VK_FORMAT_G16B16G16R16_422_UNORM_KHR = VK_FORMAT_G16B16G16R16_422_UNORM,+ VK_FORMAT_B16G16R16G16_422_UNORM_KHR = VK_FORMAT_B16G16R16G16_422_UNORM,+ VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM_KHR = VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM,+ VK_FORMAT_G16_B16R16_2PLANE_420_UNORM_KHR = VK_FORMAT_G16_B16R16_2PLANE_420_UNORM,+ VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM_KHR = VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM,+ VK_FORMAT_G16_B16R16_2PLANE_422_UNORM_KHR = VK_FORMAT_G16_B16R16_2PLANE_422_UNORM,+ VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM_KHR = VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM,+ VK_FORMAT_BEGIN_RANGE = VK_FORMAT_UNDEFINED,+ VK_FORMAT_END_RANGE = VK_FORMAT_ASTC_12x12_SRGB_BLOCK,+ VK_FORMAT_RANGE_SIZE = (VK_FORMAT_ASTC_12x12_SRGB_BLOCK - VK_FORMAT_UNDEFINED + 1),+ VK_FORMAT_MAX_ENUM = 0x7FFFFFFF+} VkFormat;++typedef enum VkImageType {+ VK_IMAGE_TYPE_1D = 0,+ VK_IMAGE_TYPE_2D = 1,+ VK_IMAGE_TYPE_3D = 2,+ VK_IMAGE_TYPE_BEGIN_RANGE = VK_IMAGE_TYPE_1D,+ VK_IMAGE_TYPE_END_RANGE = VK_IMAGE_TYPE_3D,+ VK_IMAGE_TYPE_RANGE_SIZE = (VK_IMAGE_TYPE_3D - VK_IMAGE_TYPE_1D + 1),+ VK_IMAGE_TYPE_MAX_ENUM = 0x7FFFFFFF+} VkImageType;++typedef enum VkImageTiling {+ VK_IMAGE_TILING_OPTIMAL = 0,+ VK_IMAGE_TILING_LINEAR = 1,+ VK_IMAGE_TILING_BEGIN_RANGE = VK_IMAGE_TILING_OPTIMAL,+ VK_IMAGE_TILING_END_RANGE = VK_IMAGE_TILING_LINEAR,+ VK_IMAGE_TILING_RANGE_SIZE = (VK_IMAGE_TILING_LINEAR - VK_IMAGE_TILING_OPTIMAL + 1),+ VK_IMAGE_TILING_MAX_ENUM = 0x7FFFFFFF+} VkImageTiling;++typedef enum VkPhysicalDeviceType {+ VK_PHYSICAL_DEVICE_TYPE_OTHER = 0,+ VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU = 1,+ VK_PHYSICAL_DEVICE_TYPE_DISCRETE_GPU = 2,+ VK_PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU = 3,+ VK_PHYSICAL_DEVICE_TYPE_CPU = 4,+ VK_PHYSICAL_DEVICE_TYPE_BEGIN_RANGE = VK_PHYSICAL_DEVICE_TYPE_OTHER,+ VK_PHYSICAL_DEVICE_TYPE_END_RANGE = VK_PHYSICAL_DEVICE_TYPE_CPU,+ VK_PHYSICAL_DEVICE_TYPE_RANGE_SIZE = (VK_PHYSICAL_DEVICE_TYPE_CPU - VK_PHYSICAL_DEVICE_TYPE_OTHER + 1),+ VK_PHYSICAL_DEVICE_TYPE_MAX_ENUM = 0x7FFFFFFF+} VkPhysicalDeviceType;++typedef enum VkQueryType {+ VK_QUERY_TYPE_OCCLUSION = 0,+ VK_QUERY_TYPE_PIPELINE_STATISTICS = 1,+ VK_QUERY_TYPE_TIMESTAMP = 2,+ VK_QUERY_TYPE_BEGIN_RANGE = VK_QUERY_TYPE_OCCLUSION,+ VK_QUERY_TYPE_END_RANGE = VK_QUERY_TYPE_TIMESTAMP,+ VK_QUERY_TYPE_RANGE_SIZE = (VK_QUERY_TYPE_TIMESTAMP - VK_QUERY_TYPE_OCCLUSION + 1),+ VK_QUERY_TYPE_MAX_ENUM = 0x7FFFFFFF+} VkQueryType;++typedef enum VkSharingMode {+ VK_SHARING_MODE_EXCLUSIVE = 0,+ VK_SHARING_MODE_CONCURRENT = 1,+ VK_SHARING_MODE_BEGIN_RANGE = VK_SHARING_MODE_EXCLUSIVE,+ VK_SHARING_MODE_END_RANGE = VK_SHARING_MODE_CONCURRENT,+ VK_SHARING_MODE_RANGE_SIZE = (VK_SHARING_MODE_CONCURRENT - VK_SHARING_MODE_EXCLUSIVE + 1),+ VK_SHARING_MODE_MAX_ENUM = 0x7FFFFFFF+} VkSharingMode;++typedef enum VkImageLayout {+ VK_IMAGE_LAYOUT_UNDEFINED = 0,+ VK_IMAGE_LAYOUT_GENERAL = 1,+ VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL = 2,+ VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL = 3,+ VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL = 4,+ VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL = 5,+ VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL = 6,+ VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL = 7,+ VK_IMAGE_LAYOUT_PREINITIALIZED = 8,+ VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL = 1000117000,+ VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL = 1000117001,+ VK_IMAGE_LAYOUT_PRESENT_SRC_KHR = 1000001002,+ VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR = 1000111000,+ VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL_KHR = VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL,+ VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL_KHR = VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL,+ VK_IMAGE_LAYOUT_BEGIN_RANGE = VK_IMAGE_LAYOUT_UNDEFINED,+ VK_IMAGE_LAYOUT_END_RANGE = VK_IMAGE_LAYOUT_PREINITIALIZED,+ VK_IMAGE_LAYOUT_RANGE_SIZE = (VK_IMAGE_LAYOUT_PREINITIALIZED - VK_IMAGE_LAYOUT_UNDEFINED + 1),+ VK_IMAGE_LAYOUT_MAX_ENUM = 0x7FFFFFFF+} VkImageLayout;++typedef enum VkImageViewType {+ VK_IMAGE_VIEW_TYPE_1D = 0,+ VK_IMAGE_VIEW_TYPE_2D = 1,+ VK_IMAGE_VIEW_TYPE_3D = 2,+ VK_IMAGE_VIEW_TYPE_CUBE = 3,+ VK_IMAGE_VIEW_TYPE_1D_ARRAY = 4,+ VK_IMAGE_VIEW_TYPE_2D_ARRAY = 5,+ VK_IMAGE_VIEW_TYPE_CUBE_ARRAY = 6,+ VK_IMAGE_VIEW_TYPE_BEGIN_RANGE = VK_IMAGE_VIEW_TYPE_1D,+ VK_IMAGE_VIEW_TYPE_END_RANGE = VK_IMAGE_VIEW_TYPE_CUBE_ARRAY,+ VK_IMAGE_VIEW_TYPE_RANGE_SIZE = (VK_IMAGE_VIEW_TYPE_CUBE_ARRAY - VK_IMAGE_VIEW_TYPE_1D + 1),+ VK_IMAGE_VIEW_TYPE_MAX_ENUM = 0x7FFFFFFF+} VkImageViewType;++typedef enum VkComponentSwizzle {+ VK_COMPONENT_SWIZZLE_IDENTITY = 0,+ VK_COMPONENT_SWIZZLE_ZERO = 1,+ VK_COMPONENT_SWIZZLE_ONE = 2,+ VK_COMPONENT_SWIZZLE_R = 3,+ VK_COMPONENT_SWIZZLE_G = 4,+ VK_COMPONENT_SWIZZLE_B = 5,+ VK_COMPONENT_SWIZZLE_A = 6,+ VK_COMPONENT_SWIZZLE_BEGIN_RANGE = VK_COMPONENT_SWIZZLE_IDENTITY,+ VK_COMPONENT_SWIZZLE_END_RANGE = VK_COMPONENT_SWIZZLE_A,+ VK_COMPONENT_SWIZZLE_RANGE_SIZE = (VK_COMPONENT_SWIZZLE_A - VK_COMPONENT_SWIZZLE_IDENTITY + 1),+ VK_COMPONENT_SWIZZLE_MAX_ENUM = 0x7FFFFFFF+} VkComponentSwizzle;++typedef enum VkVertexInputRate {+ VK_VERTEX_INPUT_RATE_VERTEX = 0,+ VK_VERTEX_INPUT_RATE_INSTANCE = 1,+ VK_VERTEX_INPUT_RATE_BEGIN_RANGE = VK_VERTEX_INPUT_RATE_VERTEX,+ VK_VERTEX_INPUT_RATE_END_RANGE = VK_VERTEX_INPUT_RATE_INSTANCE,+ VK_VERTEX_INPUT_RATE_RANGE_SIZE = (VK_VERTEX_INPUT_RATE_INSTANCE - VK_VERTEX_INPUT_RATE_VERTEX + 1),+ VK_VERTEX_INPUT_RATE_MAX_ENUM = 0x7FFFFFFF+} VkVertexInputRate;++typedef enum VkPrimitiveTopology {+ VK_PRIMITIVE_TOPOLOGY_POINT_LIST = 0,+ VK_PRIMITIVE_TOPOLOGY_LINE_LIST = 1,+ VK_PRIMITIVE_TOPOLOGY_LINE_STRIP = 2,+ VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST = 3,+ VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP = 4,+ VK_PRIMITIVE_TOPOLOGY_TRIANGLE_FAN = 5,+ VK_PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY = 6,+ VK_PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY = 7,+ VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY = 8,+ VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY = 9,+ VK_PRIMITIVE_TOPOLOGY_PATCH_LIST = 10,+ VK_PRIMITIVE_TOPOLOGY_BEGIN_RANGE = VK_PRIMITIVE_TOPOLOGY_POINT_LIST,+ VK_PRIMITIVE_TOPOLOGY_END_RANGE = VK_PRIMITIVE_TOPOLOGY_PATCH_LIST,+ VK_PRIMITIVE_TOPOLOGY_RANGE_SIZE = (VK_PRIMITIVE_TOPOLOGY_PATCH_LIST - VK_PRIMITIVE_TOPOLOGY_POINT_LIST + 1),+ VK_PRIMITIVE_TOPOLOGY_MAX_ENUM = 0x7FFFFFFF+} VkPrimitiveTopology;++typedef enum VkPolygonMode {+ VK_POLYGON_MODE_FILL = 0,+ VK_POLYGON_MODE_LINE = 1,+ VK_POLYGON_MODE_POINT = 2,+ VK_POLYGON_MODE_FILL_RECTANGLE_NV = 1000153000,+ VK_POLYGON_MODE_BEGIN_RANGE = VK_POLYGON_MODE_FILL,+ VK_POLYGON_MODE_END_RANGE = VK_POLYGON_MODE_POINT,+ VK_POLYGON_MODE_RANGE_SIZE = (VK_POLYGON_MODE_POINT - VK_POLYGON_MODE_FILL + 1),+ VK_POLYGON_MODE_MAX_ENUM = 0x7FFFFFFF+} VkPolygonMode;++typedef enum VkFrontFace {+ VK_FRONT_FACE_COUNTER_CLOCKWISE = 0,+ VK_FRONT_FACE_CLOCKWISE = 1,+ VK_FRONT_FACE_BEGIN_RANGE = VK_FRONT_FACE_COUNTER_CLOCKWISE,+ VK_FRONT_FACE_END_RANGE = VK_FRONT_FACE_CLOCKWISE,+ VK_FRONT_FACE_RANGE_SIZE = (VK_FRONT_FACE_CLOCKWISE - VK_FRONT_FACE_COUNTER_CLOCKWISE + 1),+ VK_FRONT_FACE_MAX_ENUM = 0x7FFFFFFF+} VkFrontFace;++typedef enum VkCompareOp {+ VK_COMPARE_OP_NEVER = 0,+ VK_COMPARE_OP_LESS = 1,+ VK_COMPARE_OP_EQUAL = 2,+ VK_COMPARE_OP_LESS_OR_EQUAL = 3,+ VK_COMPARE_OP_GREATER = 4,+ VK_COMPARE_OP_NOT_EQUAL = 5,+ VK_COMPARE_OP_GREATER_OR_EQUAL = 6,+ VK_COMPARE_OP_ALWAYS = 7,+ VK_COMPARE_OP_BEGIN_RANGE = VK_COMPARE_OP_NEVER,+ VK_COMPARE_OP_END_RANGE = VK_COMPARE_OP_ALWAYS,+ VK_COMPARE_OP_RANGE_SIZE = (VK_COMPARE_OP_ALWAYS - VK_COMPARE_OP_NEVER + 1),+ VK_COMPARE_OP_MAX_ENUM = 0x7FFFFFFF+} VkCompareOp;++typedef enum VkStencilOp {+ VK_STENCIL_OP_KEEP = 0,+ VK_STENCIL_OP_ZERO = 1,+ VK_STENCIL_OP_REPLACE = 2,+ VK_STENCIL_OP_INCREMENT_AND_CLAMP = 3,+ VK_STENCIL_OP_DECREMENT_AND_CLAMP = 4,+ VK_STENCIL_OP_INVERT = 5,+ VK_STENCIL_OP_INCREMENT_AND_WRAP = 6,+ VK_STENCIL_OP_DECREMENT_AND_WRAP = 7,+ VK_STENCIL_OP_BEGIN_RANGE = VK_STENCIL_OP_KEEP,+ VK_STENCIL_OP_END_RANGE = VK_STENCIL_OP_DECREMENT_AND_WRAP,+ VK_STENCIL_OP_RANGE_SIZE = (VK_STENCIL_OP_DECREMENT_AND_WRAP - VK_STENCIL_OP_KEEP + 1),+ VK_STENCIL_OP_MAX_ENUM = 0x7FFFFFFF+} VkStencilOp;++typedef enum VkLogicOp {+ VK_LOGIC_OP_CLEAR = 0,+ VK_LOGIC_OP_AND = 1,+ VK_LOGIC_OP_AND_REVERSE = 2,+ VK_LOGIC_OP_COPY = 3,+ VK_LOGIC_OP_AND_INVERTED = 4,+ VK_LOGIC_OP_NO_OP = 5,+ VK_LOGIC_OP_XOR = 6,+ VK_LOGIC_OP_OR = 7,+ VK_LOGIC_OP_NOR = 8,+ VK_LOGIC_OP_EQUIVALENT = 9,+ VK_LOGIC_OP_INVERT = 10,+ VK_LOGIC_OP_OR_REVERSE = 11,+ VK_LOGIC_OP_COPY_INVERTED = 12,+ VK_LOGIC_OP_OR_INVERTED = 13,+ VK_LOGIC_OP_NAND = 14,+ VK_LOGIC_OP_SET = 15,+ VK_LOGIC_OP_BEGIN_RANGE = VK_LOGIC_OP_CLEAR,+ VK_LOGIC_OP_END_RANGE = VK_LOGIC_OP_SET,+ VK_LOGIC_OP_RANGE_SIZE = (VK_LOGIC_OP_SET - VK_LOGIC_OP_CLEAR + 1),+ VK_LOGIC_OP_MAX_ENUM = 0x7FFFFFFF+} VkLogicOp;++typedef enum VkBlendFactor {+ VK_BLEND_FACTOR_ZERO = 0,+ VK_BLEND_FACTOR_ONE = 1,+ VK_BLEND_FACTOR_SRC_COLOR = 2,+ VK_BLEND_FACTOR_ONE_MINUS_SRC_COLOR = 3,+ VK_BLEND_FACTOR_DST_COLOR = 4,+ VK_BLEND_FACTOR_ONE_MINUS_DST_COLOR = 5,+ VK_BLEND_FACTOR_SRC_ALPHA = 6,+ VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA = 7,+ VK_BLEND_FACTOR_DST_ALPHA = 8,+ VK_BLEND_FACTOR_ONE_MINUS_DST_ALPHA = 9,+ VK_BLEND_FACTOR_CONSTANT_COLOR = 10,+ VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_COLOR = 11,+ VK_BLEND_FACTOR_CONSTANT_ALPHA = 12,+ VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA = 13,+ VK_BLEND_FACTOR_SRC_ALPHA_SATURATE = 14,+ VK_BLEND_FACTOR_SRC1_COLOR = 15,+ VK_BLEND_FACTOR_ONE_MINUS_SRC1_COLOR = 16,+ VK_BLEND_FACTOR_SRC1_ALPHA = 17,+ VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA = 18,+ VK_BLEND_FACTOR_BEGIN_RANGE = VK_BLEND_FACTOR_ZERO,+ VK_BLEND_FACTOR_END_RANGE = VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA,+ VK_BLEND_FACTOR_RANGE_SIZE = (VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA - VK_BLEND_FACTOR_ZERO + 1),+ VK_BLEND_FACTOR_MAX_ENUM = 0x7FFFFFFF+} VkBlendFactor;++typedef enum VkBlendOp {+ VK_BLEND_OP_ADD = 0,+ VK_BLEND_OP_SUBTRACT = 1,+ VK_BLEND_OP_REVERSE_SUBTRACT = 2,+ VK_BLEND_OP_MIN = 3,+ VK_BLEND_OP_MAX = 4,+ VK_BLEND_OP_ZERO_EXT = 1000148000,+ VK_BLEND_OP_SRC_EXT = 1000148001,+ VK_BLEND_OP_DST_EXT = 1000148002,+ VK_BLEND_OP_SRC_OVER_EXT = 1000148003,+ VK_BLEND_OP_DST_OVER_EXT = 1000148004,+ VK_BLEND_OP_SRC_IN_EXT = 1000148005,+ VK_BLEND_OP_DST_IN_EXT = 1000148006,+ VK_BLEND_OP_SRC_OUT_EXT = 1000148007,+ VK_BLEND_OP_DST_OUT_EXT = 1000148008,+ VK_BLEND_OP_SRC_ATOP_EXT = 1000148009,+ VK_BLEND_OP_DST_ATOP_EXT = 1000148010,+ VK_BLEND_OP_XOR_EXT = 1000148011,+ VK_BLEND_OP_MULTIPLY_EXT = 1000148012,+ VK_BLEND_OP_SCREEN_EXT = 1000148013,+ VK_BLEND_OP_OVERLAY_EXT = 1000148014,+ VK_BLEND_OP_DARKEN_EXT = 1000148015,+ VK_BLEND_OP_LIGHTEN_EXT = 1000148016,+ VK_BLEND_OP_COLORDODGE_EXT = 1000148017,+ VK_BLEND_OP_COLORBURN_EXT = 1000148018,+ VK_BLEND_OP_HARDLIGHT_EXT = 1000148019,+ VK_BLEND_OP_SOFTLIGHT_EXT = 1000148020,+ VK_BLEND_OP_DIFFERENCE_EXT = 1000148021,+ VK_BLEND_OP_EXCLUSION_EXT = 1000148022,+ VK_BLEND_OP_INVERT_EXT = 1000148023,+ VK_BLEND_OP_INVERT_RGB_EXT = 1000148024,+ VK_BLEND_OP_LINEARDODGE_EXT = 1000148025,+ VK_BLEND_OP_LINEARBURN_EXT = 1000148026,+ VK_BLEND_OP_VIVIDLIGHT_EXT = 1000148027,+ VK_BLEND_OP_LINEARLIGHT_EXT = 1000148028,+ VK_BLEND_OP_PINLIGHT_EXT = 1000148029,+ VK_BLEND_OP_HARDMIX_EXT = 1000148030,+ VK_BLEND_OP_HSL_HUE_EXT = 1000148031,+ VK_BLEND_OP_HSL_SATURATION_EXT = 1000148032,+ VK_BLEND_OP_HSL_COLOR_EXT = 1000148033,+ VK_BLEND_OP_HSL_LUMINOSITY_EXT = 1000148034,+ VK_BLEND_OP_PLUS_EXT = 1000148035,+ VK_BLEND_OP_PLUS_CLAMPED_EXT = 1000148036,+ VK_BLEND_OP_PLUS_CLAMPED_ALPHA_EXT = 1000148037,+ VK_BLEND_OP_PLUS_DARKER_EXT = 1000148038,+ VK_BLEND_OP_MINUS_EXT = 1000148039,+ VK_BLEND_OP_MINUS_CLAMPED_EXT = 1000148040,+ VK_BLEND_OP_CONTRAST_EXT = 1000148041,+ VK_BLEND_OP_INVERT_OVG_EXT = 1000148042,+ VK_BLEND_OP_RED_EXT = 1000148043,+ VK_BLEND_OP_GREEN_EXT = 1000148044,+ VK_BLEND_OP_BLUE_EXT = 1000148045,+ VK_BLEND_OP_BEGIN_RANGE = VK_BLEND_OP_ADD,+ VK_BLEND_OP_END_RANGE = VK_BLEND_OP_MAX,+ VK_BLEND_OP_RANGE_SIZE = (VK_BLEND_OP_MAX - VK_BLEND_OP_ADD + 1),+ VK_BLEND_OP_MAX_ENUM = 0x7FFFFFFF+} VkBlendOp;++typedef enum VkDynamicState {+ VK_DYNAMIC_STATE_VIEWPORT = 0,+ VK_DYNAMIC_STATE_SCISSOR = 1,+ VK_DYNAMIC_STATE_LINE_WIDTH = 2,+ VK_DYNAMIC_STATE_DEPTH_BIAS = 3,+ VK_DYNAMIC_STATE_BLEND_CONSTANTS = 4,+ VK_DYNAMIC_STATE_DEPTH_BOUNDS = 5,+ VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK = 6,+ VK_DYNAMIC_STATE_STENCIL_WRITE_MASK = 7,+ VK_DYNAMIC_STATE_STENCIL_REFERENCE = 8,+ VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV = 1000087000,+ VK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT = 1000099000,+ VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT = 1000143000,+ VK_DYNAMIC_STATE_BEGIN_RANGE = VK_DYNAMIC_STATE_VIEWPORT,+ VK_DYNAMIC_STATE_END_RANGE = VK_DYNAMIC_STATE_STENCIL_REFERENCE,+ VK_DYNAMIC_STATE_RANGE_SIZE = (VK_DYNAMIC_STATE_STENCIL_REFERENCE - VK_DYNAMIC_STATE_VIEWPORT + 1),+ VK_DYNAMIC_STATE_MAX_ENUM = 0x7FFFFFFF+} VkDynamicState;++typedef enum VkFilter {+ VK_FILTER_NEAREST = 0,+ VK_FILTER_LINEAR = 1,+ VK_FILTER_CUBIC_IMG = 1000015000,+ VK_FILTER_BEGIN_RANGE = VK_FILTER_NEAREST,+ VK_FILTER_END_RANGE = VK_FILTER_LINEAR,+ VK_FILTER_RANGE_SIZE = (VK_FILTER_LINEAR - VK_FILTER_NEAREST + 1),+ VK_FILTER_MAX_ENUM = 0x7FFFFFFF+} VkFilter;++typedef enum VkSamplerMipmapMode {+ VK_SAMPLER_MIPMAP_MODE_NEAREST = 0,+ VK_SAMPLER_MIPMAP_MODE_LINEAR = 1,+ VK_SAMPLER_MIPMAP_MODE_BEGIN_RANGE = VK_SAMPLER_MIPMAP_MODE_NEAREST,+ VK_SAMPLER_MIPMAP_MODE_END_RANGE = VK_SAMPLER_MIPMAP_MODE_LINEAR,+ VK_SAMPLER_MIPMAP_MODE_RANGE_SIZE = (VK_SAMPLER_MIPMAP_MODE_LINEAR - VK_SAMPLER_MIPMAP_MODE_NEAREST + 1),+ VK_SAMPLER_MIPMAP_MODE_MAX_ENUM = 0x7FFFFFFF+} VkSamplerMipmapMode;++typedef enum VkSamplerAddressMode {+ VK_SAMPLER_ADDRESS_MODE_REPEAT = 0,+ VK_SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT = 1,+ VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE = 2,+ VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER = 3,+ VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE = 4,+ VK_SAMPLER_ADDRESS_MODE_BEGIN_RANGE = VK_SAMPLER_ADDRESS_MODE_REPEAT,+ VK_SAMPLER_ADDRESS_MODE_END_RANGE = VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER,+ VK_SAMPLER_ADDRESS_MODE_RANGE_SIZE = (VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER - VK_SAMPLER_ADDRESS_MODE_REPEAT + 1),+ VK_SAMPLER_ADDRESS_MODE_MAX_ENUM = 0x7FFFFFFF+} VkSamplerAddressMode;++typedef enum VkBorderColor {+ VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK = 0,+ VK_BORDER_COLOR_INT_TRANSPARENT_BLACK = 1,+ VK_BORDER_COLOR_FLOAT_OPAQUE_BLACK = 2,+ VK_BORDER_COLOR_INT_OPAQUE_BLACK = 3,+ VK_BORDER_COLOR_FLOAT_OPAQUE_WHITE = 4,+ VK_BORDER_COLOR_INT_OPAQUE_WHITE = 5,+ VK_BORDER_COLOR_BEGIN_RANGE = VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK,+ VK_BORDER_COLOR_END_RANGE = VK_BORDER_COLOR_INT_OPAQUE_WHITE,+ VK_BORDER_COLOR_RANGE_SIZE = (VK_BORDER_COLOR_INT_OPAQUE_WHITE - VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK + 1),+ VK_BORDER_COLOR_MAX_ENUM = 0x7FFFFFFF+} VkBorderColor;++typedef enum VkDescriptorType {+ VK_DESCRIPTOR_TYPE_SAMPLER = 0,+ VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER = 1,+ VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE = 2,+ VK_DESCRIPTOR_TYPE_STORAGE_IMAGE = 3,+ VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER = 4,+ VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER = 5,+ VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER = 6,+ VK_DESCRIPTOR_TYPE_STORAGE_BUFFER = 7,+ VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC = 8,+ VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC = 9,+ VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT = 10,+ VK_DESCRIPTOR_TYPE_BEGIN_RANGE = VK_DESCRIPTOR_TYPE_SAMPLER,+ VK_DESCRIPTOR_TYPE_END_RANGE = VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT,+ VK_DESCRIPTOR_TYPE_RANGE_SIZE = (VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT - VK_DESCRIPTOR_TYPE_SAMPLER + 1),+ VK_DESCRIPTOR_TYPE_MAX_ENUM = 0x7FFFFFFF+} VkDescriptorType;++typedef enum VkAttachmentLoadOp {+ VK_ATTACHMENT_LOAD_OP_LOAD = 0,+ VK_ATTACHMENT_LOAD_OP_CLEAR = 1,+ VK_ATTACHMENT_LOAD_OP_DONT_CARE = 2,+ VK_ATTACHMENT_LOAD_OP_BEGIN_RANGE = VK_ATTACHMENT_LOAD_OP_LOAD,+ VK_ATTACHMENT_LOAD_OP_END_RANGE = VK_ATTACHMENT_LOAD_OP_DONT_CARE,+ VK_ATTACHMENT_LOAD_OP_RANGE_SIZE = (VK_ATTACHMENT_LOAD_OP_DONT_CARE - VK_ATTACHMENT_LOAD_OP_LOAD + 1),+ VK_ATTACHMENT_LOAD_OP_MAX_ENUM = 0x7FFFFFFF+} VkAttachmentLoadOp;++typedef enum VkAttachmentStoreOp {+ VK_ATTACHMENT_STORE_OP_STORE = 0,+ VK_ATTACHMENT_STORE_OP_DONT_CARE = 1,+ VK_ATTACHMENT_STORE_OP_BEGIN_RANGE = VK_ATTACHMENT_STORE_OP_STORE,+ VK_ATTACHMENT_STORE_OP_END_RANGE = VK_ATTACHMENT_STORE_OP_DONT_CARE,+ VK_ATTACHMENT_STORE_OP_RANGE_SIZE = (VK_ATTACHMENT_STORE_OP_DONT_CARE - VK_ATTACHMENT_STORE_OP_STORE + 1),+ VK_ATTACHMENT_STORE_OP_MAX_ENUM = 0x7FFFFFFF+} VkAttachmentStoreOp;++typedef enum VkPipelineBindPoint {+ VK_PIPELINE_BIND_POINT_GRAPHICS = 0,+ VK_PIPELINE_BIND_POINT_COMPUTE = 1,+ VK_PIPELINE_BIND_POINT_BEGIN_RANGE = VK_PIPELINE_BIND_POINT_GRAPHICS,+ VK_PIPELINE_BIND_POINT_END_RANGE = VK_PIPELINE_BIND_POINT_COMPUTE,+ VK_PIPELINE_BIND_POINT_RANGE_SIZE = (VK_PIPELINE_BIND_POINT_COMPUTE - VK_PIPELINE_BIND_POINT_GRAPHICS + 1),+ VK_PIPELINE_BIND_POINT_MAX_ENUM = 0x7FFFFFFF+} VkPipelineBindPoint;++typedef enum VkCommandBufferLevel {+ VK_COMMAND_BUFFER_LEVEL_PRIMARY = 0,+ VK_COMMAND_BUFFER_LEVEL_SECONDARY = 1,+ VK_COMMAND_BUFFER_LEVEL_BEGIN_RANGE = VK_COMMAND_BUFFER_LEVEL_PRIMARY,+ VK_COMMAND_BUFFER_LEVEL_END_RANGE = VK_COMMAND_BUFFER_LEVEL_SECONDARY,+ VK_COMMAND_BUFFER_LEVEL_RANGE_SIZE = (VK_COMMAND_BUFFER_LEVEL_SECONDARY - VK_COMMAND_BUFFER_LEVEL_PRIMARY + 1),+ VK_COMMAND_BUFFER_LEVEL_MAX_ENUM = 0x7FFFFFFF+} VkCommandBufferLevel;++typedef enum VkIndexType {+ VK_INDEX_TYPE_UINT16 = 0,+ VK_INDEX_TYPE_UINT32 = 1,+ VK_INDEX_TYPE_BEGIN_RANGE = VK_INDEX_TYPE_UINT16,+ VK_INDEX_TYPE_END_RANGE = VK_INDEX_TYPE_UINT32,+ VK_INDEX_TYPE_RANGE_SIZE = (VK_INDEX_TYPE_UINT32 - VK_INDEX_TYPE_UINT16 + 1),+ VK_INDEX_TYPE_MAX_ENUM = 0x7FFFFFFF+} VkIndexType;++typedef enum VkSubpassContents {+ VK_SUBPASS_CONTENTS_INLINE = 0,+ VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS = 1,+ VK_SUBPASS_CONTENTS_BEGIN_RANGE = VK_SUBPASS_CONTENTS_INLINE,+ VK_SUBPASS_CONTENTS_END_RANGE = VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS,+ VK_SUBPASS_CONTENTS_RANGE_SIZE = (VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS - VK_SUBPASS_CONTENTS_INLINE + 1),+ VK_SUBPASS_CONTENTS_MAX_ENUM = 0x7FFFFFFF+} VkSubpassContents;++typedef enum VkObjectType {+ VK_OBJECT_TYPE_UNKNOWN = 0,+ VK_OBJECT_TYPE_INSTANCE = 1,+ VK_OBJECT_TYPE_PHYSICAL_DEVICE = 2,+ VK_OBJECT_TYPE_DEVICE = 3,+ VK_OBJECT_TYPE_QUEUE = 4,+ VK_OBJECT_TYPE_SEMAPHORE = 5,+ VK_OBJECT_TYPE_COMMAND_BUFFER = 6,+ VK_OBJECT_TYPE_FENCE = 7,+ VK_OBJECT_TYPE_DEVICE_MEMORY = 8,+ VK_OBJECT_TYPE_BUFFER = 9,+ VK_OBJECT_TYPE_IMAGE = 10,+ VK_OBJECT_TYPE_EVENT = 11,+ VK_OBJECT_TYPE_QUERY_POOL = 12,+ VK_OBJECT_TYPE_BUFFER_VIEW = 13,+ VK_OBJECT_TYPE_IMAGE_VIEW = 14,+ VK_OBJECT_TYPE_SHADER_MODULE = 15,+ VK_OBJECT_TYPE_PIPELINE_CACHE = 16,+ VK_OBJECT_TYPE_PIPELINE_LAYOUT = 17,+ VK_OBJECT_TYPE_RENDER_PASS = 18,+ VK_OBJECT_TYPE_PIPELINE = 19,+ VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT = 20,+ VK_OBJECT_TYPE_SAMPLER = 21,+ VK_OBJECT_TYPE_DESCRIPTOR_POOL = 22,+ VK_OBJECT_TYPE_DESCRIPTOR_SET = 23,+ VK_OBJECT_TYPE_FRAMEBUFFER = 24,+ VK_OBJECT_TYPE_COMMAND_POOL = 25,+ VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION = 1000156000,+ VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE = 1000085000,+ VK_OBJECT_TYPE_SURFACE_KHR = 1000000000,+ VK_OBJECT_TYPE_SWAPCHAIN_KHR = 1000001000,+ VK_OBJECT_TYPE_DISPLAY_KHR = 1000002000,+ VK_OBJECT_TYPE_DISPLAY_MODE_KHR = 1000002001,+ VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT = 1000011000,+ VK_OBJECT_TYPE_OBJECT_TABLE_NVX = 1000086000,+ VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX = 1000086001,+ VK_OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT = 1000128000,+ VK_OBJECT_TYPE_VALIDATION_CACHE_EXT = 1000160000,+ VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR = VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE,+ VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR = VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION,+ VK_OBJECT_TYPE_BEGIN_RANGE = VK_OBJECT_TYPE_UNKNOWN,+ VK_OBJECT_TYPE_END_RANGE = VK_OBJECT_TYPE_COMMAND_POOL,+ VK_OBJECT_TYPE_RANGE_SIZE = (VK_OBJECT_TYPE_COMMAND_POOL - VK_OBJECT_TYPE_UNKNOWN + 1),+ VK_OBJECT_TYPE_MAX_ENUM = 0x7FFFFFFF+} VkObjectType;++typedef VkFlags VkInstanceCreateFlags;++typedef enum VkFormatFeatureFlagBits {+ VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT = 0x00000001,+ VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT = 0x00000002,+ VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT = 0x00000004,+ VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT = 0x00000008,+ VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT = 0x00000010,+ VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT = 0x00000020,+ VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT = 0x00000040,+ VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT = 0x00000080,+ VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT = 0x00000100,+ VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT = 0x00000200,+ VK_FORMAT_FEATURE_BLIT_SRC_BIT = 0x00000400,+ VK_FORMAT_FEATURE_BLIT_DST_BIT = 0x00000800,+ VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT = 0x00001000,+ VK_FORMAT_FEATURE_TRANSFER_SRC_BIT = 0x00004000,+ VK_FORMAT_FEATURE_TRANSFER_DST_BIT = 0x00008000,+ VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT = 0x00020000,+ VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT = 0x00040000,+ VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT = 0x00080000,+ VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT = 0x00100000,+ VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT = 0x00200000,+ VK_FORMAT_FEATURE_DISJOINT_BIT = 0x00400000,+ VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT = 0x00800000,+ VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG = 0x00002000,+ VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT_EXT = 0x00010000,+ VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR = VK_FORMAT_FEATURE_TRANSFER_SRC_BIT,+ VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR = VK_FORMAT_FEATURE_TRANSFER_DST_BIT,+ VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT_KHR = VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT,+ VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT_KHR = VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT,+ VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT_KHR = VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT,+ VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT_KHR = VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT,+ 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,+ VK_FORMAT_FEATURE_DISJOINT_BIT_KHR = VK_FORMAT_FEATURE_DISJOINT_BIT,+ VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT_KHR = VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT,+ VK_FORMAT_FEATURE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkFormatFeatureFlagBits;+typedef VkFlags VkFormatFeatureFlags;++typedef enum VkImageUsageFlagBits {+ VK_IMAGE_USAGE_TRANSFER_SRC_BIT = 0x00000001,+ VK_IMAGE_USAGE_TRANSFER_DST_BIT = 0x00000002,+ VK_IMAGE_USAGE_SAMPLED_BIT = 0x00000004,+ VK_IMAGE_USAGE_STORAGE_BIT = 0x00000008,+ VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT = 0x00000010,+ VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT = 0x00000020,+ VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT = 0x00000040,+ VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT = 0x00000080,+ VK_IMAGE_USAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkImageUsageFlagBits;+typedef VkFlags VkImageUsageFlags;++typedef enum VkImageCreateFlagBits {+ VK_IMAGE_CREATE_SPARSE_BINDING_BIT = 0x00000001,+ VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT = 0x00000002,+ VK_IMAGE_CREATE_SPARSE_ALIASED_BIT = 0x00000004,+ VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT = 0x00000008,+ VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT = 0x00000010,+ VK_IMAGE_CREATE_ALIAS_BIT = 0x00000400,+ VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT = 0x00000040,+ VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT = 0x00000020,+ VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT = 0x00000080,+ VK_IMAGE_CREATE_EXTENDED_USAGE_BIT = 0x00000100,+ VK_IMAGE_CREATE_PROTECTED_BIT = 0x00000800,+ VK_IMAGE_CREATE_DISJOINT_BIT = 0x00000200,+ VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT = 0x00001000,+ VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR = VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT,+ VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT_KHR = VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT,+ VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT_KHR = VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT,+ VK_IMAGE_CREATE_EXTENDED_USAGE_BIT_KHR = VK_IMAGE_CREATE_EXTENDED_USAGE_BIT,+ VK_IMAGE_CREATE_DISJOINT_BIT_KHR = VK_IMAGE_CREATE_DISJOINT_BIT,+ VK_IMAGE_CREATE_ALIAS_BIT_KHR = VK_IMAGE_CREATE_ALIAS_BIT,+ VK_IMAGE_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkImageCreateFlagBits;+typedef VkFlags VkImageCreateFlags;++typedef enum VkSampleCountFlagBits {+ VK_SAMPLE_COUNT_1_BIT = 0x00000001,+ VK_SAMPLE_COUNT_2_BIT = 0x00000002,+ VK_SAMPLE_COUNT_4_BIT = 0x00000004,+ VK_SAMPLE_COUNT_8_BIT = 0x00000008,+ VK_SAMPLE_COUNT_16_BIT = 0x00000010,+ VK_SAMPLE_COUNT_32_BIT = 0x00000020,+ VK_SAMPLE_COUNT_64_BIT = 0x00000040,+ VK_SAMPLE_COUNT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkSampleCountFlagBits;+typedef VkFlags VkSampleCountFlags;++typedef enum VkQueueFlagBits {+ VK_QUEUE_GRAPHICS_BIT = 0x00000001,+ VK_QUEUE_COMPUTE_BIT = 0x00000002,+ VK_QUEUE_TRANSFER_BIT = 0x00000004,+ VK_QUEUE_SPARSE_BINDING_BIT = 0x00000008,+ VK_QUEUE_PROTECTED_BIT = 0x00000010,+ VK_QUEUE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkQueueFlagBits;+typedef VkFlags VkQueueFlags;++typedef enum VkMemoryPropertyFlagBits {+ VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT = 0x00000001,+ VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT = 0x00000002,+ VK_MEMORY_PROPERTY_HOST_COHERENT_BIT = 0x00000004,+ VK_MEMORY_PROPERTY_HOST_CACHED_BIT = 0x00000008,+ VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT = 0x00000010,+ VK_MEMORY_PROPERTY_PROTECTED_BIT = 0x00000020,+ VK_MEMORY_PROPERTY_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkMemoryPropertyFlagBits;+typedef VkFlags VkMemoryPropertyFlags;++typedef enum VkMemoryHeapFlagBits {+ VK_MEMORY_HEAP_DEVICE_LOCAL_BIT = 0x00000001,+ VK_MEMORY_HEAP_MULTI_INSTANCE_BIT = 0x00000002,+ VK_MEMORY_HEAP_MULTI_INSTANCE_BIT_KHR = VK_MEMORY_HEAP_MULTI_INSTANCE_BIT,+ VK_MEMORY_HEAP_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkMemoryHeapFlagBits;+typedef VkFlags VkMemoryHeapFlags;+typedef VkFlags VkDeviceCreateFlags;++typedef enum VkDeviceQueueCreateFlagBits {+ VK_DEVICE_QUEUE_CREATE_PROTECTED_BIT = 0x00000001,+ VK_DEVICE_QUEUE_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkDeviceQueueCreateFlagBits;+typedef VkFlags VkDeviceQueueCreateFlags;++typedef enum VkPipelineStageFlagBits {+ VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT = 0x00000001,+ VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT = 0x00000002,+ VK_PIPELINE_STAGE_VERTEX_INPUT_BIT = 0x00000004,+ VK_PIPELINE_STAGE_VERTEX_SHADER_BIT = 0x00000008,+ VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT = 0x00000010,+ VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT = 0x00000020,+ VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT = 0x00000040,+ VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT = 0x00000080,+ VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT = 0x00000100,+ VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT = 0x00000200,+ VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT = 0x00000400,+ VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT = 0x00000800,+ VK_PIPELINE_STAGE_TRANSFER_BIT = 0x00001000,+ VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT = 0x00002000,+ VK_PIPELINE_STAGE_HOST_BIT = 0x00004000,+ VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT = 0x00008000,+ VK_PIPELINE_STAGE_ALL_COMMANDS_BIT = 0x00010000,+ VK_PIPELINE_STAGE_COMMAND_PROCESS_BIT_NVX = 0x00020000,+ VK_PIPELINE_STAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkPipelineStageFlagBits;+typedef VkFlags VkPipelineStageFlags;+typedef VkFlags VkMemoryMapFlags;++typedef enum VkImageAspectFlagBits {+ VK_IMAGE_ASPECT_COLOR_BIT = 0x00000001,+ VK_IMAGE_ASPECT_DEPTH_BIT = 0x00000002,+ VK_IMAGE_ASPECT_STENCIL_BIT = 0x00000004,+ VK_IMAGE_ASPECT_METADATA_BIT = 0x00000008,+ VK_IMAGE_ASPECT_PLANE_0_BIT = 0x00000010,+ VK_IMAGE_ASPECT_PLANE_1_BIT = 0x00000020,+ VK_IMAGE_ASPECT_PLANE_2_BIT = 0x00000040,+ VK_IMAGE_ASPECT_PLANE_0_BIT_KHR = VK_IMAGE_ASPECT_PLANE_0_BIT,+ VK_IMAGE_ASPECT_PLANE_1_BIT_KHR = VK_IMAGE_ASPECT_PLANE_1_BIT,+ VK_IMAGE_ASPECT_PLANE_2_BIT_KHR = VK_IMAGE_ASPECT_PLANE_2_BIT,+ VK_IMAGE_ASPECT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkImageAspectFlagBits;+typedef VkFlags VkImageAspectFlags;++typedef enum VkSparseImageFormatFlagBits {+ VK_SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT = 0x00000001,+ VK_SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT = 0x00000002,+ VK_SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT = 0x00000004,+ VK_SPARSE_IMAGE_FORMAT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkSparseImageFormatFlagBits;+typedef VkFlags VkSparseImageFormatFlags;++typedef enum VkSparseMemoryBindFlagBits {+ VK_SPARSE_MEMORY_BIND_METADATA_BIT = 0x00000001,+ VK_SPARSE_MEMORY_BIND_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkSparseMemoryBindFlagBits;+typedef VkFlags VkSparseMemoryBindFlags;++typedef enum VkFenceCreateFlagBits {+ VK_FENCE_CREATE_SIGNALED_BIT = 0x00000001,+ VK_FENCE_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkFenceCreateFlagBits;+typedef VkFlags VkFenceCreateFlags;+typedef VkFlags VkSemaphoreCreateFlags;+typedef VkFlags VkEventCreateFlags;+typedef VkFlags VkQueryPoolCreateFlags;++typedef enum VkQueryPipelineStatisticFlagBits {+ VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT = 0x00000001,+ VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT = 0x00000002,+ VK_QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT = 0x00000004,+ VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_INVOCATIONS_BIT = 0x00000008,+ VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT = 0x00000010,+ VK_QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT = 0x00000020,+ VK_QUERY_PIPELINE_STATISTIC_CLIPPING_PRIMITIVES_BIT = 0x00000040,+ VK_QUERY_PIPELINE_STATISTIC_FRAGMENT_SHADER_INVOCATIONS_BIT = 0x00000080,+ VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT = 0x00000100,+ VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT = 0x00000200,+ VK_QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT = 0x00000400,+ VK_QUERY_PIPELINE_STATISTIC_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkQueryPipelineStatisticFlagBits;+typedef VkFlags VkQueryPipelineStatisticFlags;++typedef enum VkQueryResultFlagBits {+ VK_QUERY_RESULT_64_BIT = 0x00000001,+ VK_QUERY_RESULT_WAIT_BIT = 0x00000002,+ VK_QUERY_RESULT_WITH_AVAILABILITY_BIT = 0x00000004,+ VK_QUERY_RESULT_PARTIAL_BIT = 0x00000008,+ VK_QUERY_RESULT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkQueryResultFlagBits;+typedef VkFlags VkQueryResultFlags;++typedef enum VkBufferCreateFlagBits {+ VK_BUFFER_CREATE_SPARSE_BINDING_BIT = 0x00000001,+ VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT = 0x00000002,+ VK_BUFFER_CREATE_SPARSE_ALIASED_BIT = 0x00000004,+ VK_BUFFER_CREATE_PROTECTED_BIT = 0x00000008,+ VK_BUFFER_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkBufferCreateFlagBits;+typedef VkFlags VkBufferCreateFlags;++typedef enum VkBufferUsageFlagBits {+ VK_BUFFER_USAGE_TRANSFER_SRC_BIT = 0x00000001,+ VK_BUFFER_USAGE_TRANSFER_DST_BIT = 0x00000002,+ VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT = 0x00000004,+ VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT = 0x00000008,+ VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT = 0x00000010,+ VK_BUFFER_USAGE_STORAGE_BUFFER_BIT = 0x00000020,+ VK_BUFFER_USAGE_INDEX_BUFFER_BIT = 0x00000040,+ VK_BUFFER_USAGE_VERTEX_BUFFER_BIT = 0x00000080,+ VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT = 0x00000100,+ VK_BUFFER_USAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkBufferUsageFlagBits;+typedef VkFlags VkBufferUsageFlags;+typedef VkFlags VkBufferViewCreateFlags;+typedef VkFlags VkImageViewCreateFlags;+typedef VkFlags VkShaderModuleCreateFlags;+typedef VkFlags VkPipelineCacheCreateFlags;++typedef enum VkPipelineCreateFlagBits {+ VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT = 0x00000001,+ VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT = 0x00000002,+ VK_PIPELINE_CREATE_DERIVATIVE_BIT = 0x00000004,+ VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT = 0x00000008,+ VK_PIPELINE_CREATE_DISPATCH_BASE = 0x00000010,+ VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHR = VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT,+ VK_PIPELINE_CREATE_DISPATCH_BASE_KHR = VK_PIPELINE_CREATE_DISPATCH_BASE,+ VK_PIPELINE_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkPipelineCreateFlagBits;+typedef VkFlags VkPipelineCreateFlags;+typedef VkFlags VkPipelineShaderStageCreateFlags;++typedef enum VkShaderStageFlagBits {+ VK_SHADER_STAGE_VERTEX_BIT = 0x00000001,+ VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT = 0x00000002,+ VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT = 0x00000004,+ VK_SHADER_STAGE_GEOMETRY_BIT = 0x00000008,+ VK_SHADER_STAGE_FRAGMENT_BIT = 0x00000010,+ VK_SHADER_STAGE_COMPUTE_BIT = 0x00000020,+ VK_SHADER_STAGE_ALL_GRAPHICS = 0x0000001F,+ VK_SHADER_STAGE_ALL = 0x7FFFFFFF,+ VK_SHADER_STAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkShaderStageFlagBits;+typedef VkFlags VkPipelineVertexInputStateCreateFlags;+typedef VkFlags VkPipelineInputAssemblyStateCreateFlags;+typedef VkFlags VkPipelineTessellationStateCreateFlags;+typedef VkFlags VkPipelineViewportStateCreateFlags;+typedef VkFlags VkPipelineRasterizationStateCreateFlags;++typedef enum VkCullModeFlagBits {+ VK_CULL_MODE_NONE = 0,+ VK_CULL_MODE_FRONT_BIT = 0x00000001,+ VK_CULL_MODE_BACK_BIT = 0x00000002,+ VK_CULL_MODE_FRONT_AND_BACK = 0x00000003,+ VK_CULL_MODE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkCullModeFlagBits;+typedef VkFlags VkCullModeFlags;+typedef VkFlags VkPipelineMultisampleStateCreateFlags;+typedef VkFlags VkPipelineDepthStencilStateCreateFlags;+typedef VkFlags VkPipelineColorBlendStateCreateFlags;++typedef enum VkColorComponentFlagBits {+ VK_COLOR_COMPONENT_R_BIT = 0x00000001,+ VK_COLOR_COMPONENT_G_BIT = 0x00000002,+ VK_COLOR_COMPONENT_B_BIT = 0x00000004,+ VK_COLOR_COMPONENT_A_BIT = 0x00000008,+ VK_COLOR_COMPONENT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkColorComponentFlagBits;+typedef VkFlags VkColorComponentFlags;+typedef VkFlags VkPipelineDynamicStateCreateFlags;+typedef VkFlags VkPipelineLayoutCreateFlags;+typedef VkFlags VkShaderStageFlags;+typedef VkFlags VkSamplerCreateFlags;++typedef enum VkDescriptorSetLayoutCreateFlagBits {+ VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR = 0x00000001,+ VK_DESCRIPTOR_SET_LAYOUT_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkDescriptorSetLayoutCreateFlagBits;+typedef VkFlags VkDescriptorSetLayoutCreateFlags;++typedef enum VkDescriptorPoolCreateFlagBits {+ VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT = 0x00000001,+ VK_DESCRIPTOR_POOL_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkDescriptorPoolCreateFlagBits;+typedef VkFlags VkDescriptorPoolCreateFlags;+typedef VkFlags VkDescriptorPoolResetFlags;+typedef VkFlags VkFramebufferCreateFlags;+typedef VkFlags VkRenderPassCreateFlags;++typedef enum VkAttachmentDescriptionFlagBits {+ VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT = 0x00000001,+ VK_ATTACHMENT_DESCRIPTION_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkAttachmentDescriptionFlagBits;+typedef VkFlags VkAttachmentDescriptionFlags;++typedef enum VkSubpassDescriptionFlagBits {+ VK_SUBPASS_DESCRIPTION_PER_VIEW_ATTRIBUTES_BIT_NVX = 0x00000001,+ VK_SUBPASS_DESCRIPTION_PER_VIEW_POSITION_X_ONLY_BIT_NVX = 0x00000002,+ VK_SUBPASS_DESCRIPTION_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkSubpassDescriptionFlagBits;+typedef VkFlags VkSubpassDescriptionFlags;++typedef enum VkAccessFlagBits {+ VK_ACCESS_INDIRECT_COMMAND_READ_BIT = 0x00000001,+ VK_ACCESS_INDEX_READ_BIT = 0x00000002,+ VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT = 0x00000004,+ VK_ACCESS_UNIFORM_READ_BIT = 0x00000008,+ VK_ACCESS_INPUT_ATTACHMENT_READ_BIT = 0x00000010,+ VK_ACCESS_SHADER_READ_BIT = 0x00000020,+ VK_ACCESS_SHADER_WRITE_BIT = 0x00000040,+ VK_ACCESS_COLOR_ATTACHMENT_READ_BIT = 0x00000080,+ VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT = 0x00000100,+ VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT = 0x00000200,+ VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT = 0x00000400,+ VK_ACCESS_TRANSFER_READ_BIT = 0x00000800,+ VK_ACCESS_TRANSFER_WRITE_BIT = 0x00001000,+ VK_ACCESS_HOST_READ_BIT = 0x00002000,+ VK_ACCESS_HOST_WRITE_BIT = 0x00004000,+ VK_ACCESS_MEMORY_READ_BIT = 0x00008000,+ VK_ACCESS_MEMORY_WRITE_BIT = 0x00010000,+ VK_ACCESS_COMMAND_PROCESS_READ_BIT_NVX = 0x00020000,+ VK_ACCESS_COMMAND_PROCESS_WRITE_BIT_NVX = 0x00040000,+ VK_ACCESS_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT = 0x00080000,+ VK_ACCESS_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkAccessFlagBits;+typedef VkFlags VkAccessFlags;++typedef enum VkDependencyFlagBits {+ VK_DEPENDENCY_BY_REGION_BIT = 0x00000001,+ VK_DEPENDENCY_DEVICE_GROUP_BIT = 0x00000004,+ VK_DEPENDENCY_VIEW_LOCAL_BIT = 0x00000002,+ VK_DEPENDENCY_VIEW_LOCAL_BIT_KHR = VK_DEPENDENCY_VIEW_LOCAL_BIT,+ VK_DEPENDENCY_DEVICE_GROUP_BIT_KHR = VK_DEPENDENCY_DEVICE_GROUP_BIT,+ VK_DEPENDENCY_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkDependencyFlagBits;+typedef VkFlags VkDependencyFlags;++typedef enum VkCommandPoolCreateFlagBits {+ VK_COMMAND_POOL_CREATE_TRANSIENT_BIT = 0x00000001,+ VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT = 0x00000002,+ VK_COMMAND_POOL_CREATE_PROTECTED_BIT = 0x00000004,+ VK_COMMAND_POOL_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkCommandPoolCreateFlagBits;+typedef VkFlags VkCommandPoolCreateFlags;++typedef enum VkCommandPoolResetFlagBits {+ VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT = 0x00000001,+ VK_COMMAND_POOL_RESET_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkCommandPoolResetFlagBits;+typedef VkFlags VkCommandPoolResetFlags;++typedef enum VkCommandBufferUsageFlagBits {+ VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT = 0x00000001,+ VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT = 0x00000002,+ VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT = 0x00000004,+ VK_COMMAND_BUFFER_USAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkCommandBufferUsageFlagBits;+typedef VkFlags VkCommandBufferUsageFlags;++typedef enum VkQueryControlFlagBits {+ VK_QUERY_CONTROL_PRECISE_BIT = 0x00000001,+ VK_QUERY_CONTROL_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkQueryControlFlagBits;+typedef VkFlags VkQueryControlFlags;++typedef enum VkCommandBufferResetFlagBits {+ VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT = 0x00000001,+ VK_COMMAND_BUFFER_RESET_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkCommandBufferResetFlagBits;+typedef VkFlags VkCommandBufferResetFlags;++typedef enum VkStencilFaceFlagBits {+ VK_STENCIL_FACE_FRONT_BIT = 0x00000001,+ VK_STENCIL_FACE_BACK_BIT = 0x00000002,+ VK_STENCIL_FRONT_AND_BACK = 0x00000003,+ VK_STENCIL_FACE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkStencilFaceFlagBits;+typedef VkFlags VkStencilFaceFlags;++typedef struct VkApplicationInfo {+ VkStructureType sType;+ const void* pNext;+ const char* pApplicationName;+ uint32_t applicationVersion;+ const char* pEngineName;+ uint32_t engineVersion;+ uint32_t apiVersion;+} VkApplicationInfo;++typedef struct VkInstanceCreateInfo {+ VkStructureType sType;+ const void* pNext;+ VkInstanceCreateFlags flags;+ const VkApplicationInfo* pApplicationInfo;+ uint32_t enabledLayerCount;+ const char* const* ppEnabledLayerNames;+ uint32_t enabledExtensionCount;+ const char* const* ppEnabledExtensionNames;+} VkInstanceCreateInfo;++typedef void* (VKAPI_PTR *PFN_vkAllocationFunction)(+ void* pUserData,+ size_t size,+ size_t alignment,+ VkSystemAllocationScope allocationScope);++typedef void* (VKAPI_PTR *PFN_vkReallocationFunction)(+ void* pUserData,+ void* pOriginal,+ size_t size,+ size_t alignment,+ VkSystemAllocationScope allocationScope);++typedef void (VKAPI_PTR *PFN_vkFreeFunction)(+ void* pUserData,+ void* pMemory);++typedef void (VKAPI_PTR *PFN_vkInternalAllocationNotification)(+ void* pUserData,+ size_t size,+ VkInternalAllocationType allocationType,+ VkSystemAllocationScope allocationScope);++typedef void (VKAPI_PTR *PFN_vkInternalFreeNotification)(+ void* pUserData,+ size_t size,+ VkInternalAllocationType allocationType,+ VkSystemAllocationScope allocationScope);++typedef struct VkAllocationCallbacks {+ void* pUserData;+ PFN_vkAllocationFunction pfnAllocation;+ PFN_vkReallocationFunction pfnReallocation;+ PFN_vkFreeFunction pfnFree;+ PFN_vkInternalAllocationNotification pfnInternalAllocation;+ PFN_vkInternalFreeNotification pfnInternalFree;+} VkAllocationCallbacks;++typedef struct VkPhysicalDeviceFeatures {+ VkBool32 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;+} VkPhysicalDeviceFeatures;++typedef struct VkFormatProperties {+ VkFormatFeatureFlags linearTilingFeatures;+ VkFormatFeatureFlags optimalTilingFeatures;+ VkFormatFeatureFlags bufferFeatures;+} VkFormatProperties;++typedef struct VkExtent3D {+ uint32_t width;+ uint32_t height;+ uint32_t depth;+} VkExtent3D;++typedef struct VkImageFormatProperties {+ VkExtent3D maxExtent;+ uint32_t maxMipLevels;+ uint32_t maxArrayLayers;+ VkSampleCountFlags sampleCounts;+ VkDeviceSize maxResourceSize;+} VkImageFormatProperties;++typedef struct VkPhysicalDeviceLimits {+ uint32_t maxImageDimension1D;+ uint32_t maxImageDimension2D;+ uint32_t maxImageDimension3D;+ uint32_t maxImageDimensionCube;+ uint32_t maxImageArrayLayers;+ uint32_t maxTexelBufferElements;+ uint32_t maxUniformBufferRange;+ uint32_t maxStorageBufferRange;+ uint32_t maxPushConstantsSize;+ uint32_t maxMemoryAllocationCount;+ uint32_t maxSamplerAllocationCount;+ VkDeviceSize bufferImageGranularity;+ VkDeviceSize sparseAddressSpaceSize;+ uint32_t maxBoundDescriptorSets;+ uint32_t maxPerStageDescriptorSamplers;+ uint32_t maxPerStageDescriptorUniformBuffers;+ uint32_t maxPerStageDescriptorStorageBuffers;+ uint32_t maxPerStageDescriptorSampledImages;+ uint32_t maxPerStageDescriptorStorageImages;+ uint32_t maxPerStageDescriptorInputAttachments;+ uint32_t maxPerStageResources;+ uint32_t maxDescriptorSetSamplers;+ uint32_t maxDescriptorSetUniformBuffers;+ uint32_t maxDescriptorSetUniformBuffersDynamic;+ uint32_t maxDescriptorSetStorageBuffers;+ uint32_t maxDescriptorSetStorageBuffersDynamic;+ uint32_t maxDescriptorSetSampledImages;+ uint32_t maxDescriptorSetStorageImages;+ uint32_t maxDescriptorSetInputAttachments;+ uint32_t maxVertexInputAttributes;+ uint32_t maxVertexInputBindings;+ uint32_t maxVertexInputAttributeOffset;+ uint32_t maxVertexInputBindingStride;+ uint32_t maxVertexOutputComponents;+ uint32_t maxTessellationGenerationLevel;+ uint32_t maxTessellationPatchSize;+ uint32_t maxTessellationControlPerVertexInputComponents;+ uint32_t maxTessellationControlPerVertexOutputComponents;+ uint32_t maxTessellationControlPerPatchOutputComponents;+ uint32_t maxTessellationControlTotalOutputComponents;+ uint32_t maxTessellationEvaluationInputComponents;+ uint32_t maxTessellationEvaluationOutputComponents;+ uint32_t maxGeometryShaderInvocations;+ uint32_t maxGeometryInputComponents;+ uint32_t maxGeometryOutputComponents;+ uint32_t maxGeometryOutputVertices;+ uint32_t maxGeometryTotalOutputComponents;+ uint32_t maxFragmentInputComponents;+ uint32_t maxFragmentOutputAttachments;+ uint32_t maxFragmentDualSrcAttachments;+ uint32_t maxFragmentCombinedOutputResources;+ uint32_t maxComputeSharedMemorySize;+ uint32_t maxComputeWorkGroupCount[3];+ uint32_t maxComputeWorkGroupInvocations;+ uint32_t maxComputeWorkGroupSize[3];+ uint32_t subPixelPrecisionBits;+ uint32_t subTexelPrecisionBits;+ uint32_t mipmapPrecisionBits;+ uint32_t maxDrawIndexedIndexValue;+ uint32_t maxDrawIndirectCount;+ float maxSamplerLodBias;+ float maxSamplerAnisotropy;+ uint32_t maxViewports;+ uint32_t maxViewportDimensions[2];+ float viewportBoundsRange[2];+ uint32_t viewportSubPixelBits;+ size_t minMemoryMapAlignment;+ VkDeviceSize minTexelBufferOffsetAlignment;+ VkDeviceSize minUniformBufferOffsetAlignment;+ VkDeviceSize minStorageBufferOffsetAlignment;+ int32_t minTexelOffset;+ uint32_t maxTexelOffset;+ int32_t minTexelGatherOffset;+ uint32_t maxTexelGatherOffset;+ float minInterpolationOffset;+ float maxInterpolationOffset;+ uint32_t subPixelInterpolationOffsetBits;+ uint32_t maxFramebufferWidth;+ uint32_t maxFramebufferHeight;+ uint32_t maxFramebufferLayers;+ VkSampleCountFlags framebufferColorSampleCounts;+ VkSampleCountFlags framebufferDepthSampleCounts;+ VkSampleCountFlags framebufferStencilSampleCounts;+ VkSampleCountFlags framebufferNoAttachmentsSampleCounts;+ uint32_t maxColorAttachments;+ VkSampleCountFlags sampledImageColorSampleCounts;+ VkSampleCountFlags sampledImageIntegerSampleCounts;+ VkSampleCountFlags sampledImageDepthSampleCounts;+ VkSampleCountFlags sampledImageStencilSampleCounts;+ VkSampleCountFlags storageImageSampleCounts;+ uint32_t maxSampleMaskWords;+ VkBool32 timestampComputeAndGraphics;+ float timestampPeriod;+ uint32_t maxClipDistances;+ uint32_t maxCullDistances;+ uint32_t maxCombinedClipAndCullDistances;+ uint32_t discreteQueuePriorities;+ float pointSizeRange[2];+ float lineWidthRange[2];+ float pointSizeGranularity;+ float lineWidthGranularity;+ VkBool32 strictLines;+ VkBool32 standardSampleLocations;+ VkDeviceSize optimalBufferCopyOffsetAlignment;+ VkDeviceSize optimalBufferCopyRowPitchAlignment;+ VkDeviceSize nonCoherentAtomSize;+} VkPhysicalDeviceLimits;++typedef struct VkPhysicalDeviceSparseProperties {+ VkBool32 residencyStandard2DBlockShape;+ VkBool32 residencyStandard2DMultisampleBlockShape;+ VkBool32 residencyStandard3DBlockShape;+ VkBool32 residencyAlignedMipSize;+ VkBool32 residencyNonResidentStrict;+} VkPhysicalDeviceSparseProperties;++typedef struct VkPhysicalDeviceProperties {+ uint32_t apiVersion;+ uint32_t driverVersion;+ uint32_t vendorID;+ uint32_t deviceID;+ VkPhysicalDeviceType deviceType;+ char deviceName[VK_MAX_PHYSICAL_DEVICE_NAME_SIZE];+ uint8_t pipelineCacheUUID[VK_UUID_SIZE];+ VkPhysicalDeviceLimits limits;+ VkPhysicalDeviceSparseProperties sparseProperties;+} VkPhysicalDeviceProperties;++typedef struct VkQueueFamilyProperties {+ VkQueueFlags queueFlags;+ uint32_t queueCount;+ uint32_t timestampValidBits;+ VkExtent3D minImageTransferGranularity;+} VkQueueFamilyProperties;++typedef struct VkMemoryType {+ VkMemoryPropertyFlags propertyFlags;+ uint32_t heapIndex;+} VkMemoryType;++typedef struct VkMemoryHeap {+ VkDeviceSize size;+ VkMemoryHeapFlags flags;+} VkMemoryHeap;++typedef struct VkPhysicalDeviceMemoryProperties {+ uint32_t memoryTypeCount;+ VkMemoryType memoryTypes[VK_MAX_MEMORY_TYPES];+ uint32_t memoryHeapCount;+ VkMemoryHeap memoryHeaps[VK_MAX_MEMORY_HEAPS];+} VkPhysicalDeviceMemoryProperties;++typedef void (VKAPI_PTR *PFN_vkVoidFunction)(void);+typedef struct VkDeviceQueueCreateInfo {+ VkStructureType sType;+ const void* pNext;+ VkDeviceQueueCreateFlags flags;+ uint32_t queueFamilyIndex;+ uint32_t queueCount;+ const float* pQueuePriorities;+} VkDeviceQueueCreateInfo;++typedef struct VkDeviceCreateInfo {+ VkStructureType sType;+ const void* pNext;+ VkDeviceCreateFlags flags;+ uint32_t queueCreateInfoCount;+ const VkDeviceQueueCreateInfo* pQueueCreateInfos;+ uint32_t enabledLayerCount;+ const char* const* ppEnabledLayerNames;+ uint32_t enabledExtensionCount;+ const char* const* ppEnabledExtensionNames;+ const VkPhysicalDeviceFeatures* pEnabledFeatures;+} VkDeviceCreateInfo;++typedef struct VkExtensionProperties {+ char extensionName[VK_MAX_EXTENSION_NAME_SIZE];+ uint32_t specVersion;+} VkExtensionProperties;++typedef struct VkLayerProperties {+ char layerName[VK_MAX_EXTENSION_NAME_SIZE];+ uint32_t specVersion;+ uint32_t implementationVersion;+ char description[VK_MAX_DESCRIPTION_SIZE];+} VkLayerProperties;++typedef struct VkSubmitInfo {+ VkStructureType sType;+ const void* pNext;+ uint32_t waitSemaphoreCount;+ const VkSemaphore* pWaitSemaphores;+ const VkPipelineStageFlags* pWaitDstStageMask;+ uint32_t commandBufferCount;+ const VkCommandBuffer* pCommandBuffers;+ uint32_t signalSemaphoreCount;+ const VkSemaphore* pSignalSemaphores;+} VkSubmitInfo;++typedef struct VkMemoryAllocateInfo {+ VkStructureType sType;+ const void* pNext;+ VkDeviceSize allocationSize;+ uint32_t memoryTypeIndex;+} VkMemoryAllocateInfo;++typedef struct VkMappedMemoryRange {+ VkStructureType sType;+ const void* pNext;+ VkDeviceMemory memory;+ VkDeviceSize offset;+ VkDeviceSize size;+} VkMappedMemoryRange;++typedef struct VkMemoryRequirements {+ VkDeviceSize size;+ VkDeviceSize alignment;+ uint32_t memoryTypeBits;+} VkMemoryRequirements;++typedef struct VkSparseImageFormatProperties {+ VkImageAspectFlags aspectMask;+ VkExtent3D imageGranularity;+ VkSparseImageFormatFlags flags;+} VkSparseImageFormatProperties;++typedef struct VkSparseImageMemoryRequirements {+ VkSparseImageFormatProperties formatProperties;+ uint32_t imageMipTailFirstLod;+ VkDeviceSize imageMipTailSize;+ VkDeviceSize imageMipTailOffset;+ VkDeviceSize imageMipTailStride;+} VkSparseImageMemoryRequirements;++typedef struct VkSparseMemoryBind {+ VkDeviceSize resourceOffset;+ VkDeviceSize size;+ VkDeviceMemory memory;+ VkDeviceSize memoryOffset;+ VkSparseMemoryBindFlags flags;+} VkSparseMemoryBind;++typedef struct VkSparseBufferMemoryBindInfo {+ VkBuffer buffer;+ uint32_t bindCount;+ const VkSparseMemoryBind* pBinds;+} VkSparseBufferMemoryBindInfo;++typedef struct VkSparseImageOpaqueMemoryBindInfo {+ VkImage image;+ uint32_t bindCount;+ const VkSparseMemoryBind* pBinds;+} VkSparseImageOpaqueMemoryBindInfo;++typedef struct VkImageSubresource {+ VkImageAspectFlags aspectMask;+ uint32_t mipLevel;+ uint32_t arrayLayer;+} VkImageSubresource;++typedef struct VkOffset3D {+ int32_t x;+ int32_t y;+ int32_t z;+} VkOffset3D;++typedef struct VkSparseImageMemoryBind {+ VkImageSubresource subresource;+ VkOffset3D offset;+ VkExtent3D extent;+ VkDeviceMemory memory;+ VkDeviceSize memoryOffset;+ VkSparseMemoryBindFlags flags;+} VkSparseImageMemoryBind;++typedef struct VkSparseImageMemoryBindInfo {+ VkImage image;+ uint32_t bindCount;+ const VkSparseImageMemoryBind* pBinds;+} VkSparseImageMemoryBindInfo;++typedef struct VkBindSparseInfo {+ VkStructureType sType;+ const void* pNext;+ uint32_t waitSemaphoreCount;+ const VkSemaphore* pWaitSemaphores;+ uint32_t bufferBindCount;+ const VkSparseBufferMemoryBindInfo* pBufferBinds;+ uint32_t imageOpaqueBindCount;+ const VkSparseImageOpaqueMemoryBindInfo* pImageOpaqueBinds;+ uint32_t imageBindCount;+ const VkSparseImageMemoryBindInfo* pImageBinds;+ uint32_t signalSemaphoreCount;+ const VkSemaphore* pSignalSemaphores;+} VkBindSparseInfo;++typedef struct VkFenceCreateInfo {+ VkStructureType sType;+ const void* pNext;+ VkFenceCreateFlags flags;+} VkFenceCreateInfo;++typedef struct VkSemaphoreCreateInfo {+ VkStructureType sType;+ const void* pNext;+ VkSemaphoreCreateFlags flags;+} VkSemaphoreCreateInfo;++typedef struct VkEventCreateInfo {+ VkStructureType sType;+ const void* pNext;+ VkEventCreateFlags flags;+} VkEventCreateInfo;++typedef struct VkQueryPoolCreateInfo {+ VkStructureType sType;+ const void* pNext;+ VkQueryPoolCreateFlags flags;+ VkQueryType queryType;+ uint32_t queryCount;+ VkQueryPipelineStatisticFlags pipelineStatistics;+} VkQueryPoolCreateInfo;++typedef struct VkBufferCreateInfo {+ VkStructureType sType;+ const void* pNext;+ VkBufferCreateFlags flags;+ VkDeviceSize size;+ VkBufferUsageFlags usage;+ VkSharingMode sharingMode;+ uint32_t queueFamilyIndexCount;+ const uint32_t* pQueueFamilyIndices;+} VkBufferCreateInfo;++typedef struct VkBufferViewCreateInfo {+ VkStructureType sType;+ const void* pNext;+ VkBufferViewCreateFlags flags;+ VkBuffer buffer;+ VkFormat format;+ VkDeviceSize offset;+ VkDeviceSize range;+} VkBufferViewCreateInfo;++typedef struct VkImageCreateInfo {+ VkStructureType sType;+ const void* pNext;+ VkImageCreateFlags flags;+ VkImageType imageType;+ VkFormat format;+ VkExtent3D extent;+ uint32_t mipLevels;+ uint32_t arrayLayers;+ VkSampleCountFlagBits samples;+ VkImageTiling tiling;+ VkImageUsageFlags usage;+ VkSharingMode sharingMode;+ uint32_t queueFamilyIndexCount;+ const uint32_t* pQueueFamilyIndices;+ VkImageLayout initialLayout;+} VkImageCreateInfo;++typedef struct VkSubresourceLayout {+ VkDeviceSize offset;+ VkDeviceSize size;+ VkDeviceSize rowPitch;+ VkDeviceSize arrayPitch;+ VkDeviceSize depthPitch;+} VkSubresourceLayout;++typedef struct VkComponentMapping {+ VkComponentSwizzle r;+ VkComponentSwizzle g;+ VkComponentSwizzle b;+ VkComponentSwizzle a;+} VkComponentMapping;++typedef struct VkImageSubresourceRange {+ VkImageAspectFlags aspectMask;+ uint32_t baseMipLevel;+ uint32_t levelCount;+ uint32_t baseArrayLayer;+ uint32_t layerCount;+} VkImageSubresourceRange;++typedef struct VkImageViewCreateInfo {+ VkStructureType sType;+ const void* pNext;+ VkImageViewCreateFlags flags;+ VkImage image;+ VkImageViewType viewType;+ VkFormat format;+ VkComponentMapping components;+ VkImageSubresourceRange subresourceRange;+} VkImageViewCreateInfo;++typedef struct VkShaderModuleCreateInfo {+ VkStructureType sType;+ const void* pNext;+ VkShaderModuleCreateFlags flags;+ size_t codeSize;+ const uint32_t* pCode;+} VkShaderModuleCreateInfo;++typedef struct VkPipelineCacheCreateInfo {+ VkStructureType sType;+ const void* pNext;+ VkPipelineCacheCreateFlags flags;+ size_t initialDataSize;+ const void* pInitialData;+} VkPipelineCacheCreateInfo;++typedef struct VkSpecializationMapEntry {+ uint32_t constantID;+ uint32_t offset;+ size_t size;+} VkSpecializationMapEntry;++typedef struct VkSpecializationInfo {+ uint32_t mapEntryCount;+ const VkSpecializationMapEntry* pMapEntries;+ size_t dataSize;+ const void* pData;+} VkSpecializationInfo;++typedef struct VkPipelineShaderStageCreateInfo {+ VkStructureType sType;+ const void* pNext;+ VkPipelineShaderStageCreateFlags flags;+ VkShaderStageFlagBits stage;+ VkShaderModule module;+ const char* pName;+ const VkSpecializationInfo* pSpecializationInfo;+} VkPipelineShaderStageCreateInfo;++typedef struct VkVertexInputBindingDescription {+ uint32_t binding;+ uint32_t stride;+ VkVertexInputRate inputRate;+} VkVertexInputBindingDescription;++typedef struct VkVertexInputAttributeDescription {+ uint32_t location;+ uint32_t binding;+ VkFormat format;+ uint32_t offset;+} VkVertexInputAttributeDescription;++typedef struct VkPipelineVertexInputStateCreateInfo {+ VkStructureType sType;+ const void* pNext;+ VkPipelineVertexInputStateCreateFlags flags;+ uint32_t vertexBindingDescriptionCount;+ const VkVertexInputBindingDescription* pVertexBindingDescriptions;+ uint32_t vertexAttributeDescriptionCount;+ const VkVertexInputAttributeDescription* pVertexAttributeDescriptions;+} VkPipelineVertexInputStateCreateInfo;++typedef struct VkPipelineInputAssemblyStateCreateInfo {+ VkStructureType sType;+ const void* pNext;+ VkPipelineInputAssemblyStateCreateFlags flags;+ VkPrimitiveTopology topology;+ VkBool32 primitiveRestartEnable;+} VkPipelineInputAssemblyStateCreateInfo;++typedef struct VkPipelineTessellationStateCreateInfo {+ VkStructureType sType;+ const void* pNext;+ VkPipelineTessellationStateCreateFlags flags;+ uint32_t patchControlPoints;+} VkPipelineTessellationStateCreateInfo;++typedef struct VkViewport {+ float x;+ float y;+ float width;+ float height;+ float minDepth;+ float maxDepth;+} VkViewport;++typedef struct VkOffset2D {+ int32_t x;+ int32_t y;+} VkOffset2D;++typedef struct VkExtent2D {+ uint32_t width;+ uint32_t height;+} VkExtent2D;++typedef struct VkRect2D {+ VkOffset2D offset;+ VkExtent2D extent;+} VkRect2D;++typedef struct VkPipelineViewportStateCreateInfo {+ VkStructureType sType;+ const void* pNext;+ VkPipelineViewportStateCreateFlags flags;+ uint32_t viewportCount;+ const VkViewport* pViewports;+ uint32_t scissorCount;+ const VkRect2D* pScissors;+} VkPipelineViewportStateCreateInfo;++typedef struct VkPipelineRasterizationStateCreateInfo {+ VkStructureType sType;+ const void* pNext;+ VkPipelineRasterizationStateCreateFlags flags;+ VkBool32 depthClampEnable;+ VkBool32 rasterizerDiscardEnable;+ VkPolygonMode polygonMode;+ VkCullModeFlags cullMode;+ VkFrontFace frontFace;+ VkBool32 depthBiasEnable;+ float depthBiasConstantFactor;+ float depthBiasClamp;+ float depthBiasSlopeFactor;+ float lineWidth;+} VkPipelineRasterizationStateCreateInfo;++typedef struct VkPipelineMultisampleStateCreateInfo {+ VkStructureType sType;+ const void* pNext;+ VkPipelineMultisampleStateCreateFlags flags;+ VkSampleCountFlagBits rasterizationSamples;+ VkBool32 sampleShadingEnable;+ float minSampleShading;+ const VkSampleMask* pSampleMask;+ VkBool32 alphaToCoverageEnable;+ VkBool32 alphaToOneEnable;+} VkPipelineMultisampleStateCreateInfo;++typedef struct VkStencilOpState {+ VkStencilOp failOp;+ VkStencilOp passOp;+ VkStencilOp depthFailOp;+ VkCompareOp compareOp;+ uint32_t compareMask;+ uint32_t writeMask;+ uint32_t reference;+} VkStencilOpState;++typedef struct VkPipelineDepthStencilStateCreateInfo {+ VkStructureType sType;+ const void* pNext;+ VkPipelineDepthStencilStateCreateFlags flags;+ VkBool32 depthTestEnable;+ VkBool32 depthWriteEnable;+ VkCompareOp depthCompareOp;+ VkBool32 depthBoundsTestEnable;+ VkBool32 stencilTestEnable;+ VkStencilOpState front;+ VkStencilOpState back;+ float minDepthBounds;+ float maxDepthBounds;+} VkPipelineDepthStencilStateCreateInfo;++typedef struct VkPipelineColorBlendAttachmentState {+ VkBool32 blendEnable;+ VkBlendFactor srcColorBlendFactor;+ VkBlendFactor dstColorBlendFactor;+ VkBlendOp colorBlendOp;+ VkBlendFactor srcAlphaBlendFactor;+ VkBlendFactor dstAlphaBlendFactor;+ VkBlendOp alphaBlendOp;+ VkColorComponentFlags colorWriteMask;+} VkPipelineColorBlendAttachmentState;++typedef struct VkPipelineColorBlendStateCreateInfo {+ VkStructureType sType;+ const void* pNext;+ VkPipelineColorBlendStateCreateFlags flags;+ VkBool32 logicOpEnable;+ VkLogicOp logicOp;+ uint32_t attachmentCount;+ const VkPipelineColorBlendAttachmentState* pAttachments;+ float blendConstants[4];+} VkPipelineColorBlendStateCreateInfo;++typedef struct VkPipelineDynamicStateCreateInfo {+ VkStructureType sType;+ const void* pNext;+ VkPipelineDynamicStateCreateFlags flags;+ uint32_t dynamicStateCount;+ const VkDynamicState* pDynamicStates;+} VkPipelineDynamicStateCreateInfo;++typedef struct VkGraphicsPipelineCreateInfo {+ VkStructureType sType;+ const void* pNext;+ VkPipelineCreateFlags flags;+ uint32_t stageCount;+ const VkPipelineShaderStageCreateInfo* pStages;+ const VkPipelineVertexInputStateCreateInfo* pVertexInputState;+ const VkPipelineInputAssemblyStateCreateInfo* pInputAssemblyState;+ const VkPipelineTessellationStateCreateInfo* pTessellationState;+ const VkPipelineViewportStateCreateInfo* pViewportState;+ const VkPipelineRasterizationStateCreateInfo* pRasterizationState;+ const VkPipelineMultisampleStateCreateInfo* pMultisampleState;+ const VkPipelineDepthStencilStateCreateInfo* pDepthStencilState;+ const VkPipelineColorBlendStateCreateInfo* pColorBlendState;+ const VkPipelineDynamicStateCreateInfo* pDynamicState;+ VkPipelineLayout layout;+ VkRenderPass renderPass;+ uint32_t subpass;+ VkPipeline basePipelineHandle;+ int32_t basePipelineIndex;+} VkGraphicsPipelineCreateInfo;++typedef struct VkComputePipelineCreateInfo {+ VkStructureType sType;+ const void* pNext;+ VkPipelineCreateFlags flags;+ VkPipelineShaderStageCreateInfo stage;+ VkPipelineLayout layout;+ VkPipeline basePipelineHandle;+ int32_t basePipelineIndex;+} VkComputePipelineCreateInfo;++typedef struct VkPushConstantRange {+ VkShaderStageFlags stageFlags;+ uint32_t offset;+ uint32_t size;+} VkPushConstantRange;++typedef struct VkPipelineLayoutCreateInfo {+ VkStructureType sType;+ const void* pNext;+ VkPipelineLayoutCreateFlags flags;+ uint32_t setLayoutCount;+ const VkDescriptorSetLayout* pSetLayouts;+ uint32_t pushConstantRangeCount;+ const VkPushConstantRange* pPushConstantRanges;+} VkPipelineLayoutCreateInfo;++typedef struct VkSamplerCreateInfo {+ VkStructureType sType;+ const void* pNext;+ VkSamplerCreateFlags flags;+ VkFilter magFilter;+ VkFilter minFilter;+ VkSamplerMipmapMode mipmapMode;+ VkSamplerAddressMode addressModeU;+ VkSamplerAddressMode addressModeV;+ VkSamplerAddressMode addressModeW;+ float mipLodBias;+ VkBool32 anisotropyEnable;+ float maxAnisotropy;+ VkBool32 compareEnable;+ VkCompareOp compareOp;+ float minLod;+ float maxLod;+ VkBorderColor borderColor;+ VkBool32 unnormalizedCoordinates;+} VkSamplerCreateInfo;++typedef struct VkDescriptorSetLayoutBinding {+ uint32_t binding;+ VkDescriptorType descriptorType;+ uint32_t descriptorCount;+ VkShaderStageFlags stageFlags;+ const VkSampler* pImmutableSamplers;+} VkDescriptorSetLayoutBinding;++typedef struct VkDescriptorSetLayoutCreateInfo {+ VkStructureType sType;+ const void* pNext;+ VkDescriptorSetLayoutCreateFlags flags;+ uint32_t bindingCount;+ const VkDescriptorSetLayoutBinding* pBindings;+} VkDescriptorSetLayoutCreateInfo;++typedef struct VkDescriptorPoolSize {+ VkDescriptorType type;+ uint32_t descriptorCount;+} VkDescriptorPoolSize;++typedef struct VkDescriptorPoolCreateInfo {+ VkStructureType sType;+ const void* pNext;+ VkDescriptorPoolCreateFlags flags;+ uint32_t maxSets;+ uint32_t poolSizeCount;+ const VkDescriptorPoolSize* pPoolSizes;+} VkDescriptorPoolCreateInfo;++typedef struct VkDescriptorSetAllocateInfo {+ VkStructureType sType;+ const void* pNext;+ VkDescriptorPool descriptorPool;+ uint32_t descriptorSetCount;+ const VkDescriptorSetLayout* pSetLayouts;+} VkDescriptorSetAllocateInfo;++typedef struct VkDescriptorImageInfo {+ VkSampler sampler;+ VkImageView imageView;+ VkImageLayout imageLayout;+} VkDescriptorImageInfo;++typedef struct VkDescriptorBufferInfo {+ VkBuffer buffer;+ VkDeviceSize offset;+ VkDeviceSize range;+} VkDescriptorBufferInfo;++typedef struct VkWriteDescriptorSet {+ VkStructureType sType;+ const void* pNext;+ VkDescriptorSet dstSet;+ uint32_t dstBinding;+ uint32_t dstArrayElement;+ uint32_t descriptorCount;+ VkDescriptorType descriptorType;+ const VkDescriptorImageInfo* pImageInfo;+ const VkDescriptorBufferInfo* pBufferInfo;+ const VkBufferView* pTexelBufferView;+} VkWriteDescriptorSet;++typedef struct VkCopyDescriptorSet {+ VkStructureType sType;+ const void* pNext;+ VkDescriptorSet srcSet;+ uint32_t srcBinding;+ uint32_t srcArrayElement;+ VkDescriptorSet dstSet;+ uint32_t dstBinding;+ uint32_t dstArrayElement;+ uint32_t descriptorCount;+} VkCopyDescriptorSet;++typedef struct VkFramebufferCreateInfo {+ VkStructureType sType;+ const void* pNext;+ VkFramebufferCreateFlags flags;+ VkRenderPass renderPass;+ uint32_t attachmentCount;+ const VkImageView* pAttachments;+ uint32_t width;+ uint32_t height;+ uint32_t layers;+} VkFramebufferCreateInfo;++typedef struct VkAttachmentDescription {+ VkAttachmentDescriptionFlags flags;+ VkFormat format;+ VkSampleCountFlagBits samples;+ VkAttachmentLoadOp loadOp;+ VkAttachmentStoreOp storeOp;+ VkAttachmentLoadOp stencilLoadOp;+ VkAttachmentStoreOp stencilStoreOp;+ VkImageLayout initialLayout;+ VkImageLayout finalLayout;+} VkAttachmentDescription;++typedef struct VkAttachmentReference {+ uint32_t attachment;+ VkImageLayout layout;+} VkAttachmentReference;++typedef struct VkSubpassDescription {+ VkSubpassDescriptionFlags flags;+ VkPipelineBindPoint pipelineBindPoint;+ uint32_t inputAttachmentCount;+ const VkAttachmentReference* pInputAttachments;+ uint32_t colorAttachmentCount;+ const VkAttachmentReference* pColorAttachments;+ const VkAttachmentReference* pResolveAttachments;+ const VkAttachmentReference* pDepthStencilAttachment;+ uint32_t preserveAttachmentCount;+ const uint32_t* pPreserveAttachments;+} VkSubpassDescription;++typedef struct VkSubpassDependency {+ uint32_t srcSubpass;+ uint32_t dstSubpass;+ VkPipelineStageFlags srcStageMask;+ VkPipelineStageFlags dstStageMask;+ VkAccessFlags srcAccessMask;+ VkAccessFlags dstAccessMask;+ VkDependencyFlags dependencyFlags;+} VkSubpassDependency;++typedef struct VkRenderPassCreateInfo {+ VkStructureType sType;+ const void* pNext;+ VkRenderPassCreateFlags flags;+ uint32_t attachmentCount;+ const VkAttachmentDescription* pAttachments;+ uint32_t subpassCount;+ const VkSubpassDescription* pSubpasses;+ uint32_t dependencyCount;+ const VkSubpassDependency* pDependencies;+} VkRenderPassCreateInfo;++typedef struct VkCommandPoolCreateInfo {+ VkStructureType sType;+ const void* pNext;+ VkCommandPoolCreateFlags flags;+ uint32_t queueFamilyIndex;+} VkCommandPoolCreateInfo;++typedef struct VkCommandBufferAllocateInfo {+ VkStructureType sType;+ const void* pNext;+ VkCommandPool commandPool;+ VkCommandBufferLevel level;+ uint32_t commandBufferCount;+} VkCommandBufferAllocateInfo;++typedef struct VkCommandBufferInheritanceInfo {+ VkStructureType sType;+ const void* pNext;+ VkRenderPass renderPass;+ uint32_t subpass;+ VkFramebuffer framebuffer;+ VkBool32 occlusionQueryEnable;+ VkQueryControlFlags queryFlags;+ VkQueryPipelineStatisticFlags pipelineStatistics;+} VkCommandBufferInheritanceInfo;++typedef struct VkCommandBufferBeginInfo {+ VkStructureType sType;+ const void* pNext;+ VkCommandBufferUsageFlags flags;+ const VkCommandBufferInheritanceInfo* pInheritanceInfo;+} VkCommandBufferBeginInfo;++typedef struct VkBufferCopy {+ VkDeviceSize srcOffset;+ VkDeviceSize dstOffset;+ VkDeviceSize size;+} VkBufferCopy;++typedef struct VkImageSubresourceLayers {+ VkImageAspectFlags aspectMask;+ uint32_t mipLevel;+ uint32_t baseArrayLayer;+ uint32_t layerCount;+} VkImageSubresourceLayers;++typedef struct VkImageCopy {+ VkImageSubresourceLayers srcSubresource;+ VkOffset3D srcOffset;+ VkImageSubresourceLayers dstSubresource;+ VkOffset3D dstOffset;+ VkExtent3D extent;+} VkImageCopy;++typedef struct VkImageBlit {+ VkImageSubresourceLayers srcSubresource;+ VkOffset3D srcOffsets[2];+ VkImageSubresourceLayers dstSubresource;+ VkOffset3D dstOffsets[2];+} VkImageBlit;++typedef struct VkBufferImageCopy {+ VkDeviceSize bufferOffset;+ uint32_t bufferRowLength;+ uint32_t bufferImageHeight;+ VkImageSubresourceLayers imageSubresource;+ VkOffset3D imageOffset;+ VkExtent3D imageExtent;+} VkBufferImageCopy;++typedef union VkClearColorValue {+ float float32[4];+ int32_t int32[4];+ uint32_t uint32[4];+} VkClearColorValue;++typedef struct VkClearDepthStencilValue {+ float depth;+ uint32_t stencil;+} VkClearDepthStencilValue;++typedef union VkClearValue {+ VkClearColorValue color;+ VkClearDepthStencilValue depthStencil;+} VkClearValue;++typedef struct VkClearAttachment {+ VkImageAspectFlags aspectMask;+ uint32_t colorAttachment;+ VkClearValue clearValue;+} VkClearAttachment;++typedef struct VkClearRect {+ VkRect2D rect;+ uint32_t baseArrayLayer;+ uint32_t layerCount;+} VkClearRect;++typedef struct VkImageResolve {+ VkImageSubresourceLayers srcSubresource;+ VkOffset3D srcOffset;+ VkImageSubresourceLayers dstSubresource;+ VkOffset3D dstOffset;+ VkExtent3D extent;+} VkImageResolve;++typedef struct VkMemoryBarrier {+ VkStructureType sType;+ const void* pNext;+ VkAccessFlags srcAccessMask;+ VkAccessFlags dstAccessMask;+} VkMemoryBarrier;++typedef struct VkBufferMemoryBarrier {+ VkStructureType sType;+ const void* pNext;+ VkAccessFlags srcAccessMask;+ VkAccessFlags dstAccessMask;+ uint32_t srcQueueFamilyIndex;+ uint32_t dstQueueFamilyIndex;+ VkBuffer buffer;+ VkDeviceSize offset;+ VkDeviceSize size;+} VkBufferMemoryBarrier;++typedef struct VkImageMemoryBarrier {+ VkStructureType sType;+ const void* pNext;+ VkAccessFlags srcAccessMask;+ VkAccessFlags dstAccessMask;+ VkImageLayout oldLayout;+ VkImageLayout newLayout;+ uint32_t srcQueueFamilyIndex;+ uint32_t dstQueueFamilyIndex;+ VkImage image;+ VkImageSubresourceRange subresourceRange;+} VkImageMemoryBarrier;++typedef struct VkRenderPassBeginInfo {+ VkStructureType sType;+ const void* pNext;+ VkRenderPass renderPass;+ VkFramebuffer framebuffer;+ VkRect2D renderArea;+ uint32_t clearValueCount;+ const VkClearValue* pClearValues;+} VkRenderPassBeginInfo;++typedef struct VkDispatchIndirectCommand {+ uint32_t x;+ uint32_t y;+ uint32_t z;+} VkDispatchIndirectCommand;++typedef struct VkDrawIndexedIndirectCommand {+ uint32_t indexCount;+ uint32_t instanceCount;+ uint32_t firstIndex;+ int32_t vertexOffset;+ uint32_t firstInstance;+} VkDrawIndexedIndirectCommand;++typedef struct VkDrawIndirectCommand {+ uint32_t vertexCount;+ uint32_t instanceCount;+ uint32_t firstVertex;+ uint32_t firstInstance;+} VkDrawIndirectCommand;+++typedef VkResult (VKAPI_PTR *PFN_vkCreateInstance)(const VkInstanceCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkInstance* pInstance);+typedef void (VKAPI_PTR *PFN_vkDestroyInstance)(VkInstance instance, const VkAllocationCallbacks* pAllocator);+typedef VkResult (VKAPI_PTR *PFN_vkEnumeratePhysicalDevices)(VkInstance instance, uint32_t* pPhysicalDeviceCount, VkPhysicalDevice* pPhysicalDevices);+typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceFeatures)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceFeatures* pFeatures);+typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceFormatProperties)(VkPhysicalDevice physicalDevice, VkFormat format, VkFormatProperties* pFormatProperties);+typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceImageFormatProperties)(VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type, VkImageTiling tiling, VkImageUsageFlags usage, VkImageCreateFlags flags, VkImageFormatProperties* pImageFormatProperties);+typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceProperties)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceProperties* pProperties);+typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceQueueFamilyProperties)(VkPhysicalDevice physicalDevice, uint32_t* pQueueFamilyPropertyCount, VkQueueFamilyProperties* pQueueFamilyProperties);+typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceMemoryProperties)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceMemoryProperties* pMemoryProperties);+typedef PFN_vkVoidFunction (VKAPI_PTR *PFN_vkGetInstanceProcAddr)(VkInstance instance, const char* pName);+typedef PFN_vkVoidFunction (VKAPI_PTR *PFN_vkGetDeviceProcAddr)(VkDevice device, const char* pName);+typedef VkResult (VKAPI_PTR *PFN_vkCreateDevice)(VkPhysicalDevice physicalDevice, const VkDeviceCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDevice* pDevice);+typedef void (VKAPI_PTR *PFN_vkDestroyDevice)(VkDevice device, const VkAllocationCallbacks* pAllocator);+typedef VkResult (VKAPI_PTR *PFN_vkEnumerateInstanceExtensionProperties)(const char* pLayerName, uint32_t* pPropertyCount, VkExtensionProperties* pProperties);+typedef VkResult (VKAPI_PTR *PFN_vkEnumerateDeviceExtensionProperties)(VkPhysicalDevice physicalDevice, const char* pLayerName, uint32_t* pPropertyCount, VkExtensionProperties* pProperties);+typedef VkResult (VKAPI_PTR *PFN_vkEnumerateInstanceLayerProperties)(uint32_t* pPropertyCount, VkLayerProperties* pProperties);+typedef VkResult (VKAPI_PTR *PFN_vkEnumerateDeviceLayerProperties)(VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkLayerProperties* pProperties);+typedef void (VKAPI_PTR *PFN_vkGetDeviceQueue)(VkDevice device, uint32_t queueFamilyIndex, uint32_t queueIndex, VkQueue* pQueue);+typedef VkResult (VKAPI_PTR *PFN_vkQueueSubmit)(VkQueue queue, uint32_t submitCount, const VkSubmitInfo* pSubmits, VkFence fence);+typedef VkResult (VKAPI_PTR *PFN_vkQueueWaitIdle)(VkQueue queue);+typedef VkResult (VKAPI_PTR *PFN_vkDeviceWaitIdle)(VkDevice device);+typedef VkResult (VKAPI_PTR *PFN_vkAllocateMemory)(VkDevice device, const VkMemoryAllocateInfo* pAllocateInfo, const VkAllocationCallbacks* pAllocator, VkDeviceMemory* pMemory);+typedef void (VKAPI_PTR *PFN_vkFreeMemory)(VkDevice device, VkDeviceMemory memory, const VkAllocationCallbacks* pAllocator);+typedef VkResult (VKAPI_PTR *PFN_vkMapMemory)(VkDevice device, VkDeviceMemory memory, VkDeviceSize offset, VkDeviceSize size, VkMemoryMapFlags flags, void** ppData);+typedef void (VKAPI_PTR *PFN_vkUnmapMemory)(VkDevice device, VkDeviceMemory memory);+typedef VkResult (VKAPI_PTR *PFN_vkFlushMappedMemoryRanges)(VkDevice device, uint32_t memoryRangeCount, const VkMappedMemoryRange* pMemoryRanges);+typedef VkResult (VKAPI_PTR *PFN_vkInvalidateMappedMemoryRanges)(VkDevice device, uint32_t memoryRangeCount, const VkMappedMemoryRange* pMemoryRanges);+typedef void (VKAPI_PTR *PFN_vkGetDeviceMemoryCommitment)(VkDevice device, VkDeviceMemory memory, VkDeviceSize* pCommittedMemoryInBytes);+typedef VkResult (VKAPI_PTR *PFN_vkBindBufferMemory)(VkDevice device, VkBuffer buffer, VkDeviceMemory memory, VkDeviceSize memoryOffset);+typedef VkResult (VKAPI_PTR *PFN_vkBindImageMemory)(VkDevice device, VkImage image, VkDeviceMemory memory, VkDeviceSize memoryOffset);+typedef void (VKAPI_PTR *PFN_vkGetBufferMemoryRequirements)(VkDevice device, VkBuffer buffer, VkMemoryRequirements* pMemoryRequirements);+typedef void (VKAPI_PTR *PFN_vkGetImageMemoryRequirements)(VkDevice device, VkImage image, VkMemoryRequirements* pMemoryRequirements);+typedef void (VKAPI_PTR *PFN_vkGetImageSparseMemoryRequirements)(VkDevice device, VkImage image, uint32_t* pSparseMemoryRequirementCount, VkSparseImageMemoryRequirements* pSparseMemoryRequirements);+typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceSparseImageFormatProperties)(VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type, VkSampleCountFlagBits samples, VkImageUsageFlags usage, VkImageTiling tiling, uint32_t* pPropertyCount, VkSparseImageFormatProperties* pProperties);+typedef VkResult (VKAPI_PTR *PFN_vkQueueBindSparse)(VkQueue queue, uint32_t bindInfoCount, const VkBindSparseInfo* pBindInfo, VkFence fence);+typedef VkResult (VKAPI_PTR *PFN_vkCreateFence)(VkDevice device, const VkFenceCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkFence* pFence);+typedef void (VKAPI_PTR *PFN_vkDestroyFence)(VkDevice device, VkFence fence, const VkAllocationCallbacks* pAllocator);+typedef VkResult (VKAPI_PTR *PFN_vkResetFences)(VkDevice device, uint32_t fenceCount, const VkFence* pFences);+typedef VkResult (VKAPI_PTR *PFN_vkGetFenceStatus)(VkDevice device, VkFence fence);+typedef VkResult (VKAPI_PTR *PFN_vkWaitForFences)(VkDevice device, uint32_t fenceCount, const VkFence* pFences, VkBool32 waitAll, uint64_t timeout);+typedef VkResult (VKAPI_PTR *PFN_vkCreateSemaphore)(VkDevice device, const VkSemaphoreCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSemaphore* pSemaphore);+typedef void (VKAPI_PTR *PFN_vkDestroySemaphore)(VkDevice device, VkSemaphore semaphore, const VkAllocationCallbacks* pAllocator);+typedef VkResult (VKAPI_PTR *PFN_vkCreateEvent)(VkDevice device, const VkEventCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkEvent* pEvent);+typedef void (VKAPI_PTR *PFN_vkDestroyEvent)(VkDevice device, VkEvent event, const VkAllocationCallbacks* pAllocator);+typedef VkResult (VKAPI_PTR *PFN_vkGetEventStatus)(VkDevice device, VkEvent event);+typedef VkResult (VKAPI_PTR *PFN_vkSetEvent)(VkDevice device, VkEvent event);+typedef VkResult (VKAPI_PTR *PFN_vkResetEvent)(VkDevice device, VkEvent event);+typedef VkResult (VKAPI_PTR *PFN_vkCreateQueryPool)(VkDevice device, const VkQueryPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkQueryPool* pQueryPool);+typedef void (VKAPI_PTR *PFN_vkDestroyQueryPool)(VkDevice device, VkQueryPool queryPool, const VkAllocationCallbacks* pAllocator);+typedef VkResult (VKAPI_PTR *PFN_vkGetQueryPoolResults)(VkDevice device, VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount, size_t dataSize, void* pData, VkDeviceSize stride, VkQueryResultFlags flags);+typedef VkResult (VKAPI_PTR *PFN_vkCreateBuffer)(VkDevice device, const VkBufferCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkBuffer* pBuffer);+typedef void (VKAPI_PTR *PFN_vkDestroyBuffer)(VkDevice device, VkBuffer buffer, const VkAllocationCallbacks* pAllocator);+typedef VkResult (VKAPI_PTR *PFN_vkCreateBufferView)(VkDevice device, const VkBufferViewCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkBufferView* pView);+typedef void (VKAPI_PTR *PFN_vkDestroyBufferView)(VkDevice device, VkBufferView bufferView, const VkAllocationCallbacks* pAllocator);+typedef VkResult (VKAPI_PTR *PFN_vkCreateImage)(VkDevice device, const VkImageCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkImage* pImage);+typedef void (VKAPI_PTR *PFN_vkDestroyImage)(VkDevice device, VkImage image, const VkAllocationCallbacks* pAllocator);+typedef void (VKAPI_PTR *PFN_vkGetImageSubresourceLayout)(VkDevice device, VkImage image, const VkImageSubresource* pSubresource, VkSubresourceLayout* pLayout);+typedef VkResult (VKAPI_PTR *PFN_vkCreateImageView)(VkDevice device, const VkImageViewCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkImageView* pView);+typedef void (VKAPI_PTR *PFN_vkDestroyImageView)(VkDevice device, VkImageView imageView, const VkAllocationCallbacks* pAllocator);+typedef VkResult (VKAPI_PTR *PFN_vkCreateShaderModule)(VkDevice device, const VkShaderModuleCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkShaderModule* pShaderModule);+typedef void (VKAPI_PTR *PFN_vkDestroyShaderModule)(VkDevice device, VkShaderModule shaderModule, const VkAllocationCallbacks* pAllocator);+typedef VkResult (VKAPI_PTR *PFN_vkCreatePipelineCache)(VkDevice device, const VkPipelineCacheCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkPipelineCache* pPipelineCache);+typedef void (VKAPI_PTR *PFN_vkDestroyPipelineCache)(VkDevice device, VkPipelineCache pipelineCache, const VkAllocationCallbacks* pAllocator);+typedef VkResult (VKAPI_PTR *PFN_vkGetPipelineCacheData)(VkDevice device, VkPipelineCache pipelineCache, size_t* pDataSize, void* pData);+typedef VkResult (VKAPI_PTR *PFN_vkMergePipelineCaches)(VkDevice device, VkPipelineCache dstCache, uint32_t srcCacheCount, const VkPipelineCache* pSrcCaches);+typedef VkResult (VKAPI_PTR *PFN_vkCreateGraphicsPipelines)(VkDevice device, VkPipelineCache pipelineCache, uint32_t createInfoCount, const VkGraphicsPipelineCreateInfo* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines);+typedef VkResult (VKAPI_PTR *PFN_vkCreateComputePipelines)(VkDevice device, VkPipelineCache pipelineCache, uint32_t createInfoCount, const VkComputePipelineCreateInfo* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines);+typedef void (VKAPI_PTR *PFN_vkDestroyPipeline)(VkDevice device, VkPipeline pipeline, const VkAllocationCallbacks* pAllocator);+typedef VkResult (VKAPI_PTR *PFN_vkCreatePipelineLayout)(VkDevice device, const VkPipelineLayoutCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkPipelineLayout* pPipelineLayout);+typedef void (VKAPI_PTR *PFN_vkDestroyPipelineLayout)(VkDevice device, VkPipelineLayout pipelineLayout, const VkAllocationCallbacks* pAllocator);+typedef VkResult (VKAPI_PTR *PFN_vkCreateSampler)(VkDevice device, const VkSamplerCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSampler* pSampler);+typedef void (VKAPI_PTR *PFN_vkDestroySampler)(VkDevice device, VkSampler sampler, const VkAllocationCallbacks* pAllocator);+typedef VkResult (VKAPI_PTR *PFN_vkCreateDescriptorSetLayout)(VkDevice device, const VkDescriptorSetLayoutCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorSetLayout* pSetLayout);+typedef void (VKAPI_PTR *PFN_vkDestroyDescriptorSetLayout)(VkDevice device, VkDescriptorSetLayout descriptorSetLayout, const VkAllocationCallbacks* pAllocator);+typedef VkResult (VKAPI_PTR *PFN_vkCreateDescriptorPool)(VkDevice device, const VkDescriptorPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorPool* pDescriptorPool);+typedef void (VKAPI_PTR *PFN_vkDestroyDescriptorPool)(VkDevice device, VkDescriptorPool descriptorPool, const VkAllocationCallbacks* pAllocator);+typedef VkResult (VKAPI_PTR *PFN_vkResetDescriptorPool)(VkDevice device, VkDescriptorPool descriptorPool, VkDescriptorPoolResetFlags flags);+typedef VkResult (VKAPI_PTR *PFN_vkAllocateDescriptorSets)(VkDevice device, const VkDescriptorSetAllocateInfo* pAllocateInfo, VkDescriptorSet* pDescriptorSets);+typedef VkResult (VKAPI_PTR *PFN_vkFreeDescriptorSets)(VkDevice device, VkDescriptorPool descriptorPool, uint32_t descriptorSetCount, const VkDescriptorSet* pDescriptorSets);+typedef void (VKAPI_PTR *PFN_vkUpdateDescriptorSets)(VkDevice device, uint32_t descriptorWriteCount, const VkWriteDescriptorSet* pDescriptorWrites, uint32_t descriptorCopyCount, const VkCopyDescriptorSet* pDescriptorCopies);+typedef VkResult (VKAPI_PTR *PFN_vkCreateFramebuffer)(VkDevice device, const VkFramebufferCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkFramebuffer* pFramebuffer);+typedef void (VKAPI_PTR *PFN_vkDestroyFramebuffer)(VkDevice device, VkFramebuffer framebuffer, const VkAllocationCallbacks* pAllocator);+typedef VkResult (VKAPI_PTR *PFN_vkCreateRenderPass)(VkDevice device, const VkRenderPassCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkRenderPass* pRenderPass);+typedef void (VKAPI_PTR *PFN_vkDestroyRenderPass)(VkDevice device, VkRenderPass renderPass, const VkAllocationCallbacks* pAllocator);+typedef void (VKAPI_PTR *PFN_vkGetRenderAreaGranularity)(VkDevice device, VkRenderPass renderPass, VkExtent2D* pGranularity);+typedef VkResult (VKAPI_PTR *PFN_vkCreateCommandPool)(VkDevice device, const VkCommandPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkCommandPool* pCommandPool);+typedef void (VKAPI_PTR *PFN_vkDestroyCommandPool)(VkDevice device, VkCommandPool commandPool, const VkAllocationCallbacks* pAllocator);+typedef VkResult (VKAPI_PTR *PFN_vkResetCommandPool)(VkDevice device, VkCommandPool commandPool, VkCommandPoolResetFlags flags);+typedef VkResult (VKAPI_PTR *PFN_vkAllocateCommandBuffers)(VkDevice device, const VkCommandBufferAllocateInfo* pAllocateInfo, VkCommandBuffer* pCommandBuffers);+typedef void (VKAPI_PTR *PFN_vkFreeCommandBuffers)(VkDevice device, VkCommandPool commandPool, uint32_t commandBufferCount, const VkCommandBuffer* pCommandBuffers);+typedef VkResult (VKAPI_PTR *PFN_vkBeginCommandBuffer)(VkCommandBuffer commandBuffer, const VkCommandBufferBeginInfo* pBeginInfo);+typedef VkResult (VKAPI_PTR *PFN_vkEndCommandBuffer)(VkCommandBuffer commandBuffer);+typedef VkResult (VKAPI_PTR *PFN_vkResetCommandBuffer)(VkCommandBuffer commandBuffer, VkCommandBufferResetFlags flags);+typedef void (VKAPI_PTR *PFN_vkCmdBindPipeline)(VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipeline pipeline);+typedef void (VKAPI_PTR *PFN_vkCmdSetViewport)(VkCommandBuffer commandBuffer, uint32_t firstViewport, uint32_t viewportCount, const VkViewport* pViewports);+typedef void (VKAPI_PTR *PFN_vkCmdSetScissor)(VkCommandBuffer commandBuffer, uint32_t firstScissor, uint32_t scissorCount, const VkRect2D* pScissors);+typedef void (VKAPI_PTR *PFN_vkCmdSetLineWidth)(VkCommandBuffer commandBuffer, float lineWidth);+typedef void (VKAPI_PTR *PFN_vkCmdSetDepthBias)(VkCommandBuffer commandBuffer, float depthBiasConstantFactor, float depthBiasClamp, float depthBiasSlopeFactor);+typedef void (VKAPI_PTR *PFN_vkCmdSetBlendConstants)(VkCommandBuffer commandBuffer, const float blendConstants[4]);+typedef void (VKAPI_PTR *PFN_vkCmdSetDepthBounds)(VkCommandBuffer commandBuffer, float minDepthBounds, float maxDepthBounds);+typedef void (VKAPI_PTR *PFN_vkCmdSetStencilCompareMask)(VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, uint32_t compareMask);+typedef void (VKAPI_PTR *PFN_vkCmdSetStencilWriteMask)(VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, uint32_t writeMask);+typedef void (VKAPI_PTR *PFN_vkCmdSetStencilReference)(VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, uint32_t reference);+typedef void (VKAPI_PTR *PFN_vkCmdBindDescriptorSets)(VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipelineLayout layout, uint32_t firstSet, uint32_t descriptorSetCount, const VkDescriptorSet* pDescriptorSets, uint32_t dynamicOffsetCount, const uint32_t* pDynamicOffsets);+typedef void (VKAPI_PTR *PFN_vkCmdBindIndexBuffer)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkIndexType indexType);+typedef void (VKAPI_PTR *PFN_vkCmdBindVertexBuffers)(VkCommandBuffer commandBuffer, uint32_t firstBinding, uint32_t bindingCount, const VkBuffer* pBuffers, const VkDeviceSize* pOffsets);+typedef void (VKAPI_PTR *PFN_vkCmdDraw)(VkCommandBuffer commandBuffer, uint32_t vertexCount, uint32_t instanceCount, uint32_t firstVertex, uint32_t firstInstance);+typedef void (VKAPI_PTR *PFN_vkCmdDrawIndexed)(VkCommandBuffer commandBuffer, uint32_t indexCount, uint32_t instanceCount, uint32_t firstIndex, int32_t vertexOffset, uint32_t firstInstance);+typedef void (VKAPI_PTR *PFN_vkCmdDrawIndirect)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, uint32_t drawCount, uint32_t stride);+typedef void (VKAPI_PTR *PFN_vkCmdDrawIndexedIndirect)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, uint32_t drawCount, uint32_t stride);+typedef void (VKAPI_PTR *PFN_vkCmdDispatch)(VkCommandBuffer commandBuffer, uint32_t groupCountX, uint32_t groupCountY, uint32_t groupCountZ);+typedef void (VKAPI_PTR *PFN_vkCmdDispatchIndirect)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset);+typedef void (VKAPI_PTR *PFN_vkCmdCopyBuffer)(VkCommandBuffer commandBuffer, VkBuffer srcBuffer, VkBuffer dstBuffer, uint32_t regionCount, const VkBufferCopy* pRegions);+typedef void (VKAPI_PTR *PFN_vkCmdCopyImage)(VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkImageCopy* pRegions);+typedef void (VKAPI_PTR *PFN_vkCmdBlitImage)(VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkImageBlit* pRegions, VkFilter filter);+typedef void (VKAPI_PTR *PFN_vkCmdCopyBufferToImage)(VkCommandBuffer commandBuffer, VkBuffer srcBuffer, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkBufferImageCopy* pRegions);+typedef void (VKAPI_PTR *PFN_vkCmdCopyImageToBuffer)(VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkBuffer dstBuffer, uint32_t regionCount, const VkBufferImageCopy* pRegions);+typedef void (VKAPI_PTR *PFN_vkCmdUpdateBuffer)(VkCommandBuffer commandBuffer, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize dataSize, const void* pData);+typedef void (VKAPI_PTR *PFN_vkCmdFillBuffer)(VkCommandBuffer commandBuffer, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize size, uint32_t data);+typedef void (VKAPI_PTR *PFN_vkCmdClearColorImage)(VkCommandBuffer commandBuffer, VkImage image, VkImageLayout imageLayout, const VkClearColorValue* pColor, uint32_t rangeCount, const VkImageSubresourceRange* pRanges);+typedef void (VKAPI_PTR *PFN_vkCmdClearDepthStencilImage)(VkCommandBuffer commandBuffer, VkImage image, VkImageLayout imageLayout, const VkClearDepthStencilValue* pDepthStencil, uint32_t rangeCount, const VkImageSubresourceRange* pRanges);+typedef void (VKAPI_PTR *PFN_vkCmdClearAttachments)(VkCommandBuffer commandBuffer, uint32_t attachmentCount, const VkClearAttachment* pAttachments, uint32_t rectCount, const VkClearRect* pRects);+typedef void (VKAPI_PTR *PFN_vkCmdResolveImage)(VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkImageResolve* pRegions);+typedef void (VKAPI_PTR *PFN_vkCmdSetEvent)(VkCommandBuffer commandBuffer, VkEvent event, VkPipelineStageFlags stageMask);+typedef void (VKAPI_PTR *PFN_vkCmdResetEvent)(VkCommandBuffer commandBuffer, VkEvent event, VkPipelineStageFlags stageMask);+typedef void (VKAPI_PTR *PFN_vkCmdWaitEvents)(VkCommandBuffer commandBuffer, uint32_t eventCount, const VkEvent* pEvents, VkPipelineStageFlags srcStageMask, VkPipelineStageFlags dstStageMask, uint32_t memoryBarrierCount, const VkMemoryBarrier* pMemoryBarriers, uint32_t bufferMemoryBarrierCount, const VkBufferMemoryBarrier* pBufferMemoryBarriers, uint32_t imageMemoryBarrierCount, const VkImageMemoryBarrier* pImageMemoryBarriers);+typedef void (VKAPI_PTR *PFN_vkCmdPipelineBarrier)(VkCommandBuffer commandBuffer, VkPipelineStageFlags srcStageMask, VkPipelineStageFlags dstStageMask, VkDependencyFlags dependencyFlags, uint32_t memoryBarrierCount, const VkMemoryBarrier* pMemoryBarriers, uint32_t bufferMemoryBarrierCount, const VkBufferMemoryBarrier* pBufferMemoryBarriers, uint32_t imageMemoryBarrierCount, const VkImageMemoryBarrier* pImageMemoryBarriers);+typedef void (VKAPI_PTR *PFN_vkCmdBeginQuery)(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t query, VkQueryControlFlags flags);+typedef void (VKAPI_PTR *PFN_vkCmdEndQuery)(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t query);+typedef void (VKAPI_PTR *PFN_vkCmdResetQueryPool)(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount);+typedef void (VKAPI_PTR *PFN_vkCmdWriteTimestamp)(VkCommandBuffer commandBuffer, VkPipelineStageFlagBits pipelineStage, VkQueryPool queryPool, uint32_t query);+typedef void (VKAPI_PTR *PFN_vkCmdCopyQueryPoolResults)(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize stride, VkQueryResultFlags flags);+typedef void (VKAPI_PTR *PFN_vkCmdPushConstants)(VkCommandBuffer commandBuffer, VkPipelineLayout layout, VkShaderStageFlags stageFlags, uint32_t offset, uint32_t size, const void* pValues);+typedef void (VKAPI_PTR *PFN_vkCmdBeginRenderPass)(VkCommandBuffer commandBuffer, const VkRenderPassBeginInfo* pRenderPassBegin, VkSubpassContents contents);+typedef void (VKAPI_PTR *PFN_vkCmdNextSubpass)(VkCommandBuffer commandBuffer, VkSubpassContents contents);+typedef void (VKAPI_PTR *PFN_vkCmdEndRenderPass)(VkCommandBuffer commandBuffer);+typedef void (VKAPI_PTR *PFN_vkCmdExecuteCommands)(VkCommandBuffer commandBuffer, uint32_t commandBufferCount, const VkCommandBuffer* pCommandBuffers);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR VkResult VKAPI_CALL vkCreateInstance(+ const VkInstanceCreateInfo* pCreateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkInstance* pInstance);++VKAPI_ATTR void VKAPI_CALL vkDestroyInstance(+ VkInstance instance,+ const VkAllocationCallbacks* pAllocator);++VKAPI_ATTR VkResult VKAPI_CALL vkEnumeratePhysicalDevices(+ VkInstance instance,+ uint32_t* pPhysicalDeviceCount,+ VkPhysicalDevice* pPhysicalDevices);++VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceFeatures(+ VkPhysicalDevice physicalDevice,+ VkPhysicalDeviceFeatures* pFeatures);++VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceFormatProperties(+ VkPhysicalDevice physicalDevice,+ VkFormat format,+ VkFormatProperties* pFormatProperties);++VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceImageFormatProperties(+ VkPhysicalDevice physicalDevice,+ VkFormat format,+ VkImageType type,+ VkImageTiling tiling,+ VkImageUsageFlags usage,+ VkImageCreateFlags flags,+ VkImageFormatProperties* pImageFormatProperties);++VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceProperties(+ VkPhysicalDevice physicalDevice,+ VkPhysicalDeviceProperties* pProperties);++VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceQueueFamilyProperties(+ VkPhysicalDevice physicalDevice,+ uint32_t* pQueueFamilyPropertyCount,+ VkQueueFamilyProperties* pQueueFamilyProperties);++VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceMemoryProperties(+ VkPhysicalDevice physicalDevice,+ VkPhysicalDeviceMemoryProperties* pMemoryProperties);++VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL vkGetInstanceProcAddr(+ VkInstance instance,+ const char* pName);++VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL vkGetDeviceProcAddr(+ VkDevice device,+ const char* pName);++VKAPI_ATTR VkResult VKAPI_CALL vkCreateDevice(+ VkPhysicalDevice physicalDevice,+ const VkDeviceCreateInfo* pCreateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkDevice* pDevice);++VKAPI_ATTR void VKAPI_CALL vkDestroyDevice(+ VkDevice device,+ const VkAllocationCallbacks* pAllocator);++VKAPI_ATTR VkResult VKAPI_CALL vkEnumerateInstanceExtensionProperties(+ const char* pLayerName,+ uint32_t* pPropertyCount,+ VkExtensionProperties* pProperties);++VKAPI_ATTR VkResult VKAPI_CALL vkEnumerateDeviceExtensionProperties(+ VkPhysicalDevice physicalDevice,+ const char* pLayerName,+ uint32_t* pPropertyCount,+ VkExtensionProperties* pProperties);++VKAPI_ATTR VkResult VKAPI_CALL vkEnumerateInstanceLayerProperties(+ uint32_t* pPropertyCount,+ VkLayerProperties* pProperties);++VKAPI_ATTR VkResult VKAPI_CALL vkEnumerateDeviceLayerProperties(+ VkPhysicalDevice physicalDevice,+ uint32_t* pPropertyCount,+ VkLayerProperties* pProperties);++VKAPI_ATTR void VKAPI_CALL vkGetDeviceQueue(+ VkDevice device,+ uint32_t queueFamilyIndex,+ uint32_t queueIndex,+ VkQueue* pQueue);++VKAPI_ATTR VkResult VKAPI_CALL vkQueueSubmit(+ VkQueue queue,+ uint32_t submitCount,+ const VkSubmitInfo* pSubmits,+ VkFence fence);++VKAPI_ATTR VkResult VKAPI_CALL vkQueueWaitIdle(+ VkQueue queue);++VKAPI_ATTR VkResult VKAPI_CALL vkDeviceWaitIdle(+ VkDevice device);++VKAPI_ATTR VkResult VKAPI_CALL vkAllocateMemory(+ VkDevice device,+ const VkMemoryAllocateInfo* pAllocateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkDeviceMemory* pMemory);++VKAPI_ATTR void VKAPI_CALL vkFreeMemory(+ VkDevice device,+ VkDeviceMemory memory,+ const VkAllocationCallbacks* pAllocator);++VKAPI_ATTR VkResult VKAPI_CALL vkMapMemory(+ VkDevice device,+ VkDeviceMemory memory,+ VkDeviceSize offset,+ VkDeviceSize size,+ VkMemoryMapFlags flags,+ void** ppData);++VKAPI_ATTR void VKAPI_CALL vkUnmapMemory(+ VkDevice device,+ VkDeviceMemory memory);++VKAPI_ATTR VkResult VKAPI_CALL vkFlushMappedMemoryRanges(+ VkDevice device,+ uint32_t memoryRangeCount,+ const VkMappedMemoryRange* pMemoryRanges);++VKAPI_ATTR VkResult VKAPI_CALL vkInvalidateMappedMemoryRanges(+ VkDevice device,+ uint32_t memoryRangeCount,+ const VkMappedMemoryRange* pMemoryRanges);++VKAPI_ATTR void VKAPI_CALL vkGetDeviceMemoryCommitment(+ VkDevice device,+ VkDeviceMemory memory,+ VkDeviceSize* pCommittedMemoryInBytes);++VKAPI_ATTR VkResult VKAPI_CALL vkBindBufferMemory(+ VkDevice device,+ VkBuffer buffer,+ VkDeviceMemory memory,+ VkDeviceSize memoryOffset);++VKAPI_ATTR VkResult VKAPI_CALL vkBindImageMemory(+ VkDevice device,+ VkImage image,+ VkDeviceMemory memory,+ VkDeviceSize memoryOffset);++VKAPI_ATTR void VKAPI_CALL vkGetBufferMemoryRequirements(+ VkDevice device,+ VkBuffer buffer,+ VkMemoryRequirements* pMemoryRequirements);++VKAPI_ATTR void VKAPI_CALL vkGetImageMemoryRequirements(+ VkDevice device,+ VkImage image,+ VkMemoryRequirements* pMemoryRequirements);++VKAPI_ATTR void VKAPI_CALL vkGetImageSparseMemoryRequirements(+ VkDevice device,+ VkImage image,+ uint32_t* pSparseMemoryRequirementCount,+ VkSparseImageMemoryRequirements* pSparseMemoryRequirements);++VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceSparseImageFormatProperties(+ VkPhysicalDevice physicalDevice,+ VkFormat format,+ VkImageType type,+ VkSampleCountFlagBits samples,+ VkImageUsageFlags usage,+ VkImageTiling tiling,+ uint32_t* pPropertyCount,+ VkSparseImageFormatProperties* pProperties);++VKAPI_ATTR VkResult VKAPI_CALL vkQueueBindSparse(+ VkQueue queue,+ uint32_t bindInfoCount,+ const VkBindSparseInfo* pBindInfo,+ VkFence fence);++VKAPI_ATTR VkResult VKAPI_CALL vkCreateFence(+ VkDevice device,+ const VkFenceCreateInfo* pCreateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkFence* pFence);++VKAPI_ATTR void VKAPI_CALL vkDestroyFence(+ VkDevice device,+ VkFence fence,+ const VkAllocationCallbacks* pAllocator);++VKAPI_ATTR VkResult VKAPI_CALL vkResetFences(+ VkDevice device,+ uint32_t fenceCount,+ const VkFence* pFences);++VKAPI_ATTR VkResult VKAPI_CALL vkGetFenceStatus(+ VkDevice device,+ VkFence fence);++VKAPI_ATTR VkResult VKAPI_CALL vkWaitForFences(+ VkDevice device,+ uint32_t fenceCount,+ const VkFence* pFences,+ VkBool32 waitAll,+ uint64_t timeout);++VKAPI_ATTR VkResult VKAPI_CALL vkCreateSemaphore(+ VkDevice device,+ const VkSemaphoreCreateInfo* pCreateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkSemaphore* pSemaphore);++VKAPI_ATTR void VKAPI_CALL vkDestroySemaphore(+ VkDevice device,+ VkSemaphore semaphore,+ const VkAllocationCallbacks* pAllocator);++VKAPI_ATTR VkResult VKAPI_CALL vkCreateEvent(+ VkDevice device,+ const VkEventCreateInfo* pCreateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkEvent* pEvent);++VKAPI_ATTR void VKAPI_CALL vkDestroyEvent(+ VkDevice device,+ VkEvent event,+ const VkAllocationCallbacks* pAllocator);++VKAPI_ATTR VkResult VKAPI_CALL vkGetEventStatus(+ VkDevice device,+ VkEvent event);++VKAPI_ATTR VkResult VKAPI_CALL vkSetEvent(+ VkDevice device,+ VkEvent event);++VKAPI_ATTR VkResult VKAPI_CALL vkResetEvent(+ VkDevice device,+ VkEvent event);++VKAPI_ATTR VkResult VKAPI_CALL vkCreateQueryPool(+ VkDevice device,+ const VkQueryPoolCreateInfo* pCreateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkQueryPool* pQueryPool);++VKAPI_ATTR void VKAPI_CALL vkDestroyQueryPool(+ VkDevice device,+ VkQueryPool queryPool,+ const VkAllocationCallbacks* pAllocator);++VKAPI_ATTR VkResult VKAPI_CALL vkGetQueryPoolResults(+ VkDevice device,+ VkQueryPool queryPool,+ uint32_t firstQuery,+ uint32_t queryCount,+ size_t dataSize,+ void* pData,+ VkDeviceSize stride,+ VkQueryResultFlags flags);++VKAPI_ATTR VkResult VKAPI_CALL vkCreateBuffer(+ VkDevice device,+ const VkBufferCreateInfo* pCreateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkBuffer* pBuffer);++VKAPI_ATTR void VKAPI_CALL vkDestroyBuffer(+ VkDevice device,+ VkBuffer buffer,+ const VkAllocationCallbacks* pAllocator);++VKAPI_ATTR VkResult VKAPI_CALL vkCreateBufferView(+ VkDevice device,+ const VkBufferViewCreateInfo* pCreateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkBufferView* pView);++VKAPI_ATTR void VKAPI_CALL vkDestroyBufferView(+ VkDevice device,+ VkBufferView bufferView,+ const VkAllocationCallbacks* pAllocator);++VKAPI_ATTR VkResult VKAPI_CALL vkCreateImage(+ VkDevice device,+ const VkImageCreateInfo* pCreateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkImage* pImage);++VKAPI_ATTR void VKAPI_CALL vkDestroyImage(+ VkDevice device,+ VkImage image,+ const VkAllocationCallbacks* pAllocator);++VKAPI_ATTR void VKAPI_CALL vkGetImageSubresourceLayout(+ VkDevice device,+ VkImage image,+ const VkImageSubresource* pSubresource,+ VkSubresourceLayout* pLayout);++VKAPI_ATTR VkResult VKAPI_CALL vkCreateImageView(+ VkDevice device,+ const VkImageViewCreateInfo* pCreateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkImageView* pView);++VKAPI_ATTR void VKAPI_CALL vkDestroyImageView(+ VkDevice device,+ VkImageView imageView,+ const VkAllocationCallbacks* pAllocator);++VKAPI_ATTR VkResult VKAPI_CALL vkCreateShaderModule(+ VkDevice device,+ const VkShaderModuleCreateInfo* pCreateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkShaderModule* pShaderModule);++VKAPI_ATTR void VKAPI_CALL vkDestroyShaderModule(+ VkDevice device,+ VkShaderModule shaderModule,+ const VkAllocationCallbacks* pAllocator);++VKAPI_ATTR VkResult VKAPI_CALL vkCreatePipelineCache(+ VkDevice device,+ const VkPipelineCacheCreateInfo* pCreateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkPipelineCache* pPipelineCache);++VKAPI_ATTR void VKAPI_CALL vkDestroyPipelineCache(+ VkDevice device,+ VkPipelineCache pipelineCache,+ const VkAllocationCallbacks* pAllocator);++VKAPI_ATTR VkResult VKAPI_CALL vkGetPipelineCacheData(+ VkDevice device,+ VkPipelineCache pipelineCache,+ size_t* pDataSize,+ void* pData);++VKAPI_ATTR VkResult VKAPI_CALL vkMergePipelineCaches(+ VkDevice device,+ VkPipelineCache dstCache,+ uint32_t srcCacheCount,+ const VkPipelineCache* pSrcCaches);++VKAPI_ATTR VkResult VKAPI_CALL vkCreateGraphicsPipelines(+ VkDevice device,+ VkPipelineCache pipelineCache,+ uint32_t createInfoCount,+ const VkGraphicsPipelineCreateInfo* pCreateInfos,+ const VkAllocationCallbacks* pAllocator,+ VkPipeline* pPipelines);++VKAPI_ATTR VkResult VKAPI_CALL vkCreateComputePipelines(+ VkDevice device,+ VkPipelineCache pipelineCache,+ uint32_t createInfoCount,+ const VkComputePipelineCreateInfo* pCreateInfos,+ const VkAllocationCallbacks* pAllocator,+ VkPipeline* pPipelines);++VKAPI_ATTR void VKAPI_CALL vkDestroyPipeline(+ VkDevice device,+ VkPipeline pipeline,+ const VkAllocationCallbacks* pAllocator);++VKAPI_ATTR VkResult VKAPI_CALL vkCreatePipelineLayout(+ VkDevice device,+ const VkPipelineLayoutCreateInfo* pCreateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkPipelineLayout* pPipelineLayout);++VKAPI_ATTR void VKAPI_CALL vkDestroyPipelineLayout(+ VkDevice device,+ VkPipelineLayout pipelineLayout,+ const VkAllocationCallbacks* pAllocator);++VKAPI_ATTR VkResult VKAPI_CALL vkCreateSampler(+ VkDevice device,+ const VkSamplerCreateInfo* pCreateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkSampler* pSampler);++VKAPI_ATTR void VKAPI_CALL vkDestroySampler(+ VkDevice device,+ VkSampler sampler,+ const VkAllocationCallbacks* pAllocator);++VKAPI_ATTR VkResult VKAPI_CALL vkCreateDescriptorSetLayout(+ VkDevice device,+ const VkDescriptorSetLayoutCreateInfo* pCreateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkDescriptorSetLayout* pSetLayout);++VKAPI_ATTR void VKAPI_CALL vkDestroyDescriptorSetLayout(+ VkDevice device,+ VkDescriptorSetLayout descriptorSetLayout,+ const VkAllocationCallbacks* pAllocator);++VKAPI_ATTR VkResult VKAPI_CALL vkCreateDescriptorPool(+ VkDevice device,+ const VkDescriptorPoolCreateInfo* pCreateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkDescriptorPool* pDescriptorPool);++VKAPI_ATTR void VKAPI_CALL vkDestroyDescriptorPool(+ VkDevice device,+ VkDescriptorPool descriptorPool,+ const VkAllocationCallbacks* pAllocator);++VKAPI_ATTR VkResult VKAPI_CALL vkResetDescriptorPool(+ VkDevice device,+ VkDescriptorPool descriptorPool,+ VkDescriptorPoolResetFlags flags);++VKAPI_ATTR VkResult VKAPI_CALL vkAllocateDescriptorSets(+ VkDevice device,+ const VkDescriptorSetAllocateInfo* pAllocateInfo,+ VkDescriptorSet* pDescriptorSets);++VKAPI_ATTR VkResult VKAPI_CALL vkFreeDescriptorSets(+ VkDevice device,+ VkDescriptorPool descriptorPool,+ uint32_t descriptorSetCount,+ const VkDescriptorSet* pDescriptorSets);++VKAPI_ATTR void VKAPI_CALL vkUpdateDescriptorSets(+ VkDevice device,+ uint32_t descriptorWriteCount,+ const VkWriteDescriptorSet* pDescriptorWrites,+ uint32_t descriptorCopyCount,+ const VkCopyDescriptorSet* pDescriptorCopies);++VKAPI_ATTR VkResult VKAPI_CALL vkCreateFramebuffer(+ VkDevice device,+ const VkFramebufferCreateInfo* pCreateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkFramebuffer* pFramebuffer);++VKAPI_ATTR void VKAPI_CALL vkDestroyFramebuffer(+ VkDevice device,+ VkFramebuffer framebuffer,+ const VkAllocationCallbacks* pAllocator);++VKAPI_ATTR VkResult VKAPI_CALL vkCreateRenderPass(+ VkDevice device,+ const VkRenderPassCreateInfo* pCreateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkRenderPass* pRenderPass);++VKAPI_ATTR void VKAPI_CALL vkDestroyRenderPass(+ VkDevice device,+ VkRenderPass renderPass,+ const VkAllocationCallbacks* pAllocator);++VKAPI_ATTR void VKAPI_CALL vkGetRenderAreaGranularity(+ VkDevice device,+ VkRenderPass renderPass,+ VkExtent2D* pGranularity);++VKAPI_ATTR VkResult VKAPI_CALL vkCreateCommandPool(+ VkDevice device,+ const VkCommandPoolCreateInfo* pCreateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkCommandPool* pCommandPool);++VKAPI_ATTR void VKAPI_CALL vkDestroyCommandPool(+ VkDevice device,+ VkCommandPool commandPool,+ const VkAllocationCallbacks* pAllocator);++VKAPI_ATTR VkResult VKAPI_CALL vkResetCommandPool(+ VkDevice device,+ VkCommandPool commandPool,+ VkCommandPoolResetFlags flags);++VKAPI_ATTR VkResult VKAPI_CALL vkAllocateCommandBuffers(+ VkDevice device,+ const VkCommandBufferAllocateInfo* pAllocateInfo,+ VkCommandBuffer* pCommandBuffers);++VKAPI_ATTR void VKAPI_CALL vkFreeCommandBuffers(+ VkDevice device,+ VkCommandPool commandPool,+ uint32_t commandBufferCount,+ const VkCommandBuffer* pCommandBuffers);++VKAPI_ATTR VkResult VKAPI_CALL vkBeginCommandBuffer(+ VkCommandBuffer commandBuffer,+ const VkCommandBufferBeginInfo* pBeginInfo);++VKAPI_ATTR VkResult VKAPI_CALL vkEndCommandBuffer(+ VkCommandBuffer commandBuffer);++VKAPI_ATTR VkResult VKAPI_CALL vkResetCommandBuffer(+ VkCommandBuffer commandBuffer,+ VkCommandBufferResetFlags flags);++VKAPI_ATTR void VKAPI_CALL vkCmdBindPipeline(+ VkCommandBuffer commandBuffer,+ VkPipelineBindPoint pipelineBindPoint,+ VkPipeline pipeline);++VKAPI_ATTR void VKAPI_CALL vkCmdSetViewport(+ VkCommandBuffer commandBuffer,+ uint32_t firstViewport,+ uint32_t viewportCount,+ const VkViewport* pViewports);++VKAPI_ATTR void VKAPI_CALL vkCmdSetScissor(+ VkCommandBuffer commandBuffer,+ uint32_t firstScissor,+ uint32_t scissorCount,+ const VkRect2D* pScissors);++VKAPI_ATTR void VKAPI_CALL vkCmdSetLineWidth(+ VkCommandBuffer commandBuffer,+ float lineWidth);++VKAPI_ATTR void VKAPI_CALL vkCmdSetDepthBias(+ VkCommandBuffer commandBuffer,+ float depthBiasConstantFactor,+ float depthBiasClamp,+ float depthBiasSlopeFactor);++VKAPI_ATTR void VKAPI_CALL vkCmdSetBlendConstants(+ VkCommandBuffer commandBuffer,+ const float blendConstants[4]);++VKAPI_ATTR void VKAPI_CALL vkCmdSetDepthBounds(+ VkCommandBuffer commandBuffer,+ float minDepthBounds,+ float maxDepthBounds);++VKAPI_ATTR void VKAPI_CALL vkCmdSetStencilCompareMask(+ VkCommandBuffer commandBuffer,+ VkStencilFaceFlags faceMask,+ uint32_t compareMask);++VKAPI_ATTR void VKAPI_CALL vkCmdSetStencilWriteMask(+ VkCommandBuffer commandBuffer,+ VkStencilFaceFlags faceMask,+ uint32_t writeMask);++VKAPI_ATTR void VKAPI_CALL vkCmdSetStencilReference(+ VkCommandBuffer commandBuffer,+ VkStencilFaceFlags faceMask,+ uint32_t reference);++VKAPI_ATTR void VKAPI_CALL vkCmdBindDescriptorSets(+ VkCommandBuffer commandBuffer,+ VkPipelineBindPoint pipelineBindPoint,+ VkPipelineLayout layout,+ uint32_t firstSet,+ uint32_t descriptorSetCount,+ const VkDescriptorSet* pDescriptorSets,+ uint32_t dynamicOffsetCount,+ const uint32_t* pDynamicOffsets);++VKAPI_ATTR void VKAPI_CALL vkCmdBindIndexBuffer(+ VkCommandBuffer commandBuffer,+ VkBuffer buffer,+ VkDeviceSize offset,+ VkIndexType indexType);++VKAPI_ATTR void VKAPI_CALL vkCmdBindVertexBuffers(+ VkCommandBuffer commandBuffer,+ uint32_t firstBinding,+ uint32_t bindingCount,+ const VkBuffer* pBuffers,+ const VkDeviceSize* pOffsets);++VKAPI_ATTR void VKAPI_CALL vkCmdDraw(+ VkCommandBuffer commandBuffer,+ uint32_t vertexCount,+ uint32_t instanceCount,+ uint32_t firstVertex,+ uint32_t firstInstance);++VKAPI_ATTR void VKAPI_CALL vkCmdDrawIndexed(+ VkCommandBuffer commandBuffer,+ uint32_t indexCount,+ uint32_t instanceCount,+ uint32_t firstIndex,+ int32_t vertexOffset,+ uint32_t firstInstance);++VKAPI_ATTR void VKAPI_CALL vkCmdDrawIndirect(+ VkCommandBuffer commandBuffer,+ VkBuffer buffer,+ VkDeviceSize offset,+ uint32_t drawCount,+ uint32_t stride);++VKAPI_ATTR void VKAPI_CALL vkCmdDrawIndexedIndirect(+ VkCommandBuffer commandBuffer,+ VkBuffer buffer,+ VkDeviceSize offset,+ uint32_t drawCount,+ uint32_t stride);++VKAPI_ATTR void VKAPI_CALL vkCmdDispatch(+ VkCommandBuffer commandBuffer,+ uint32_t groupCountX,+ uint32_t groupCountY,+ uint32_t groupCountZ);++VKAPI_ATTR void VKAPI_CALL vkCmdDispatchIndirect(+ VkCommandBuffer commandBuffer,+ VkBuffer buffer,+ VkDeviceSize offset);++VKAPI_ATTR void VKAPI_CALL vkCmdCopyBuffer(+ VkCommandBuffer commandBuffer,+ VkBuffer srcBuffer,+ VkBuffer dstBuffer,+ uint32_t regionCount,+ const VkBufferCopy* pRegions);++VKAPI_ATTR void VKAPI_CALL vkCmdCopyImage(+ VkCommandBuffer commandBuffer,+ VkImage srcImage,+ VkImageLayout srcImageLayout,+ VkImage dstImage,+ VkImageLayout dstImageLayout,+ uint32_t regionCount,+ const VkImageCopy* pRegions);++VKAPI_ATTR void VKAPI_CALL vkCmdBlitImage(+ VkCommandBuffer commandBuffer,+ VkImage srcImage,+ VkImageLayout srcImageLayout,+ VkImage dstImage,+ VkImageLayout dstImageLayout,+ uint32_t regionCount,+ const VkImageBlit* pRegions,+ VkFilter filter);++VKAPI_ATTR void VKAPI_CALL vkCmdCopyBufferToImage(+ VkCommandBuffer commandBuffer,+ VkBuffer srcBuffer,+ VkImage dstImage,+ VkImageLayout dstImageLayout,+ uint32_t regionCount,+ const VkBufferImageCopy* pRegions);++VKAPI_ATTR void VKAPI_CALL vkCmdCopyImageToBuffer(+ VkCommandBuffer commandBuffer,+ VkImage srcImage,+ VkImageLayout srcImageLayout,+ VkBuffer dstBuffer,+ uint32_t regionCount,+ const VkBufferImageCopy* pRegions);++VKAPI_ATTR void VKAPI_CALL vkCmdUpdateBuffer(+ VkCommandBuffer commandBuffer,+ VkBuffer dstBuffer,+ VkDeviceSize dstOffset,+ VkDeviceSize dataSize,+ const void* pData);++VKAPI_ATTR void VKAPI_CALL vkCmdFillBuffer(+ VkCommandBuffer commandBuffer,+ VkBuffer dstBuffer,+ VkDeviceSize dstOffset,+ VkDeviceSize size,+ uint32_t data);++VKAPI_ATTR void VKAPI_CALL vkCmdClearColorImage(+ VkCommandBuffer commandBuffer,+ VkImage image,+ VkImageLayout imageLayout,+ const VkClearColorValue* pColor,+ uint32_t rangeCount,+ const VkImageSubresourceRange* pRanges);++VKAPI_ATTR void VKAPI_CALL vkCmdClearDepthStencilImage(+ VkCommandBuffer commandBuffer,+ VkImage image,+ VkImageLayout imageLayout,+ const VkClearDepthStencilValue* pDepthStencil,+ uint32_t rangeCount,+ const VkImageSubresourceRange* pRanges);++VKAPI_ATTR void VKAPI_CALL vkCmdClearAttachments(+ VkCommandBuffer commandBuffer,+ uint32_t attachmentCount,+ const VkClearAttachment* pAttachments,+ uint32_t rectCount,+ const VkClearRect* pRects);++VKAPI_ATTR void VKAPI_CALL vkCmdResolveImage(+ VkCommandBuffer commandBuffer,+ VkImage srcImage,+ VkImageLayout srcImageLayout,+ VkImage dstImage,+ VkImageLayout dstImageLayout,+ uint32_t regionCount,+ const VkImageResolve* pRegions);++VKAPI_ATTR void VKAPI_CALL vkCmdSetEvent(+ VkCommandBuffer commandBuffer,+ VkEvent event,+ VkPipelineStageFlags stageMask);++VKAPI_ATTR void VKAPI_CALL vkCmdResetEvent(+ VkCommandBuffer commandBuffer,+ VkEvent event,+ VkPipelineStageFlags stageMask);++VKAPI_ATTR void VKAPI_CALL vkCmdWaitEvents(+ VkCommandBuffer commandBuffer,+ uint32_t eventCount,+ const VkEvent* pEvents,+ VkPipelineStageFlags srcStageMask,+ VkPipelineStageFlags dstStageMask,+ uint32_t memoryBarrierCount,+ const VkMemoryBarrier* pMemoryBarriers,+ uint32_t bufferMemoryBarrierCount,+ const VkBufferMemoryBarrier* pBufferMemoryBarriers,+ uint32_t imageMemoryBarrierCount,+ const VkImageMemoryBarrier* pImageMemoryBarriers);++VKAPI_ATTR void VKAPI_CALL vkCmdPipelineBarrier(+ VkCommandBuffer commandBuffer,+ VkPipelineStageFlags srcStageMask,+ VkPipelineStageFlags dstStageMask,+ VkDependencyFlags dependencyFlags,+ uint32_t memoryBarrierCount,+ const VkMemoryBarrier* pMemoryBarriers,+ uint32_t bufferMemoryBarrierCount,+ const VkBufferMemoryBarrier* pBufferMemoryBarriers,+ uint32_t imageMemoryBarrierCount,+ const VkImageMemoryBarrier* pImageMemoryBarriers);++VKAPI_ATTR void VKAPI_CALL vkCmdBeginQuery(+ VkCommandBuffer commandBuffer,+ VkQueryPool queryPool,+ uint32_t query,+ VkQueryControlFlags flags);++VKAPI_ATTR void VKAPI_CALL vkCmdEndQuery(+ VkCommandBuffer commandBuffer,+ VkQueryPool queryPool,+ uint32_t query);++VKAPI_ATTR void VKAPI_CALL vkCmdResetQueryPool(+ VkCommandBuffer commandBuffer,+ VkQueryPool queryPool,+ uint32_t firstQuery,+ uint32_t queryCount);++VKAPI_ATTR void VKAPI_CALL vkCmdWriteTimestamp(+ VkCommandBuffer commandBuffer,+ VkPipelineStageFlagBits pipelineStage,+ VkQueryPool queryPool,+ uint32_t query);++VKAPI_ATTR void VKAPI_CALL vkCmdCopyQueryPoolResults(+ VkCommandBuffer commandBuffer,+ VkQueryPool queryPool,+ uint32_t firstQuery,+ uint32_t queryCount,+ VkBuffer dstBuffer,+ VkDeviceSize dstOffset,+ VkDeviceSize stride,+ VkQueryResultFlags flags);++VKAPI_ATTR void VKAPI_CALL vkCmdPushConstants(+ VkCommandBuffer commandBuffer,+ VkPipelineLayout layout,+ VkShaderStageFlags stageFlags,+ uint32_t offset,+ uint32_t size,+ const void* pValues);++VKAPI_ATTR void VKAPI_CALL vkCmdBeginRenderPass(+ VkCommandBuffer commandBuffer,+ const VkRenderPassBeginInfo* pRenderPassBegin,+ VkSubpassContents contents);++VKAPI_ATTR void VKAPI_CALL vkCmdNextSubpass(+ VkCommandBuffer commandBuffer,+ VkSubpassContents contents);++VKAPI_ATTR void VKAPI_CALL vkCmdEndRenderPass(+ VkCommandBuffer commandBuffer);++VKAPI_ATTR void VKAPI_CALL vkCmdExecuteCommands(+ VkCommandBuffer commandBuffer,+ uint32_t commandBufferCount,+ const VkCommandBuffer* pCommandBuffers);+#endif++#define VK_VERSION_1_1 1+// Vulkan 1.1 version number+#define VK_API_VERSION_1_1 VK_MAKE_VERSION(1, 1, 0)// Patch version should always be set to 0+++VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSamplerYcbcrConversion)+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDescriptorUpdateTemplate)++#define VK_MAX_DEVICE_GROUP_SIZE 32+#define VK_LUID_SIZE 8+#define VK_QUEUE_FAMILY_EXTERNAL (~0U-1)+++typedef enum VkPointClippingBehavior {+ VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES = 0,+ VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY = 1,+ VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES_KHR = VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES,+ VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY_KHR = VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY,+ VK_POINT_CLIPPING_BEHAVIOR_BEGIN_RANGE = VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES,+ VK_POINT_CLIPPING_BEHAVIOR_END_RANGE = VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY,+ VK_POINT_CLIPPING_BEHAVIOR_RANGE_SIZE = (VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY - VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES + 1),+ VK_POINT_CLIPPING_BEHAVIOR_MAX_ENUM = 0x7FFFFFFF+} VkPointClippingBehavior;++typedef enum VkTessellationDomainOrigin {+ VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT = 0,+ VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT = 1,+ VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT_KHR = VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT,+ VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT_KHR = VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT,+ VK_TESSELLATION_DOMAIN_ORIGIN_BEGIN_RANGE = VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT,+ VK_TESSELLATION_DOMAIN_ORIGIN_END_RANGE = VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT,+ VK_TESSELLATION_DOMAIN_ORIGIN_RANGE_SIZE = (VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT - VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT + 1),+ VK_TESSELLATION_DOMAIN_ORIGIN_MAX_ENUM = 0x7FFFFFFF+} VkTessellationDomainOrigin;++typedef enum VkSamplerYcbcrModelConversion {+ VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY = 0,+ VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY = 1,+ VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709 = 2,+ VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601 = 3,+ VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020 = 4,+ VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY_KHR = VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY,+ VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY_KHR = VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY,+ VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709_KHR = VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709,+ VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601_KHR = VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601,+ VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020_KHR = VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020,+ VK_SAMPLER_YCBCR_MODEL_CONVERSION_BEGIN_RANGE = VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY,+ VK_SAMPLER_YCBCR_MODEL_CONVERSION_END_RANGE = VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020,+ VK_SAMPLER_YCBCR_MODEL_CONVERSION_RANGE_SIZE = (VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020 - VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY + 1),+ VK_SAMPLER_YCBCR_MODEL_CONVERSION_MAX_ENUM = 0x7FFFFFFF+} VkSamplerYcbcrModelConversion;++typedef enum VkSamplerYcbcrRange {+ VK_SAMPLER_YCBCR_RANGE_ITU_FULL = 0,+ VK_SAMPLER_YCBCR_RANGE_ITU_NARROW = 1,+ VK_SAMPLER_YCBCR_RANGE_ITU_FULL_KHR = VK_SAMPLER_YCBCR_RANGE_ITU_FULL,+ VK_SAMPLER_YCBCR_RANGE_ITU_NARROW_KHR = VK_SAMPLER_YCBCR_RANGE_ITU_NARROW,+ VK_SAMPLER_YCBCR_RANGE_BEGIN_RANGE = VK_SAMPLER_YCBCR_RANGE_ITU_FULL,+ VK_SAMPLER_YCBCR_RANGE_END_RANGE = VK_SAMPLER_YCBCR_RANGE_ITU_NARROW,+ VK_SAMPLER_YCBCR_RANGE_RANGE_SIZE = (VK_SAMPLER_YCBCR_RANGE_ITU_NARROW - VK_SAMPLER_YCBCR_RANGE_ITU_FULL + 1),+ VK_SAMPLER_YCBCR_RANGE_MAX_ENUM = 0x7FFFFFFF+} VkSamplerYcbcrRange;++typedef enum VkChromaLocation {+ VK_CHROMA_LOCATION_COSITED_EVEN = 0,+ VK_CHROMA_LOCATION_MIDPOINT = 1,+ VK_CHROMA_LOCATION_COSITED_EVEN_KHR = VK_CHROMA_LOCATION_COSITED_EVEN,+ VK_CHROMA_LOCATION_MIDPOINT_KHR = VK_CHROMA_LOCATION_MIDPOINT,+ VK_CHROMA_LOCATION_BEGIN_RANGE = VK_CHROMA_LOCATION_COSITED_EVEN,+ VK_CHROMA_LOCATION_END_RANGE = VK_CHROMA_LOCATION_MIDPOINT,+ VK_CHROMA_LOCATION_RANGE_SIZE = (VK_CHROMA_LOCATION_MIDPOINT - VK_CHROMA_LOCATION_COSITED_EVEN + 1),+ VK_CHROMA_LOCATION_MAX_ENUM = 0x7FFFFFFF+} VkChromaLocation;++typedef enum VkDescriptorUpdateTemplateType {+ VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET = 0,+ VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR = 1,+ VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR = VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET,+ VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_BEGIN_RANGE = VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET,+ VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_END_RANGE = VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET,+ VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_RANGE_SIZE = (VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET - VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET + 1),+ VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_MAX_ENUM = 0x7FFFFFFF+} VkDescriptorUpdateTemplateType;+++typedef enum VkSubgroupFeatureFlagBits {+ VK_SUBGROUP_FEATURE_BASIC_BIT = 0x00000001,+ VK_SUBGROUP_FEATURE_VOTE_BIT = 0x00000002,+ VK_SUBGROUP_FEATURE_ARITHMETIC_BIT = 0x00000004,+ VK_SUBGROUP_FEATURE_BALLOT_BIT = 0x00000008,+ VK_SUBGROUP_FEATURE_SHUFFLE_BIT = 0x00000010,+ VK_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT = 0x00000020,+ VK_SUBGROUP_FEATURE_CLUSTERED_BIT = 0x00000040,+ VK_SUBGROUP_FEATURE_QUAD_BIT = 0x00000080,+ VK_SUBGROUP_FEATURE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkSubgroupFeatureFlagBits;+typedef VkFlags VkSubgroupFeatureFlags;++typedef enum VkPeerMemoryFeatureFlagBits {+ VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT = 0x00000001,+ VK_PEER_MEMORY_FEATURE_COPY_DST_BIT = 0x00000002,+ VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT = 0x00000004,+ VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT = 0x00000008,+ VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT_KHR = VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT,+ VK_PEER_MEMORY_FEATURE_COPY_DST_BIT_KHR = VK_PEER_MEMORY_FEATURE_COPY_DST_BIT,+ VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT_KHR = VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT,+ VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT_KHR = VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT,+ VK_PEER_MEMORY_FEATURE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkPeerMemoryFeatureFlagBits;+typedef VkFlags VkPeerMemoryFeatureFlags;++typedef enum VkMemoryAllocateFlagBits {+ VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT = 0x00000001,+ VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT_KHR = VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT,+ VK_MEMORY_ALLOCATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkMemoryAllocateFlagBits;+typedef VkFlags VkMemoryAllocateFlags;+typedef VkFlags VkCommandPoolTrimFlags;+typedef VkFlags VkDescriptorUpdateTemplateCreateFlags;++typedef enum VkExternalMemoryHandleTypeFlagBits {+ VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT = 0x00000001,+ VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT = 0x00000002,+ VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT = 0x00000004,+ VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT = 0x00000008,+ VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT = 0x00000010,+ VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT = 0x00000020,+ VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT = 0x00000040,+ VK_EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT = 0x00000200,+ VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID = 0x00000400,+ VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT = 0x00000080,+ VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT = 0x00000100,+ VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT_KHR = VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT,+ VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR = VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT,+ VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR = VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT,+ VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT_KHR = VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT,+ VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT_KHR = VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT,+ VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT_KHR = VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT,+ VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT_KHR = VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT,+ VK_EXTERNAL_MEMORY_HANDLE_TYPE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkExternalMemoryHandleTypeFlagBits;+typedef VkFlags VkExternalMemoryHandleTypeFlags;++typedef enum VkExternalMemoryFeatureFlagBits {+ VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT = 0x00000001,+ VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT = 0x00000002,+ VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT = 0x00000004,+ VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_KHR = VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT,+ VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_KHR = VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT,+ VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_KHR = VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT,+ VK_EXTERNAL_MEMORY_FEATURE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkExternalMemoryFeatureFlagBits;+typedef VkFlags VkExternalMemoryFeatureFlags;++typedef enum VkExternalFenceHandleTypeFlagBits {+ VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT = 0x00000001,+ VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT = 0x00000002,+ VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT = 0x00000004,+ VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT = 0x00000008,+ VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR = VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT,+ VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR = VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT,+ VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR = VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT,+ VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT_KHR = VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT,+ VK_EXTERNAL_FENCE_HANDLE_TYPE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkExternalFenceHandleTypeFlagBits;+typedef VkFlags VkExternalFenceHandleTypeFlags;++typedef enum VkExternalFenceFeatureFlagBits {+ VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT = 0x00000001,+ VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT = 0x00000002,+ VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT_KHR = VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT,+ VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT_KHR = VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT,+ VK_EXTERNAL_FENCE_FEATURE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkExternalFenceFeatureFlagBits;+typedef VkFlags VkExternalFenceFeatureFlags;++typedef enum VkFenceImportFlagBits {+ VK_FENCE_IMPORT_TEMPORARY_BIT = 0x00000001,+ VK_FENCE_IMPORT_TEMPORARY_BIT_KHR = VK_FENCE_IMPORT_TEMPORARY_BIT,+ VK_FENCE_IMPORT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkFenceImportFlagBits;+typedef VkFlags VkFenceImportFlags;++typedef enum VkSemaphoreImportFlagBits {+ VK_SEMAPHORE_IMPORT_TEMPORARY_BIT = 0x00000001,+ VK_SEMAPHORE_IMPORT_TEMPORARY_BIT_KHR = VK_SEMAPHORE_IMPORT_TEMPORARY_BIT,+ VK_SEMAPHORE_IMPORT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkSemaphoreImportFlagBits;+typedef VkFlags VkSemaphoreImportFlags;++typedef enum VkExternalSemaphoreHandleTypeFlagBits {+ VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT = 0x00000001,+ VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT = 0x00000002,+ VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT = 0x00000004,+ VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT = 0x00000008,+ VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT = 0x00000010,+ VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT,+ VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT,+ VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT,+ VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT_KHR = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT,+ VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT_KHR = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT,+ VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkExternalSemaphoreHandleTypeFlagBits;+typedef VkFlags VkExternalSemaphoreHandleTypeFlags;++typedef enum VkExternalSemaphoreFeatureFlagBits {+ VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT = 0x00000001,+ VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT = 0x00000002,+ VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT_KHR = VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT,+ VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT_KHR = VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT,+ VK_EXTERNAL_SEMAPHORE_FEATURE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF+} VkExternalSemaphoreFeatureFlagBits;+typedef VkFlags VkExternalSemaphoreFeatureFlags;++typedef struct VkPhysicalDeviceSubgroupProperties {+ VkStructureType sType;+ void* pNext;+ uint32_t subgroupSize;+ VkShaderStageFlags supportedStages;+ VkSubgroupFeatureFlags supportedOperations;+ VkBool32 quadOperationsInAllStages;+} VkPhysicalDeviceSubgroupProperties;++typedef struct VkBindBufferMemoryInfo {+ VkStructureType sType;+ const void* pNext;+ VkBuffer buffer;+ VkDeviceMemory memory;+ VkDeviceSize memoryOffset;+} VkBindBufferMemoryInfo;++typedef struct VkBindImageMemoryInfo {+ VkStructureType sType;+ const void* pNext;+ VkImage image;+ VkDeviceMemory memory;+ VkDeviceSize memoryOffset;+} VkBindImageMemoryInfo;++typedef struct VkPhysicalDevice16BitStorageFeatures {+ VkStructureType sType;+ void* pNext;+ VkBool32 storageBuffer16BitAccess;+ VkBool32 uniformAndStorageBuffer16BitAccess;+ VkBool32 storagePushConstant16;+ VkBool32 storageInputOutput16;+} VkPhysicalDevice16BitStorageFeatures;++typedef struct VkMemoryDedicatedRequirements {+ VkStructureType sType;+ void* pNext;+ VkBool32 prefersDedicatedAllocation;+ VkBool32 requiresDedicatedAllocation;+} VkMemoryDedicatedRequirements;++typedef struct VkMemoryDedicatedAllocateInfo {+ VkStructureType sType;+ const void* pNext;+ VkImage image;+ VkBuffer buffer;+} VkMemoryDedicatedAllocateInfo;++typedef struct VkMemoryAllocateFlagsInfo {+ VkStructureType sType;+ const void* pNext;+ VkMemoryAllocateFlags flags;+ uint32_t deviceMask;+} VkMemoryAllocateFlagsInfo;++typedef struct VkDeviceGroupRenderPassBeginInfo {+ VkStructureType sType;+ const void* pNext;+ uint32_t deviceMask;+ uint32_t deviceRenderAreaCount;+ const VkRect2D* pDeviceRenderAreas;+} VkDeviceGroupRenderPassBeginInfo;++typedef struct VkDeviceGroupCommandBufferBeginInfo {+ VkStructureType sType;+ const void* pNext;+ uint32_t deviceMask;+} VkDeviceGroupCommandBufferBeginInfo;++typedef struct VkDeviceGroupSubmitInfo {+ VkStructureType sType;+ const void* pNext;+ uint32_t waitSemaphoreCount;+ const uint32_t* pWaitSemaphoreDeviceIndices;+ uint32_t commandBufferCount;+ const uint32_t* pCommandBufferDeviceMasks;+ uint32_t signalSemaphoreCount;+ const uint32_t* pSignalSemaphoreDeviceIndices;+} VkDeviceGroupSubmitInfo;++typedef struct VkDeviceGroupBindSparseInfo {+ VkStructureType sType;+ const void* pNext;+ uint32_t resourceDeviceIndex;+ uint32_t memoryDeviceIndex;+} VkDeviceGroupBindSparseInfo;++typedef struct VkBindBufferMemoryDeviceGroupInfo {+ VkStructureType sType;+ const void* pNext;+ uint32_t deviceIndexCount;+ const uint32_t* pDeviceIndices;+} VkBindBufferMemoryDeviceGroupInfo;++typedef struct VkBindImageMemoryDeviceGroupInfo {+ VkStructureType sType;+ const void* pNext;+ uint32_t deviceIndexCount;+ const uint32_t* pDeviceIndices;+ uint32_t splitInstanceBindRegionCount;+ const VkRect2D* pSplitInstanceBindRegions;+} VkBindImageMemoryDeviceGroupInfo;++typedef struct VkPhysicalDeviceGroupProperties {+ VkStructureType sType;+ void* pNext;+ uint32_t physicalDeviceCount;+ VkPhysicalDevice physicalDevices[VK_MAX_DEVICE_GROUP_SIZE];+ VkBool32 subsetAllocation;+} VkPhysicalDeviceGroupProperties;++typedef struct VkDeviceGroupDeviceCreateInfo {+ VkStructureType sType;+ const void* pNext;+ uint32_t physicalDeviceCount;+ const VkPhysicalDevice* pPhysicalDevices;+} VkDeviceGroupDeviceCreateInfo;++typedef struct VkBufferMemoryRequirementsInfo2 {+ VkStructureType sType;+ const void* pNext;+ VkBuffer buffer;+} VkBufferMemoryRequirementsInfo2;++typedef struct VkImageMemoryRequirementsInfo2 {+ VkStructureType sType;+ const void* pNext;+ VkImage image;+} VkImageMemoryRequirementsInfo2;++typedef struct VkImageSparseMemoryRequirementsInfo2 {+ VkStructureType sType;+ const void* pNext;+ VkImage image;+} VkImageSparseMemoryRequirementsInfo2;++typedef struct VkMemoryRequirements2 {+ VkStructureType sType;+ void* pNext;+ VkMemoryRequirements memoryRequirements;+} VkMemoryRequirements2;++typedef struct VkSparseImageMemoryRequirements2 {+ VkStructureType sType;+ void* pNext;+ VkSparseImageMemoryRequirements memoryRequirements;+} VkSparseImageMemoryRequirements2;++typedef struct VkPhysicalDeviceFeatures2 {+ VkStructureType sType;+ void* pNext;+ VkPhysicalDeviceFeatures features;+} VkPhysicalDeviceFeatures2;++typedef struct VkPhysicalDeviceProperties2 {+ VkStructureType sType;+ void* pNext;+ VkPhysicalDeviceProperties properties;+} VkPhysicalDeviceProperties2;++typedef struct VkFormatProperties2 {+ VkStructureType sType;+ void* pNext;+ VkFormatProperties formatProperties;+} VkFormatProperties2;++typedef struct VkImageFormatProperties2 {+ VkStructureType sType;+ void* pNext;+ VkImageFormatProperties imageFormatProperties;+} VkImageFormatProperties2;++typedef struct VkPhysicalDeviceImageFormatInfo2 {+ VkStructureType sType;+ const void* pNext;+ VkFormat format;+ VkImageType type;+ VkImageTiling tiling;+ VkImageUsageFlags usage;+ VkImageCreateFlags flags;+} VkPhysicalDeviceImageFormatInfo2;++typedef struct VkQueueFamilyProperties2 {+ VkStructureType sType;+ void* pNext;+ VkQueueFamilyProperties queueFamilyProperties;+} VkQueueFamilyProperties2;++typedef struct VkPhysicalDeviceMemoryProperties2 {+ VkStructureType sType;+ void* pNext;+ VkPhysicalDeviceMemoryProperties memoryProperties;+} VkPhysicalDeviceMemoryProperties2;++typedef struct VkSparseImageFormatProperties2 {+ VkStructureType sType;+ void* pNext;+ VkSparseImageFormatProperties properties;+} VkSparseImageFormatProperties2;++typedef struct VkPhysicalDeviceSparseImageFormatInfo2 {+ VkStructureType sType;+ const void* pNext;+ VkFormat format;+ VkImageType type;+ VkSampleCountFlagBits samples;+ VkImageUsageFlags usage;+ VkImageTiling tiling;+} VkPhysicalDeviceSparseImageFormatInfo2;++typedef struct VkPhysicalDevicePointClippingProperties {+ VkStructureType sType;+ void* pNext;+ VkPointClippingBehavior pointClippingBehavior;+} VkPhysicalDevicePointClippingProperties;++typedef struct VkInputAttachmentAspectReference {+ uint32_t subpass;+ uint32_t inputAttachmentIndex;+ VkImageAspectFlags aspectMask;+} VkInputAttachmentAspectReference;++typedef struct VkRenderPassInputAttachmentAspectCreateInfo {+ VkStructureType sType;+ const void* pNext;+ uint32_t aspectReferenceCount;+ const VkInputAttachmentAspectReference* pAspectReferences;+} VkRenderPassInputAttachmentAspectCreateInfo;++typedef struct VkImageViewUsageCreateInfo {+ VkStructureType sType;+ const void* pNext;+ VkImageUsageFlags usage;+} VkImageViewUsageCreateInfo;++typedef struct VkPipelineTessellationDomainOriginStateCreateInfo {+ VkStructureType sType;+ const void* pNext;+ VkTessellationDomainOrigin domainOrigin;+} VkPipelineTessellationDomainOriginStateCreateInfo;++typedef struct VkRenderPassMultiviewCreateInfo {+ VkStructureType sType;+ const void* pNext;+ uint32_t subpassCount;+ const uint32_t* pViewMasks;+ uint32_t dependencyCount;+ const int32_t* pViewOffsets;+ uint32_t correlationMaskCount;+ const uint32_t* pCorrelationMasks;+} VkRenderPassMultiviewCreateInfo;++typedef struct VkPhysicalDeviceMultiviewFeatures {+ VkStructureType sType;+ void* pNext;+ VkBool32 multiview;+ VkBool32 multiviewGeometryShader;+ VkBool32 multiviewTessellationShader;+} VkPhysicalDeviceMultiviewFeatures;++typedef struct VkPhysicalDeviceMultiviewProperties {+ VkStructureType sType;+ void* pNext;+ uint32_t maxMultiviewViewCount;+ uint32_t maxMultiviewInstanceIndex;+} VkPhysicalDeviceMultiviewProperties;++typedef struct VkPhysicalDeviceVariablePointerFeatures {+ VkStructureType sType;+ void* pNext;+ VkBool32 variablePointersStorageBuffer;+ VkBool32 variablePointers;+} VkPhysicalDeviceVariablePointerFeatures;++typedef struct VkPhysicalDeviceProtectedMemoryFeatures {+ VkStructureType sType;+ void* pNext;+ VkBool32 protectedMemory;+} VkPhysicalDeviceProtectedMemoryFeatures;++typedef struct VkPhysicalDeviceProtectedMemoryProperties {+ VkStructureType sType;+ void* pNext;+ VkBool32 protectedNoFault;+} VkPhysicalDeviceProtectedMemoryProperties;++typedef struct VkDeviceQueueInfo2 {+ VkStructureType sType;+ const void* pNext;+ VkDeviceQueueCreateFlags flags;+ uint32_t queueFamilyIndex;+ uint32_t queueIndex;+} VkDeviceQueueInfo2;++typedef struct VkProtectedSubmitInfo {+ VkStructureType sType;+ const void* pNext;+ VkBool32 protectedSubmit;+} VkProtectedSubmitInfo;++typedef struct VkSamplerYcbcrConversionCreateInfo {+ VkStructureType sType;+ const void* pNext;+ VkFormat format;+ VkSamplerYcbcrModelConversion ycbcrModel;+ VkSamplerYcbcrRange ycbcrRange;+ VkComponentMapping components;+ VkChromaLocation xChromaOffset;+ VkChromaLocation yChromaOffset;+ VkFilter chromaFilter;+ VkBool32 forceExplicitReconstruction;+} VkSamplerYcbcrConversionCreateInfo;++typedef struct VkSamplerYcbcrConversionInfo {+ VkStructureType sType;+ const void* pNext;+ VkSamplerYcbcrConversion conversion;+} VkSamplerYcbcrConversionInfo;++typedef struct VkBindImagePlaneMemoryInfo {+ VkStructureType sType;+ const void* pNext;+ VkImageAspectFlagBits planeAspect;+} VkBindImagePlaneMemoryInfo;++typedef struct VkImagePlaneMemoryRequirementsInfo {+ VkStructureType sType;+ const void* pNext;+ VkImageAspectFlagBits planeAspect;+} VkImagePlaneMemoryRequirementsInfo;++typedef struct VkPhysicalDeviceSamplerYcbcrConversionFeatures {+ VkStructureType sType;+ void* pNext;+ VkBool32 samplerYcbcrConversion;+} VkPhysicalDeviceSamplerYcbcrConversionFeatures;++typedef struct VkSamplerYcbcrConversionImageFormatProperties {+ VkStructureType sType;+ void* pNext;+ uint32_t combinedImageSamplerDescriptorCount;+} VkSamplerYcbcrConversionImageFormatProperties;++typedef struct VkDescriptorUpdateTemplateEntry {+ uint32_t dstBinding;+ uint32_t dstArrayElement;+ uint32_t descriptorCount;+ VkDescriptorType descriptorType;+ size_t offset;+ size_t stride;+} VkDescriptorUpdateTemplateEntry;++typedef struct VkDescriptorUpdateTemplateCreateInfo {+ VkStructureType sType;+ void* pNext;+ VkDescriptorUpdateTemplateCreateFlags flags;+ uint32_t descriptorUpdateEntryCount;+ const VkDescriptorUpdateTemplateEntry* pDescriptorUpdateEntries;+ VkDescriptorUpdateTemplateType templateType;+ VkDescriptorSetLayout descriptorSetLayout;+ VkPipelineBindPoint pipelineBindPoint;+ VkPipelineLayout pipelineLayout;+ uint32_t set;+} VkDescriptorUpdateTemplateCreateInfo;++typedef struct VkExternalMemoryProperties {+ VkExternalMemoryFeatureFlags externalMemoryFeatures;+ VkExternalMemoryHandleTypeFlags exportFromImportedHandleTypes;+ VkExternalMemoryHandleTypeFlags compatibleHandleTypes;+} VkExternalMemoryProperties;++typedef struct VkPhysicalDeviceExternalImageFormatInfo {+ VkStructureType sType;+ const void* pNext;+ VkExternalMemoryHandleTypeFlagBits handleType;+} VkPhysicalDeviceExternalImageFormatInfo;++typedef struct VkExternalImageFormatProperties {+ VkStructureType sType;+ void* pNext;+ VkExternalMemoryProperties externalMemoryProperties;+} VkExternalImageFormatProperties;++typedef struct VkPhysicalDeviceExternalBufferInfo {+ VkStructureType sType;+ const void* pNext;+ VkBufferCreateFlags flags;+ VkBufferUsageFlags usage;+ VkExternalMemoryHandleTypeFlagBits handleType;+} VkPhysicalDeviceExternalBufferInfo;++typedef struct VkExternalBufferProperties {+ VkStructureType sType;+ void* pNext;+ VkExternalMemoryProperties externalMemoryProperties;+} VkExternalBufferProperties;++typedef struct VkPhysicalDeviceIDProperties {+ VkStructureType sType;+ void* pNext;+ uint8_t deviceUUID[VK_UUID_SIZE];+ uint8_t driverUUID[VK_UUID_SIZE];+ uint8_t deviceLUID[VK_LUID_SIZE];+ uint32_t deviceNodeMask;+ VkBool32 deviceLUIDValid;+} VkPhysicalDeviceIDProperties;++typedef struct VkExternalMemoryImageCreateInfo {+ VkStructureType sType;+ const void* pNext;+ VkExternalMemoryHandleTypeFlags handleTypes;+} VkExternalMemoryImageCreateInfo;++typedef struct VkExternalMemoryBufferCreateInfo {+ VkStructureType sType;+ const void* pNext;+ VkExternalMemoryHandleTypeFlags handleTypes;+} VkExternalMemoryBufferCreateInfo;++typedef struct VkExportMemoryAllocateInfo {+ VkStructureType sType;+ const void* pNext;+ VkExternalMemoryHandleTypeFlags handleTypes;+} VkExportMemoryAllocateInfo;++typedef struct VkPhysicalDeviceExternalFenceInfo {+ VkStructureType sType;+ const void* pNext;+ VkExternalFenceHandleTypeFlagBits handleType;+} VkPhysicalDeviceExternalFenceInfo;++typedef struct VkExternalFenceProperties {+ VkStructureType sType;+ void* pNext;+ VkExternalFenceHandleTypeFlags exportFromImportedHandleTypes;+ VkExternalFenceHandleTypeFlags compatibleHandleTypes;+ VkExternalFenceFeatureFlags externalFenceFeatures;+} VkExternalFenceProperties;++typedef struct VkExportFenceCreateInfo {+ VkStructureType sType;+ const void* pNext;+ VkExternalFenceHandleTypeFlags handleTypes;+} VkExportFenceCreateInfo;++typedef struct VkExportSemaphoreCreateInfo {+ VkStructureType sType;+ const void* pNext;+ VkExternalSemaphoreHandleTypeFlags handleTypes;+} VkExportSemaphoreCreateInfo;++typedef struct VkPhysicalDeviceExternalSemaphoreInfo {+ VkStructureType sType;+ const void* pNext;+ VkExternalSemaphoreHandleTypeFlagBits handleType;+} VkPhysicalDeviceExternalSemaphoreInfo;++typedef struct VkExternalSemaphoreProperties {+ VkStructureType sType;+ void* pNext;+ VkExternalSemaphoreHandleTypeFlags exportFromImportedHandleTypes;+ VkExternalSemaphoreHandleTypeFlags compatibleHandleTypes;+ VkExternalSemaphoreFeatureFlags externalSemaphoreFeatures;+} VkExternalSemaphoreProperties;++typedef struct VkPhysicalDeviceMaintenance3Properties {+ VkStructureType sType;+ void* pNext;+ uint32_t maxPerSetDescriptors;+ VkDeviceSize maxMemoryAllocationSize;+} VkPhysicalDeviceMaintenance3Properties;++typedef struct VkDescriptorSetLayoutSupport {+ VkStructureType sType;+ void* pNext;+ VkBool32 supported;+} VkDescriptorSetLayoutSupport;++typedef struct VkPhysicalDeviceShaderDrawParameterFeatures {+ VkStructureType sType;+ void* pNext;+ VkBool32 shaderDrawParameters;+} VkPhysicalDeviceShaderDrawParameterFeatures;+++typedef VkResult (VKAPI_PTR *PFN_vkEnumerateInstanceVersion)(uint32_t* pApiVersion);+typedef VkResult (VKAPI_PTR *PFN_vkBindBufferMemory2)(VkDevice device, uint32_t bindInfoCount, const VkBindBufferMemoryInfo* pBindInfos);+typedef VkResult (VKAPI_PTR *PFN_vkBindImageMemory2)(VkDevice device, uint32_t bindInfoCount, const VkBindImageMemoryInfo* pBindInfos);+typedef void (VKAPI_PTR *PFN_vkGetDeviceGroupPeerMemoryFeatures)(VkDevice device, uint32_t heapIndex, uint32_t localDeviceIndex, uint32_t remoteDeviceIndex, VkPeerMemoryFeatureFlags* pPeerMemoryFeatures);+typedef void (VKAPI_PTR *PFN_vkCmdSetDeviceMask)(VkCommandBuffer commandBuffer, uint32_t deviceMask);+typedef void (VKAPI_PTR *PFN_vkCmdDispatchBase)(VkCommandBuffer commandBuffer, uint32_t baseGroupX, uint32_t baseGroupY, uint32_t baseGroupZ, uint32_t groupCountX, uint32_t groupCountY, uint32_t groupCountZ);+typedef VkResult (VKAPI_PTR *PFN_vkEnumeratePhysicalDeviceGroups)(VkInstance instance, uint32_t* pPhysicalDeviceGroupCount, VkPhysicalDeviceGroupProperties* pPhysicalDeviceGroupProperties);+typedef void (VKAPI_PTR *PFN_vkGetImageMemoryRequirements2)(VkDevice device, const VkImageMemoryRequirementsInfo2* pInfo, VkMemoryRequirements2* pMemoryRequirements);+typedef void (VKAPI_PTR *PFN_vkGetBufferMemoryRequirements2)(VkDevice device, const VkBufferMemoryRequirementsInfo2* pInfo, VkMemoryRequirements2* pMemoryRequirements);+typedef void (VKAPI_PTR *PFN_vkGetImageSparseMemoryRequirements2)(VkDevice device, const VkImageSparseMemoryRequirementsInfo2* pInfo, uint32_t* pSparseMemoryRequirementCount, VkSparseImageMemoryRequirements2* pSparseMemoryRequirements);+typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceFeatures2)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceFeatures2* pFeatures);+typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceProperties2)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceProperties2* pProperties);+typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceFormatProperties2)(VkPhysicalDevice physicalDevice, VkFormat format, VkFormatProperties2* pFormatProperties);+typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceImageFormatProperties2)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceImageFormatInfo2* pImageFormatInfo, VkImageFormatProperties2* pImageFormatProperties);+typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceQueueFamilyProperties2)(VkPhysicalDevice physicalDevice, uint32_t* pQueueFamilyPropertyCount, VkQueueFamilyProperties2* pQueueFamilyProperties);+typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceMemoryProperties2)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceMemoryProperties2* pMemoryProperties);+typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceSparseImageFormatProperties2)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceSparseImageFormatInfo2* pFormatInfo, uint32_t* pPropertyCount, VkSparseImageFormatProperties2* pProperties);+typedef void (VKAPI_PTR *PFN_vkTrimCommandPool)(VkDevice device, VkCommandPool commandPool, VkCommandPoolTrimFlags flags);+typedef void (VKAPI_PTR *PFN_vkGetDeviceQueue2)(VkDevice device, const VkDeviceQueueInfo2* pQueueInfo, VkQueue* pQueue);+typedef VkResult (VKAPI_PTR *PFN_vkCreateSamplerYcbcrConversion)(VkDevice device, const VkSamplerYcbcrConversionCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSamplerYcbcrConversion* pYcbcrConversion);+typedef void (VKAPI_PTR *PFN_vkDestroySamplerYcbcrConversion)(VkDevice device, VkSamplerYcbcrConversion ycbcrConversion, const VkAllocationCallbacks* pAllocator);+typedef VkResult (VKAPI_PTR *PFN_vkCreateDescriptorUpdateTemplate)(VkDevice device, const VkDescriptorUpdateTemplateCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorUpdateTemplate* pDescriptorUpdateTemplate);+typedef void (VKAPI_PTR *PFN_vkDestroyDescriptorUpdateTemplate)(VkDevice device, VkDescriptorUpdateTemplate descriptorUpdateTemplate, const VkAllocationCallbacks* pAllocator);+typedef void (VKAPI_PTR *PFN_vkUpdateDescriptorSetWithTemplate)(VkDevice device, VkDescriptorSet descriptorSet, VkDescriptorUpdateTemplate descriptorUpdateTemplate, const void* pData);+typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceExternalBufferProperties)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalBufferInfo* pExternalBufferInfo, VkExternalBufferProperties* pExternalBufferProperties);+typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceExternalFenceProperties)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalFenceInfo* pExternalFenceInfo, VkExternalFenceProperties* pExternalFenceProperties);+typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceExternalSemaphoreProperties)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalSemaphoreInfo* pExternalSemaphoreInfo, VkExternalSemaphoreProperties* pExternalSemaphoreProperties);+typedef void (VKAPI_PTR *PFN_vkGetDescriptorSetLayoutSupport)(VkDevice device, const VkDescriptorSetLayoutCreateInfo* pCreateInfo, VkDescriptorSetLayoutSupport* pSupport);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR VkResult VKAPI_CALL vkEnumerateInstanceVersion(+ uint32_t* pApiVersion);++VKAPI_ATTR VkResult VKAPI_CALL vkBindBufferMemory2(+ VkDevice device,+ uint32_t bindInfoCount,+ const VkBindBufferMemoryInfo* pBindInfos);++VKAPI_ATTR VkResult VKAPI_CALL vkBindImageMemory2(+ VkDevice device,+ uint32_t bindInfoCount,+ const VkBindImageMemoryInfo* pBindInfos);++VKAPI_ATTR void VKAPI_CALL vkGetDeviceGroupPeerMemoryFeatures(+ VkDevice device,+ uint32_t heapIndex,+ uint32_t localDeviceIndex,+ uint32_t remoteDeviceIndex,+ VkPeerMemoryFeatureFlags* pPeerMemoryFeatures);++VKAPI_ATTR void VKAPI_CALL vkCmdSetDeviceMask(+ VkCommandBuffer commandBuffer,+ uint32_t deviceMask);++VKAPI_ATTR void VKAPI_CALL vkCmdDispatchBase(+ VkCommandBuffer commandBuffer,+ uint32_t baseGroupX,+ uint32_t baseGroupY,+ uint32_t baseGroupZ,+ uint32_t groupCountX,+ uint32_t groupCountY,+ uint32_t groupCountZ);++VKAPI_ATTR VkResult VKAPI_CALL vkEnumeratePhysicalDeviceGroups(+ VkInstance instance,+ uint32_t* pPhysicalDeviceGroupCount,+ VkPhysicalDeviceGroupProperties* pPhysicalDeviceGroupProperties);++VKAPI_ATTR void VKAPI_CALL vkGetImageMemoryRequirements2(+ VkDevice device,+ const VkImageMemoryRequirementsInfo2* pInfo,+ VkMemoryRequirements2* pMemoryRequirements);++VKAPI_ATTR void VKAPI_CALL vkGetBufferMemoryRequirements2(+ VkDevice device,+ const VkBufferMemoryRequirementsInfo2* pInfo,+ VkMemoryRequirements2* pMemoryRequirements);++VKAPI_ATTR void VKAPI_CALL vkGetImageSparseMemoryRequirements2(+ VkDevice device,+ const VkImageSparseMemoryRequirementsInfo2* pInfo,+ uint32_t* pSparseMemoryRequirementCount,+ VkSparseImageMemoryRequirements2* pSparseMemoryRequirements);++VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceFeatures2(+ VkPhysicalDevice physicalDevice,+ VkPhysicalDeviceFeatures2* pFeatures);++VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceProperties2(+ VkPhysicalDevice physicalDevice,+ VkPhysicalDeviceProperties2* pProperties);++VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceFormatProperties2(+ VkPhysicalDevice physicalDevice,+ VkFormat format,+ VkFormatProperties2* pFormatProperties);++VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceImageFormatProperties2(+ VkPhysicalDevice physicalDevice,+ const VkPhysicalDeviceImageFormatInfo2* pImageFormatInfo,+ VkImageFormatProperties2* pImageFormatProperties);++VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceQueueFamilyProperties2(+ VkPhysicalDevice physicalDevice,+ uint32_t* pQueueFamilyPropertyCount,+ VkQueueFamilyProperties2* pQueueFamilyProperties);++VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceMemoryProperties2(+ VkPhysicalDevice physicalDevice,+ VkPhysicalDeviceMemoryProperties2* pMemoryProperties);++VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceSparseImageFormatProperties2(+ VkPhysicalDevice physicalDevice,+ const VkPhysicalDeviceSparseImageFormatInfo2* pFormatInfo,+ uint32_t* pPropertyCount,+ VkSparseImageFormatProperties2* pProperties);++VKAPI_ATTR void VKAPI_CALL vkTrimCommandPool(+ VkDevice device,+ VkCommandPool commandPool,+ VkCommandPoolTrimFlags flags);++VKAPI_ATTR void VKAPI_CALL vkGetDeviceQueue2(+ VkDevice device,+ const VkDeviceQueueInfo2* pQueueInfo,+ VkQueue* pQueue);++VKAPI_ATTR VkResult VKAPI_CALL vkCreateSamplerYcbcrConversion(+ VkDevice device,+ const VkSamplerYcbcrConversionCreateInfo* pCreateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkSamplerYcbcrConversion* pYcbcrConversion);++VKAPI_ATTR void VKAPI_CALL vkDestroySamplerYcbcrConversion(+ VkDevice device,+ VkSamplerYcbcrConversion ycbcrConversion,+ const VkAllocationCallbacks* pAllocator);++VKAPI_ATTR VkResult VKAPI_CALL vkCreateDescriptorUpdateTemplate(+ VkDevice device,+ const VkDescriptorUpdateTemplateCreateInfo* pCreateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkDescriptorUpdateTemplate* pDescriptorUpdateTemplate);++VKAPI_ATTR void VKAPI_CALL vkDestroyDescriptorUpdateTemplate(+ VkDevice device,+ VkDescriptorUpdateTemplate descriptorUpdateTemplate,+ const VkAllocationCallbacks* pAllocator);++VKAPI_ATTR void VKAPI_CALL vkUpdateDescriptorSetWithTemplate(+ VkDevice device,+ VkDescriptorSet descriptorSet,+ VkDescriptorUpdateTemplate descriptorUpdateTemplate,+ const void* pData);++VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceExternalBufferProperties(+ VkPhysicalDevice physicalDevice,+ const VkPhysicalDeviceExternalBufferInfo* pExternalBufferInfo,+ VkExternalBufferProperties* pExternalBufferProperties);++VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceExternalFenceProperties(+ VkPhysicalDevice physicalDevice,+ const VkPhysicalDeviceExternalFenceInfo* pExternalFenceInfo,+ VkExternalFenceProperties* pExternalFenceProperties);++VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceExternalSemaphoreProperties(+ VkPhysicalDevice physicalDevice,+ const VkPhysicalDeviceExternalSemaphoreInfo* pExternalSemaphoreInfo,+ VkExternalSemaphoreProperties* pExternalSemaphoreProperties);++VKAPI_ATTR void VKAPI_CALL vkGetDescriptorSetLayoutSupport(+ VkDevice device,+ const VkDescriptorSetLayoutCreateInfo* pCreateInfo,+ VkDescriptorSetLayoutSupport* pSupport);+#endif++#define VK_KHR_surface 1+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSurfaceKHR)++#define VK_KHR_SURFACE_SPEC_VERSION 25+#define VK_KHR_SURFACE_EXTENSION_NAME "VK_KHR_surface"+#define VK_COLORSPACE_SRGB_NONLINEAR_KHR VK_COLOR_SPACE_SRGB_NONLINEAR_KHR+++typedef enum VkColorSpaceKHR {+ VK_COLOR_SPACE_SRGB_NONLINEAR_KHR = 0,+ VK_COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT = 1000104001,+ VK_COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT = 1000104002,+ VK_COLOR_SPACE_DCI_P3_LINEAR_EXT = 1000104003,+ VK_COLOR_SPACE_DCI_P3_NONLINEAR_EXT = 1000104004,+ VK_COLOR_SPACE_BT709_LINEAR_EXT = 1000104005,+ VK_COLOR_SPACE_BT709_NONLINEAR_EXT = 1000104006,+ VK_COLOR_SPACE_BT2020_LINEAR_EXT = 1000104007,+ VK_COLOR_SPACE_HDR10_ST2084_EXT = 1000104008,+ VK_COLOR_SPACE_DOLBYVISION_EXT = 1000104009,+ VK_COLOR_SPACE_HDR10_HLG_EXT = 1000104010,+ VK_COLOR_SPACE_ADOBERGB_LINEAR_EXT = 1000104011,+ VK_COLOR_SPACE_ADOBERGB_NONLINEAR_EXT = 1000104012,+ VK_COLOR_SPACE_PASS_THROUGH_EXT = 1000104013,+ VK_COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT = 1000104014,+ VK_COLOR_SPACE_BEGIN_RANGE_KHR = VK_COLOR_SPACE_SRGB_NONLINEAR_KHR,+ VK_COLOR_SPACE_END_RANGE_KHR = VK_COLOR_SPACE_SRGB_NONLINEAR_KHR,+ VK_COLOR_SPACE_RANGE_SIZE_KHR = (VK_COLOR_SPACE_SRGB_NONLINEAR_KHR - VK_COLOR_SPACE_SRGB_NONLINEAR_KHR + 1),+ VK_COLOR_SPACE_MAX_ENUM_KHR = 0x7FFFFFFF+} VkColorSpaceKHR;++typedef enum VkPresentModeKHR {+ VK_PRESENT_MODE_IMMEDIATE_KHR = 0,+ VK_PRESENT_MODE_MAILBOX_KHR = 1,+ VK_PRESENT_MODE_FIFO_KHR = 2,+ VK_PRESENT_MODE_FIFO_RELAXED_KHR = 3,+ VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR = 1000111000,+ VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR = 1000111001,+ VK_PRESENT_MODE_BEGIN_RANGE_KHR = VK_PRESENT_MODE_IMMEDIATE_KHR,+ VK_PRESENT_MODE_END_RANGE_KHR = VK_PRESENT_MODE_FIFO_RELAXED_KHR,+ VK_PRESENT_MODE_RANGE_SIZE_KHR = (VK_PRESENT_MODE_FIFO_RELAXED_KHR - VK_PRESENT_MODE_IMMEDIATE_KHR + 1),+ VK_PRESENT_MODE_MAX_ENUM_KHR = 0x7FFFFFFF+} VkPresentModeKHR;+++typedef enum VkSurfaceTransformFlagBitsKHR {+ VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR = 0x00000001,+ VK_SURFACE_TRANSFORM_ROTATE_90_BIT_KHR = 0x00000002,+ VK_SURFACE_TRANSFORM_ROTATE_180_BIT_KHR = 0x00000004,+ VK_SURFACE_TRANSFORM_ROTATE_270_BIT_KHR = 0x00000008,+ VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR = 0x00000010,+ VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR = 0x00000020,+ VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR = 0x00000040,+ VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR = 0x00000080,+ VK_SURFACE_TRANSFORM_INHERIT_BIT_KHR = 0x00000100,+ VK_SURFACE_TRANSFORM_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF+} VkSurfaceTransformFlagBitsKHR;+typedef VkFlags VkSurfaceTransformFlagsKHR;++typedef enum VkCompositeAlphaFlagBitsKHR {+ VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR = 0x00000001,+ VK_COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR = 0x00000002,+ VK_COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR = 0x00000004,+ VK_COMPOSITE_ALPHA_INHERIT_BIT_KHR = 0x00000008,+ VK_COMPOSITE_ALPHA_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF+} VkCompositeAlphaFlagBitsKHR;+typedef VkFlags VkCompositeAlphaFlagsKHR;++typedef struct VkSurfaceCapabilitiesKHR {+ uint32_t minImageCount;+ uint32_t maxImageCount;+ VkExtent2D currentExtent;+ VkExtent2D minImageExtent;+ VkExtent2D maxImageExtent;+ uint32_t maxImageArrayLayers;+ VkSurfaceTransformFlagsKHR supportedTransforms;+ VkSurfaceTransformFlagBitsKHR currentTransform;+ VkCompositeAlphaFlagsKHR supportedCompositeAlpha;+ VkImageUsageFlags supportedUsageFlags;+} VkSurfaceCapabilitiesKHR;++typedef struct VkSurfaceFormatKHR {+ VkFormat format;+ VkColorSpaceKHR colorSpace;+} VkSurfaceFormatKHR;+++typedef void (VKAPI_PTR *PFN_vkDestroySurfaceKHR)(VkInstance instance, VkSurfaceKHR surface, const VkAllocationCallbacks* pAllocator);+typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, VkSurfaceKHR surface, VkBool32* pSupported);+typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR)(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, VkSurfaceCapabilitiesKHR* pSurfaceCapabilities);+typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceFormatsKHR)(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, uint32_t* pSurfaceFormatCount, VkSurfaceFormatKHR* pSurfaceFormats);+typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfacePresentModesKHR)(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, uint32_t* pPresentModeCount, VkPresentModeKHR* pPresentModes);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR void VKAPI_CALL vkDestroySurfaceKHR(+ VkInstance instance,+ VkSurfaceKHR surface,+ const VkAllocationCallbacks* pAllocator);++VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceSupportKHR(+ VkPhysicalDevice physicalDevice,+ uint32_t queueFamilyIndex,+ VkSurfaceKHR surface,+ VkBool32* pSupported);++VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceCapabilitiesKHR(+ VkPhysicalDevice physicalDevice,+ VkSurfaceKHR surface,+ VkSurfaceCapabilitiesKHR* pSurfaceCapabilities);++VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceFormatsKHR(+ VkPhysicalDevice physicalDevice,+ VkSurfaceKHR surface,+ uint32_t* pSurfaceFormatCount,+ VkSurfaceFormatKHR* pSurfaceFormats);++VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfacePresentModesKHR(+ VkPhysicalDevice physicalDevice,+ VkSurfaceKHR surface,+ uint32_t* pPresentModeCount,+ VkPresentModeKHR* pPresentModes);+#endif++#define VK_KHR_swapchain 1+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSwapchainKHR)++#define VK_KHR_SWAPCHAIN_SPEC_VERSION 70+#define VK_KHR_SWAPCHAIN_EXTENSION_NAME "VK_KHR_swapchain"+++typedef enum VkSwapchainCreateFlagBitsKHR {+ VK_SWAPCHAIN_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR = 0x00000001,+ VK_SWAPCHAIN_CREATE_PROTECTED_BIT_KHR = 0x00000002,+ VK_SWAPCHAIN_CREATE_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF+} VkSwapchainCreateFlagBitsKHR;+typedef VkFlags VkSwapchainCreateFlagsKHR;++typedef enum VkDeviceGroupPresentModeFlagBitsKHR {+ VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR = 0x00000001,+ VK_DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHR = 0x00000002,+ VK_DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHR = 0x00000004,+ VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR = 0x00000008,+ VK_DEVICE_GROUP_PRESENT_MODE_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF+} VkDeviceGroupPresentModeFlagBitsKHR;+typedef VkFlags VkDeviceGroupPresentModeFlagsKHR;++typedef struct VkSwapchainCreateInfoKHR {+ VkStructureType sType;+ const void* pNext;+ VkSwapchainCreateFlagsKHR flags;+ VkSurfaceKHR surface;+ uint32_t minImageCount;+ VkFormat imageFormat;+ VkColorSpaceKHR imageColorSpace;+ VkExtent2D imageExtent;+ uint32_t imageArrayLayers;+ VkImageUsageFlags imageUsage;+ VkSharingMode imageSharingMode;+ uint32_t queueFamilyIndexCount;+ const uint32_t* pQueueFamilyIndices;+ VkSurfaceTransformFlagBitsKHR preTransform;+ VkCompositeAlphaFlagBitsKHR compositeAlpha;+ VkPresentModeKHR presentMode;+ VkBool32 clipped;+ VkSwapchainKHR oldSwapchain;+} VkSwapchainCreateInfoKHR;++typedef struct VkPresentInfoKHR {+ VkStructureType sType;+ const void* pNext;+ uint32_t waitSemaphoreCount;+ const VkSemaphore* pWaitSemaphores;+ uint32_t swapchainCount;+ const VkSwapchainKHR* pSwapchains;+ const uint32_t* pImageIndices;+ VkResult* pResults;+} VkPresentInfoKHR;++typedef struct VkImageSwapchainCreateInfoKHR {+ VkStructureType sType;+ const void* pNext;+ VkSwapchainKHR swapchain;+} VkImageSwapchainCreateInfoKHR;++typedef struct VkBindImageMemorySwapchainInfoKHR {+ VkStructureType sType;+ const void* pNext;+ VkSwapchainKHR swapchain;+ uint32_t imageIndex;+} VkBindImageMemorySwapchainInfoKHR;++typedef struct VkAcquireNextImageInfoKHR {+ VkStructureType sType;+ const void* pNext;+ VkSwapchainKHR swapchain;+ uint64_t timeout;+ VkSemaphore semaphore;+ VkFence fence;+ uint32_t deviceMask;+} VkAcquireNextImageInfoKHR;++typedef struct VkDeviceGroupPresentCapabilitiesKHR {+ VkStructureType sType;+ const void* pNext;+ uint32_t presentMask[VK_MAX_DEVICE_GROUP_SIZE];+ VkDeviceGroupPresentModeFlagsKHR modes;+} VkDeviceGroupPresentCapabilitiesKHR;++typedef struct VkDeviceGroupPresentInfoKHR {+ VkStructureType sType;+ const void* pNext;+ uint32_t swapchainCount;+ const uint32_t* pDeviceMasks;+ VkDeviceGroupPresentModeFlagBitsKHR mode;+} VkDeviceGroupPresentInfoKHR;++typedef struct VkDeviceGroupSwapchainCreateInfoKHR {+ VkStructureType sType;+ const void* pNext;+ VkDeviceGroupPresentModeFlagsKHR modes;+} VkDeviceGroupSwapchainCreateInfoKHR;+++typedef VkResult (VKAPI_PTR *PFN_vkCreateSwapchainKHR)(VkDevice device, const VkSwapchainCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSwapchainKHR* pSwapchain);+typedef void (VKAPI_PTR *PFN_vkDestroySwapchainKHR)(VkDevice device, VkSwapchainKHR swapchain, const VkAllocationCallbacks* pAllocator);+typedef VkResult (VKAPI_PTR *PFN_vkGetSwapchainImagesKHR)(VkDevice device, VkSwapchainKHR swapchain, uint32_t* pSwapchainImageCount, VkImage* pSwapchainImages);+typedef VkResult (VKAPI_PTR *PFN_vkAcquireNextImageKHR)(VkDevice device, VkSwapchainKHR swapchain, uint64_t timeout, VkSemaphore semaphore, VkFence fence, uint32_t* pImageIndex);+typedef VkResult (VKAPI_PTR *PFN_vkQueuePresentKHR)(VkQueue queue, const VkPresentInfoKHR* pPresentInfo);+typedef VkResult (VKAPI_PTR *PFN_vkGetDeviceGroupPresentCapabilitiesKHR)(VkDevice device, VkDeviceGroupPresentCapabilitiesKHR* pDeviceGroupPresentCapabilities);+typedef VkResult (VKAPI_PTR *PFN_vkGetDeviceGroupSurfacePresentModesKHR)(VkDevice device, VkSurfaceKHR surface, VkDeviceGroupPresentModeFlagsKHR* pModes);+typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDevicePresentRectanglesKHR)(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, uint32_t* pRectCount, VkRect2D* pRects);+typedef VkResult (VKAPI_PTR *PFN_vkAcquireNextImage2KHR)(VkDevice device, const VkAcquireNextImageInfoKHR* pAcquireInfo, uint32_t* pImageIndex);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR VkResult VKAPI_CALL vkCreateSwapchainKHR(+ VkDevice device,+ const VkSwapchainCreateInfoKHR* pCreateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkSwapchainKHR* pSwapchain);++VKAPI_ATTR void VKAPI_CALL vkDestroySwapchainKHR(+ VkDevice device,+ VkSwapchainKHR swapchain,+ const VkAllocationCallbacks* pAllocator);++VKAPI_ATTR VkResult VKAPI_CALL vkGetSwapchainImagesKHR(+ VkDevice device,+ VkSwapchainKHR swapchain,+ uint32_t* pSwapchainImageCount,+ VkImage* pSwapchainImages);++VKAPI_ATTR VkResult VKAPI_CALL vkAcquireNextImageKHR(+ VkDevice device,+ VkSwapchainKHR swapchain,+ uint64_t timeout,+ VkSemaphore semaphore,+ VkFence fence,+ uint32_t* pImageIndex);++VKAPI_ATTR VkResult VKAPI_CALL vkQueuePresentKHR(+ VkQueue queue,+ const VkPresentInfoKHR* pPresentInfo);++VKAPI_ATTR VkResult VKAPI_CALL vkGetDeviceGroupPresentCapabilitiesKHR(+ VkDevice device,+ VkDeviceGroupPresentCapabilitiesKHR* pDeviceGroupPresentCapabilities);++VKAPI_ATTR VkResult VKAPI_CALL vkGetDeviceGroupSurfacePresentModesKHR(+ VkDevice device,+ VkSurfaceKHR surface,+ VkDeviceGroupPresentModeFlagsKHR* pModes);++VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDevicePresentRectanglesKHR(+ VkPhysicalDevice physicalDevice,+ VkSurfaceKHR surface,+ uint32_t* pRectCount,+ VkRect2D* pRects);++VKAPI_ATTR VkResult VKAPI_CALL vkAcquireNextImage2KHR(+ VkDevice device,+ const VkAcquireNextImageInfoKHR* pAcquireInfo,+ uint32_t* pImageIndex);+#endif++#define VK_KHR_display 1+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDisplayKHR)+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDisplayModeKHR)++#define VK_KHR_DISPLAY_SPEC_VERSION 21+#define VK_KHR_DISPLAY_EXTENSION_NAME "VK_KHR_display"+++typedef enum VkDisplayPlaneAlphaFlagBitsKHR {+ VK_DISPLAY_PLANE_ALPHA_OPAQUE_BIT_KHR = 0x00000001,+ VK_DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR = 0x00000002,+ VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_BIT_KHR = 0x00000004,+ VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_PREMULTIPLIED_BIT_KHR = 0x00000008,+ VK_DISPLAY_PLANE_ALPHA_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF+} VkDisplayPlaneAlphaFlagBitsKHR;+typedef VkFlags VkDisplayPlaneAlphaFlagsKHR;+typedef VkFlags VkDisplayModeCreateFlagsKHR;+typedef VkFlags VkDisplaySurfaceCreateFlagsKHR;++typedef struct VkDisplayPropertiesKHR {+ VkDisplayKHR display;+ const char* displayName;+ VkExtent2D physicalDimensions;+ VkExtent2D physicalResolution;+ VkSurfaceTransformFlagsKHR supportedTransforms;+ VkBool32 planeReorderPossible;+ VkBool32 persistentContent;+} VkDisplayPropertiesKHR;++typedef struct VkDisplayModeParametersKHR {+ VkExtent2D visibleRegion;+ uint32_t refreshRate;+} VkDisplayModeParametersKHR;++typedef struct VkDisplayModePropertiesKHR {+ VkDisplayModeKHR displayMode;+ VkDisplayModeParametersKHR parameters;+} VkDisplayModePropertiesKHR;++typedef struct VkDisplayModeCreateInfoKHR {+ VkStructureType sType;+ const void* pNext;+ VkDisplayModeCreateFlagsKHR flags;+ VkDisplayModeParametersKHR parameters;+} VkDisplayModeCreateInfoKHR;++typedef struct VkDisplayPlaneCapabilitiesKHR {+ VkDisplayPlaneAlphaFlagsKHR supportedAlpha;+ VkOffset2D minSrcPosition;+ VkOffset2D maxSrcPosition;+ VkExtent2D minSrcExtent;+ VkExtent2D maxSrcExtent;+ VkOffset2D minDstPosition;+ VkOffset2D maxDstPosition;+ VkExtent2D minDstExtent;+ VkExtent2D maxDstExtent;+} VkDisplayPlaneCapabilitiesKHR;++typedef struct VkDisplayPlanePropertiesKHR {+ VkDisplayKHR currentDisplay;+ uint32_t currentStackIndex;+} VkDisplayPlanePropertiesKHR;++typedef struct VkDisplaySurfaceCreateInfoKHR {+ VkStructureType sType;+ const void* pNext;+ VkDisplaySurfaceCreateFlagsKHR flags;+ VkDisplayModeKHR displayMode;+ uint32_t planeIndex;+ uint32_t planeStackIndex;+ VkSurfaceTransformFlagBitsKHR transform;+ float globalAlpha;+ VkDisplayPlaneAlphaFlagBitsKHR alphaMode;+ VkExtent2D imageExtent;+} VkDisplaySurfaceCreateInfoKHR;+++typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceDisplayPropertiesKHR)(VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkDisplayPropertiesKHR* pProperties);+typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR)(VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkDisplayPlanePropertiesKHR* pProperties);+typedef VkResult (VKAPI_PTR *PFN_vkGetDisplayPlaneSupportedDisplaysKHR)(VkPhysicalDevice physicalDevice, uint32_t planeIndex, uint32_t* pDisplayCount, VkDisplayKHR* pDisplays);+typedef VkResult (VKAPI_PTR *PFN_vkGetDisplayModePropertiesKHR)(VkPhysicalDevice physicalDevice, VkDisplayKHR display, uint32_t* pPropertyCount, VkDisplayModePropertiesKHR* pProperties);+typedef VkResult (VKAPI_PTR *PFN_vkCreateDisplayModeKHR)(VkPhysicalDevice physicalDevice, VkDisplayKHR display, const VkDisplayModeCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDisplayModeKHR* pMode);+typedef VkResult (VKAPI_PTR *PFN_vkGetDisplayPlaneCapabilitiesKHR)(VkPhysicalDevice physicalDevice, VkDisplayModeKHR mode, uint32_t planeIndex, VkDisplayPlaneCapabilitiesKHR* pCapabilities);+typedef VkResult (VKAPI_PTR *PFN_vkCreateDisplayPlaneSurfaceKHR)(VkInstance instance, const VkDisplaySurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceDisplayPropertiesKHR(+ VkPhysicalDevice physicalDevice,+ uint32_t* pPropertyCount,+ VkDisplayPropertiesKHR* pProperties);++VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceDisplayPlanePropertiesKHR(+ VkPhysicalDevice physicalDevice,+ uint32_t* pPropertyCount,+ VkDisplayPlanePropertiesKHR* pProperties);++VKAPI_ATTR VkResult VKAPI_CALL vkGetDisplayPlaneSupportedDisplaysKHR(+ VkPhysicalDevice physicalDevice,+ uint32_t planeIndex,+ uint32_t* pDisplayCount,+ VkDisplayKHR* pDisplays);++VKAPI_ATTR VkResult VKAPI_CALL vkGetDisplayModePropertiesKHR(+ VkPhysicalDevice physicalDevice,+ VkDisplayKHR display,+ uint32_t* pPropertyCount,+ VkDisplayModePropertiesKHR* pProperties);++VKAPI_ATTR VkResult VKAPI_CALL vkCreateDisplayModeKHR(+ VkPhysicalDevice physicalDevice,+ VkDisplayKHR display,+ const VkDisplayModeCreateInfoKHR* pCreateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkDisplayModeKHR* pMode);++VKAPI_ATTR VkResult VKAPI_CALL vkGetDisplayPlaneCapabilitiesKHR(+ VkPhysicalDevice physicalDevice,+ VkDisplayModeKHR mode,+ uint32_t planeIndex,+ VkDisplayPlaneCapabilitiesKHR* pCapabilities);++VKAPI_ATTR VkResult VKAPI_CALL vkCreateDisplayPlaneSurfaceKHR(+ VkInstance instance,+ const VkDisplaySurfaceCreateInfoKHR* pCreateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkSurfaceKHR* pSurface);+#endif++#define VK_KHR_display_swapchain 1+#define VK_KHR_DISPLAY_SWAPCHAIN_SPEC_VERSION 9+#define VK_KHR_DISPLAY_SWAPCHAIN_EXTENSION_NAME "VK_KHR_display_swapchain"++typedef struct VkDisplayPresentInfoKHR {+ VkStructureType sType;+ const void* pNext;+ VkRect2D srcRect;+ VkRect2D dstRect;+ VkBool32 persistent;+} VkDisplayPresentInfoKHR;+++typedef VkResult (VKAPI_PTR *PFN_vkCreateSharedSwapchainsKHR)(VkDevice device, uint32_t swapchainCount, const VkSwapchainCreateInfoKHR* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkSwapchainKHR* pSwapchains);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR VkResult VKAPI_CALL vkCreateSharedSwapchainsKHR(+ VkDevice device,+ uint32_t swapchainCount,+ const VkSwapchainCreateInfoKHR* pCreateInfos,+ const VkAllocationCallbacks* pAllocator,+ VkSwapchainKHR* pSwapchains);+#endif++#define VK_KHR_sampler_mirror_clamp_to_edge 1+#define VK_KHR_SAMPLER_MIRROR_CLAMP_TO_EDGE_SPEC_VERSION 1+#define VK_KHR_SAMPLER_MIRROR_CLAMP_TO_EDGE_EXTENSION_NAME "VK_KHR_sampler_mirror_clamp_to_edge"+++#define VK_KHR_multiview 1+#define VK_KHR_MULTIVIEW_SPEC_VERSION 1+#define VK_KHR_MULTIVIEW_EXTENSION_NAME "VK_KHR_multiview"++typedef VkRenderPassMultiviewCreateInfo VkRenderPassMultiviewCreateInfoKHR;++typedef VkPhysicalDeviceMultiviewFeatures VkPhysicalDeviceMultiviewFeaturesKHR;++typedef VkPhysicalDeviceMultiviewProperties VkPhysicalDeviceMultiviewPropertiesKHR;++++#define VK_KHR_get_physical_device_properties2 1+#define VK_KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_SPEC_VERSION 1+#define VK_KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_EXTENSION_NAME "VK_KHR_get_physical_device_properties2"++typedef VkPhysicalDeviceFeatures2 VkPhysicalDeviceFeatures2KHR;++typedef VkPhysicalDeviceProperties2 VkPhysicalDeviceProperties2KHR;++typedef VkFormatProperties2 VkFormatProperties2KHR;++typedef VkImageFormatProperties2 VkImageFormatProperties2KHR;++typedef VkPhysicalDeviceImageFormatInfo2 VkPhysicalDeviceImageFormatInfo2KHR;++typedef VkQueueFamilyProperties2 VkQueueFamilyProperties2KHR;++typedef VkPhysicalDeviceMemoryProperties2 VkPhysicalDeviceMemoryProperties2KHR;++typedef VkSparseImageFormatProperties2 VkSparseImageFormatProperties2KHR;++typedef VkPhysicalDeviceSparseImageFormatInfo2 VkPhysicalDeviceSparseImageFormatInfo2KHR;+++typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceFeatures2KHR)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceFeatures2* pFeatures);+typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceProperties2KHR)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceProperties2* pProperties);+typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceFormatProperties2KHR)(VkPhysicalDevice physicalDevice, VkFormat format, VkFormatProperties2* pFormatProperties);+typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceImageFormatProperties2KHR)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceImageFormatInfo2* pImageFormatInfo, VkImageFormatProperties2* pImageFormatProperties);+typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceQueueFamilyProperties2KHR)(VkPhysicalDevice physicalDevice, uint32_t* pQueueFamilyPropertyCount, VkQueueFamilyProperties2* pQueueFamilyProperties);+typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceMemoryProperties2KHR)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceMemoryProperties2* pMemoryProperties);+typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceSparseImageFormatProperties2KHR)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceSparseImageFormatInfo2* pFormatInfo, uint32_t* pPropertyCount, VkSparseImageFormatProperties2* pProperties);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceFeatures2KHR(+ VkPhysicalDevice physicalDevice,+ VkPhysicalDeviceFeatures2* pFeatures);++VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceProperties2KHR(+ VkPhysicalDevice physicalDevice,+ VkPhysicalDeviceProperties2* pProperties);++VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceFormatProperties2KHR(+ VkPhysicalDevice physicalDevice,+ VkFormat format,+ VkFormatProperties2* pFormatProperties);++VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceImageFormatProperties2KHR(+ VkPhysicalDevice physicalDevice,+ const VkPhysicalDeviceImageFormatInfo2* pImageFormatInfo,+ VkImageFormatProperties2* pImageFormatProperties);++VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceQueueFamilyProperties2KHR(+ VkPhysicalDevice physicalDevice,+ uint32_t* pQueueFamilyPropertyCount,+ VkQueueFamilyProperties2* pQueueFamilyProperties);++VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceMemoryProperties2KHR(+ VkPhysicalDevice physicalDevice,+ VkPhysicalDeviceMemoryProperties2* pMemoryProperties);++VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceSparseImageFormatProperties2KHR(+ VkPhysicalDevice physicalDevice,+ const VkPhysicalDeviceSparseImageFormatInfo2* pFormatInfo,+ uint32_t* pPropertyCount,+ VkSparseImageFormatProperties2* pProperties);+#endif++#define VK_KHR_device_group 1+#define VK_KHR_DEVICE_GROUP_SPEC_VERSION 3+#define VK_KHR_DEVICE_GROUP_EXTENSION_NAME "VK_KHR_device_group"++typedef VkPeerMemoryFeatureFlags VkPeerMemoryFeatureFlagsKHR;++typedef VkPeerMemoryFeatureFlagBits VkPeerMemoryFeatureFlagBitsKHR;++typedef VkMemoryAllocateFlags VkMemoryAllocateFlagsKHR;++typedef VkMemoryAllocateFlagBits VkMemoryAllocateFlagBitsKHR;+++typedef VkMemoryAllocateFlagsInfo VkMemoryAllocateFlagsInfoKHR;++typedef VkDeviceGroupRenderPassBeginInfo VkDeviceGroupRenderPassBeginInfoKHR;++typedef VkDeviceGroupCommandBufferBeginInfo VkDeviceGroupCommandBufferBeginInfoKHR;++typedef VkDeviceGroupSubmitInfo VkDeviceGroupSubmitInfoKHR;++typedef VkDeviceGroupBindSparseInfo VkDeviceGroupBindSparseInfoKHR;++typedef VkBindBufferMemoryDeviceGroupInfo VkBindBufferMemoryDeviceGroupInfoKHR;++typedef VkBindImageMemoryDeviceGroupInfo VkBindImageMemoryDeviceGroupInfoKHR;+++typedef void (VKAPI_PTR *PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR)(VkDevice device, uint32_t heapIndex, uint32_t localDeviceIndex, uint32_t remoteDeviceIndex, VkPeerMemoryFeatureFlags* pPeerMemoryFeatures);+typedef void (VKAPI_PTR *PFN_vkCmdSetDeviceMaskKHR)(VkCommandBuffer commandBuffer, uint32_t deviceMask);+typedef void (VKAPI_PTR *PFN_vkCmdDispatchBaseKHR)(VkCommandBuffer commandBuffer, uint32_t baseGroupX, uint32_t baseGroupY, uint32_t baseGroupZ, uint32_t groupCountX, uint32_t groupCountY, uint32_t groupCountZ);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR void VKAPI_CALL vkGetDeviceGroupPeerMemoryFeaturesKHR(+ VkDevice device,+ uint32_t heapIndex,+ uint32_t localDeviceIndex,+ uint32_t remoteDeviceIndex,+ VkPeerMemoryFeatureFlags* pPeerMemoryFeatures);++VKAPI_ATTR void VKAPI_CALL vkCmdSetDeviceMaskKHR(+ VkCommandBuffer commandBuffer,+ uint32_t deviceMask);++VKAPI_ATTR void VKAPI_CALL vkCmdDispatchBaseKHR(+ VkCommandBuffer commandBuffer,+ uint32_t baseGroupX,+ uint32_t baseGroupY,+ uint32_t baseGroupZ,+ uint32_t groupCountX,+ uint32_t groupCountY,+ uint32_t groupCountZ);+#endif++#define VK_KHR_shader_draw_parameters 1+#define VK_KHR_SHADER_DRAW_PARAMETERS_SPEC_VERSION 1+#define VK_KHR_SHADER_DRAW_PARAMETERS_EXTENSION_NAME "VK_KHR_shader_draw_parameters"+++#define VK_KHR_maintenance1 1+#define VK_KHR_MAINTENANCE1_SPEC_VERSION 2+#define VK_KHR_MAINTENANCE1_EXTENSION_NAME "VK_KHR_maintenance1"++typedef VkCommandPoolTrimFlags VkCommandPoolTrimFlagsKHR;+++typedef void (VKAPI_PTR *PFN_vkTrimCommandPoolKHR)(VkDevice device, VkCommandPool commandPool, VkCommandPoolTrimFlags flags);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR void VKAPI_CALL vkTrimCommandPoolKHR(+ VkDevice device,+ VkCommandPool commandPool,+ VkCommandPoolTrimFlags flags);+#endif++#define VK_KHR_device_group_creation 1+#define VK_KHR_DEVICE_GROUP_CREATION_SPEC_VERSION 1+#define VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME "VK_KHR_device_group_creation"+#define VK_MAX_DEVICE_GROUP_SIZE_KHR VK_MAX_DEVICE_GROUP_SIZE++typedef VkPhysicalDeviceGroupProperties VkPhysicalDeviceGroupPropertiesKHR;++typedef VkDeviceGroupDeviceCreateInfo VkDeviceGroupDeviceCreateInfoKHR;+++typedef VkResult (VKAPI_PTR *PFN_vkEnumeratePhysicalDeviceGroupsKHR)(VkInstance instance, uint32_t* pPhysicalDeviceGroupCount, VkPhysicalDeviceGroupProperties* pPhysicalDeviceGroupProperties);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR VkResult VKAPI_CALL vkEnumeratePhysicalDeviceGroupsKHR(+ VkInstance instance,+ uint32_t* pPhysicalDeviceGroupCount,+ VkPhysicalDeviceGroupProperties* pPhysicalDeviceGroupProperties);+#endif++#define VK_KHR_external_memory_capabilities 1+#define VK_KHR_EXTERNAL_MEMORY_CAPABILITIES_SPEC_VERSION 1+#define VK_KHR_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME "VK_KHR_external_memory_capabilities"+#define VK_LUID_SIZE_KHR VK_LUID_SIZE++typedef VkExternalMemoryHandleTypeFlags VkExternalMemoryHandleTypeFlagsKHR;++typedef VkExternalMemoryHandleTypeFlagBits VkExternalMemoryHandleTypeFlagBitsKHR;++typedef VkExternalMemoryFeatureFlags VkExternalMemoryFeatureFlagsKHR;++typedef VkExternalMemoryFeatureFlagBits VkExternalMemoryFeatureFlagBitsKHR;+++typedef VkExternalMemoryProperties VkExternalMemoryPropertiesKHR;++typedef VkPhysicalDeviceExternalImageFormatInfo VkPhysicalDeviceExternalImageFormatInfoKHR;++typedef VkExternalImageFormatProperties VkExternalImageFormatPropertiesKHR;++typedef VkPhysicalDeviceExternalBufferInfo VkPhysicalDeviceExternalBufferInfoKHR;++typedef VkExternalBufferProperties VkExternalBufferPropertiesKHR;++typedef VkPhysicalDeviceIDProperties VkPhysicalDeviceIDPropertiesKHR;+++typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceExternalBufferPropertiesKHR)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalBufferInfo* pExternalBufferInfo, VkExternalBufferProperties* pExternalBufferProperties);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceExternalBufferPropertiesKHR(+ VkPhysicalDevice physicalDevice,+ const VkPhysicalDeviceExternalBufferInfo* pExternalBufferInfo,+ VkExternalBufferProperties* pExternalBufferProperties);+#endif++#define VK_KHR_external_memory 1+#define VK_KHR_EXTERNAL_MEMORY_SPEC_VERSION 1+#define VK_KHR_EXTERNAL_MEMORY_EXTENSION_NAME "VK_KHR_external_memory"+#define VK_QUEUE_FAMILY_EXTERNAL_KHR VK_QUEUE_FAMILY_EXTERNAL++typedef VkExternalMemoryImageCreateInfo VkExternalMemoryImageCreateInfoKHR;++typedef VkExternalMemoryBufferCreateInfo VkExternalMemoryBufferCreateInfoKHR;++typedef VkExportMemoryAllocateInfo VkExportMemoryAllocateInfoKHR;++++#define VK_KHR_external_memory_fd 1+#define VK_KHR_EXTERNAL_MEMORY_FD_SPEC_VERSION 1+#define VK_KHR_EXTERNAL_MEMORY_FD_EXTENSION_NAME "VK_KHR_external_memory_fd"++typedef struct VkImportMemoryFdInfoKHR {+ VkStructureType sType;+ const void* pNext;+ VkExternalMemoryHandleTypeFlagBits handleType;+ int fd;+} VkImportMemoryFdInfoKHR;++typedef struct VkMemoryFdPropertiesKHR {+ VkStructureType sType;+ void* pNext;+ uint32_t memoryTypeBits;+} VkMemoryFdPropertiesKHR;++typedef struct VkMemoryGetFdInfoKHR {+ VkStructureType sType;+ const void* pNext;+ VkDeviceMemory memory;+ VkExternalMemoryHandleTypeFlagBits handleType;+} VkMemoryGetFdInfoKHR;+++typedef VkResult (VKAPI_PTR *PFN_vkGetMemoryFdKHR)(VkDevice device, const VkMemoryGetFdInfoKHR* pGetFdInfo, int* pFd);+typedef VkResult (VKAPI_PTR *PFN_vkGetMemoryFdPropertiesKHR)(VkDevice device, VkExternalMemoryHandleTypeFlagBits handleType, int fd, VkMemoryFdPropertiesKHR* pMemoryFdProperties);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryFdKHR(+ VkDevice device,+ const VkMemoryGetFdInfoKHR* pGetFdInfo,+ int* pFd);++VKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryFdPropertiesKHR(+ VkDevice device,+ VkExternalMemoryHandleTypeFlagBits handleType,+ int fd,+ VkMemoryFdPropertiesKHR* pMemoryFdProperties);+#endif++#define VK_KHR_external_semaphore_capabilities 1+#define VK_KHR_EXTERNAL_SEMAPHORE_CAPABILITIES_SPEC_VERSION 1+#define VK_KHR_EXTERNAL_SEMAPHORE_CAPABILITIES_EXTENSION_NAME "VK_KHR_external_semaphore_capabilities"++typedef VkExternalSemaphoreHandleTypeFlags VkExternalSemaphoreHandleTypeFlagsKHR;++typedef VkExternalSemaphoreHandleTypeFlagBits VkExternalSemaphoreHandleTypeFlagBitsKHR;++typedef VkExternalSemaphoreFeatureFlags VkExternalSemaphoreFeatureFlagsKHR;++typedef VkExternalSemaphoreFeatureFlagBits VkExternalSemaphoreFeatureFlagBitsKHR;+++typedef VkPhysicalDeviceExternalSemaphoreInfo VkPhysicalDeviceExternalSemaphoreInfoKHR;++typedef VkExternalSemaphoreProperties VkExternalSemaphorePropertiesKHR;+++typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceExternalSemaphorePropertiesKHR)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalSemaphoreInfo* pExternalSemaphoreInfo, VkExternalSemaphoreProperties* pExternalSemaphoreProperties);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceExternalSemaphorePropertiesKHR(+ VkPhysicalDevice physicalDevice,+ const VkPhysicalDeviceExternalSemaphoreInfo* pExternalSemaphoreInfo,+ VkExternalSemaphoreProperties* pExternalSemaphoreProperties);+#endif++#define VK_KHR_external_semaphore 1+#define VK_KHR_EXTERNAL_SEMAPHORE_SPEC_VERSION 1+#define VK_KHR_EXTERNAL_SEMAPHORE_EXTENSION_NAME "VK_KHR_external_semaphore"++typedef VkSemaphoreImportFlags VkSemaphoreImportFlagsKHR;++typedef VkSemaphoreImportFlagBits VkSemaphoreImportFlagBitsKHR;+++typedef VkExportSemaphoreCreateInfo VkExportSemaphoreCreateInfoKHR;++++#define VK_KHR_external_semaphore_fd 1+#define VK_KHR_EXTERNAL_SEMAPHORE_FD_SPEC_VERSION 1+#define VK_KHR_EXTERNAL_SEMAPHORE_FD_EXTENSION_NAME "VK_KHR_external_semaphore_fd"++typedef struct VkImportSemaphoreFdInfoKHR {+ VkStructureType sType;+ const void* pNext;+ VkSemaphore semaphore;+ VkSemaphoreImportFlags flags;+ VkExternalSemaphoreHandleTypeFlagBits handleType;+ int fd;+} VkImportSemaphoreFdInfoKHR;++typedef struct VkSemaphoreGetFdInfoKHR {+ VkStructureType sType;+ const void* pNext;+ VkSemaphore semaphore;+ VkExternalSemaphoreHandleTypeFlagBits handleType;+} VkSemaphoreGetFdInfoKHR;+++typedef VkResult (VKAPI_PTR *PFN_vkImportSemaphoreFdKHR)(VkDevice device, const VkImportSemaphoreFdInfoKHR* pImportSemaphoreFdInfo);+typedef VkResult (VKAPI_PTR *PFN_vkGetSemaphoreFdKHR)(VkDevice device, const VkSemaphoreGetFdInfoKHR* pGetFdInfo, int* pFd);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR VkResult VKAPI_CALL vkImportSemaphoreFdKHR(+ VkDevice device,+ const VkImportSemaphoreFdInfoKHR* pImportSemaphoreFdInfo);++VKAPI_ATTR VkResult VKAPI_CALL vkGetSemaphoreFdKHR(+ VkDevice device,+ const VkSemaphoreGetFdInfoKHR* pGetFdInfo,+ int* pFd);+#endif++#define VK_KHR_push_descriptor 1+#define VK_KHR_PUSH_DESCRIPTOR_SPEC_VERSION 2+#define VK_KHR_PUSH_DESCRIPTOR_EXTENSION_NAME "VK_KHR_push_descriptor"++typedef struct VkPhysicalDevicePushDescriptorPropertiesKHR {+ VkStructureType sType;+ void* pNext;+ uint32_t maxPushDescriptors;+} VkPhysicalDevicePushDescriptorPropertiesKHR;+++typedef void (VKAPI_PTR *PFN_vkCmdPushDescriptorSetKHR)(VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipelineLayout layout, uint32_t set, uint32_t descriptorWriteCount, const VkWriteDescriptorSet* pDescriptorWrites);+typedef void (VKAPI_PTR *PFN_vkCmdPushDescriptorSetWithTemplateKHR)(VkCommandBuffer commandBuffer, VkDescriptorUpdateTemplate descriptorUpdateTemplate, VkPipelineLayout layout, uint32_t set, const void* pData);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR void VKAPI_CALL vkCmdPushDescriptorSetKHR(+ VkCommandBuffer commandBuffer,+ VkPipelineBindPoint pipelineBindPoint,+ VkPipelineLayout layout,+ uint32_t set,+ uint32_t descriptorWriteCount,+ const VkWriteDescriptorSet* pDescriptorWrites);++VKAPI_ATTR void VKAPI_CALL vkCmdPushDescriptorSetWithTemplateKHR(+ VkCommandBuffer commandBuffer,+ VkDescriptorUpdateTemplate descriptorUpdateTemplate,+ VkPipelineLayout layout,+ uint32_t set,+ const void* pData);+#endif++#define VK_KHR_16bit_storage 1+#define VK_KHR_16BIT_STORAGE_SPEC_VERSION 1+#define VK_KHR_16BIT_STORAGE_EXTENSION_NAME "VK_KHR_16bit_storage"++typedef VkPhysicalDevice16BitStorageFeatures VkPhysicalDevice16BitStorageFeaturesKHR;++++#define VK_KHR_incremental_present 1+#define VK_KHR_INCREMENTAL_PRESENT_SPEC_VERSION 1+#define VK_KHR_INCREMENTAL_PRESENT_EXTENSION_NAME "VK_KHR_incremental_present"++typedef struct VkRectLayerKHR {+ VkOffset2D offset;+ VkExtent2D extent;+ uint32_t layer;+} VkRectLayerKHR;++typedef struct VkPresentRegionKHR {+ uint32_t rectangleCount;+ const VkRectLayerKHR* pRectangles;+} VkPresentRegionKHR;++typedef struct VkPresentRegionsKHR {+ VkStructureType sType;+ const void* pNext;+ uint32_t swapchainCount;+ const VkPresentRegionKHR* pRegions;+} VkPresentRegionsKHR;++++#define VK_KHR_descriptor_update_template 1+typedef VkDescriptorUpdateTemplate VkDescriptorUpdateTemplateKHR;+++#define VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_SPEC_VERSION 1+#define VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME "VK_KHR_descriptor_update_template"++typedef VkDescriptorUpdateTemplateType VkDescriptorUpdateTemplateTypeKHR;+++typedef VkDescriptorUpdateTemplateCreateFlags VkDescriptorUpdateTemplateCreateFlagsKHR;+++typedef VkDescriptorUpdateTemplateEntry VkDescriptorUpdateTemplateEntryKHR;++typedef VkDescriptorUpdateTemplateCreateInfo VkDescriptorUpdateTemplateCreateInfoKHR;+++typedef VkResult (VKAPI_PTR *PFN_vkCreateDescriptorUpdateTemplateKHR)(VkDevice device, const VkDescriptorUpdateTemplateCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorUpdateTemplate* pDescriptorUpdateTemplate);+typedef void (VKAPI_PTR *PFN_vkDestroyDescriptorUpdateTemplateKHR)(VkDevice device, VkDescriptorUpdateTemplate descriptorUpdateTemplate, const VkAllocationCallbacks* pAllocator);+typedef void (VKAPI_PTR *PFN_vkUpdateDescriptorSetWithTemplateKHR)(VkDevice device, VkDescriptorSet descriptorSet, VkDescriptorUpdateTemplate descriptorUpdateTemplate, const void* pData);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR VkResult VKAPI_CALL vkCreateDescriptorUpdateTemplateKHR(+ VkDevice device,+ const VkDescriptorUpdateTemplateCreateInfo* pCreateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkDescriptorUpdateTemplate* pDescriptorUpdateTemplate);++VKAPI_ATTR void VKAPI_CALL vkDestroyDescriptorUpdateTemplateKHR(+ VkDevice device,+ VkDescriptorUpdateTemplate descriptorUpdateTemplate,+ const VkAllocationCallbacks* pAllocator);++VKAPI_ATTR void VKAPI_CALL vkUpdateDescriptorSetWithTemplateKHR(+ VkDevice device,+ VkDescriptorSet descriptorSet,+ VkDescriptorUpdateTemplate descriptorUpdateTemplate,+ const void* pData);+#endif++#define VK_KHR_shared_presentable_image 1+#define VK_KHR_SHARED_PRESENTABLE_IMAGE_SPEC_VERSION 1+#define VK_KHR_SHARED_PRESENTABLE_IMAGE_EXTENSION_NAME "VK_KHR_shared_presentable_image"++typedef struct VkSharedPresentSurfaceCapabilitiesKHR {+ VkStructureType sType;+ void* pNext;+ VkImageUsageFlags sharedPresentSupportedUsageFlags;+} VkSharedPresentSurfaceCapabilitiesKHR;+++typedef VkResult (VKAPI_PTR *PFN_vkGetSwapchainStatusKHR)(VkDevice device, VkSwapchainKHR swapchain);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR VkResult VKAPI_CALL vkGetSwapchainStatusKHR(+ VkDevice device,+ VkSwapchainKHR swapchain);+#endif++#define VK_KHR_external_fence_capabilities 1+#define VK_KHR_EXTERNAL_FENCE_CAPABILITIES_SPEC_VERSION 1+#define VK_KHR_EXTERNAL_FENCE_CAPABILITIES_EXTENSION_NAME "VK_KHR_external_fence_capabilities"++typedef VkExternalFenceHandleTypeFlags VkExternalFenceHandleTypeFlagsKHR;++typedef VkExternalFenceHandleTypeFlagBits VkExternalFenceHandleTypeFlagBitsKHR;++typedef VkExternalFenceFeatureFlags VkExternalFenceFeatureFlagsKHR;++typedef VkExternalFenceFeatureFlagBits VkExternalFenceFeatureFlagBitsKHR;+++typedef VkPhysicalDeviceExternalFenceInfo VkPhysicalDeviceExternalFenceInfoKHR;++typedef VkExternalFenceProperties VkExternalFencePropertiesKHR;+++typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceExternalFencePropertiesKHR)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalFenceInfo* pExternalFenceInfo, VkExternalFenceProperties* pExternalFenceProperties);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceExternalFencePropertiesKHR(+ VkPhysicalDevice physicalDevice,+ const VkPhysicalDeviceExternalFenceInfo* pExternalFenceInfo,+ VkExternalFenceProperties* pExternalFenceProperties);+#endif++#define VK_KHR_external_fence 1+#define VK_KHR_EXTERNAL_FENCE_SPEC_VERSION 1+#define VK_KHR_EXTERNAL_FENCE_EXTENSION_NAME "VK_KHR_external_fence"++typedef VkFenceImportFlags VkFenceImportFlagsKHR;++typedef VkFenceImportFlagBits VkFenceImportFlagBitsKHR;+++typedef VkExportFenceCreateInfo VkExportFenceCreateInfoKHR;++++#define VK_KHR_external_fence_fd 1+#define VK_KHR_EXTERNAL_FENCE_FD_SPEC_VERSION 1+#define VK_KHR_EXTERNAL_FENCE_FD_EXTENSION_NAME "VK_KHR_external_fence_fd"++typedef struct VkImportFenceFdInfoKHR {+ VkStructureType sType;+ const void* pNext;+ VkFence fence;+ VkFenceImportFlags flags;+ VkExternalFenceHandleTypeFlagBits handleType;+ int fd;+} VkImportFenceFdInfoKHR;++typedef struct VkFenceGetFdInfoKHR {+ VkStructureType sType;+ const void* pNext;+ VkFence fence;+ VkExternalFenceHandleTypeFlagBits handleType;+} VkFenceGetFdInfoKHR;+++typedef VkResult (VKAPI_PTR *PFN_vkImportFenceFdKHR)(VkDevice device, const VkImportFenceFdInfoKHR* pImportFenceFdInfo);+typedef VkResult (VKAPI_PTR *PFN_vkGetFenceFdKHR)(VkDevice device, const VkFenceGetFdInfoKHR* pGetFdInfo, int* pFd);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR VkResult VKAPI_CALL vkImportFenceFdKHR(+ VkDevice device,+ const VkImportFenceFdInfoKHR* pImportFenceFdInfo);++VKAPI_ATTR VkResult VKAPI_CALL vkGetFenceFdKHR(+ VkDevice device,+ const VkFenceGetFdInfoKHR* pGetFdInfo,+ int* pFd);+#endif++#define VK_KHR_maintenance2 1+#define VK_KHR_MAINTENANCE2_SPEC_VERSION 1+#define VK_KHR_MAINTENANCE2_EXTENSION_NAME "VK_KHR_maintenance2"++typedef VkPointClippingBehavior VkPointClippingBehaviorKHR;++typedef VkTessellationDomainOrigin VkTessellationDomainOriginKHR;+++typedef VkPhysicalDevicePointClippingProperties VkPhysicalDevicePointClippingPropertiesKHR;++typedef VkRenderPassInputAttachmentAspectCreateInfo VkRenderPassInputAttachmentAspectCreateInfoKHR;++typedef VkInputAttachmentAspectReference VkInputAttachmentAspectReferenceKHR;++typedef VkImageViewUsageCreateInfo VkImageViewUsageCreateInfoKHR;++typedef VkPipelineTessellationDomainOriginStateCreateInfo VkPipelineTessellationDomainOriginStateCreateInfoKHR;++++#define VK_KHR_get_surface_capabilities2 1+#define VK_KHR_GET_SURFACE_CAPABILITIES_2_SPEC_VERSION 1+#define VK_KHR_GET_SURFACE_CAPABILITIES_2_EXTENSION_NAME "VK_KHR_get_surface_capabilities2"++typedef struct VkPhysicalDeviceSurfaceInfo2KHR {+ VkStructureType sType;+ const void* pNext;+ VkSurfaceKHR surface;+} VkPhysicalDeviceSurfaceInfo2KHR;++typedef struct VkSurfaceCapabilities2KHR {+ VkStructureType sType;+ void* pNext;+ VkSurfaceCapabilitiesKHR surfaceCapabilities;+} VkSurfaceCapabilities2KHR;++typedef struct VkSurfaceFormat2KHR {+ VkStructureType sType;+ void* pNext;+ VkSurfaceFormatKHR surfaceFormat;+} VkSurfaceFormat2KHR;+++typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo, VkSurfaceCapabilities2KHR* pSurfaceCapabilities);+typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceFormats2KHR)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo, uint32_t* pSurfaceFormatCount, VkSurfaceFormat2KHR* pSurfaceFormats);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceCapabilities2KHR(+ VkPhysicalDevice physicalDevice,+ const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo,+ VkSurfaceCapabilities2KHR* pSurfaceCapabilities);++VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceFormats2KHR(+ VkPhysicalDevice physicalDevice,+ const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo,+ uint32_t* pSurfaceFormatCount,+ VkSurfaceFormat2KHR* pSurfaceFormats);+#endif++#define VK_KHR_variable_pointers 1+#define VK_KHR_VARIABLE_POINTERS_SPEC_VERSION 1+#define VK_KHR_VARIABLE_POINTERS_EXTENSION_NAME "VK_KHR_variable_pointers"++typedef VkPhysicalDeviceVariablePointerFeatures VkPhysicalDeviceVariablePointerFeaturesKHR;++++#define VK_KHR_dedicated_allocation 1+#define VK_KHR_DEDICATED_ALLOCATION_SPEC_VERSION 3+#define VK_KHR_DEDICATED_ALLOCATION_EXTENSION_NAME "VK_KHR_dedicated_allocation"++typedef VkMemoryDedicatedRequirements VkMemoryDedicatedRequirementsKHR;++typedef VkMemoryDedicatedAllocateInfo VkMemoryDedicatedAllocateInfoKHR;++++#define VK_KHR_storage_buffer_storage_class 1+#define VK_KHR_STORAGE_BUFFER_STORAGE_CLASS_SPEC_VERSION 1+#define VK_KHR_STORAGE_BUFFER_STORAGE_CLASS_EXTENSION_NAME "VK_KHR_storage_buffer_storage_class"+++#define VK_KHR_relaxed_block_layout 1+#define VK_KHR_RELAXED_BLOCK_LAYOUT_SPEC_VERSION 1+#define VK_KHR_RELAXED_BLOCK_LAYOUT_EXTENSION_NAME "VK_KHR_relaxed_block_layout"+++#define VK_KHR_get_memory_requirements2 1+#define VK_KHR_GET_MEMORY_REQUIREMENTS_2_SPEC_VERSION 1+#define VK_KHR_GET_MEMORY_REQUIREMENTS_2_EXTENSION_NAME "VK_KHR_get_memory_requirements2"++typedef VkBufferMemoryRequirementsInfo2 VkBufferMemoryRequirementsInfo2KHR;++typedef VkImageMemoryRequirementsInfo2 VkImageMemoryRequirementsInfo2KHR;++typedef VkImageSparseMemoryRequirementsInfo2 VkImageSparseMemoryRequirementsInfo2KHR;++typedef VkMemoryRequirements2 VkMemoryRequirements2KHR;++typedef VkSparseImageMemoryRequirements2 VkSparseImageMemoryRequirements2KHR;+++typedef void (VKAPI_PTR *PFN_vkGetImageMemoryRequirements2KHR)(VkDevice device, const VkImageMemoryRequirementsInfo2* pInfo, VkMemoryRequirements2* pMemoryRequirements);+typedef void (VKAPI_PTR *PFN_vkGetBufferMemoryRequirements2KHR)(VkDevice device, const VkBufferMemoryRequirementsInfo2* pInfo, VkMemoryRequirements2* pMemoryRequirements);+typedef void (VKAPI_PTR *PFN_vkGetImageSparseMemoryRequirements2KHR)(VkDevice device, const VkImageSparseMemoryRequirementsInfo2* pInfo, uint32_t* pSparseMemoryRequirementCount, VkSparseImageMemoryRequirements2* pSparseMemoryRequirements);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR void VKAPI_CALL vkGetImageMemoryRequirements2KHR(+ VkDevice device,+ const VkImageMemoryRequirementsInfo2* pInfo,+ VkMemoryRequirements2* pMemoryRequirements);++VKAPI_ATTR void VKAPI_CALL vkGetBufferMemoryRequirements2KHR(+ VkDevice device,+ const VkBufferMemoryRequirementsInfo2* pInfo,+ VkMemoryRequirements2* pMemoryRequirements);++VKAPI_ATTR void VKAPI_CALL vkGetImageSparseMemoryRequirements2KHR(+ VkDevice device,+ const VkImageSparseMemoryRequirementsInfo2* pInfo,+ uint32_t* pSparseMemoryRequirementCount,+ VkSparseImageMemoryRequirements2* pSparseMemoryRequirements);+#endif++#define VK_KHR_image_format_list 1+#define VK_KHR_IMAGE_FORMAT_LIST_SPEC_VERSION 1+#define VK_KHR_IMAGE_FORMAT_LIST_EXTENSION_NAME "VK_KHR_image_format_list"++typedef struct VkImageFormatListCreateInfoKHR {+ VkStructureType sType;+ const void* pNext;+ uint32_t viewFormatCount;+ const VkFormat* pViewFormats;+} VkImageFormatListCreateInfoKHR;++++#define VK_KHR_sampler_ycbcr_conversion 1+typedef VkSamplerYcbcrConversion VkSamplerYcbcrConversionKHR;+++#define VK_KHR_SAMPLER_YCBCR_CONVERSION_SPEC_VERSION 1+#define VK_KHR_SAMPLER_YCBCR_CONVERSION_EXTENSION_NAME "VK_KHR_sampler_ycbcr_conversion"++typedef VkSamplerYcbcrModelConversion VkSamplerYcbcrModelConversionKHR;++typedef VkSamplerYcbcrRange VkSamplerYcbcrRangeKHR;++typedef VkChromaLocation VkChromaLocationKHR;+++typedef VkSamplerYcbcrConversionCreateInfo VkSamplerYcbcrConversionCreateInfoKHR;++typedef VkSamplerYcbcrConversionInfo VkSamplerYcbcrConversionInfoKHR;++typedef VkBindImagePlaneMemoryInfo VkBindImagePlaneMemoryInfoKHR;++typedef VkImagePlaneMemoryRequirementsInfo VkImagePlaneMemoryRequirementsInfoKHR;++typedef VkPhysicalDeviceSamplerYcbcrConversionFeatures VkPhysicalDeviceSamplerYcbcrConversionFeaturesKHR;++typedef VkSamplerYcbcrConversionImageFormatProperties VkSamplerYcbcrConversionImageFormatPropertiesKHR;+++typedef VkResult (VKAPI_PTR *PFN_vkCreateSamplerYcbcrConversionKHR)(VkDevice device, const VkSamplerYcbcrConversionCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSamplerYcbcrConversion* pYcbcrConversion);+typedef void (VKAPI_PTR *PFN_vkDestroySamplerYcbcrConversionKHR)(VkDevice device, VkSamplerYcbcrConversion ycbcrConversion, const VkAllocationCallbacks* pAllocator);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR VkResult VKAPI_CALL vkCreateSamplerYcbcrConversionKHR(+ VkDevice device,+ const VkSamplerYcbcrConversionCreateInfo* pCreateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkSamplerYcbcrConversion* pYcbcrConversion);++VKAPI_ATTR void VKAPI_CALL vkDestroySamplerYcbcrConversionKHR(+ VkDevice device,+ VkSamplerYcbcrConversion ycbcrConversion,+ const VkAllocationCallbacks* pAllocator);+#endif++#define VK_KHR_bind_memory2 1+#define VK_KHR_BIND_MEMORY_2_SPEC_VERSION 1+#define VK_KHR_BIND_MEMORY_2_EXTENSION_NAME "VK_KHR_bind_memory2"++typedef VkBindBufferMemoryInfo VkBindBufferMemoryInfoKHR;++typedef VkBindImageMemoryInfo VkBindImageMemoryInfoKHR;+++typedef VkResult (VKAPI_PTR *PFN_vkBindBufferMemory2KHR)(VkDevice device, uint32_t bindInfoCount, const VkBindBufferMemoryInfo* pBindInfos);+typedef VkResult (VKAPI_PTR *PFN_vkBindImageMemory2KHR)(VkDevice device, uint32_t bindInfoCount, const VkBindImageMemoryInfo* pBindInfos);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR VkResult VKAPI_CALL vkBindBufferMemory2KHR(+ VkDevice device,+ uint32_t bindInfoCount,+ const VkBindBufferMemoryInfo* pBindInfos);++VKAPI_ATTR VkResult VKAPI_CALL vkBindImageMemory2KHR(+ VkDevice device,+ uint32_t bindInfoCount,+ const VkBindImageMemoryInfo* pBindInfos);+#endif++#define VK_KHR_maintenance3 1+#define VK_KHR_MAINTENANCE3_SPEC_VERSION 1+#define VK_KHR_MAINTENANCE3_EXTENSION_NAME "VK_KHR_maintenance3"++typedef VkPhysicalDeviceMaintenance3Properties VkPhysicalDeviceMaintenance3PropertiesKHR;++typedef VkDescriptorSetLayoutSupport VkDescriptorSetLayoutSupportKHR;+++typedef void (VKAPI_PTR *PFN_vkGetDescriptorSetLayoutSupportKHR)(VkDevice device, const VkDescriptorSetLayoutCreateInfo* pCreateInfo, VkDescriptorSetLayoutSupport* pSupport);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR void VKAPI_CALL vkGetDescriptorSetLayoutSupportKHR(+ VkDevice device,+ const VkDescriptorSetLayoutCreateInfo* pCreateInfo,+ VkDescriptorSetLayoutSupport* pSupport);+#endif++#define VK_EXT_debug_report 1+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDebugReportCallbackEXT)++#define VK_EXT_DEBUG_REPORT_SPEC_VERSION 9+#define VK_EXT_DEBUG_REPORT_EXTENSION_NAME "VK_EXT_debug_report"+#define VK_STRUCTURE_TYPE_DEBUG_REPORT_CREATE_INFO_EXT VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT+#define VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT+++typedef enum VkDebugReportObjectTypeEXT {+ VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT = 0,+ VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT = 1,+ VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT = 2,+ VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT = 3,+ VK_DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT = 4,+ VK_DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT = 5,+ VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT = 6,+ VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT = 7,+ VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT = 8,+ VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT = 9,+ VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT = 10,+ VK_DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT = 11,+ VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT = 12,+ VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT = 13,+ VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT = 14,+ VK_DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT = 15,+ VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT = 16,+ VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT = 17,+ VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT = 18,+ VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT = 19,+ VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT = 20,+ VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT = 21,+ VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT = 22,+ VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT = 23,+ VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT = 24,+ VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT = 25,+ VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT = 26,+ VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT = 27,+ VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT = 28,+ VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT = 29,+ VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT = 30,+ VK_DEBUG_REPORT_OBJECT_TYPE_OBJECT_TABLE_NVX_EXT = 31,+ VK_DEBUG_REPORT_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX_EXT = 32,+ VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT = 33,+ VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT = 1000156000,+ VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT = 1000085000,+ VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT,+ VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT,+ VK_DEBUG_REPORT_OBJECT_TYPE_BEGIN_RANGE_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT,+ VK_DEBUG_REPORT_OBJECT_TYPE_END_RANGE_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT,+ VK_DEBUG_REPORT_OBJECT_TYPE_RANGE_SIZE_EXT = (VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT - VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT + 1),+ VK_DEBUG_REPORT_OBJECT_TYPE_MAX_ENUM_EXT = 0x7FFFFFFF+} VkDebugReportObjectTypeEXT;+++typedef enum VkDebugReportFlagBitsEXT {+ VK_DEBUG_REPORT_INFORMATION_BIT_EXT = 0x00000001,+ VK_DEBUG_REPORT_WARNING_BIT_EXT = 0x00000002,+ VK_DEBUG_REPORT_PERFORMANCE_WARNING_BIT_EXT = 0x00000004,+ VK_DEBUG_REPORT_ERROR_BIT_EXT = 0x00000008,+ VK_DEBUG_REPORT_DEBUG_BIT_EXT = 0x00000010,+ VK_DEBUG_REPORT_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF+} VkDebugReportFlagBitsEXT;+typedef VkFlags VkDebugReportFlagsEXT;++typedef VkBool32 (VKAPI_PTR *PFN_vkDebugReportCallbackEXT)(+ VkDebugReportFlagsEXT flags,+ VkDebugReportObjectTypeEXT objectType,+ uint64_t object,+ size_t location,+ int32_t messageCode,+ const char* pLayerPrefix,+ const char* pMessage,+ void* pUserData);++typedef struct VkDebugReportCallbackCreateInfoEXT {+ VkStructureType sType;+ const void* pNext;+ VkDebugReportFlagsEXT flags;+ PFN_vkDebugReportCallbackEXT pfnCallback;+ void* pUserData;+} VkDebugReportCallbackCreateInfoEXT;+++typedef VkResult (VKAPI_PTR *PFN_vkCreateDebugReportCallbackEXT)(VkInstance instance, const VkDebugReportCallbackCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDebugReportCallbackEXT* pCallback);+typedef void (VKAPI_PTR *PFN_vkDestroyDebugReportCallbackEXT)(VkInstance instance, VkDebugReportCallbackEXT callback, const VkAllocationCallbacks* pAllocator);+typedef void (VKAPI_PTR *PFN_vkDebugReportMessageEXT)(VkInstance instance, VkDebugReportFlagsEXT flags, VkDebugReportObjectTypeEXT objectType, uint64_t object, size_t location, int32_t messageCode, const char* pLayerPrefix, const char* pMessage);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR VkResult VKAPI_CALL vkCreateDebugReportCallbackEXT(+ VkInstance instance,+ const VkDebugReportCallbackCreateInfoEXT* pCreateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkDebugReportCallbackEXT* pCallback);++VKAPI_ATTR void VKAPI_CALL vkDestroyDebugReportCallbackEXT(+ VkInstance instance,+ VkDebugReportCallbackEXT callback,+ const VkAllocationCallbacks* pAllocator);++VKAPI_ATTR void VKAPI_CALL vkDebugReportMessageEXT(+ VkInstance instance,+ VkDebugReportFlagsEXT flags,+ VkDebugReportObjectTypeEXT objectType,+ uint64_t object,+ size_t location,+ int32_t messageCode,+ const char* pLayerPrefix,+ const char* pMessage);+#endif++#define VK_NV_glsl_shader 1+#define VK_NV_GLSL_SHADER_SPEC_VERSION 1+#define VK_NV_GLSL_SHADER_EXTENSION_NAME "VK_NV_glsl_shader"+++#define VK_EXT_depth_range_unrestricted 1+#define VK_EXT_DEPTH_RANGE_UNRESTRICTED_SPEC_VERSION 1+#define VK_EXT_DEPTH_RANGE_UNRESTRICTED_EXTENSION_NAME "VK_EXT_depth_range_unrestricted"+++#define VK_IMG_filter_cubic 1+#define VK_IMG_FILTER_CUBIC_SPEC_VERSION 1+#define VK_IMG_FILTER_CUBIC_EXTENSION_NAME "VK_IMG_filter_cubic"+++#define VK_AMD_rasterization_order 1+#define VK_AMD_RASTERIZATION_ORDER_SPEC_VERSION 1+#define VK_AMD_RASTERIZATION_ORDER_EXTENSION_NAME "VK_AMD_rasterization_order"+++typedef enum VkRasterizationOrderAMD {+ VK_RASTERIZATION_ORDER_STRICT_AMD = 0,+ VK_RASTERIZATION_ORDER_RELAXED_AMD = 1,+ VK_RASTERIZATION_ORDER_BEGIN_RANGE_AMD = VK_RASTERIZATION_ORDER_STRICT_AMD,+ VK_RASTERIZATION_ORDER_END_RANGE_AMD = VK_RASTERIZATION_ORDER_RELAXED_AMD,+ VK_RASTERIZATION_ORDER_RANGE_SIZE_AMD = (VK_RASTERIZATION_ORDER_RELAXED_AMD - VK_RASTERIZATION_ORDER_STRICT_AMD + 1),+ VK_RASTERIZATION_ORDER_MAX_ENUM_AMD = 0x7FFFFFFF+} VkRasterizationOrderAMD;++typedef struct VkPipelineRasterizationStateRasterizationOrderAMD {+ VkStructureType sType;+ const void* pNext;+ VkRasterizationOrderAMD rasterizationOrder;+} VkPipelineRasterizationStateRasterizationOrderAMD;++++#define VK_AMD_shader_trinary_minmax 1+#define VK_AMD_SHADER_TRINARY_MINMAX_SPEC_VERSION 1+#define VK_AMD_SHADER_TRINARY_MINMAX_EXTENSION_NAME "VK_AMD_shader_trinary_minmax"+++#define VK_AMD_shader_explicit_vertex_parameter 1+#define VK_AMD_SHADER_EXPLICIT_VERTEX_PARAMETER_SPEC_VERSION 1+#define VK_AMD_SHADER_EXPLICIT_VERTEX_PARAMETER_EXTENSION_NAME "VK_AMD_shader_explicit_vertex_parameter"+++#define VK_EXT_debug_marker 1+#define VK_EXT_DEBUG_MARKER_SPEC_VERSION 4+#define VK_EXT_DEBUG_MARKER_EXTENSION_NAME "VK_EXT_debug_marker"++typedef struct VkDebugMarkerObjectNameInfoEXT {+ VkStructureType sType;+ const void* pNext;+ VkDebugReportObjectTypeEXT objectType;+ uint64_t object;+ const char* pObjectName;+} VkDebugMarkerObjectNameInfoEXT;++typedef struct VkDebugMarkerObjectTagInfoEXT {+ VkStructureType sType;+ const void* pNext;+ VkDebugReportObjectTypeEXT objectType;+ uint64_t object;+ uint64_t tagName;+ size_t tagSize;+ const void* pTag;+} VkDebugMarkerObjectTagInfoEXT;++typedef struct VkDebugMarkerMarkerInfoEXT {+ VkStructureType sType;+ const void* pNext;+ const char* pMarkerName;+ float color[4];+} VkDebugMarkerMarkerInfoEXT;+++typedef VkResult (VKAPI_PTR *PFN_vkDebugMarkerSetObjectTagEXT)(VkDevice device, const VkDebugMarkerObjectTagInfoEXT* pTagInfo);+typedef VkResult (VKAPI_PTR *PFN_vkDebugMarkerSetObjectNameEXT)(VkDevice device, const VkDebugMarkerObjectNameInfoEXT* pNameInfo);+typedef void (VKAPI_PTR *PFN_vkCmdDebugMarkerBeginEXT)(VkCommandBuffer commandBuffer, const VkDebugMarkerMarkerInfoEXT* pMarkerInfo);+typedef void (VKAPI_PTR *PFN_vkCmdDebugMarkerEndEXT)(VkCommandBuffer commandBuffer);+typedef void (VKAPI_PTR *PFN_vkCmdDebugMarkerInsertEXT)(VkCommandBuffer commandBuffer, const VkDebugMarkerMarkerInfoEXT* pMarkerInfo);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR VkResult VKAPI_CALL vkDebugMarkerSetObjectTagEXT(+ VkDevice device,+ const VkDebugMarkerObjectTagInfoEXT* pTagInfo);++VKAPI_ATTR VkResult VKAPI_CALL vkDebugMarkerSetObjectNameEXT(+ VkDevice device,+ const VkDebugMarkerObjectNameInfoEXT* pNameInfo);++VKAPI_ATTR void VKAPI_CALL vkCmdDebugMarkerBeginEXT(+ VkCommandBuffer commandBuffer,+ const VkDebugMarkerMarkerInfoEXT* pMarkerInfo);++VKAPI_ATTR void VKAPI_CALL vkCmdDebugMarkerEndEXT(+ VkCommandBuffer commandBuffer);++VKAPI_ATTR void VKAPI_CALL vkCmdDebugMarkerInsertEXT(+ VkCommandBuffer commandBuffer,+ const VkDebugMarkerMarkerInfoEXT* pMarkerInfo);+#endif++#define VK_AMD_gcn_shader 1+#define VK_AMD_GCN_SHADER_SPEC_VERSION 1+#define VK_AMD_GCN_SHADER_EXTENSION_NAME "VK_AMD_gcn_shader"+++#define VK_NV_dedicated_allocation 1+#define VK_NV_DEDICATED_ALLOCATION_SPEC_VERSION 1+#define VK_NV_DEDICATED_ALLOCATION_EXTENSION_NAME "VK_NV_dedicated_allocation"++typedef struct VkDedicatedAllocationImageCreateInfoNV {+ VkStructureType sType;+ const void* pNext;+ VkBool32 dedicatedAllocation;+} VkDedicatedAllocationImageCreateInfoNV;++typedef struct VkDedicatedAllocationBufferCreateInfoNV {+ VkStructureType sType;+ const void* pNext;+ VkBool32 dedicatedAllocation;+} VkDedicatedAllocationBufferCreateInfoNV;++typedef struct VkDedicatedAllocationMemoryAllocateInfoNV {+ VkStructureType sType;+ const void* pNext;+ VkImage image;+ VkBuffer buffer;+} VkDedicatedAllocationMemoryAllocateInfoNV;++++#define VK_AMD_draw_indirect_count 1+#define VK_AMD_DRAW_INDIRECT_COUNT_SPEC_VERSION 1+#define VK_AMD_DRAW_INDIRECT_COUNT_EXTENSION_NAME "VK_AMD_draw_indirect_count"++typedef void (VKAPI_PTR *PFN_vkCmdDrawIndirectCountAMD)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride);+typedef void (VKAPI_PTR *PFN_vkCmdDrawIndexedIndirectCountAMD)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR void VKAPI_CALL vkCmdDrawIndirectCountAMD(+ VkCommandBuffer commandBuffer,+ VkBuffer buffer,+ VkDeviceSize offset,+ VkBuffer countBuffer,+ VkDeviceSize countBufferOffset,+ uint32_t maxDrawCount,+ uint32_t stride);++VKAPI_ATTR void VKAPI_CALL vkCmdDrawIndexedIndirectCountAMD(+ VkCommandBuffer commandBuffer,+ VkBuffer buffer,+ VkDeviceSize offset,+ VkBuffer countBuffer,+ VkDeviceSize countBufferOffset,+ uint32_t maxDrawCount,+ uint32_t stride);+#endif++#define VK_AMD_negative_viewport_height 1+#define VK_AMD_NEGATIVE_VIEWPORT_HEIGHT_SPEC_VERSION 1+#define VK_AMD_NEGATIVE_VIEWPORT_HEIGHT_EXTENSION_NAME "VK_AMD_negative_viewport_height"+++#define VK_AMD_gpu_shader_half_float 1+#define VK_AMD_GPU_SHADER_HALF_FLOAT_SPEC_VERSION 1+#define VK_AMD_GPU_SHADER_HALF_FLOAT_EXTENSION_NAME "VK_AMD_gpu_shader_half_float"+++#define VK_AMD_shader_ballot 1+#define VK_AMD_SHADER_BALLOT_SPEC_VERSION 1+#define VK_AMD_SHADER_BALLOT_EXTENSION_NAME "VK_AMD_shader_ballot"+++#define VK_AMD_texture_gather_bias_lod 1+#define VK_AMD_TEXTURE_GATHER_BIAS_LOD_SPEC_VERSION 1+#define VK_AMD_TEXTURE_GATHER_BIAS_LOD_EXTENSION_NAME "VK_AMD_texture_gather_bias_lod"++typedef struct VkTextureLODGatherFormatPropertiesAMD {+ VkStructureType sType;+ void* pNext;+ VkBool32 supportsTextureGatherLODBiasAMD;+} VkTextureLODGatherFormatPropertiesAMD;++++#define VK_AMD_shader_info 1+#define VK_AMD_SHADER_INFO_SPEC_VERSION 1+#define VK_AMD_SHADER_INFO_EXTENSION_NAME "VK_AMD_shader_info"+++typedef enum VkShaderInfoTypeAMD {+ VK_SHADER_INFO_TYPE_STATISTICS_AMD = 0,+ VK_SHADER_INFO_TYPE_BINARY_AMD = 1,+ VK_SHADER_INFO_TYPE_DISASSEMBLY_AMD = 2,+ VK_SHADER_INFO_TYPE_BEGIN_RANGE_AMD = VK_SHADER_INFO_TYPE_STATISTICS_AMD,+ VK_SHADER_INFO_TYPE_END_RANGE_AMD = VK_SHADER_INFO_TYPE_DISASSEMBLY_AMD,+ VK_SHADER_INFO_TYPE_RANGE_SIZE_AMD = (VK_SHADER_INFO_TYPE_DISASSEMBLY_AMD - VK_SHADER_INFO_TYPE_STATISTICS_AMD + 1),+ VK_SHADER_INFO_TYPE_MAX_ENUM_AMD = 0x7FFFFFFF+} VkShaderInfoTypeAMD;++typedef struct VkShaderResourceUsageAMD {+ uint32_t numUsedVgprs;+ uint32_t numUsedSgprs;+ uint32_t ldsSizePerLocalWorkGroup;+ size_t ldsUsageSizeInBytes;+ size_t scratchMemUsageInBytes;+} VkShaderResourceUsageAMD;++typedef struct VkShaderStatisticsInfoAMD {+ VkShaderStageFlags shaderStageMask;+ VkShaderResourceUsageAMD resourceUsage;+ uint32_t numPhysicalVgprs;+ uint32_t numPhysicalSgprs;+ uint32_t numAvailableVgprs;+ uint32_t numAvailableSgprs;+ uint32_t computeWorkGroupSize[3];+} VkShaderStatisticsInfoAMD;+++typedef VkResult (VKAPI_PTR *PFN_vkGetShaderInfoAMD)(VkDevice device, VkPipeline pipeline, VkShaderStageFlagBits shaderStage, VkShaderInfoTypeAMD infoType, size_t* pInfoSize, void* pInfo);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR VkResult VKAPI_CALL vkGetShaderInfoAMD(+ VkDevice device,+ VkPipeline pipeline,+ VkShaderStageFlagBits shaderStage,+ VkShaderInfoTypeAMD infoType,+ size_t* pInfoSize,+ void* pInfo);+#endif++#define VK_AMD_shader_image_load_store_lod 1+#define VK_AMD_SHADER_IMAGE_LOAD_STORE_LOD_SPEC_VERSION 1+#define VK_AMD_SHADER_IMAGE_LOAD_STORE_LOD_EXTENSION_NAME "VK_AMD_shader_image_load_store_lod"+++#define VK_IMG_format_pvrtc 1+#define VK_IMG_FORMAT_PVRTC_SPEC_VERSION 1+#define VK_IMG_FORMAT_PVRTC_EXTENSION_NAME "VK_IMG_format_pvrtc"+++#define VK_NV_external_memory_capabilities 1+#define VK_NV_EXTERNAL_MEMORY_CAPABILITIES_SPEC_VERSION 1+#define VK_NV_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME "VK_NV_external_memory_capabilities"+++typedef enum VkExternalMemoryHandleTypeFlagBitsNV {+ VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_NV = 0x00000001,+ VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_NV = 0x00000002,+ VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_BIT_NV = 0x00000004,+ VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_KMT_BIT_NV = 0x00000008,+ VK_EXTERNAL_MEMORY_HANDLE_TYPE_FLAG_BITS_MAX_ENUM_NV = 0x7FFFFFFF+} VkExternalMemoryHandleTypeFlagBitsNV;+typedef VkFlags VkExternalMemoryHandleTypeFlagsNV;++typedef enum VkExternalMemoryFeatureFlagBitsNV {+ VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_NV = 0x00000001,+ VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_NV = 0x00000002,+ VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_NV = 0x00000004,+ VK_EXTERNAL_MEMORY_FEATURE_FLAG_BITS_MAX_ENUM_NV = 0x7FFFFFFF+} VkExternalMemoryFeatureFlagBitsNV;+typedef VkFlags VkExternalMemoryFeatureFlagsNV;++typedef struct VkExternalImageFormatPropertiesNV {+ VkImageFormatProperties imageFormatProperties;+ VkExternalMemoryFeatureFlagsNV externalMemoryFeatures;+ VkExternalMemoryHandleTypeFlagsNV exportFromImportedHandleTypes;+ VkExternalMemoryHandleTypeFlagsNV compatibleHandleTypes;+} VkExternalImageFormatPropertiesNV;+++typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV)(VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type, VkImageTiling tiling, VkImageUsageFlags usage, VkImageCreateFlags flags, VkExternalMemoryHandleTypeFlagsNV externalHandleType, VkExternalImageFormatPropertiesNV* pExternalImageFormatProperties);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceExternalImageFormatPropertiesNV(+ VkPhysicalDevice physicalDevice,+ VkFormat format,+ VkImageType type,+ VkImageTiling tiling,+ VkImageUsageFlags usage,+ VkImageCreateFlags flags,+ VkExternalMemoryHandleTypeFlagsNV externalHandleType,+ VkExternalImageFormatPropertiesNV* pExternalImageFormatProperties);+#endif++#define VK_NV_external_memory 1+#define VK_NV_EXTERNAL_MEMORY_SPEC_VERSION 1+#define VK_NV_EXTERNAL_MEMORY_EXTENSION_NAME "VK_NV_external_memory"++typedef struct VkExternalMemoryImageCreateInfoNV {+ VkStructureType sType;+ const void* pNext;+ VkExternalMemoryHandleTypeFlagsNV handleTypes;+} VkExternalMemoryImageCreateInfoNV;++typedef struct VkExportMemoryAllocateInfoNV {+ VkStructureType sType;+ const void* pNext;+ VkExternalMemoryHandleTypeFlagsNV handleTypes;+} VkExportMemoryAllocateInfoNV;++++#define VK_EXT_validation_flags 1+#define VK_EXT_VALIDATION_FLAGS_SPEC_VERSION 1+#define VK_EXT_VALIDATION_FLAGS_EXTENSION_NAME "VK_EXT_validation_flags"+++typedef enum VkValidationCheckEXT {+ VK_VALIDATION_CHECK_ALL_EXT = 0,+ VK_VALIDATION_CHECK_SHADERS_EXT = 1,+ VK_VALIDATION_CHECK_BEGIN_RANGE_EXT = VK_VALIDATION_CHECK_ALL_EXT,+ VK_VALIDATION_CHECK_END_RANGE_EXT = VK_VALIDATION_CHECK_SHADERS_EXT,+ VK_VALIDATION_CHECK_RANGE_SIZE_EXT = (VK_VALIDATION_CHECK_SHADERS_EXT - VK_VALIDATION_CHECK_ALL_EXT + 1),+ VK_VALIDATION_CHECK_MAX_ENUM_EXT = 0x7FFFFFFF+} VkValidationCheckEXT;++typedef struct VkValidationFlagsEXT {+ VkStructureType sType;+ const void* pNext;+ uint32_t disabledValidationCheckCount;+ VkValidationCheckEXT* pDisabledValidationChecks;+} VkValidationFlagsEXT;++++#define VK_EXT_shader_subgroup_ballot 1+#define VK_EXT_SHADER_SUBGROUP_BALLOT_SPEC_VERSION 1+#define VK_EXT_SHADER_SUBGROUP_BALLOT_EXTENSION_NAME "VK_EXT_shader_subgroup_ballot"+++#define VK_EXT_shader_subgroup_vote 1+#define VK_EXT_SHADER_SUBGROUP_VOTE_SPEC_VERSION 1+#define VK_EXT_SHADER_SUBGROUP_VOTE_EXTENSION_NAME "VK_EXT_shader_subgroup_vote"+++#define VK_NVX_device_generated_commands 1+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkObjectTableNVX)+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkIndirectCommandsLayoutNVX)++#define VK_NVX_DEVICE_GENERATED_COMMANDS_SPEC_VERSION 3+#define VK_NVX_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME "VK_NVX_device_generated_commands"+++typedef enum VkIndirectCommandsTokenTypeNVX {+ VK_INDIRECT_COMMANDS_TOKEN_TYPE_PIPELINE_NVX = 0,+ VK_INDIRECT_COMMANDS_TOKEN_TYPE_DESCRIPTOR_SET_NVX = 1,+ VK_INDIRECT_COMMANDS_TOKEN_TYPE_INDEX_BUFFER_NVX = 2,+ VK_INDIRECT_COMMANDS_TOKEN_TYPE_VERTEX_BUFFER_NVX = 3,+ VK_INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NVX = 4,+ VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_INDEXED_NVX = 5,+ VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_NVX = 6,+ VK_INDIRECT_COMMANDS_TOKEN_TYPE_DISPATCH_NVX = 7,+ VK_INDIRECT_COMMANDS_TOKEN_TYPE_BEGIN_RANGE_NVX = VK_INDIRECT_COMMANDS_TOKEN_TYPE_PIPELINE_NVX,+ VK_INDIRECT_COMMANDS_TOKEN_TYPE_END_RANGE_NVX = VK_INDIRECT_COMMANDS_TOKEN_TYPE_DISPATCH_NVX,+ VK_INDIRECT_COMMANDS_TOKEN_TYPE_RANGE_SIZE_NVX = (VK_INDIRECT_COMMANDS_TOKEN_TYPE_DISPATCH_NVX - VK_INDIRECT_COMMANDS_TOKEN_TYPE_PIPELINE_NVX + 1),+ VK_INDIRECT_COMMANDS_TOKEN_TYPE_MAX_ENUM_NVX = 0x7FFFFFFF+} VkIndirectCommandsTokenTypeNVX;++typedef enum VkObjectEntryTypeNVX {+ VK_OBJECT_ENTRY_TYPE_DESCRIPTOR_SET_NVX = 0,+ VK_OBJECT_ENTRY_TYPE_PIPELINE_NVX = 1,+ VK_OBJECT_ENTRY_TYPE_INDEX_BUFFER_NVX = 2,+ VK_OBJECT_ENTRY_TYPE_VERTEX_BUFFER_NVX = 3,+ VK_OBJECT_ENTRY_TYPE_PUSH_CONSTANT_NVX = 4,+ VK_OBJECT_ENTRY_TYPE_BEGIN_RANGE_NVX = VK_OBJECT_ENTRY_TYPE_DESCRIPTOR_SET_NVX,+ VK_OBJECT_ENTRY_TYPE_END_RANGE_NVX = VK_OBJECT_ENTRY_TYPE_PUSH_CONSTANT_NVX,+ VK_OBJECT_ENTRY_TYPE_RANGE_SIZE_NVX = (VK_OBJECT_ENTRY_TYPE_PUSH_CONSTANT_NVX - VK_OBJECT_ENTRY_TYPE_DESCRIPTOR_SET_NVX + 1),+ VK_OBJECT_ENTRY_TYPE_MAX_ENUM_NVX = 0x7FFFFFFF+} VkObjectEntryTypeNVX;+++typedef enum VkIndirectCommandsLayoutUsageFlagBitsNVX {+ VK_INDIRECT_COMMANDS_LAYOUT_USAGE_UNORDERED_SEQUENCES_BIT_NVX = 0x00000001,+ VK_INDIRECT_COMMANDS_LAYOUT_USAGE_SPARSE_SEQUENCES_BIT_NVX = 0x00000002,+ VK_INDIRECT_COMMANDS_LAYOUT_USAGE_EMPTY_EXECUTIONS_BIT_NVX = 0x00000004,+ VK_INDIRECT_COMMANDS_LAYOUT_USAGE_INDEXED_SEQUENCES_BIT_NVX = 0x00000008,+ VK_INDIRECT_COMMANDS_LAYOUT_USAGE_FLAG_BITS_MAX_ENUM_NVX = 0x7FFFFFFF+} VkIndirectCommandsLayoutUsageFlagBitsNVX;+typedef VkFlags VkIndirectCommandsLayoutUsageFlagsNVX;++typedef enum VkObjectEntryUsageFlagBitsNVX {+ VK_OBJECT_ENTRY_USAGE_GRAPHICS_BIT_NVX = 0x00000001,+ VK_OBJECT_ENTRY_USAGE_COMPUTE_BIT_NVX = 0x00000002,+ VK_OBJECT_ENTRY_USAGE_FLAG_BITS_MAX_ENUM_NVX = 0x7FFFFFFF+} VkObjectEntryUsageFlagBitsNVX;+typedef VkFlags VkObjectEntryUsageFlagsNVX;++typedef struct VkDeviceGeneratedCommandsFeaturesNVX {+ VkStructureType sType;+ const void* pNext;+ VkBool32 computeBindingPointSupport;+} VkDeviceGeneratedCommandsFeaturesNVX;++typedef struct VkDeviceGeneratedCommandsLimitsNVX {+ VkStructureType sType;+ const void* pNext;+ uint32_t maxIndirectCommandsLayoutTokenCount;+ uint32_t maxObjectEntryCounts;+ uint32_t minSequenceCountBufferOffsetAlignment;+ uint32_t minSequenceIndexBufferOffsetAlignment;+ uint32_t minCommandsTokenBufferOffsetAlignment;+} VkDeviceGeneratedCommandsLimitsNVX;++typedef struct VkIndirectCommandsTokenNVX {+ VkIndirectCommandsTokenTypeNVX tokenType;+ VkBuffer buffer;+ VkDeviceSize offset;+} VkIndirectCommandsTokenNVX;++typedef struct VkIndirectCommandsLayoutTokenNVX {+ VkIndirectCommandsTokenTypeNVX tokenType;+ uint32_t bindingUnit;+ uint32_t dynamicCount;+ uint32_t divisor;+} VkIndirectCommandsLayoutTokenNVX;++typedef struct VkIndirectCommandsLayoutCreateInfoNVX {+ VkStructureType sType;+ const void* pNext;+ VkPipelineBindPoint pipelineBindPoint;+ VkIndirectCommandsLayoutUsageFlagsNVX flags;+ uint32_t tokenCount;+ const VkIndirectCommandsLayoutTokenNVX* pTokens;+} VkIndirectCommandsLayoutCreateInfoNVX;++typedef struct VkCmdProcessCommandsInfoNVX {+ VkStructureType sType;+ const void* pNext;+ VkObjectTableNVX objectTable;+ VkIndirectCommandsLayoutNVX indirectCommandsLayout;+ uint32_t indirectCommandsTokenCount;+ const VkIndirectCommandsTokenNVX* pIndirectCommandsTokens;+ uint32_t maxSequencesCount;+ VkCommandBuffer targetCommandBuffer;+ VkBuffer sequencesCountBuffer;+ VkDeviceSize sequencesCountOffset;+ VkBuffer sequencesIndexBuffer;+ VkDeviceSize sequencesIndexOffset;+} VkCmdProcessCommandsInfoNVX;++typedef struct VkCmdReserveSpaceForCommandsInfoNVX {+ VkStructureType sType;+ const void* pNext;+ VkObjectTableNVX objectTable;+ VkIndirectCommandsLayoutNVX indirectCommandsLayout;+ uint32_t maxSequencesCount;+} VkCmdReserveSpaceForCommandsInfoNVX;++typedef struct VkObjectTableCreateInfoNVX {+ VkStructureType sType;+ const void* pNext;+ uint32_t objectCount;+ const VkObjectEntryTypeNVX* pObjectEntryTypes;+ const uint32_t* pObjectEntryCounts;+ const VkObjectEntryUsageFlagsNVX* pObjectEntryUsageFlags;+ uint32_t maxUniformBuffersPerDescriptor;+ uint32_t maxStorageBuffersPerDescriptor;+ uint32_t maxStorageImagesPerDescriptor;+ uint32_t maxSampledImagesPerDescriptor;+ uint32_t maxPipelineLayouts;+} VkObjectTableCreateInfoNVX;++typedef struct VkObjectTableEntryNVX {+ VkObjectEntryTypeNVX type;+ VkObjectEntryUsageFlagsNVX flags;+} VkObjectTableEntryNVX;++typedef struct VkObjectTablePipelineEntryNVX {+ VkObjectEntryTypeNVX type;+ VkObjectEntryUsageFlagsNVX flags;+ VkPipeline pipeline;+} VkObjectTablePipelineEntryNVX;++typedef struct VkObjectTableDescriptorSetEntryNVX {+ VkObjectEntryTypeNVX type;+ VkObjectEntryUsageFlagsNVX flags;+ VkPipelineLayout pipelineLayout;+ VkDescriptorSet descriptorSet;+} VkObjectTableDescriptorSetEntryNVX;++typedef struct VkObjectTableVertexBufferEntryNVX {+ VkObjectEntryTypeNVX type;+ VkObjectEntryUsageFlagsNVX flags;+ VkBuffer buffer;+} VkObjectTableVertexBufferEntryNVX;++typedef struct VkObjectTableIndexBufferEntryNVX {+ VkObjectEntryTypeNVX type;+ VkObjectEntryUsageFlagsNVX flags;+ VkBuffer buffer;+ VkIndexType indexType;+} VkObjectTableIndexBufferEntryNVX;++typedef struct VkObjectTablePushConstantEntryNVX {+ VkObjectEntryTypeNVX type;+ VkObjectEntryUsageFlagsNVX flags;+ VkPipelineLayout pipelineLayout;+ VkShaderStageFlags stageFlags;+} VkObjectTablePushConstantEntryNVX;+++typedef void (VKAPI_PTR *PFN_vkCmdProcessCommandsNVX)(VkCommandBuffer commandBuffer, const VkCmdProcessCommandsInfoNVX* pProcessCommandsInfo);+typedef void (VKAPI_PTR *PFN_vkCmdReserveSpaceForCommandsNVX)(VkCommandBuffer commandBuffer, const VkCmdReserveSpaceForCommandsInfoNVX* pReserveSpaceInfo);+typedef VkResult (VKAPI_PTR *PFN_vkCreateIndirectCommandsLayoutNVX)(VkDevice device, const VkIndirectCommandsLayoutCreateInfoNVX* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkIndirectCommandsLayoutNVX* pIndirectCommandsLayout);+typedef void (VKAPI_PTR *PFN_vkDestroyIndirectCommandsLayoutNVX)(VkDevice device, VkIndirectCommandsLayoutNVX indirectCommandsLayout, const VkAllocationCallbacks* pAllocator);+typedef VkResult (VKAPI_PTR *PFN_vkCreateObjectTableNVX)(VkDevice device, const VkObjectTableCreateInfoNVX* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkObjectTableNVX* pObjectTable);+typedef void (VKAPI_PTR *PFN_vkDestroyObjectTableNVX)(VkDevice device, VkObjectTableNVX objectTable, const VkAllocationCallbacks* pAllocator);+typedef VkResult (VKAPI_PTR *PFN_vkRegisterObjectsNVX)(VkDevice device, VkObjectTableNVX objectTable, uint32_t objectCount, const VkObjectTableEntryNVX* const* ppObjectTableEntries, const uint32_t* pObjectIndices);+typedef VkResult (VKAPI_PTR *PFN_vkUnregisterObjectsNVX)(VkDevice device, VkObjectTableNVX objectTable, uint32_t objectCount, const VkObjectEntryTypeNVX* pObjectEntryTypes, const uint32_t* pObjectIndices);+typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceGeneratedCommandsPropertiesNVX)(VkPhysicalDevice physicalDevice, VkDeviceGeneratedCommandsFeaturesNVX* pFeatures, VkDeviceGeneratedCommandsLimitsNVX* pLimits);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR void VKAPI_CALL vkCmdProcessCommandsNVX(+ VkCommandBuffer commandBuffer,+ const VkCmdProcessCommandsInfoNVX* pProcessCommandsInfo);++VKAPI_ATTR void VKAPI_CALL vkCmdReserveSpaceForCommandsNVX(+ VkCommandBuffer commandBuffer,+ const VkCmdReserveSpaceForCommandsInfoNVX* pReserveSpaceInfo);++VKAPI_ATTR VkResult VKAPI_CALL vkCreateIndirectCommandsLayoutNVX(+ VkDevice device,+ const VkIndirectCommandsLayoutCreateInfoNVX* pCreateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkIndirectCommandsLayoutNVX* pIndirectCommandsLayout);++VKAPI_ATTR void VKAPI_CALL vkDestroyIndirectCommandsLayoutNVX(+ VkDevice device,+ VkIndirectCommandsLayoutNVX indirectCommandsLayout,+ const VkAllocationCallbacks* pAllocator);++VKAPI_ATTR VkResult VKAPI_CALL vkCreateObjectTableNVX(+ VkDevice device,+ const VkObjectTableCreateInfoNVX* pCreateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkObjectTableNVX* pObjectTable);++VKAPI_ATTR void VKAPI_CALL vkDestroyObjectTableNVX(+ VkDevice device,+ VkObjectTableNVX objectTable,+ const VkAllocationCallbacks* pAllocator);++VKAPI_ATTR VkResult VKAPI_CALL vkRegisterObjectsNVX(+ VkDevice device,+ VkObjectTableNVX objectTable,+ uint32_t objectCount,+ const VkObjectTableEntryNVX* const* ppObjectTableEntries,+ const uint32_t* pObjectIndices);++VKAPI_ATTR VkResult VKAPI_CALL vkUnregisterObjectsNVX(+ VkDevice device,+ VkObjectTableNVX objectTable,+ uint32_t objectCount,+ const VkObjectEntryTypeNVX* pObjectEntryTypes,+ const uint32_t* pObjectIndices);++VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceGeneratedCommandsPropertiesNVX(+ VkPhysicalDevice physicalDevice,+ VkDeviceGeneratedCommandsFeaturesNVX* pFeatures,+ VkDeviceGeneratedCommandsLimitsNVX* pLimits);+#endif++#define VK_NV_clip_space_w_scaling 1+#define VK_NV_CLIP_SPACE_W_SCALING_SPEC_VERSION 1+#define VK_NV_CLIP_SPACE_W_SCALING_EXTENSION_NAME "VK_NV_clip_space_w_scaling"++typedef struct VkViewportWScalingNV {+ float xcoeff;+ float ycoeff;+} VkViewportWScalingNV;++typedef struct VkPipelineViewportWScalingStateCreateInfoNV {+ VkStructureType sType;+ const void* pNext;+ VkBool32 viewportWScalingEnable;+ uint32_t viewportCount;+ const VkViewportWScalingNV* pViewportWScalings;+} VkPipelineViewportWScalingStateCreateInfoNV;+++typedef void (VKAPI_PTR *PFN_vkCmdSetViewportWScalingNV)(VkCommandBuffer commandBuffer, uint32_t firstViewport, uint32_t viewportCount, const VkViewportWScalingNV* pViewportWScalings);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR void VKAPI_CALL vkCmdSetViewportWScalingNV(+ VkCommandBuffer commandBuffer,+ uint32_t firstViewport,+ uint32_t viewportCount,+ const VkViewportWScalingNV* pViewportWScalings);+#endif++#define VK_EXT_direct_mode_display 1+#define VK_EXT_DIRECT_MODE_DISPLAY_SPEC_VERSION 1+#define VK_EXT_DIRECT_MODE_DISPLAY_EXTENSION_NAME "VK_EXT_direct_mode_display"++typedef VkResult (VKAPI_PTR *PFN_vkReleaseDisplayEXT)(VkPhysicalDevice physicalDevice, VkDisplayKHR display);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR VkResult VKAPI_CALL vkReleaseDisplayEXT(+ VkPhysicalDevice physicalDevice,+ VkDisplayKHR display);+#endif++#define VK_EXT_display_surface_counter 1+#define VK_EXT_DISPLAY_SURFACE_COUNTER_SPEC_VERSION 1+#define VK_EXT_DISPLAY_SURFACE_COUNTER_EXTENSION_NAME "VK_EXT_display_surface_counter"+#define VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES2_EXT VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT+++typedef enum VkSurfaceCounterFlagBitsEXT {+ VK_SURFACE_COUNTER_VBLANK_EXT = 0x00000001,+ VK_SURFACE_COUNTER_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF+} VkSurfaceCounterFlagBitsEXT;+typedef VkFlags VkSurfaceCounterFlagsEXT;++typedef struct VkSurfaceCapabilities2EXT {+ VkStructureType sType;+ void* pNext;+ uint32_t minImageCount;+ uint32_t maxImageCount;+ VkExtent2D currentExtent;+ VkExtent2D minImageExtent;+ VkExtent2D maxImageExtent;+ uint32_t maxImageArrayLayers;+ VkSurfaceTransformFlagsKHR supportedTransforms;+ VkSurfaceTransformFlagBitsKHR currentTransform;+ VkCompositeAlphaFlagsKHR supportedCompositeAlpha;+ VkImageUsageFlags supportedUsageFlags;+ VkSurfaceCounterFlagsEXT supportedSurfaceCounters;+} VkSurfaceCapabilities2EXT;+++typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT)(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, VkSurfaceCapabilities2EXT* pSurfaceCapabilities);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceCapabilities2EXT(+ VkPhysicalDevice physicalDevice,+ VkSurfaceKHR surface,+ VkSurfaceCapabilities2EXT* pSurfaceCapabilities);+#endif++#define VK_EXT_display_control 1+#define VK_EXT_DISPLAY_CONTROL_SPEC_VERSION 1+#define VK_EXT_DISPLAY_CONTROL_EXTENSION_NAME "VK_EXT_display_control"+++typedef enum VkDisplayPowerStateEXT {+ VK_DISPLAY_POWER_STATE_OFF_EXT = 0,+ VK_DISPLAY_POWER_STATE_SUSPEND_EXT = 1,+ VK_DISPLAY_POWER_STATE_ON_EXT = 2,+ VK_DISPLAY_POWER_STATE_BEGIN_RANGE_EXT = VK_DISPLAY_POWER_STATE_OFF_EXT,+ VK_DISPLAY_POWER_STATE_END_RANGE_EXT = VK_DISPLAY_POWER_STATE_ON_EXT,+ VK_DISPLAY_POWER_STATE_RANGE_SIZE_EXT = (VK_DISPLAY_POWER_STATE_ON_EXT - VK_DISPLAY_POWER_STATE_OFF_EXT + 1),+ VK_DISPLAY_POWER_STATE_MAX_ENUM_EXT = 0x7FFFFFFF+} VkDisplayPowerStateEXT;++typedef enum VkDeviceEventTypeEXT {+ VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT = 0,+ VK_DEVICE_EVENT_TYPE_BEGIN_RANGE_EXT = VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT,+ VK_DEVICE_EVENT_TYPE_END_RANGE_EXT = VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT,+ VK_DEVICE_EVENT_TYPE_RANGE_SIZE_EXT = (VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT - VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT + 1),+ VK_DEVICE_EVENT_TYPE_MAX_ENUM_EXT = 0x7FFFFFFF+} VkDeviceEventTypeEXT;++typedef enum VkDisplayEventTypeEXT {+ VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT = 0,+ VK_DISPLAY_EVENT_TYPE_BEGIN_RANGE_EXT = VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT,+ VK_DISPLAY_EVENT_TYPE_END_RANGE_EXT = VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT,+ VK_DISPLAY_EVENT_TYPE_RANGE_SIZE_EXT = (VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT - VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT + 1),+ VK_DISPLAY_EVENT_TYPE_MAX_ENUM_EXT = 0x7FFFFFFF+} VkDisplayEventTypeEXT;++typedef struct VkDisplayPowerInfoEXT {+ VkStructureType sType;+ const void* pNext;+ VkDisplayPowerStateEXT powerState;+} VkDisplayPowerInfoEXT;++typedef struct VkDeviceEventInfoEXT {+ VkStructureType sType;+ const void* pNext;+ VkDeviceEventTypeEXT deviceEvent;+} VkDeviceEventInfoEXT;++typedef struct VkDisplayEventInfoEXT {+ VkStructureType sType;+ const void* pNext;+ VkDisplayEventTypeEXT displayEvent;+} VkDisplayEventInfoEXT;++typedef struct VkSwapchainCounterCreateInfoEXT {+ VkStructureType sType;+ const void* pNext;+ VkSurfaceCounterFlagsEXT surfaceCounters;+} VkSwapchainCounterCreateInfoEXT;+++typedef VkResult (VKAPI_PTR *PFN_vkDisplayPowerControlEXT)(VkDevice device, VkDisplayKHR display, const VkDisplayPowerInfoEXT* pDisplayPowerInfo);+typedef VkResult (VKAPI_PTR *PFN_vkRegisterDeviceEventEXT)(VkDevice device, const VkDeviceEventInfoEXT* pDeviceEventInfo, const VkAllocationCallbacks* pAllocator, VkFence* pFence);+typedef VkResult (VKAPI_PTR *PFN_vkRegisterDisplayEventEXT)(VkDevice device, VkDisplayKHR display, const VkDisplayEventInfoEXT* pDisplayEventInfo, const VkAllocationCallbacks* pAllocator, VkFence* pFence);+typedef VkResult (VKAPI_PTR *PFN_vkGetSwapchainCounterEXT)(VkDevice device, VkSwapchainKHR swapchain, VkSurfaceCounterFlagBitsEXT counter, uint64_t* pCounterValue);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR VkResult VKAPI_CALL vkDisplayPowerControlEXT(+ VkDevice device,+ VkDisplayKHR display,+ const VkDisplayPowerInfoEXT* pDisplayPowerInfo);++VKAPI_ATTR VkResult VKAPI_CALL vkRegisterDeviceEventEXT(+ VkDevice device,+ const VkDeviceEventInfoEXT* pDeviceEventInfo,+ const VkAllocationCallbacks* pAllocator,+ VkFence* pFence);++VKAPI_ATTR VkResult VKAPI_CALL vkRegisterDisplayEventEXT(+ VkDevice device,+ VkDisplayKHR display,+ const VkDisplayEventInfoEXT* pDisplayEventInfo,+ const VkAllocationCallbacks* pAllocator,+ VkFence* pFence);++VKAPI_ATTR VkResult VKAPI_CALL vkGetSwapchainCounterEXT(+ VkDevice device,+ VkSwapchainKHR swapchain,+ VkSurfaceCounterFlagBitsEXT counter,+ uint64_t* pCounterValue);+#endif++#define VK_GOOGLE_display_timing 1+#define VK_GOOGLE_DISPLAY_TIMING_SPEC_VERSION 1+#define VK_GOOGLE_DISPLAY_TIMING_EXTENSION_NAME "VK_GOOGLE_display_timing"++typedef struct VkRefreshCycleDurationGOOGLE {+ uint64_t refreshDuration;+} VkRefreshCycleDurationGOOGLE;++typedef struct VkPastPresentationTimingGOOGLE {+ uint32_t presentID;+ uint64_t desiredPresentTime;+ uint64_t actualPresentTime;+ uint64_t earliestPresentTime;+ uint64_t presentMargin;+} VkPastPresentationTimingGOOGLE;++typedef struct VkPresentTimeGOOGLE {+ uint32_t presentID;+ uint64_t desiredPresentTime;+} VkPresentTimeGOOGLE;++typedef struct VkPresentTimesInfoGOOGLE {+ VkStructureType sType;+ const void* pNext;+ uint32_t swapchainCount;+ const VkPresentTimeGOOGLE* pTimes;+} VkPresentTimesInfoGOOGLE;+++typedef VkResult (VKAPI_PTR *PFN_vkGetRefreshCycleDurationGOOGLE)(VkDevice device, VkSwapchainKHR swapchain, VkRefreshCycleDurationGOOGLE* pDisplayTimingProperties);+typedef VkResult (VKAPI_PTR *PFN_vkGetPastPresentationTimingGOOGLE)(VkDevice device, VkSwapchainKHR swapchain, uint32_t* pPresentationTimingCount, VkPastPresentationTimingGOOGLE* pPresentationTimings);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR VkResult VKAPI_CALL vkGetRefreshCycleDurationGOOGLE(+ VkDevice device,+ VkSwapchainKHR swapchain,+ VkRefreshCycleDurationGOOGLE* pDisplayTimingProperties);++VKAPI_ATTR VkResult VKAPI_CALL vkGetPastPresentationTimingGOOGLE(+ VkDevice device,+ VkSwapchainKHR swapchain,+ uint32_t* pPresentationTimingCount,+ VkPastPresentationTimingGOOGLE* pPresentationTimings);+#endif++#define VK_NV_sample_mask_override_coverage 1+#define VK_NV_SAMPLE_MASK_OVERRIDE_COVERAGE_SPEC_VERSION 1+#define VK_NV_SAMPLE_MASK_OVERRIDE_COVERAGE_EXTENSION_NAME "VK_NV_sample_mask_override_coverage"+++#define VK_NV_geometry_shader_passthrough 1+#define VK_NV_GEOMETRY_SHADER_PASSTHROUGH_SPEC_VERSION 1+#define VK_NV_GEOMETRY_SHADER_PASSTHROUGH_EXTENSION_NAME "VK_NV_geometry_shader_passthrough"+++#define VK_NV_viewport_array2 1+#define VK_NV_VIEWPORT_ARRAY2_SPEC_VERSION 1+#define VK_NV_VIEWPORT_ARRAY2_EXTENSION_NAME "VK_NV_viewport_array2"+++#define VK_NVX_multiview_per_view_attributes 1+#define VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_SPEC_VERSION 1+#define VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_EXTENSION_NAME "VK_NVX_multiview_per_view_attributes"++typedef struct VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX {+ VkStructureType sType;+ void* pNext;+ VkBool32 perViewPositionAllComponents;+} VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX;++++#define VK_NV_viewport_swizzle 1+#define VK_NV_VIEWPORT_SWIZZLE_SPEC_VERSION 1+#define VK_NV_VIEWPORT_SWIZZLE_EXTENSION_NAME "VK_NV_viewport_swizzle"+++typedef enum VkViewportCoordinateSwizzleNV {+ VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_X_NV = 0,+ VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_X_NV = 1,+ VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Y_NV = 2,+ VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Y_NV = 3,+ VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Z_NV = 4,+ VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Z_NV = 5,+ VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_W_NV = 6,+ VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_W_NV = 7,+ VK_VIEWPORT_COORDINATE_SWIZZLE_BEGIN_RANGE_NV = VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_X_NV,+ VK_VIEWPORT_COORDINATE_SWIZZLE_END_RANGE_NV = VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_W_NV,+ VK_VIEWPORT_COORDINATE_SWIZZLE_RANGE_SIZE_NV = (VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_W_NV - VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_X_NV + 1),+ VK_VIEWPORT_COORDINATE_SWIZZLE_MAX_ENUM_NV = 0x7FFFFFFF+} VkViewportCoordinateSwizzleNV;++typedef VkFlags VkPipelineViewportSwizzleStateCreateFlagsNV;++typedef struct VkViewportSwizzleNV {+ VkViewportCoordinateSwizzleNV x;+ VkViewportCoordinateSwizzleNV y;+ VkViewportCoordinateSwizzleNV z;+ VkViewportCoordinateSwizzleNV w;+} VkViewportSwizzleNV;++typedef struct VkPipelineViewportSwizzleStateCreateInfoNV {+ VkStructureType sType;+ const void* pNext;+ VkPipelineViewportSwizzleStateCreateFlagsNV flags;+ uint32_t viewportCount;+ const VkViewportSwizzleNV* pViewportSwizzles;+} VkPipelineViewportSwizzleStateCreateInfoNV;++++#define VK_EXT_discard_rectangles 1+#define VK_EXT_DISCARD_RECTANGLES_SPEC_VERSION 1+#define VK_EXT_DISCARD_RECTANGLES_EXTENSION_NAME "VK_EXT_discard_rectangles"+++typedef enum VkDiscardRectangleModeEXT {+ VK_DISCARD_RECTANGLE_MODE_INCLUSIVE_EXT = 0,+ VK_DISCARD_RECTANGLE_MODE_EXCLUSIVE_EXT = 1,+ VK_DISCARD_RECTANGLE_MODE_BEGIN_RANGE_EXT = VK_DISCARD_RECTANGLE_MODE_INCLUSIVE_EXT,+ VK_DISCARD_RECTANGLE_MODE_END_RANGE_EXT = VK_DISCARD_RECTANGLE_MODE_EXCLUSIVE_EXT,+ VK_DISCARD_RECTANGLE_MODE_RANGE_SIZE_EXT = (VK_DISCARD_RECTANGLE_MODE_EXCLUSIVE_EXT - VK_DISCARD_RECTANGLE_MODE_INCLUSIVE_EXT + 1),+ VK_DISCARD_RECTANGLE_MODE_MAX_ENUM_EXT = 0x7FFFFFFF+} VkDiscardRectangleModeEXT;++typedef VkFlags VkPipelineDiscardRectangleStateCreateFlagsEXT;++typedef struct VkPhysicalDeviceDiscardRectanglePropertiesEXT {+ VkStructureType sType;+ void* pNext;+ uint32_t maxDiscardRectangles;+} VkPhysicalDeviceDiscardRectanglePropertiesEXT;++typedef struct VkPipelineDiscardRectangleStateCreateInfoEXT {+ VkStructureType sType;+ const void* pNext;+ VkPipelineDiscardRectangleStateCreateFlagsEXT flags;+ VkDiscardRectangleModeEXT discardRectangleMode;+ uint32_t discardRectangleCount;+ const VkRect2D* pDiscardRectangles;+} VkPipelineDiscardRectangleStateCreateInfoEXT;+++typedef void (VKAPI_PTR *PFN_vkCmdSetDiscardRectangleEXT)(VkCommandBuffer commandBuffer, uint32_t firstDiscardRectangle, uint32_t discardRectangleCount, const VkRect2D* pDiscardRectangles);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR void VKAPI_CALL vkCmdSetDiscardRectangleEXT(+ VkCommandBuffer commandBuffer,+ uint32_t firstDiscardRectangle,+ uint32_t discardRectangleCount,+ const VkRect2D* pDiscardRectangles);+#endif++#define VK_EXT_conservative_rasterization 1+#define VK_EXT_CONSERVATIVE_RASTERIZATION_SPEC_VERSION 1+#define VK_EXT_CONSERVATIVE_RASTERIZATION_EXTENSION_NAME "VK_EXT_conservative_rasterization"+++typedef enum VkConservativeRasterizationModeEXT {+ VK_CONSERVATIVE_RASTERIZATION_MODE_DISABLED_EXT = 0,+ VK_CONSERVATIVE_RASTERIZATION_MODE_OVERESTIMATE_EXT = 1,+ VK_CONSERVATIVE_RASTERIZATION_MODE_UNDERESTIMATE_EXT = 2,+ VK_CONSERVATIVE_RASTERIZATION_MODE_BEGIN_RANGE_EXT = VK_CONSERVATIVE_RASTERIZATION_MODE_DISABLED_EXT,+ VK_CONSERVATIVE_RASTERIZATION_MODE_END_RANGE_EXT = VK_CONSERVATIVE_RASTERIZATION_MODE_UNDERESTIMATE_EXT,+ VK_CONSERVATIVE_RASTERIZATION_MODE_RANGE_SIZE_EXT = (VK_CONSERVATIVE_RASTERIZATION_MODE_UNDERESTIMATE_EXT - VK_CONSERVATIVE_RASTERIZATION_MODE_DISABLED_EXT + 1),+ VK_CONSERVATIVE_RASTERIZATION_MODE_MAX_ENUM_EXT = 0x7FFFFFFF+} VkConservativeRasterizationModeEXT;++typedef VkFlags VkPipelineRasterizationConservativeStateCreateFlagsEXT;++typedef struct VkPhysicalDeviceConservativeRasterizationPropertiesEXT {+ VkStructureType sType;+ void* pNext;+ float primitiveOverestimationSize;+ float maxExtraPrimitiveOverestimationSize;+ float extraPrimitiveOverestimationSizeGranularity;+ VkBool32 primitiveUnderestimation;+ VkBool32 conservativePointAndLineRasterization;+ VkBool32 degenerateTrianglesRasterized;+ VkBool32 degenerateLinesRasterized;+ VkBool32 fullyCoveredFragmentShaderInputVariable;+ VkBool32 conservativeRasterizationPostDepthCoverage;+} VkPhysicalDeviceConservativeRasterizationPropertiesEXT;++typedef struct VkPipelineRasterizationConservativeStateCreateInfoEXT {+ VkStructureType sType;+ const void* pNext;+ VkPipelineRasterizationConservativeStateCreateFlagsEXT flags;+ VkConservativeRasterizationModeEXT conservativeRasterizationMode;+ float extraPrimitiveOverestimationSize;+} VkPipelineRasterizationConservativeStateCreateInfoEXT;++++#define VK_EXT_swapchain_colorspace 1+#define VK_EXT_SWAPCHAIN_COLOR_SPACE_SPEC_VERSION 3+#define VK_EXT_SWAPCHAIN_COLOR_SPACE_EXTENSION_NAME "VK_EXT_swapchain_colorspace"+++#define VK_EXT_hdr_metadata 1+#define VK_EXT_HDR_METADATA_SPEC_VERSION 1+#define VK_EXT_HDR_METADATA_EXTENSION_NAME "VK_EXT_hdr_metadata"++typedef struct VkXYColorEXT {+ float x;+ float y;+} VkXYColorEXT;++typedef struct VkHdrMetadataEXT {+ VkStructureType sType;+ const void* pNext;+ VkXYColorEXT displayPrimaryRed;+ VkXYColorEXT displayPrimaryGreen;+ VkXYColorEXT displayPrimaryBlue;+ VkXYColorEXT whitePoint;+ float maxLuminance;+ float minLuminance;+ float maxContentLightLevel;+ float maxFrameAverageLightLevel;+} VkHdrMetadataEXT;+++typedef void (VKAPI_PTR *PFN_vkSetHdrMetadataEXT)(VkDevice device, uint32_t swapchainCount, const VkSwapchainKHR* pSwapchains, const VkHdrMetadataEXT* pMetadata);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR void VKAPI_CALL vkSetHdrMetadataEXT(+ VkDevice device,+ uint32_t swapchainCount,+ const VkSwapchainKHR* pSwapchains,+ const VkHdrMetadataEXT* pMetadata);+#endif++#define VK_EXT_external_memory_dma_buf 1+#define VK_EXT_EXTERNAL_MEMORY_DMA_BUF_SPEC_VERSION 1+#define VK_EXT_EXTERNAL_MEMORY_DMA_BUF_EXTENSION_NAME "VK_EXT_external_memory_dma_buf"+++#define VK_EXT_queue_family_foreign 1+#define VK_EXT_QUEUE_FAMILY_FOREIGN_SPEC_VERSION 1+#define VK_EXT_QUEUE_FAMILY_FOREIGN_EXTENSION_NAME "VK_EXT_queue_family_foreign"+#define VK_QUEUE_FAMILY_FOREIGN_EXT (~0U-2)+++#define VK_EXT_debug_utils 1+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDebugUtilsMessengerEXT)++#define VK_EXT_DEBUG_UTILS_SPEC_VERSION 1+#define VK_EXT_DEBUG_UTILS_EXTENSION_NAME "VK_EXT_debug_utils"++typedef VkFlags VkDebugUtilsMessengerCallbackDataFlagsEXT;+typedef VkFlags VkDebugUtilsMessengerCreateFlagsEXT;++typedef enum VkDebugUtilsMessageSeverityFlagBitsEXT {+ VK_DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT = 0x00000001,+ VK_DEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT = 0x00000010,+ VK_DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT = 0x00000100,+ VK_DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT = 0x00001000,+ VK_DEBUG_UTILS_MESSAGE_SEVERITY_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF+} VkDebugUtilsMessageSeverityFlagBitsEXT;+typedef VkFlags VkDebugUtilsMessageSeverityFlagsEXT;++typedef enum VkDebugUtilsMessageTypeFlagBitsEXT {+ VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT = 0x00000001,+ VK_DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT = 0x00000002,+ VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT = 0x00000004,+ VK_DEBUG_UTILS_MESSAGE_TYPE_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF+} VkDebugUtilsMessageTypeFlagBitsEXT;+typedef VkFlags VkDebugUtilsMessageTypeFlagsEXT;++typedef struct VkDebugUtilsObjectNameInfoEXT {+ VkStructureType sType;+ const void* pNext;+ VkObjectType objectType;+ uint64_t objectHandle;+ const char* pObjectName;+} VkDebugUtilsObjectNameInfoEXT;++typedef struct VkDebugUtilsObjectTagInfoEXT {+ VkStructureType sType;+ const void* pNext;+ VkObjectType objectType;+ uint64_t objectHandle;+ uint64_t tagName;+ size_t tagSize;+ const void* pTag;+} VkDebugUtilsObjectTagInfoEXT;++typedef struct VkDebugUtilsLabelEXT {+ VkStructureType sType;+ const void* pNext;+ const char* pLabelName;+ float color[4];+} VkDebugUtilsLabelEXT;++typedef struct VkDebugUtilsMessengerCallbackDataEXT {+ VkStructureType sType;+ const void* pNext;+ VkDebugUtilsMessengerCallbackDataFlagsEXT flags;+ const char* pMessageIdName;+ int32_t messageIdNumber;+ const char* pMessage;+ uint32_t queueLabelCount;+ VkDebugUtilsLabelEXT* pQueueLabels;+ uint32_t cmdBufLabelCount;+ VkDebugUtilsLabelEXT* pCmdBufLabels;+ uint32_t objectCount;+ VkDebugUtilsObjectNameInfoEXT* pObjects;+} VkDebugUtilsMessengerCallbackDataEXT;++typedef VkBool32 (VKAPI_PTR *PFN_vkDebugUtilsMessengerCallbackEXT)(+ VkDebugUtilsMessageSeverityFlagBitsEXT messageSeverity,+ VkDebugUtilsMessageTypeFlagsEXT messageType,+ const VkDebugUtilsMessengerCallbackDataEXT* pCallbackData,+ void* pUserData);++typedef struct VkDebugUtilsMessengerCreateInfoEXT {+ VkStructureType sType;+ const void* pNext;+ VkDebugUtilsMessengerCreateFlagsEXT flags;+ VkDebugUtilsMessageSeverityFlagsEXT messageSeverity;+ VkDebugUtilsMessageTypeFlagsEXT messageType;+ PFN_vkDebugUtilsMessengerCallbackEXT pfnUserCallback;+ void* pUserData;+} VkDebugUtilsMessengerCreateInfoEXT;+++typedef VkResult (VKAPI_PTR *PFN_vkSetDebugUtilsObjectNameEXT)(VkDevice device, const VkDebugUtilsObjectNameInfoEXT* pNameInfo);+typedef VkResult (VKAPI_PTR *PFN_vkSetDebugUtilsObjectTagEXT)(VkDevice device, const VkDebugUtilsObjectTagInfoEXT* pTagInfo);+typedef void (VKAPI_PTR *PFN_vkQueueBeginDebugUtilsLabelEXT)(VkQueue queue, const VkDebugUtilsLabelEXT* pLabelInfo);+typedef void (VKAPI_PTR *PFN_vkQueueEndDebugUtilsLabelEXT)(VkQueue queue);+typedef void (VKAPI_PTR *PFN_vkQueueInsertDebugUtilsLabelEXT)(VkQueue queue, const VkDebugUtilsLabelEXT* pLabelInfo);+typedef void (VKAPI_PTR *PFN_vkCmdBeginDebugUtilsLabelEXT)(VkCommandBuffer commandBuffer, const VkDebugUtilsLabelEXT* pLabelInfo);+typedef void (VKAPI_PTR *PFN_vkCmdEndDebugUtilsLabelEXT)(VkCommandBuffer commandBuffer);+typedef void (VKAPI_PTR *PFN_vkCmdInsertDebugUtilsLabelEXT)(VkCommandBuffer commandBuffer, const VkDebugUtilsLabelEXT* pLabelInfo);+typedef VkResult (VKAPI_PTR *PFN_vkCreateDebugUtilsMessengerEXT)(VkInstance instance, const VkDebugUtilsMessengerCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDebugUtilsMessengerEXT* pMessenger);+typedef void (VKAPI_PTR *PFN_vkDestroyDebugUtilsMessengerEXT)(VkInstance instance, VkDebugUtilsMessengerEXT messenger, const VkAllocationCallbacks* pAllocator);+typedef void (VKAPI_PTR *PFN_vkSubmitDebugUtilsMessageEXT)(VkInstance instance, VkDebugUtilsMessageSeverityFlagBitsEXT messageSeverity, VkDebugUtilsMessageTypeFlagsEXT messageTypes, const VkDebugUtilsMessengerCallbackDataEXT* pCallbackData);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR VkResult VKAPI_CALL vkSetDebugUtilsObjectNameEXT(+ VkDevice device,+ const VkDebugUtilsObjectNameInfoEXT* pNameInfo);++VKAPI_ATTR VkResult VKAPI_CALL vkSetDebugUtilsObjectTagEXT(+ VkDevice device,+ const VkDebugUtilsObjectTagInfoEXT* pTagInfo);++VKAPI_ATTR void VKAPI_CALL vkQueueBeginDebugUtilsLabelEXT(+ VkQueue queue,+ const VkDebugUtilsLabelEXT* pLabelInfo);++VKAPI_ATTR void VKAPI_CALL vkQueueEndDebugUtilsLabelEXT(+ VkQueue queue);++VKAPI_ATTR void VKAPI_CALL vkQueueInsertDebugUtilsLabelEXT(+ VkQueue queue,+ const VkDebugUtilsLabelEXT* pLabelInfo);++VKAPI_ATTR void VKAPI_CALL vkCmdBeginDebugUtilsLabelEXT(+ VkCommandBuffer commandBuffer,+ const VkDebugUtilsLabelEXT* pLabelInfo);++VKAPI_ATTR void VKAPI_CALL vkCmdEndDebugUtilsLabelEXT(+ VkCommandBuffer commandBuffer);++VKAPI_ATTR void VKAPI_CALL vkCmdInsertDebugUtilsLabelEXT(+ VkCommandBuffer commandBuffer,+ const VkDebugUtilsLabelEXT* pLabelInfo);++VKAPI_ATTR VkResult VKAPI_CALL vkCreateDebugUtilsMessengerEXT(+ VkInstance instance,+ const VkDebugUtilsMessengerCreateInfoEXT* pCreateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkDebugUtilsMessengerEXT* pMessenger);++VKAPI_ATTR void VKAPI_CALL vkDestroyDebugUtilsMessengerEXT(+ VkInstance instance,+ VkDebugUtilsMessengerEXT messenger,+ const VkAllocationCallbacks* pAllocator);++VKAPI_ATTR void VKAPI_CALL vkSubmitDebugUtilsMessageEXT(+ VkInstance instance,+ VkDebugUtilsMessageSeverityFlagBitsEXT messageSeverity,+ VkDebugUtilsMessageTypeFlagsEXT messageTypes,+ const VkDebugUtilsMessengerCallbackDataEXT* pCallbackData);+#endif++#define VK_EXT_sampler_filter_minmax 1+#define VK_EXT_SAMPLER_FILTER_MINMAX_SPEC_VERSION 1+#define VK_EXT_SAMPLER_FILTER_MINMAX_EXTENSION_NAME "VK_EXT_sampler_filter_minmax"+++typedef enum VkSamplerReductionModeEXT {+ VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE_EXT = 0,+ VK_SAMPLER_REDUCTION_MODE_MIN_EXT = 1,+ VK_SAMPLER_REDUCTION_MODE_MAX_EXT = 2,+ VK_SAMPLER_REDUCTION_MODE_BEGIN_RANGE_EXT = VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE_EXT,+ VK_SAMPLER_REDUCTION_MODE_END_RANGE_EXT = VK_SAMPLER_REDUCTION_MODE_MAX_EXT,+ VK_SAMPLER_REDUCTION_MODE_RANGE_SIZE_EXT = (VK_SAMPLER_REDUCTION_MODE_MAX_EXT - VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE_EXT + 1),+ VK_SAMPLER_REDUCTION_MODE_MAX_ENUM_EXT = 0x7FFFFFFF+} VkSamplerReductionModeEXT;++typedef struct VkSamplerReductionModeCreateInfoEXT {+ VkStructureType sType;+ const void* pNext;+ VkSamplerReductionModeEXT reductionMode;+} VkSamplerReductionModeCreateInfoEXT;++typedef struct VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT {+ VkStructureType sType;+ void* pNext;+ VkBool32 filterMinmaxSingleComponentFormats;+ VkBool32 filterMinmaxImageComponentMapping;+} VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT;++++#define VK_AMD_gpu_shader_int16 1+#define VK_AMD_GPU_SHADER_INT16_SPEC_VERSION 1+#define VK_AMD_GPU_SHADER_INT16_EXTENSION_NAME "VK_AMD_gpu_shader_int16"+++#define VK_AMD_mixed_attachment_samples 1+#define VK_AMD_MIXED_ATTACHMENT_SAMPLES_SPEC_VERSION 1+#define VK_AMD_MIXED_ATTACHMENT_SAMPLES_EXTENSION_NAME "VK_AMD_mixed_attachment_samples"+++#define VK_AMD_shader_fragment_mask 1+#define VK_AMD_SHADER_FRAGMENT_MASK_SPEC_VERSION 1+#define VK_AMD_SHADER_FRAGMENT_MASK_EXTENSION_NAME "VK_AMD_shader_fragment_mask"+++#define VK_EXT_shader_stencil_export 1+#define VK_EXT_SHADER_STENCIL_EXPORT_SPEC_VERSION 1+#define VK_EXT_SHADER_STENCIL_EXPORT_EXTENSION_NAME "VK_EXT_shader_stencil_export"+++#define VK_EXT_sample_locations 1+#define VK_EXT_SAMPLE_LOCATIONS_SPEC_VERSION 1+#define VK_EXT_SAMPLE_LOCATIONS_EXTENSION_NAME "VK_EXT_sample_locations"++typedef struct VkSampleLocationEXT {+ float x;+ float y;+} VkSampleLocationEXT;++typedef struct VkSampleLocationsInfoEXT {+ VkStructureType sType;+ const void* pNext;+ VkSampleCountFlagBits sampleLocationsPerPixel;+ VkExtent2D sampleLocationGridSize;+ uint32_t sampleLocationsCount;+ const VkSampleLocationEXT* pSampleLocations;+} VkSampleLocationsInfoEXT;++typedef struct VkAttachmentSampleLocationsEXT {+ uint32_t attachmentIndex;+ VkSampleLocationsInfoEXT sampleLocationsInfo;+} VkAttachmentSampleLocationsEXT;++typedef struct VkSubpassSampleLocationsEXT {+ uint32_t subpassIndex;+ VkSampleLocationsInfoEXT sampleLocationsInfo;+} VkSubpassSampleLocationsEXT;++typedef struct VkRenderPassSampleLocationsBeginInfoEXT {+ VkStructureType sType;+ const void* pNext;+ uint32_t attachmentInitialSampleLocationsCount;+ const VkAttachmentSampleLocationsEXT* pAttachmentInitialSampleLocations;+ uint32_t postSubpassSampleLocationsCount;+ const VkSubpassSampleLocationsEXT* pPostSubpassSampleLocations;+} VkRenderPassSampleLocationsBeginInfoEXT;++typedef struct VkPipelineSampleLocationsStateCreateInfoEXT {+ VkStructureType sType;+ const void* pNext;+ VkBool32 sampleLocationsEnable;+ VkSampleLocationsInfoEXT sampleLocationsInfo;+} VkPipelineSampleLocationsStateCreateInfoEXT;++typedef struct VkPhysicalDeviceSampleLocationsPropertiesEXT {+ VkStructureType sType;+ void* pNext;+ VkSampleCountFlags sampleLocationSampleCounts;+ VkExtent2D maxSampleLocationGridSize;+ float sampleLocationCoordinateRange[2];+ uint32_t sampleLocationSubPixelBits;+ VkBool32 variableSampleLocations;+} VkPhysicalDeviceSampleLocationsPropertiesEXT;++typedef struct VkMultisamplePropertiesEXT {+ VkStructureType sType;+ void* pNext;+ VkExtent2D maxSampleLocationGridSize;+} VkMultisamplePropertiesEXT;+++typedef void (VKAPI_PTR *PFN_vkCmdSetSampleLocationsEXT)(VkCommandBuffer commandBuffer, const VkSampleLocationsInfoEXT* pSampleLocationsInfo);+typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceMultisamplePropertiesEXT)(VkPhysicalDevice physicalDevice, VkSampleCountFlagBits samples, VkMultisamplePropertiesEXT* pMultisampleProperties);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR void VKAPI_CALL vkCmdSetSampleLocationsEXT(+ VkCommandBuffer commandBuffer,+ const VkSampleLocationsInfoEXT* pSampleLocationsInfo);++VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceMultisamplePropertiesEXT(+ VkPhysicalDevice physicalDevice,+ VkSampleCountFlagBits samples,+ VkMultisamplePropertiesEXT* pMultisampleProperties);+#endif++#define VK_EXT_blend_operation_advanced 1+#define VK_EXT_BLEND_OPERATION_ADVANCED_SPEC_VERSION 2+#define VK_EXT_BLEND_OPERATION_ADVANCED_EXTENSION_NAME "VK_EXT_blend_operation_advanced"+++typedef enum VkBlendOverlapEXT {+ VK_BLEND_OVERLAP_UNCORRELATED_EXT = 0,+ VK_BLEND_OVERLAP_DISJOINT_EXT = 1,+ VK_BLEND_OVERLAP_CONJOINT_EXT = 2,+ VK_BLEND_OVERLAP_BEGIN_RANGE_EXT = VK_BLEND_OVERLAP_UNCORRELATED_EXT,+ VK_BLEND_OVERLAP_END_RANGE_EXT = VK_BLEND_OVERLAP_CONJOINT_EXT,+ VK_BLEND_OVERLAP_RANGE_SIZE_EXT = (VK_BLEND_OVERLAP_CONJOINT_EXT - VK_BLEND_OVERLAP_UNCORRELATED_EXT + 1),+ VK_BLEND_OVERLAP_MAX_ENUM_EXT = 0x7FFFFFFF+} VkBlendOverlapEXT;++typedef struct VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT {+ VkStructureType sType;+ void* pNext;+ VkBool32 advancedBlendCoherentOperations;+} VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT;++typedef struct VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT {+ VkStructureType sType;+ void* pNext;+ uint32_t advancedBlendMaxColorAttachments;+ VkBool32 advancedBlendIndependentBlend;+ VkBool32 advancedBlendNonPremultipliedSrcColor;+ VkBool32 advancedBlendNonPremultipliedDstColor;+ VkBool32 advancedBlendCorrelatedOverlap;+ VkBool32 advancedBlendAllOperations;+} VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT;++typedef struct VkPipelineColorBlendAdvancedStateCreateInfoEXT {+ VkStructureType sType;+ const void* pNext;+ VkBool32 srcPremultiplied;+ VkBool32 dstPremultiplied;+ VkBlendOverlapEXT blendOverlap;+} VkPipelineColorBlendAdvancedStateCreateInfoEXT;++++#define VK_NV_fragment_coverage_to_color 1+#define VK_NV_FRAGMENT_COVERAGE_TO_COLOR_SPEC_VERSION 1+#define VK_NV_FRAGMENT_COVERAGE_TO_COLOR_EXTENSION_NAME "VK_NV_fragment_coverage_to_color"++typedef VkFlags VkPipelineCoverageToColorStateCreateFlagsNV;++typedef struct VkPipelineCoverageToColorStateCreateInfoNV {+ VkStructureType sType;+ const void* pNext;+ VkPipelineCoverageToColorStateCreateFlagsNV flags;+ VkBool32 coverageToColorEnable;+ uint32_t coverageToColorLocation;+} VkPipelineCoverageToColorStateCreateInfoNV;++++#define VK_NV_framebuffer_mixed_samples 1+#define VK_NV_FRAMEBUFFER_MIXED_SAMPLES_SPEC_VERSION 1+#define VK_NV_FRAMEBUFFER_MIXED_SAMPLES_EXTENSION_NAME "VK_NV_framebuffer_mixed_samples"+++typedef enum VkCoverageModulationModeNV {+ VK_COVERAGE_MODULATION_MODE_NONE_NV = 0,+ VK_COVERAGE_MODULATION_MODE_RGB_NV = 1,+ VK_COVERAGE_MODULATION_MODE_ALPHA_NV = 2,+ VK_COVERAGE_MODULATION_MODE_RGBA_NV = 3,+ VK_COVERAGE_MODULATION_MODE_BEGIN_RANGE_NV = VK_COVERAGE_MODULATION_MODE_NONE_NV,+ VK_COVERAGE_MODULATION_MODE_END_RANGE_NV = VK_COVERAGE_MODULATION_MODE_RGBA_NV,+ VK_COVERAGE_MODULATION_MODE_RANGE_SIZE_NV = (VK_COVERAGE_MODULATION_MODE_RGBA_NV - VK_COVERAGE_MODULATION_MODE_NONE_NV + 1),+ VK_COVERAGE_MODULATION_MODE_MAX_ENUM_NV = 0x7FFFFFFF+} VkCoverageModulationModeNV;++typedef VkFlags VkPipelineCoverageModulationStateCreateFlagsNV;++typedef struct VkPipelineCoverageModulationStateCreateInfoNV {+ VkStructureType sType;+ const void* pNext;+ VkPipelineCoverageModulationStateCreateFlagsNV flags;+ VkCoverageModulationModeNV coverageModulationMode;+ VkBool32 coverageModulationTableEnable;+ uint32_t coverageModulationTableCount;+ const float* pCoverageModulationTable;+} VkPipelineCoverageModulationStateCreateInfoNV;++++#define VK_NV_fill_rectangle 1+#define VK_NV_FILL_RECTANGLE_SPEC_VERSION 1+#define VK_NV_FILL_RECTANGLE_EXTENSION_NAME "VK_NV_fill_rectangle"+++#define VK_EXT_post_depth_coverage 1+#define VK_EXT_POST_DEPTH_COVERAGE_SPEC_VERSION 1+#define VK_EXT_POST_DEPTH_COVERAGE_EXTENSION_NAME "VK_EXT_post_depth_coverage"+++#define VK_EXT_validation_cache 1+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkValidationCacheEXT)++#define VK_EXT_VALIDATION_CACHE_SPEC_VERSION 1+#define VK_EXT_VALIDATION_CACHE_EXTENSION_NAME "VK_EXT_validation_cache"+#define VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT+++typedef enum VkValidationCacheHeaderVersionEXT {+ VK_VALIDATION_CACHE_HEADER_VERSION_ONE_EXT = 1,+ VK_VALIDATION_CACHE_HEADER_VERSION_BEGIN_RANGE_EXT = VK_VALIDATION_CACHE_HEADER_VERSION_ONE_EXT,+ VK_VALIDATION_CACHE_HEADER_VERSION_END_RANGE_EXT = VK_VALIDATION_CACHE_HEADER_VERSION_ONE_EXT,+ VK_VALIDATION_CACHE_HEADER_VERSION_RANGE_SIZE_EXT = (VK_VALIDATION_CACHE_HEADER_VERSION_ONE_EXT - VK_VALIDATION_CACHE_HEADER_VERSION_ONE_EXT + 1),+ VK_VALIDATION_CACHE_HEADER_VERSION_MAX_ENUM_EXT = 0x7FFFFFFF+} VkValidationCacheHeaderVersionEXT;++typedef VkFlags VkValidationCacheCreateFlagsEXT;++typedef struct VkValidationCacheCreateInfoEXT {+ VkStructureType sType;+ const void* pNext;+ VkValidationCacheCreateFlagsEXT flags;+ size_t initialDataSize;+ const void* pInitialData;+} VkValidationCacheCreateInfoEXT;++typedef struct VkShaderModuleValidationCacheCreateInfoEXT {+ VkStructureType sType;+ const void* pNext;+ VkValidationCacheEXT validationCache;+} VkShaderModuleValidationCacheCreateInfoEXT;+++typedef VkResult (VKAPI_PTR *PFN_vkCreateValidationCacheEXT)(VkDevice device, const VkValidationCacheCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkValidationCacheEXT* pValidationCache);+typedef void (VKAPI_PTR *PFN_vkDestroyValidationCacheEXT)(VkDevice device, VkValidationCacheEXT validationCache, const VkAllocationCallbacks* pAllocator);+typedef VkResult (VKAPI_PTR *PFN_vkMergeValidationCachesEXT)(VkDevice device, VkValidationCacheEXT dstCache, uint32_t srcCacheCount, const VkValidationCacheEXT* pSrcCaches);+typedef VkResult (VKAPI_PTR *PFN_vkGetValidationCacheDataEXT)(VkDevice device, VkValidationCacheEXT validationCache, size_t* pDataSize, void* pData);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR VkResult VKAPI_CALL vkCreateValidationCacheEXT(+ VkDevice device,+ const VkValidationCacheCreateInfoEXT* pCreateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkValidationCacheEXT* pValidationCache);++VKAPI_ATTR void VKAPI_CALL vkDestroyValidationCacheEXT(+ VkDevice device,+ VkValidationCacheEXT validationCache,+ const VkAllocationCallbacks* pAllocator);++VKAPI_ATTR VkResult VKAPI_CALL vkMergeValidationCachesEXT(+ VkDevice device,+ VkValidationCacheEXT dstCache,+ uint32_t srcCacheCount,+ const VkValidationCacheEXT* pSrcCaches);++VKAPI_ATTR VkResult VKAPI_CALL vkGetValidationCacheDataEXT(+ VkDevice device,+ VkValidationCacheEXT validationCache,+ size_t* pDataSize,+ void* pData);+#endif++#define VK_EXT_shader_viewport_index_layer 1+#define VK_EXT_SHADER_VIEWPORT_INDEX_LAYER_SPEC_VERSION 1+#define VK_EXT_SHADER_VIEWPORT_INDEX_LAYER_EXTENSION_NAME "VK_EXT_shader_viewport_index_layer"+++#define VK_EXT_global_priority 1+#define VK_EXT_GLOBAL_PRIORITY_SPEC_VERSION 2+#define VK_EXT_GLOBAL_PRIORITY_EXTENSION_NAME "VK_EXT_global_priority"+++typedef enum VkQueueGlobalPriorityEXT {+ VK_QUEUE_GLOBAL_PRIORITY_LOW_EXT = 128,+ VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_EXT = 256,+ VK_QUEUE_GLOBAL_PRIORITY_HIGH_EXT = 512,+ VK_QUEUE_GLOBAL_PRIORITY_REALTIME_EXT = 1024,+ VK_QUEUE_GLOBAL_PRIORITY_BEGIN_RANGE_EXT = VK_QUEUE_GLOBAL_PRIORITY_LOW_EXT,+ VK_QUEUE_GLOBAL_PRIORITY_END_RANGE_EXT = VK_QUEUE_GLOBAL_PRIORITY_REALTIME_EXT,+ VK_QUEUE_GLOBAL_PRIORITY_RANGE_SIZE_EXT = (VK_QUEUE_GLOBAL_PRIORITY_REALTIME_EXT - VK_QUEUE_GLOBAL_PRIORITY_LOW_EXT + 1),+ VK_QUEUE_GLOBAL_PRIORITY_MAX_ENUM_EXT = 0x7FFFFFFF+} VkQueueGlobalPriorityEXT;++typedef struct VkDeviceQueueGlobalPriorityCreateInfoEXT {+ VkStructureType sType;+ const void* pNext;+ VkQueueGlobalPriorityEXT globalPriority;+} VkDeviceQueueGlobalPriorityCreateInfoEXT;++++#define VK_EXT_external_memory_host 1+#define VK_EXT_EXTERNAL_MEMORY_HOST_SPEC_VERSION 1+#define VK_EXT_EXTERNAL_MEMORY_HOST_EXTENSION_NAME "VK_EXT_external_memory_host"++typedef struct VkImportMemoryHostPointerInfoEXT {+ VkStructureType sType;+ const void* pNext;+ VkExternalMemoryHandleTypeFlagBits handleType;+ void* pHostPointer;+} VkImportMemoryHostPointerInfoEXT;++typedef struct VkMemoryHostPointerPropertiesEXT {+ VkStructureType sType;+ void* pNext;+ uint32_t memoryTypeBits;+} VkMemoryHostPointerPropertiesEXT;++typedef struct VkPhysicalDeviceExternalMemoryHostPropertiesEXT {+ VkStructureType sType;+ void* pNext;+ VkDeviceSize minImportedHostPointerAlignment;+} VkPhysicalDeviceExternalMemoryHostPropertiesEXT;+++typedef VkResult (VKAPI_PTR *PFN_vkGetMemoryHostPointerPropertiesEXT)(VkDevice device, VkExternalMemoryHandleTypeFlagBits handleType, const void* pHostPointer, VkMemoryHostPointerPropertiesEXT* pMemoryHostPointerProperties);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryHostPointerPropertiesEXT(+ VkDevice device,+ VkExternalMemoryHandleTypeFlagBits handleType,+ const void* pHostPointer,+ VkMemoryHostPointerPropertiesEXT* pMemoryHostPointerProperties);+#endif++#define VK_AMD_buffer_marker 1+#define VK_AMD_BUFFER_MARKER_SPEC_VERSION 1+#define VK_AMD_BUFFER_MARKER_EXTENSION_NAME "VK_AMD_buffer_marker"++typedef void (VKAPI_PTR *PFN_vkCmdWriteBufferMarkerAMD)(VkCommandBuffer commandBuffer, VkPipelineStageFlagBits pipelineStage, VkBuffer dstBuffer, VkDeviceSize dstOffset, uint32_t marker);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR void VKAPI_CALL vkCmdWriteBufferMarkerAMD(+ VkCommandBuffer commandBuffer,+ VkPipelineStageFlagBits pipelineStage,+ VkBuffer dstBuffer,+ VkDeviceSize dstOffset,+ uint32_t marker);+#endif++#define VK_EXT_vertex_attribute_divisor 1+#define VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_SPEC_VERSION 1+#define VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_EXTENSION_NAME "VK_EXT_vertex_attribute_divisor"++typedef struct VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT {+ VkStructureType sType;+ void* pNext;+ uint32_t maxVertexAttribDivisor;+} VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT;++typedef struct VkVertexInputBindingDivisorDescriptionEXT {+ uint32_t binding;+ uint32_t divisor;+} VkVertexInputBindingDivisorDescriptionEXT;++typedef struct VkPipelineVertexInputDivisorStateCreateInfoEXT {+ VkStructureType sType;+ const void* pNext;+ uint32_t vertexBindingDivisorCount;+ const VkVertexInputBindingDivisorDescriptionEXT* pVertexBindingDivisors;+} VkPipelineVertexInputDivisorStateCreateInfoEXT;++++#ifdef __cplusplus+}+#endif++#endif
@@ -0,0 +1,58 @@+#ifndef VULKAN_IOS_H_+#define VULKAN_IOS_H_ 1++#ifdef __cplusplus+extern "C" {+#endif++/*+** Copyright (c) 2015-2018 The Khronos Group Inc.+**+** Licensed under the Apache License, Version 2.0 (the "License");+** you may not use this file except in compliance with the License.+** You may obtain a copy of the License at+**+** http://www.apache.org/licenses/LICENSE-2.0+**+** Unless required by applicable law or agreed to in writing, software+** distributed under the License is distributed on an "AS IS" BASIS,+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.+** See the License for the specific language governing permissions and+** limitations under the License.+*/++/*+** This header is generated from the Khronos Vulkan XML API Registry.+**+*/+++#define VK_MVK_ios_surface 1+#define VK_MVK_IOS_SURFACE_SPEC_VERSION 2+#define VK_MVK_IOS_SURFACE_EXTENSION_NAME "VK_MVK_ios_surface"++typedef VkFlags VkIOSSurfaceCreateFlagsMVK;++typedef struct VkIOSSurfaceCreateInfoMVK {+ VkStructureType sType;+ const void* pNext;+ VkIOSSurfaceCreateFlagsMVK flags;+ const void* pView;+} VkIOSSurfaceCreateInfoMVK;+++typedef VkResult (VKAPI_PTR *PFN_vkCreateIOSSurfaceMVK)(VkInstance instance, const VkIOSSurfaceCreateInfoMVK* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR VkResult VKAPI_CALL vkCreateIOSSurfaceMVK(+ VkInstance instance,+ const VkIOSSurfaceCreateInfoMVK* pCreateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkSurfaceKHR* pSurface);+#endif++#ifdef __cplusplus+}+#endif++#endif
@@ -0,0 +1,58 @@+#ifndef VULKAN_MACOS_H_+#define VULKAN_MACOS_H_ 1++#ifdef __cplusplus+extern "C" {+#endif++/*+** Copyright (c) 2015-2018 The Khronos Group Inc.+**+** Licensed under the Apache License, Version 2.0 (the "License");+** you may not use this file except in compliance with the License.+** You may obtain a copy of the License at+**+** http://www.apache.org/licenses/LICENSE-2.0+**+** Unless required by applicable law or agreed to in writing, software+** distributed under the License is distributed on an "AS IS" BASIS,+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.+** See the License for the specific language governing permissions and+** limitations under the License.+*/++/*+** This header is generated from the Khronos Vulkan XML API Registry.+**+*/+++#define VK_MVK_macos_surface 1+#define VK_MVK_MACOS_SURFACE_SPEC_VERSION 2+#define VK_MVK_MACOS_SURFACE_EXTENSION_NAME "VK_MVK_macos_surface"++typedef VkFlags VkMacOSSurfaceCreateFlagsMVK;++typedef struct VkMacOSSurfaceCreateInfoMVK {+ VkStructureType sType;+ const void* pNext;+ VkMacOSSurfaceCreateFlagsMVK flags;+ const void* pView;+} VkMacOSSurfaceCreateInfoMVK;+++typedef VkResult (VKAPI_PTR *PFN_vkCreateMacOSSurfaceMVK)(VkInstance instance, const VkMacOSSurfaceCreateInfoMVK* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR VkResult VKAPI_CALL vkCreateMacOSSurfaceMVK(+ VkInstance instance,+ const VkMacOSSurfaceCreateInfoMVK* pCreateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkSurfaceKHR* pSurface);+#endif++#ifdef __cplusplus+}+#endif++#endif
@@ -0,0 +1,65 @@+#ifndef VULKAN_MIR_H_+#define VULKAN_MIR_H_ 1++#ifdef __cplusplus+extern "C" {+#endif++/*+** Copyright (c) 2015-2018 The Khronos Group Inc.+**+** Licensed under the Apache License, Version 2.0 (the "License");+** you may not use this file except in compliance with the License.+** You may obtain a copy of the License at+**+** http://www.apache.org/licenses/LICENSE-2.0+**+** Unless required by applicable law or agreed to in writing, software+** distributed under the License is distributed on an "AS IS" BASIS,+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.+** See the License for the specific language governing permissions and+** limitations under the License.+*/++/*+** This header is generated from the Khronos Vulkan XML API Registry.+**+*/+++#define VK_KHR_mir_surface 1+#define VK_KHR_MIR_SURFACE_SPEC_VERSION 4+#define VK_KHR_MIR_SURFACE_EXTENSION_NAME "VK_KHR_mir_surface"++typedef VkFlags VkMirSurfaceCreateFlagsKHR;++typedef struct VkMirSurfaceCreateInfoKHR {+ VkStructureType sType;+ const void* pNext;+ VkMirSurfaceCreateFlagsKHR flags;+ MirConnection* connection;+ MirSurface* mirSurface;+} VkMirSurfaceCreateInfoKHR;+++typedef VkResult (VKAPI_PTR *PFN_vkCreateMirSurfaceKHR)(VkInstance instance, const VkMirSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);+typedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceMirPresentationSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, MirConnection* connection);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR VkResult VKAPI_CALL vkCreateMirSurfaceKHR(+ VkInstance instance,+ const VkMirSurfaceCreateInfoKHR* pCreateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkSurfaceKHR* pSurface);++VKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceMirPresentationSupportKHR(+ VkPhysicalDevice physicalDevice,+ uint32_t queueFamilyIndex,+ MirConnection* connection);+#endif++#ifdef __cplusplus+}+#endif++#endif
@@ -0,0 +1,58 @@+#ifndef VULKAN_VI_H_+#define VULKAN_VI_H_ 1++#ifdef __cplusplus+extern "C" {+#endif++/*+** Copyright (c) 2015-2018 The Khronos Group Inc.+**+** Licensed under the Apache License, Version 2.0 (the "License");+** you may not use this file except in compliance with the License.+** You may obtain a copy of the License at+**+** http://www.apache.org/licenses/LICENSE-2.0+**+** Unless required by applicable law or agreed to in writing, software+** distributed under the License is distributed on an "AS IS" BASIS,+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.+** See the License for the specific language governing permissions and+** limitations under the License.+*/++/*+** This header is generated from the Khronos Vulkan XML API Registry.+**+*/+++#define VK_NN_vi_surface 1+#define VK_NN_VI_SURFACE_SPEC_VERSION 1+#define VK_NN_VI_SURFACE_EXTENSION_NAME "VK_NN_vi_surface"++typedef VkFlags VkViSurfaceCreateFlagsNN;++typedef struct VkViSurfaceCreateInfoNN {+ VkStructureType sType;+ const void* pNext;+ VkViSurfaceCreateFlagsNN flags;+ void* window;+} VkViSurfaceCreateInfoNN;+++typedef VkResult (VKAPI_PTR *PFN_vkCreateViSurfaceNN)(VkInstance instance, const VkViSurfaceCreateInfoNN* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR VkResult VKAPI_CALL vkCreateViSurfaceNN(+ VkInstance instance,+ const VkViSurfaceCreateInfoNN* pCreateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkSurfaceKHR* pSurface);+#endif++#ifdef __cplusplus+}+#endif++#endif
@@ -0,0 +1,65 @@+#ifndef VULKAN_WAYLAND_H_+#define VULKAN_WAYLAND_H_ 1++#ifdef __cplusplus+extern "C" {+#endif++/*+** Copyright (c) 2015-2018 The Khronos Group Inc.+**+** Licensed under the Apache License, Version 2.0 (the "License");+** you may not use this file except in compliance with the License.+** You may obtain a copy of the License at+**+** http://www.apache.org/licenses/LICENSE-2.0+**+** Unless required by applicable law or agreed to in writing, software+** distributed under the License is distributed on an "AS IS" BASIS,+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.+** See the License for the specific language governing permissions and+** limitations under the License.+*/++/*+** This header is generated from the Khronos Vulkan XML API Registry.+**+*/+++#define VK_KHR_wayland_surface 1+#define VK_KHR_WAYLAND_SURFACE_SPEC_VERSION 6+#define VK_KHR_WAYLAND_SURFACE_EXTENSION_NAME "VK_KHR_wayland_surface"++typedef VkFlags VkWaylandSurfaceCreateFlagsKHR;++typedef struct VkWaylandSurfaceCreateInfoKHR {+ VkStructureType sType;+ const void* pNext;+ VkWaylandSurfaceCreateFlagsKHR flags;+ struct wl_display* display;+ struct wl_surface* surface;+} VkWaylandSurfaceCreateInfoKHR;+++typedef VkResult (VKAPI_PTR *PFN_vkCreateWaylandSurfaceKHR)(VkInstance instance, const VkWaylandSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);+typedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, struct wl_display* display);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR VkResult VKAPI_CALL vkCreateWaylandSurfaceKHR(+ VkInstance instance,+ const VkWaylandSurfaceCreateInfoKHR* pCreateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkSurfaceKHR* pSurface);++VKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceWaylandPresentationSupportKHR(+ VkPhysicalDevice physicalDevice,+ uint32_t queueFamilyIndex,+ struct wl_display* display);+#endif++#ifdef __cplusplus+}+#endif++#endif
@@ -0,0 +1,276 @@+#ifndef VULKAN_WIN32_H_+#define VULKAN_WIN32_H_ 1++#ifdef __cplusplus+extern "C" {+#endif++/*+** Copyright (c) 2015-2018 The Khronos Group Inc.+**+** Licensed under the Apache License, Version 2.0 (the "License");+** you may not use this file except in compliance with the License.+** You may obtain a copy of the License at+**+** http://www.apache.org/licenses/LICENSE-2.0+**+** Unless required by applicable law or agreed to in writing, software+** distributed under the License is distributed on an "AS IS" BASIS,+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.+** See the License for the specific language governing permissions and+** limitations under the License.+*/++/*+** This header is generated from the Khronos Vulkan XML API Registry.+**+*/+++#define VK_KHR_win32_surface 1+#define VK_KHR_WIN32_SURFACE_SPEC_VERSION 6+#define VK_KHR_WIN32_SURFACE_EXTENSION_NAME "VK_KHR_win32_surface"++typedef VkFlags VkWin32SurfaceCreateFlagsKHR;++typedef struct VkWin32SurfaceCreateInfoKHR {+ VkStructureType sType;+ const void* pNext;+ VkWin32SurfaceCreateFlagsKHR flags;+ HINSTANCE hinstance;+ HWND hwnd;+} VkWin32SurfaceCreateInfoKHR;+++typedef VkResult (VKAPI_PTR *PFN_vkCreateWin32SurfaceKHR)(VkInstance instance, const VkWin32SurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);+typedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR VkResult VKAPI_CALL vkCreateWin32SurfaceKHR(+ VkInstance instance,+ const VkWin32SurfaceCreateInfoKHR* pCreateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkSurfaceKHR* pSurface);++VKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceWin32PresentationSupportKHR(+ VkPhysicalDevice physicalDevice,+ uint32_t queueFamilyIndex);+#endif++#define VK_KHR_external_memory_win32 1+#define VK_KHR_EXTERNAL_MEMORY_WIN32_SPEC_VERSION 1+#define VK_KHR_EXTERNAL_MEMORY_WIN32_EXTENSION_NAME "VK_KHR_external_memory_win32"++typedef struct VkImportMemoryWin32HandleInfoKHR {+ VkStructureType sType;+ const void* pNext;+ VkExternalMemoryHandleTypeFlagBits handleType;+ HANDLE handle;+ LPCWSTR name;+} VkImportMemoryWin32HandleInfoKHR;++typedef struct VkExportMemoryWin32HandleInfoKHR {+ VkStructureType sType;+ const void* pNext;+ const SECURITY_ATTRIBUTES* pAttributes;+ DWORD dwAccess;+ LPCWSTR name;+} VkExportMemoryWin32HandleInfoKHR;++typedef struct VkMemoryWin32HandlePropertiesKHR {+ VkStructureType sType;+ void* pNext;+ uint32_t memoryTypeBits;+} VkMemoryWin32HandlePropertiesKHR;++typedef struct VkMemoryGetWin32HandleInfoKHR {+ VkStructureType sType;+ const void* pNext;+ VkDeviceMemory memory;+ VkExternalMemoryHandleTypeFlagBits handleType;+} VkMemoryGetWin32HandleInfoKHR;+++typedef VkResult (VKAPI_PTR *PFN_vkGetMemoryWin32HandleKHR)(VkDevice device, const VkMemoryGetWin32HandleInfoKHR* pGetWin32HandleInfo, HANDLE* pHandle);+typedef VkResult (VKAPI_PTR *PFN_vkGetMemoryWin32HandlePropertiesKHR)(VkDevice device, VkExternalMemoryHandleTypeFlagBits handleType, HANDLE handle, VkMemoryWin32HandlePropertiesKHR* pMemoryWin32HandleProperties);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryWin32HandleKHR(+ VkDevice device,+ const VkMemoryGetWin32HandleInfoKHR* pGetWin32HandleInfo,+ HANDLE* pHandle);++VKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryWin32HandlePropertiesKHR(+ VkDevice device,+ VkExternalMemoryHandleTypeFlagBits handleType,+ HANDLE handle,+ VkMemoryWin32HandlePropertiesKHR* pMemoryWin32HandleProperties);+#endif++#define VK_KHR_win32_keyed_mutex 1+#define VK_KHR_WIN32_KEYED_MUTEX_SPEC_VERSION 1+#define VK_KHR_WIN32_KEYED_MUTEX_EXTENSION_NAME "VK_KHR_win32_keyed_mutex"++typedef struct VkWin32KeyedMutexAcquireReleaseInfoKHR {+ VkStructureType sType;+ const void* pNext;+ uint32_t acquireCount;+ const VkDeviceMemory* pAcquireSyncs;+ const uint64_t* pAcquireKeys;+ const uint32_t* pAcquireTimeouts;+ uint32_t releaseCount;+ const VkDeviceMemory* pReleaseSyncs;+ const uint64_t* pReleaseKeys;+} VkWin32KeyedMutexAcquireReleaseInfoKHR;++++#define VK_KHR_external_semaphore_win32 1+#define VK_KHR_EXTERNAL_SEMAPHORE_WIN32_SPEC_VERSION 1+#define VK_KHR_EXTERNAL_SEMAPHORE_WIN32_EXTENSION_NAME "VK_KHR_external_semaphore_win32"++typedef struct VkImportSemaphoreWin32HandleInfoKHR {+ VkStructureType sType;+ const void* pNext;+ VkSemaphore semaphore;+ VkSemaphoreImportFlags flags;+ VkExternalSemaphoreHandleTypeFlagBits handleType;+ HANDLE handle;+ LPCWSTR name;+} VkImportSemaphoreWin32HandleInfoKHR;++typedef struct VkExportSemaphoreWin32HandleInfoKHR {+ VkStructureType sType;+ const void* pNext;+ const SECURITY_ATTRIBUTES* pAttributes;+ DWORD dwAccess;+ LPCWSTR name;+} VkExportSemaphoreWin32HandleInfoKHR;++typedef struct VkD3D12FenceSubmitInfoKHR {+ VkStructureType sType;+ const void* pNext;+ uint32_t waitSemaphoreValuesCount;+ const uint64_t* pWaitSemaphoreValues;+ uint32_t signalSemaphoreValuesCount;+ const uint64_t* pSignalSemaphoreValues;+} VkD3D12FenceSubmitInfoKHR;++typedef struct VkSemaphoreGetWin32HandleInfoKHR {+ VkStructureType sType;+ const void* pNext;+ VkSemaphore semaphore;+ VkExternalSemaphoreHandleTypeFlagBits handleType;+} VkSemaphoreGetWin32HandleInfoKHR;+++typedef VkResult (VKAPI_PTR *PFN_vkImportSemaphoreWin32HandleKHR)(VkDevice device, const VkImportSemaphoreWin32HandleInfoKHR* pImportSemaphoreWin32HandleInfo);+typedef VkResult (VKAPI_PTR *PFN_vkGetSemaphoreWin32HandleKHR)(VkDevice device, const VkSemaphoreGetWin32HandleInfoKHR* pGetWin32HandleInfo, HANDLE* pHandle);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR VkResult VKAPI_CALL vkImportSemaphoreWin32HandleKHR(+ VkDevice device,+ const VkImportSemaphoreWin32HandleInfoKHR* pImportSemaphoreWin32HandleInfo);++VKAPI_ATTR VkResult VKAPI_CALL vkGetSemaphoreWin32HandleKHR(+ VkDevice device,+ const VkSemaphoreGetWin32HandleInfoKHR* pGetWin32HandleInfo,+ HANDLE* pHandle);+#endif++#define VK_KHR_external_fence_win32 1+#define VK_KHR_EXTERNAL_FENCE_WIN32_SPEC_VERSION 1+#define VK_KHR_EXTERNAL_FENCE_WIN32_EXTENSION_NAME "VK_KHR_external_fence_win32"++typedef struct VkImportFenceWin32HandleInfoKHR {+ VkStructureType sType;+ const void* pNext;+ VkFence fence;+ VkFenceImportFlags flags;+ VkExternalFenceHandleTypeFlagBits handleType;+ HANDLE handle;+ LPCWSTR name;+} VkImportFenceWin32HandleInfoKHR;++typedef struct VkExportFenceWin32HandleInfoKHR {+ VkStructureType sType;+ const void* pNext;+ const SECURITY_ATTRIBUTES* pAttributes;+ DWORD dwAccess;+ LPCWSTR name;+} VkExportFenceWin32HandleInfoKHR;++typedef struct VkFenceGetWin32HandleInfoKHR {+ VkStructureType sType;+ const void* pNext;+ VkFence fence;+ VkExternalFenceHandleTypeFlagBits handleType;+} VkFenceGetWin32HandleInfoKHR;+++typedef VkResult (VKAPI_PTR *PFN_vkImportFenceWin32HandleKHR)(VkDevice device, const VkImportFenceWin32HandleInfoKHR* pImportFenceWin32HandleInfo);+typedef VkResult (VKAPI_PTR *PFN_vkGetFenceWin32HandleKHR)(VkDevice device, const VkFenceGetWin32HandleInfoKHR* pGetWin32HandleInfo, HANDLE* pHandle);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR VkResult VKAPI_CALL vkImportFenceWin32HandleKHR(+ VkDevice device,+ const VkImportFenceWin32HandleInfoKHR* pImportFenceWin32HandleInfo);++VKAPI_ATTR VkResult VKAPI_CALL vkGetFenceWin32HandleKHR(+ VkDevice device,+ const VkFenceGetWin32HandleInfoKHR* pGetWin32HandleInfo,+ HANDLE* pHandle);+#endif++#define VK_NV_external_memory_win32 1+#define VK_NV_EXTERNAL_MEMORY_WIN32_SPEC_VERSION 1+#define VK_NV_EXTERNAL_MEMORY_WIN32_EXTENSION_NAME "VK_NV_external_memory_win32"++typedef struct VkImportMemoryWin32HandleInfoNV {+ VkStructureType sType;+ const void* pNext;+ VkExternalMemoryHandleTypeFlagsNV handleType;+ HANDLE handle;+} VkImportMemoryWin32HandleInfoNV;++typedef struct VkExportMemoryWin32HandleInfoNV {+ VkStructureType sType;+ const void* pNext;+ const SECURITY_ATTRIBUTES* pAttributes;+ DWORD dwAccess;+} VkExportMemoryWin32HandleInfoNV;+++typedef VkResult (VKAPI_PTR *PFN_vkGetMemoryWin32HandleNV)(VkDevice device, VkDeviceMemory memory, VkExternalMemoryHandleTypeFlagsNV handleType, HANDLE* pHandle);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryWin32HandleNV(+ VkDevice device,+ VkDeviceMemory memory,+ VkExternalMemoryHandleTypeFlagsNV handleType,+ HANDLE* pHandle);+#endif++#define VK_NV_win32_keyed_mutex 1+#define VK_NV_WIN32_KEYED_MUTEX_SPEC_VERSION 1+#define VK_NV_WIN32_KEYED_MUTEX_EXTENSION_NAME "VK_NV_win32_keyed_mutex"++typedef struct VkWin32KeyedMutexAcquireReleaseInfoNV {+ VkStructureType sType;+ const void* pNext;+ uint32_t acquireCount;+ const VkDeviceMemory* pAcquireSyncs;+ const uint64_t* pAcquireKeys;+ const uint32_t* pAcquireTimeoutMilliseconds;+ uint32_t releaseCount;+ const VkDeviceMemory* pReleaseSyncs;+ const uint64_t* pReleaseKeys;+} VkWin32KeyedMutexAcquireReleaseInfoNV;++++#ifdef __cplusplus+}+#endif++#endif
@@ -0,0 +1,66 @@+#ifndef VULKAN_XCB_H_+#define VULKAN_XCB_H_ 1++#ifdef __cplusplus+extern "C" {+#endif++/*+** Copyright (c) 2015-2018 The Khronos Group Inc.+**+** Licensed under the Apache License, Version 2.0 (the "License");+** you may not use this file except in compliance with the License.+** You may obtain a copy of the License at+**+** http://www.apache.org/licenses/LICENSE-2.0+**+** Unless required by applicable law or agreed to in writing, software+** distributed under the License is distributed on an "AS IS" BASIS,+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.+** See the License for the specific language governing permissions and+** limitations under the License.+*/++/*+** This header is generated from the Khronos Vulkan XML API Registry.+**+*/+++#define VK_KHR_xcb_surface 1+#define VK_KHR_XCB_SURFACE_SPEC_VERSION 6+#define VK_KHR_XCB_SURFACE_EXTENSION_NAME "VK_KHR_xcb_surface"++typedef VkFlags VkXcbSurfaceCreateFlagsKHR;++typedef struct VkXcbSurfaceCreateInfoKHR {+ VkStructureType sType;+ const void* pNext;+ VkXcbSurfaceCreateFlagsKHR flags;+ xcb_connection_t* connection;+ xcb_window_t window;+} VkXcbSurfaceCreateInfoKHR;+++typedef VkResult (VKAPI_PTR *PFN_vkCreateXcbSurfaceKHR)(VkInstance instance, const VkXcbSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);+typedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, xcb_connection_t* connection, xcb_visualid_t visual_id);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR VkResult VKAPI_CALL vkCreateXcbSurfaceKHR(+ VkInstance instance,+ const VkXcbSurfaceCreateInfoKHR* pCreateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkSurfaceKHR* pSurface);++VKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceXcbPresentationSupportKHR(+ VkPhysicalDevice physicalDevice,+ uint32_t queueFamilyIndex,+ xcb_connection_t* connection,+ xcb_visualid_t visual_id);+#endif++#ifdef __cplusplus+}+#endif++#endif
@@ -0,0 +1,66 @@+#ifndef VULKAN_XLIB_H_+#define VULKAN_XLIB_H_ 1++#ifdef __cplusplus+extern "C" {+#endif++/*+** Copyright (c) 2015-2018 The Khronos Group Inc.+**+** Licensed under the Apache License, Version 2.0 (the "License");+** you may not use this file except in compliance with the License.+** You may obtain a copy of the License at+**+** http://www.apache.org/licenses/LICENSE-2.0+**+** Unless required by applicable law or agreed to in writing, software+** distributed under the License is distributed on an "AS IS" BASIS,+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.+** See the License for the specific language governing permissions and+** limitations under the License.+*/++/*+** This header is generated from the Khronos Vulkan XML API Registry.+**+*/+++#define VK_KHR_xlib_surface 1+#define VK_KHR_XLIB_SURFACE_SPEC_VERSION 6+#define VK_KHR_XLIB_SURFACE_EXTENSION_NAME "VK_KHR_xlib_surface"++typedef VkFlags VkXlibSurfaceCreateFlagsKHR;++typedef struct VkXlibSurfaceCreateInfoKHR {+ VkStructureType sType;+ const void* pNext;+ VkXlibSurfaceCreateFlagsKHR flags;+ Display* dpy;+ Window window;+} VkXlibSurfaceCreateInfoKHR;+++typedef VkResult (VKAPI_PTR *PFN_vkCreateXlibSurfaceKHR)(VkInstance instance, const VkXlibSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);+typedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, Display* dpy, VisualID visualID);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR VkResult VKAPI_CALL vkCreateXlibSurfaceKHR(+ VkInstance instance,+ const VkXlibSurfaceCreateInfoKHR* pCreateInfo,+ const VkAllocationCallbacks* pAllocator,+ VkSurfaceKHR* pSurface);++VKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceXlibPresentationSupportKHR(+ VkPhysicalDevice physicalDevice,+ uint32_t queueFamilyIndex,+ Display* dpy,+ VisualID visualID);+#endif++#ifdef __cplusplus+}+#endif++#endif
@@ -0,0 +1,54 @@+#ifndef VULKAN_XLIB_XRANDR_H_+#define VULKAN_XLIB_XRANDR_H_ 1++#ifdef __cplusplus+extern "C" {+#endif++/*+** Copyright (c) 2015-2018 The Khronos Group Inc.+**+** Licensed under the Apache License, Version 2.0 (the "License");+** you may not use this file except in compliance with the License.+** You may obtain a copy of the License at+**+** http://www.apache.org/licenses/LICENSE-2.0+**+** Unless required by applicable law or agreed to in writing, software+** distributed under the License is distributed on an "AS IS" BASIS,+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.+** See the License for the specific language governing permissions and+** limitations under the License.+*/++/*+** This header is generated from the Khronos Vulkan XML API Registry.+**+*/+++#define VK_EXT_acquire_xlib_display 1+#define VK_EXT_ACQUIRE_XLIB_DISPLAY_SPEC_VERSION 1+#define VK_EXT_ACQUIRE_XLIB_DISPLAY_EXTENSION_NAME "VK_EXT_acquire_xlib_display"++typedef VkResult (VKAPI_PTR *PFN_vkAcquireXlibDisplayEXT)(VkPhysicalDevice physicalDevice, Display* dpy, VkDisplayKHR display);+typedef VkResult (VKAPI_PTR *PFN_vkGetRandROutputDisplayEXT)(VkPhysicalDevice physicalDevice, Display* dpy, RROutput rrOutput, VkDisplayKHR* pDisplay);++#ifndef VK_NO_PROTOTYPES+VKAPI_ATTR VkResult VKAPI_CALL vkAcquireXlibDisplayEXT(+ VkPhysicalDevice physicalDevice,+ Display* dpy,+ VkDisplayKHR display);++VKAPI_ATTR VkResult VKAPI_CALL vkGetRandROutputDisplayEXT(+ VkPhysicalDevice physicalDevice,+ Display* dpy,+ RROutput rrOutput,+ VkDisplayKHR* pDisplay);+#endif++#ifdef __cplusplus+}+#endif++#endif
@@ -1,25 +1,28 @@+{-# OPTIONS_GHC -fno-warn-missing-pattern-synonym-signatures#-} {-# LANGUAGE DataKinds #-} {-# LANGUAGE PatternSynonyms #-} {-# LANGUAGE Strict #-} module Graphics.Vulkan.Constants (VK_MAX_PHYSICAL_DEVICE_NAME_SIZE, pattern VK_MAX_PHYSICAL_DEVICE_NAME_SIZE, VK_UUID_SIZE,- pattern VK_UUID_SIZE, VK_LUID_SIZE_KHR, pattern VK_LUID_SIZE_KHR,- VK_MAX_EXTENSION_NAME_SIZE, pattern VK_MAX_EXTENSION_NAME_SIZE,- VK_MAX_DESCRIPTION_SIZE, pattern VK_MAX_DESCRIPTION_SIZE,- VK_MAX_MEMORY_TYPES, pattern VK_MAX_MEMORY_TYPES,- VK_MAX_MEMORY_HEAPS, pattern VK_MAX_MEMORY_HEAPS,- pattern VK_LOD_CLAMP_NONE, VK_REMAINING_MIP_LEVELS,- pattern VK_REMAINING_MIP_LEVELS, VK_REMAINING_ARRAY_LAYERS,- pattern VK_REMAINING_ARRAY_LAYERS, VK_WHOLE_SIZE,- pattern VK_WHOLE_SIZE, VK_ATTACHMENT_UNUSED,+ pattern VK_UUID_SIZE, VK_LUID_SIZE, pattern VK_LUID_SIZE,+ pattern VK_LUID_SIZE_KHR, VK_MAX_EXTENSION_NAME_SIZE,+ pattern VK_MAX_EXTENSION_NAME_SIZE, VK_MAX_DESCRIPTION_SIZE,+ pattern VK_MAX_DESCRIPTION_SIZE, VK_MAX_MEMORY_TYPES,+ pattern VK_MAX_MEMORY_TYPES, VK_MAX_MEMORY_HEAPS,+ pattern VK_MAX_MEMORY_HEAPS, pattern VK_LOD_CLAMP_NONE,+ VK_REMAINING_MIP_LEVELS, pattern VK_REMAINING_MIP_LEVELS,+ VK_REMAINING_ARRAY_LAYERS, pattern VK_REMAINING_ARRAY_LAYERS,+ VK_WHOLE_SIZE, pattern VK_WHOLE_SIZE, VK_ATTACHMENT_UNUSED, pattern VK_ATTACHMENT_UNUSED, VK_TRUE, pattern VK_TRUE, VK_FALSE, pattern VK_FALSE, VK_QUEUE_FAMILY_IGNORED,- pattern VK_QUEUE_FAMILY_IGNORED, VK_QUEUE_FAMILY_EXTERNAL_KHR,+ pattern VK_QUEUE_FAMILY_IGNORED, VK_QUEUE_FAMILY_EXTERNAL,+ pattern VK_QUEUE_FAMILY_EXTERNAL, pattern VK_QUEUE_FAMILY_EXTERNAL_KHR, VK_QUEUE_FAMILY_FOREIGN_EXT, pattern VK_QUEUE_FAMILY_FOREIGN_EXT, VK_SUBPASS_EXTERNAL,- pattern VK_SUBPASS_EXTERNAL, VK_MAX_DEVICE_GROUP_SIZE_KHX,- pattern VK_MAX_DEVICE_GROUP_SIZE_KHX)+ pattern VK_SUBPASS_EXTERNAL, VK_MAX_DEVICE_GROUP_SIZE,+ pattern VK_MAX_DEVICE_GROUP_SIZE,+ pattern VK_MAX_DEVICE_GROUP_SIZE_KHR) where import Graphics.Vulkan.Marshal @@ -35,12 +38,14 @@ type VK_UUID_SIZE = 16 -pattern VK_LUID_SIZE_KHR :: (Num a, Eq a) => a+pattern VK_LUID_SIZE :: (Num a, Eq a) => a -pattern VK_LUID_SIZE_KHR = 8+pattern VK_LUID_SIZE = 8 -type VK_LUID_SIZE_KHR = 8+type VK_LUID_SIZE = 8 +pattern VK_LUID_SIZE_KHR = VK_LUID_SIZE+ pattern VK_MAX_EXTENSION_NAME_SIZE :: (Num a, Eq a) => a pattern VK_MAX_EXTENSION_NAME_SIZE = 256@@ -112,12 +117,14 @@ type VK_QUEUE_FAMILY_IGNORED = 4294967295 -pattern VK_QUEUE_FAMILY_EXTERNAL_KHR :: Word32+pattern VK_QUEUE_FAMILY_EXTERNAL :: Word32 -pattern VK_QUEUE_FAMILY_EXTERNAL_KHR = 4294967294+pattern VK_QUEUE_FAMILY_EXTERNAL = 4294967294 -type VK_QUEUE_FAMILY_EXTERNAL_KHR = 4294967294+type VK_QUEUE_FAMILY_EXTERNAL = 4294967294 +pattern VK_QUEUE_FAMILY_EXTERNAL_KHR = VK_QUEUE_FAMILY_EXTERNAL+ pattern VK_QUEUE_FAMILY_FOREIGN_EXT :: Word32 pattern VK_QUEUE_FAMILY_FOREIGN_EXT = 4294967293@@ -130,8 +137,10 @@ type VK_SUBPASS_EXTERNAL = 4294967295 -pattern VK_MAX_DEVICE_GROUP_SIZE_KHX :: (Num a, Eq a) => a+pattern VK_MAX_DEVICE_GROUP_SIZE :: (Num a, Eq a) => a -pattern VK_MAX_DEVICE_GROUP_SIZE_KHX = 32+pattern VK_MAX_DEVICE_GROUP_SIZE = 32 -type VK_MAX_DEVICE_GROUP_SIZE_KHX = 32+type VK_MAX_DEVICE_GROUP_SIZE = 32++pattern VK_MAX_DEVICE_GROUP_SIZE_KHR = VK_MAX_DEVICE_GROUP_SIZE
@@ -1,3186 +0,0 @@-#include "vulkan/vulkan.h"--{-# OPTIONS_GHC -fno-warn-unused-imports#-}-{-# OPTIONS_HADDOCK not-home#-}-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE ForeignFunctionInterface #-}-{-# LANGUAGE PatternSynonyms #-}-{-# LANGUAGE Strict #-}-module Graphics.Vulkan.Core- (-- * Vulkan core API interface definitions- -- |- --- -- @api = vulkan@- --- -- @name = VK_VERSION_1_0@- --- -- @number = 1.0@- ---- -- ** Header boilerplate- --- -- |- -- > ##include "vk_platform.h"- ---- -- ** API version- ---- -- ** API constants- module Graphics.Vulkan.Types.Enum.VkPipelineCacheHeaderVersion,- pattern VK_LOD_CLAMP_NONE, pattern VK_REMAINING_MIP_LEVELS,- VK_REMAINING_MIP_LEVELS, pattern VK_REMAINING_ARRAY_LAYERS,- VK_REMAINING_ARRAY_LAYERS, pattern VK_WHOLE_SIZE, VK_WHOLE_SIZE,- pattern VK_ATTACHMENT_UNUSED, VK_ATTACHMENT_UNUSED,- pattern VK_TRUE, VK_TRUE, pattern VK_FALSE, VK_FALSE,- pattern VK_QUEUE_FAMILY_IGNORED, VK_QUEUE_FAMILY_IGNORED,- pattern VK_SUBPASS_EXTERNAL, VK_SUBPASS_EXTERNAL, -- ** Device initialization- vkCreateInstance,- vkDestroyInstance, vkEnumeratePhysicalDevices,- vkGetPhysicalDeviceFeatures, vkGetPhysicalDeviceFormatProperties,- vkGetPhysicalDeviceImageFormatProperties,- vkGetPhysicalDeviceProperties,- vkGetPhysicalDeviceQueueFamilyProperties,- vkGetPhysicalDeviceMemoryProperties, vkGetInstanceProcAddr,- vkGetDeviceProcAddr, module Graphics.Vulkan.Marshal,- module Graphics.Vulkan.Types.BaseTypes,- module Graphics.Vulkan.Types.Bitmasks,- module Graphics.Vulkan.Types.Enum.VkFormat,- module Graphics.Vulkan.Types.Enum.VkFormatFeatureFlags,- module Graphics.Vulkan.Types.Enum.VkImageCreateFlags,- module Graphics.Vulkan.Types.Enum.VkImageTiling,- module Graphics.Vulkan.Types.Enum.VkImageType,- module Graphics.Vulkan.Types.Enum.VkImageUsageFlags,- module Graphics.Vulkan.Types.Enum.VkInternalAllocationType,- module Graphics.Vulkan.Types.Enum.VkMemoryHeapFlags,- module Graphics.Vulkan.Types.Enum.VkMemoryPropertyFlags,- module Graphics.Vulkan.Types.Enum.VkPhysicalDeviceType,- module Graphics.Vulkan.Types.Enum.VkQueueFlags,- module Graphics.Vulkan.Types.Enum.VkResult,- module Graphics.Vulkan.Types.Enum.VkSampleCountFlags,- module Graphics.Vulkan.Types.Enum.VkStructureType,- module Graphics.Vulkan.Types.Enum.VkSystemAllocationScope,- module Graphics.Vulkan.Types.Funcpointers,- module Graphics.Vulkan.Types.Handles,- module Graphics.Vulkan.Types.Struct.VkAllocationCallbacks,- module Graphics.Vulkan.Types.Struct.VkApplicationInfo,- module Graphics.Vulkan.Types.Struct.VkExtent3D,- module Graphics.Vulkan.Types.Struct.VkFormatProperties,- module Graphics.Vulkan.Types.Struct.VkImageFormatProperties,- module Graphics.Vulkan.Types.Struct.VkInstanceCreateInfo,- module Graphics.Vulkan.Types.Struct.VkMemoryHeap,- module Graphics.Vulkan.Types.Struct.VkMemoryType,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceFeatures,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceLimits,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceMemoryProperties,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseProperties,- module Graphics.Vulkan.Types.Struct.VkQueueFamilyProperties,- -- ** Device commands- vkCreateDevice, vkDestroyDevice,- module Graphics.Vulkan.Types.Struct.VkDeviceCreateInfo,- module Graphics.Vulkan.Types.Struct.VkDeviceQueueCreateInfo,- -- ** Extension discovery commands- vkEnumerateInstanceExtensionProperties,- vkEnumerateDeviceExtensionProperties,- module Graphics.Vulkan.Types.Struct.VkExtensionProperties,- -- ** Layer discovery commands- vkEnumerateInstanceLayerProperties,- vkEnumerateDeviceLayerProperties,- module Graphics.Vulkan.Types.Struct.VkLayerProperties,- -- ** queue commands- vkGetDeviceQueue, vkQueueSubmit, vkQueueWaitIdle, vkDeviceWaitIdle,- module Graphics.Vulkan.Types.Enum.VkPipelineStageFlags,- module Graphics.Vulkan.Types.Struct.VkSubmitInfo, -- ** Memory commands- vkAllocateMemory,- vkFreeMemory, vkMapMemory, vkUnmapMemory,- vkFlushMappedMemoryRanges, vkInvalidateMappedMemoryRanges,- vkGetDeviceMemoryCommitment,- module Graphics.Vulkan.Types.Struct.VkMappedMemoryRange,- module Graphics.Vulkan.Types.Struct.VkMemoryAllocateInfo,- -- ** Memory management API commands- vkBindBufferMemory, vkBindImageMemory,- vkGetBufferMemoryRequirements, vkGetImageMemoryRequirements,- module Graphics.Vulkan.Types.Struct.VkMemoryRequirements,- -- ** Sparse resource memory management API commands- vkGetImageSparseMemoryRequirements,- vkGetPhysicalDeviceSparseImageFormatProperties, vkQueueBindSparse,- module Graphics.Vulkan.Types.Enum.VkImageAspectFlags,- module Graphics.Vulkan.Types.Enum.VkSparseImageFormatFlags,- module Graphics.Vulkan.Types.Enum.VkSparseMemoryBindFlags,- module Graphics.Vulkan.Types.Struct.VkBindSparseInfo,- module Graphics.Vulkan.Types.Struct.VkImageSubresource,- module Graphics.Vulkan.Types.Struct.VkOffset3D,- module Graphics.Vulkan.Types.Struct.VkSparseBufferMemoryBindInfo,- module Graphics.Vulkan.Types.Struct.VkSparseImageFormatProperties,- module Graphics.Vulkan.Types.Struct.VkSparseImageMemoryBind,- module Graphics.Vulkan.Types.Struct.VkSparseImageMemoryBindInfo,- module Graphics.Vulkan.Types.Struct.VkSparseImageMemoryRequirements,- module Graphics.Vulkan.Types.Struct.VkSparseImageOpaqueMemoryBindInfo,- module Graphics.Vulkan.Types.Struct.VkSparseMemoryBind,- -- ** Fence commands- vkCreateFence, vkDestroyFence, vkResetFences, vkGetFenceStatus,- vkWaitForFences,- module Graphics.Vulkan.Types.Enum.VkFenceCreateFlags,- module Graphics.Vulkan.Types.Struct.VkFenceCreateInfo,- -- ** Queue semaphore commands- vkCreateSemaphore, vkDestroySemaphore,- module Graphics.Vulkan.Types.Struct.VkSemaphoreCreateInfo,- -- ** Event commands- vkCreateEvent, vkDestroyEvent, vkGetEventStatus, vkSetEvent,- vkResetEvent,- module Graphics.Vulkan.Types.Struct.VkEventCreateInfo,- -- ** Query commands- vkCreateQueryPool, vkDestroyQueryPool, vkGetQueryPoolResults,- module Graphics.Vulkan.Types.Enum.VkQueryPipelineStatisticFlags,- module Graphics.Vulkan.Types.Enum.VkQueryResultFlags,- module Graphics.Vulkan.Types.Enum.VkQueryType,- module Graphics.Vulkan.Types.Struct.VkQueryPoolCreateInfo,- -- ** Buffer commands- vkCreateBuffer, vkDestroyBuffer,- module Graphics.Vulkan.Types.Enum.VkBufferCreateFlags,- module Graphics.Vulkan.Types.Enum.VkBufferUsageFlags,- module Graphics.Vulkan.Types.Enum.VkSharingMode,- module Graphics.Vulkan.Types.Struct.VkBufferCreateInfo,- -- ** Buffer view commands- vkCreateBufferView, vkDestroyBufferView,- module Graphics.Vulkan.Types.Struct.VkBufferViewCreateInfo,- -- ** Image commands- vkCreateImage, vkDestroyImage, vkGetImageSubresourceLayout,- module Graphics.Vulkan.Types.Enum.VkImageLayout,- module Graphics.Vulkan.Types.Struct.VkImageCreateInfo,- module Graphics.Vulkan.Types.Struct.VkSubresourceLayout,- -- ** Image view commands- vkCreateImageView, vkDestroyImageView,- module Graphics.Vulkan.Types.Enum.VkComponentSwizzle,- module Graphics.Vulkan.Types.Enum.VkImageViewType,- module Graphics.Vulkan.Types.Struct.VkComponentMapping,- module Graphics.Vulkan.Types.Struct.VkImageSubresourceRange,- module Graphics.Vulkan.Types.Struct.VkImageViewCreateInfo,- -- ** Shader commands- vkCreateShaderModule, vkDestroyShaderModule,- module Graphics.Vulkan.Types.Struct.VkShaderModuleCreateInfo,- -- ** Pipeline Cache commands- vkCreatePipelineCache, vkDestroyPipelineCache,- vkGetPipelineCacheData, vkMergePipelineCaches,- module Graphics.Vulkan.Types.Struct.VkPipelineCacheCreateInfo,- -- ** Pipeline commands- vkCreateGraphicsPipelines, vkCreateComputePipelines,- vkDestroyPipeline, module Graphics.Vulkan.Types.Enum.VkBlendFactor,- module Graphics.Vulkan.Types.Enum.VkBlendOp,- module Graphics.Vulkan.Types.Enum.VkColorComponentFlags,- module Graphics.Vulkan.Types.Enum.VkCompareOp,- module Graphics.Vulkan.Types.Enum.VkCullModeFlags,- module Graphics.Vulkan.Types.Enum.VkDynamicState,- module Graphics.Vulkan.Types.Enum.VkFrontFace,- module Graphics.Vulkan.Types.Enum.VkLogicOp,- module Graphics.Vulkan.Types.Enum.VkPipelineCreateFlags,- module Graphics.Vulkan.Types.Enum.VkPolygonMode,- module Graphics.Vulkan.Types.Enum.VkPrimitiveTopology,- module Graphics.Vulkan.Types.Enum.VkShaderStageFlags,- module Graphics.Vulkan.Types.Enum.VkStencilOp,- module Graphics.Vulkan.Types.Enum.VkVertexInputRate,- module Graphics.Vulkan.Types.Struct.VkComputePipelineCreateInfo,- module Graphics.Vulkan.Types.Struct.VkExtent2D,- module Graphics.Vulkan.Types.Struct.VkGraphicsPipelineCreateInfo,- module Graphics.Vulkan.Types.Struct.VkOffset2D,- module Graphics.Vulkan.Types.Struct.VkPipelineColorBlendAttachmentState,- module Graphics.Vulkan.Types.Struct.VkPipelineColorBlendStateCreateInfo,- module Graphics.Vulkan.Types.Struct.VkPipelineDepthStencilStateCreateInfo,- module Graphics.Vulkan.Types.Struct.VkPipelineDynamicStateCreateInfo,- module Graphics.Vulkan.Types.Struct.VkPipelineInputAssemblyStateCreateInfo,- module Graphics.Vulkan.Types.Struct.VkPipelineMultisampleStateCreateInfo,- module Graphics.Vulkan.Types.Struct.VkPipelineRasterizationStateCreateInfo,- module Graphics.Vulkan.Types.Struct.VkPipelineShaderStageCreateInfo,- module Graphics.Vulkan.Types.Struct.VkPipelineTessellationStateCreateInfo,- module Graphics.Vulkan.Types.Struct.VkPipelineVertexInputStateCreateInfo,- module Graphics.Vulkan.Types.Struct.VkPipelineViewportStateCreateInfo,- module Graphics.Vulkan.Types.Struct.VkRect2D,- module Graphics.Vulkan.Types.Struct.VkSpecializationInfo,- module Graphics.Vulkan.Types.Struct.VkSpecializationMapEntry,- module Graphics.Vulkan.Types.Struct.VkStencilOpState,- module Graphics.Vulkan.Types.Struct.VkVertexInputAttributeDescription,- module Graphics.Vulkan.Types.Struct.VkVertexInputBindingDescription,- module Graphics.Vulkan.Types.Struct.VkViewport,- -- ** Pipeline layout commands- vkCreatePipelineLayout, vkDestroyPipelineLayout,- module Graphics.Vulkan.Types.Struct.VkPipelineLayoutCreateInfo,- module Graphics.Vulkan.Types.Struct.VkPushConstantRange,- -- ** Sampler commands- vkCreateSampler, vkDestroySampler,- module Graphics.Vulkan.Types.Enum.VkBorderColor,- module Graphics.Vulkan.Types.Enum.VkFilter,- module Graphics.Vulkan.Types.Enum.VkSamplerAddressMode,- module Graphics.Vulkan.Types.Enum.VkSamplerMipmapMode,- module Graphics.Vulkan.Types.Struct.VkSamplerCreateInfo,- -- ** Descriptor set commands- vkCreateDescriptorSetLayout, vkDestroyDescriptorSetLayout,- vkCreateDescriptorPool, vkDestroyDescriptorPool,- vkResetDescriptorPool, vkAllocateDescriptorSets,- vkFreeDescriptorSets, vkUpdateDescriptorSets,- module Graphics.Vulkan.Types.Enum.VkDescriptorPoolCreateFlags,- module Graphics.Vulkan.Types.Enum.VkDescriptorSetLayoutCreateFlags,- module Graphics.Vulkan.Types.Enum.VkDescriptorType,- module Graphics.Vulkan.Types.Struct.VkCopyDescriptorSet,- module Graphics.Vulkan.Types.Struct.VkDescriptorBufferInfo,- module Graphics.Vulkan.Types.Struct.VkDescriptorImageInfo,- module Graphics.Vulkan.Types.Struct.VkDescriptorPoolCreateInfo,- module Graphics.Vulkan.Types.Struct.VkDescriptorPoolSize,- module Graphics.Vulkan.Types.Struct.VkDescriptorSetAllocateInfo,- module Graphics.Vulkan.Types.Struct.VkDescriptorSetLayoutBinding,- module Graphics.Vulkan.Types.Struct.VkDescriptorSetLayoutCreateInfo,- module Graphics.Vulkan.Types.Struct.VkWriteDescriptorSet,- -- ** Pass commands- vkCreateFramebuffer, vkDestroyFramebuffer, vkCreateRenderPass,- vkDestroyRenderPass, vkGetRenderAreaGranularity,- module Graphics.Vulkan.Types.Enum.VkAccessFlags,- module Graphics.Vulkan.Types.Enum.VkAttachmentDescriptionFlags,- module Graphics.Vulkan.Types.Enum.VkAttachmentLoadOp,- module Graphics.Vulkan.Types.Enum.VkAttachmentStoreOp,- module Graphics.Vulkan.Types.Enum.VkDependencyFlags,- module Graphics.Vulkan.Types.Enum.VkPipelineBindPoint,- module Graphics.Vulkan.Types.Enum.VkSubpassDescriptionFlags,- module Graphics.Vulkan.Types.Struct.VkAttachmentDescription,- module Graphics.Vulkan.Types.Struct.VkAttachmentReference,- module Graphics.Vulkan.Types.Struct.VkFramebufferCreateInfo,- module Graphics.Vulkan.Types.Struct.VkRenderPassCreateInfo,- module Graphics.Vulkan.Types.Struct.VkSubpassDependency,- module Graphics.Vulkan.Types.Struct.VkSubpassDescription,- -- ** Command pool commands- vkCreateCommandPool, vkDestroyCommandPool, vkResetCommandPool,- module Graphics.Vulkan.Types.Enum.VkCommandPoolCreateFlags,- module Graphics.Vulkan.Types.Enum.VkCommandPoolResetFlags,- module Graphics.Vulkan.Types.Struct.VkCommandPoolCreateInfo,- -- ** Command buffer commands- vkAllocateCommandBuffers, vkFreeCommandBuffers,- vkBeginCommandBuffer, vkEndCommandBuffer, vkResetCommandBuffer,- module Graphics.Vulkan.Types.Enum.VkCommandBufferLevel,- module Graphics.Vulkan.Types.Enum.VkCommandBufferResetFlags,- module Graphics.Vulkan.Types.Enum.VkCommandBufferUsageFlags,- module Graphics.Vulkan.Types.Enum.VkQueryControlFlags,- module Graphics.Vulkan.Types.Struct.VkCommandBufferAllocateInfo,- module Graphics.Vulkan.Types.Struct.VkCommandBufferBeginInfo,- module Graphics.Vulkan.Types.Struct.VkCommandBufferInheritanceInfo,- -- ** Command buffer building commands- vkCmdBindPipeline, vkCmdSetViewport, vkCmdSetScissor,- vkCmdSetLineWidth, vkCmdSetDepthBias, vkCmdSetBlendConstants,- vkCmdSetDepthBounds, vkCmdSetStencilCompareMask,- vkCmdSetStencilWriteMask, vkCmdSetStencilReference,- vkCmdBindDescriptorSets, vkCmdBindIndexBuffer,- vkCmdBindVertexBuffers, vkCmdDraw, vkCmdDrawIndexed,- vkCmdDrawIndirect, vkCmdDrawIndexedIndirect, vkCmdDispatch,- vkCmdDispatchIndirect, vkCmdCopyBuffer, vkCmdCopyImage,- vkCmdBlitImage, vkCmdCopyBufferToImage, vkCmdCopyImageToBuffer,- vkCmdUpdateBuffer, vkCmdFillBuffer, vkCmdClearColorImage,- vkCmdClearDepthStencilImage, vkCmdClearAttachments,- vkCmdResolveImage, vkCmdSetEvent, vkCmdResetEvent, vkCmdWaitEvents,- vkCmdPipelineBarrier, vkCmdBeginQuery, vkCmdEndQuery,- vkCmdResetQueryPool, vkCmdWriteTimestamp,- vkCmdCopyQueryPoolResults, vkCmdPushConstants,- vkCmdBeginRenderPass, vkCmdNextSubpass, vkCmdEndRenderPass,- vkCmdExecuteCommands,- module Graphics.Vulkan.Types.Enum.VkIndexType,- module Graphics.Vulkan.Types.Enum.VkStencilFaceFlags,- module Graphics.Vulkan.Types.Enum.VkSubpassContents,- module Graphics.Vulkan.Types.Struct.VkBufferCopy,- module Graphics.Vulkan.Types.Struct.VkBufferImageCopy,- module Graphics.Vulkan.Types.Struct.VkBufferMemoryBarrier,- module Graphics.Vulkan.Types.Struct.VkClearAttachment,- module Graphics.Vulkan.Types.Struct.VkClearColorValue,- module Graphics.Vulkan.Types.Struct.VkClearDepthStencilValue,- module Graphics.Vulkan.Types.Struct.VkClearRect,- module Graphics.Vulkan.Types.Struct.VkClearValue,- module Graphics.Vulkan.Types.Struct.VkImageBlit,- module Graphics.Vulkan.Types.Struct.VkImageCopy,- module Graphics.Vulkan.Types.Struct.VkImageMemoryBarrier,- module Graphics.Vulkan.Types.Struct.VkImageResolve,- module Graphics.Vulkan.Types.Struct.VkImageSubresourceLayers,- module Graphics.Vulkan.Types.Struct.VkMemoryBarrier,- module Graphics.Vulkan.Types.Struct.VkRenderPassBeginInfo,- -- ** Types not directly used by the API. Include e.g. structs that are not parameter types of commands, but still defined by the API.- module Graphics.Vulkan.Types.Struct.VkDispatchIndirectCommand,- module Graphics.Vulkan.Types.Struct.VkDrawIndexedIndirectCommand,- module Graphics.Vulkan.Types.Struct.VkDrawIndirectCommand,- module Graphics.Vulkan.Types.Enum.VkObjectType)- where-import Graphics.Vulkan.Constants- (VK_ATTACHMENT_UNUSED,- pattern VK_ATTACHMENT_UNUSED,- VK_FALSE,- pattern VK_FALSE,- pattern VK_LOD_CLAMP_NONE,- VK_QUEUE_FAMILY_IGNORED,- pattern VK_QUEUE_FAMILY_IGNORED,- VK_REMAINING_ARRAY_LAYERS,- pattern VK_REMAINING_ARRAY_LAYERS,- VK_REMAINING_MIP_LEVELS,- pattern VK_REMAINING_MIP_LEVELS,- VK_SUBPASS_EXTERNAL,- pattern VK_SUBPASS_EXTERNAL,- VK_TRUE,- pattern VK_TRUE,- VK_WHOLE_SIZE,- pattern VK_WHOLE_SIZE)-import Graphics.Vulkan.Marshal-import Graphics.Vulkan.Types.BaseTypes-import Graphics.Vulkan.Types.Bitmasks-import Graphics.Vulkan.Types.Enum.VkAccessFlags-import Graphics.Vulkan.Types.Enum.VkAttachmentDescriptionFlags-import Graphics.Vulkan.Types.Enum.VkAttachmentLoadOp-import Graphics.Vulkan.Types.Enum.VkAttachmentStoreOp-import Graphics.Vulkan.Types.Enum.VkBlendFactor-import Graphics.Vulkan.Types.Enum.VkBlendOp-import Graphics.Vulkan.Types.Enum.VkBorderColor-import Graphics.Vulkan.Types.Enum.VkBufferCreateFlags-import Graphics.Vulkan.Types.Enum.VkBufferUsageFlags-import Graphics.Vulkan.Types.Enum.VkColorComponentFlags-import Graphics.Vulkan.Types.Enum.VkCommandBufferLevel-import Graphics.Vulkan.Types.Enum.VkCommandBufferResetFlags-import Graphics.Vulkan.Types.Enum.VkCommandBufferUsageFlags-import Graphics.Vulkan.Types.Enum.VkCommandPoolCreateFlags-import Graphics.Vulkan.Types.Enum.VkCommandPoolResetFlags-import Graphics.Vulkan.Types.Enum.VkCompareOp-import Graphics.Vulkan.Types.Enum.VkComponentSwizzle-import Graphics.Vulkan.Types.Enum.VkCullModeFlags-import Graphics.Vulkan.Types.Enum.VkDependencyFlags-import Graphics.Vulkan.Types.Enum.VkDescriptorPoolCreateFlags-import Graphics.Vulkan.Types.Enum.VkDescriptorSetLayoutCreateFlags-import Graphics.Vulkan.Types.Enum.VkDescriptorType-import Graphics.Vulkan.Types.Enum.VkDynamicState-import Graphics.Vulkan.Types.Enum.VkFenceCreateFlags-import Graphics.Vulkan.Types.Enum.VkFilter-import Graphics.Vulkan.Types.Enum.VkFormat-import Graphics.Vulkan.Types.Enum.VkFormatFeatureFlags-import Graphics.Vulkan.Types.Enum.VkFrontFace-import Graphics.Vulkan.Types.Enum.VkImageAspectFlags-import Graphics.Vulkan.Types.Enum.VkImageCreateFlags-import Graphics.Vulkan.Types.Enum.VkImageLayout-import Graphics.Vulkan.Types.Enum.VkImageTiling-import Graphics.Vulkan.Types.Enum.VkImageType-import Graphics.Vulkan.Types.Enum.VkImageUsageFlags-import Graphics.Vulkan.Types.Enum.VkImageViewType-import Graphics.Vulkan.Types.Enum.VkIndexType-import Graphics.Vulkan.Types.Enum.VkInternalAllocationType-import Graphics.Vulkan.Types.Enum.VkLogicOp-import Graphics.Vulkan.Types.Enum.VkMemoryHeapFlags-import Graphics.Vulkan.Types.Enum.VkMemoryPropertyFlags-import Graphics.Vulkan.Types.Enum.VkObjectType-import Graphics.Vulkan.Types.Enum.VkPhysicalDeviceType-import Graphics.Vulkan.Types.Enum.VkPipelineBindPoint-import Graphics.Vulkan.Types.Enum.VkPipelineCacheHeaderVersion-import Graphics.Vulkan.Types.Enum.VkPipelineCreateFlags-import Graphics.Vulkan.Types.Enum.VkPipelineStageFlags-import Graphics.Vulkan.Types.Enum.VkPolygonMode-import Graphics.Vulkan.Types.Enum.VkPrimitiveTopology-import Graphics.Vulkan.Types.Enum.VkQueryControlFlags-import Graphics.Vulkan.Types.Enum.VkQueryPipelineStatisticFlags-import Graphics.Vulkan.Types.Enum.VkQueryResultFlags-import Graphics.Vulkan.Types.Enum.VkQueryType-import Graphics.Vulkan.Types.Enum.VkQueueFlags-import Graphics.Vulkan.Types.Enum.VkResult-import Graphics.Vulkan.Types.Enum.VkSampleCountFlags-import Graphics.Vulkan.Types.Enum.VkSamplerAddressMode-import Graphics.Vulkan.Types.Enum.VkSamplerMipmapMode-import Graphics.Vulkan.Types.Enum.VkShaderStageFlags-import Graphics.Vulkan.Types.Enum.VkSharingMode-import Graphics.Vulkan.Types.Enum.VkSparseImageFormatFlags-import Graphics.Vulkan.Types.Enum.VkSparseMemoryBindFlags-import Graphics.Vulkan.Types.Enum.VkStencilFaceFlags-import Graphics.Vulkan.Types.Enum.VkStencilOp-import Graphics.Vulkan.Types.Enum.VkStructureType-import Graphics.Vulkan.Types.Enum.VkSubpassContents-import Graphics.Vulkan.Types.Enum.VkSubpassDescriptionFlags-import Graphics.Vulkan.Types.Enum.VkSystemAllocationScope-import Graphics.Vulkan.Types.Enum.VkVertexInputRate-import Graphics.Vulkan.Types.Funcpointers-import Graphics.Vulkan.Types.Handles-import Graphics.Vulkan.Types.Struct.VkAllocationCallbacks-import Graphics.Vulkan.Types.Struct.VkApplicationInfo-import Graphics.Vulkan.Types.Struct.VkAttachmentDescription-import Graphics.Vulkan.Types.Struct.VkAttachmentReference-import Graphics.Vulkan.Types.Struct.VkBindSparseInfo-import Graphics.Vulkan.Types.Struct.VkBufferCopy-import Graphics.Vulkan.Types.Struct.VkBufferCreateInfo-import Graphics.Vulkan.Types.Struct.VkBufferImageCopy-import Graphics.Vulkan.Types.Struct.VkBufferMemoryBarrier-import Graphics.Vulkan.Types.Struct.VkBufferViewCreateInfo-import Graphics.Vulkan.Types.Struct.VkClearAttachment-import Graphics.Vulkan.Types.Struct.VkClearColorValue-import Graphics.Vulkan.Types.Struct.VkClearDepthStencilValue-import Graphics.Vulkan.Types.Struct.VkClearRect-import Graphics.Vulkan.Types.Struct.VkClearValue-import Graphics.Vulkan.Types.Struct.VkCommandBufferAllocateInfo-import Graphics.Vulkan.Types.Struct.VkCommandBufferBeginInfo-import Graphics.Vulkan.Types.Struct.VkCommandBufferInheritanceInfo-import Graphics.Vulkan.Types.Struct.VkCommandPoolCreateInfo-import Graphics.Vulkan.Types.Struct.VkComponentMapping-import Graphics.Vulkan.Types.Struct.VkComputePipelineCreateInfo-import Graphics.Vulkan.Types.Struct.VkCopyDescriptorSet-import Graphics.Vulkan.Types.Struct.VkDescriptorBufferInfo-import Graphics.Vulkan.Types.Struct.VkDescriptorImageInfo-import Graphics.Vulkan.Types.Struct.VkDescriptorPoolCreateInfo-import Graphics.Vulkan.Types.Struct.VkDescriptorPoolSize-import Graphics.Vulkan.Types.Struct.VkDescriptorSetAllocateInfo-import Graphics.Vulkan.Types.Struct.VkDescriptorSetLayoutBinding-import Graphics.Vulkan.Types.Struct.VkDescriptorSetLayoutCreateInfo-import Graphics.Vulkan.Types.Struct.VkDeviceCreateInfo-import Graphics.Vulkan.Types.Struct.VkDeviceQueueCreateInfo-import Graphics.Vulkan.Types.Struct.VkDispatchIndirectCommand-import Graphics.Vulkan.Types.Struct.VkDrawIndexedIndirectCommand-import Graphics.Vulkan.Types.Struct.VkDrawIndirectCommand-import Graphics.Vulkan.Types.Struct.VkEventCreateInfo-import Graphics.Vulkan.Types.Struct.VkExtensionProperties-import Graphics.Vulkan.Types.Struct.VkExtent2D-import Graphics.Vulkan.Types.Struct.VkExtent3D-import Graphics.Vulkan.Types.Struct.VkFenceCreateInfo-import Graphics.Vulkan.Types.Struct.VkFormatProperties-import Graphics.Vulkan.Types.Struct.VkFramebufferCreateInfo-import Graphics.Vulkan.Types.Struct.VkGraphicsPipelineCreateInfo-import Graphics.Vulkan.Types.Struct.VkImageBlit-import Graphics.Vulkan.Types.Struct.VkImageCopy-import Graphics.Vulkan.Types.Struct.VkImageCreateInfo-import Graphics.Vulkan.Types.Struct.VkImageFormatProperties-import Graphics.Vulkan.Types.Struct.VkImageMemoryBarrier-import Graphics.Vulkan.Types.Struct.VkImageResolve-import Graphics.Vulkan.Types.Struct.VkImageSubresource-import Graphics.Vulkan.Types.Struct.VkImageSubresourceLayers-import Graphics.Vulkan.Types.Struct.VkImageSubresourceRange-import Graphics.Vulkan.Types.Struct.VkImageViewCreateInfo-import Graphics.Vulkan.Types.Struct.VkInstanceCreateInfo-import Graphics.Vulkan.Types.Struct.VkLayerProperties-import Graphics.Vulkan.Types.Struct.VkMappedMemoryRange-import Graphics.Vulkan.Types.Struct.VkMemoryAllocateInfo-import Graphics.Vulkan.Types.Struct.VkMemoryBarrier-import Graphics.Vulkan.Types.Struct.VkMemoryHeap-import Graphics.Vulkan.Types.Struct.VkMemoryRequirements-import Graphics.Vulkan.Types.Struct.VkMemoryType-import Graphics.Vulkan.Types.Struct.VkOffset2D-import Graphics.Vulkan.Types.Struct.VkOffset3D-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceFeatures-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceLimits-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceMemoryProperties-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseProperties-import Graphics.Vulkan.Types.Struct.VkPipelineCacheCreateInfo-import Graphics.Vulkan.Types.Struct.VkPipelineColorBlendAttachmentState-import Graphics.Vulkan.Types.Struct.VkPipelineColorBlendStateCreateInfo-import Graphics.Vulkan.Types.Struct.VkPipelineDepthStencilStateCreateInfo-import Graphics.Vulkan.Types.Struct.VkPipelineDynamicStateCreateInfo-import Graphics.Vulkan.Types.Struct.VkPipelineInputAssemblyStateCreateInfo-import Graphics.Vulkan.Types.Struct.VkPipelineLayoutCreateInfo-import Graphics.Vulkan.Types.Struct.VkPipelineMultisampleStateCreateInfo-import Graphics.Vulkan.Types.Struct.VkPipelineRasterizationStateCreateInfo-import Graphics.Vulkan.Types.Struct.VkPipelineShaderStageCreateInfo-import Graphics.Vulkan.Types.Struct.VkPipelineTessellationStateCreateInfo-import Graphics.Vulkan.Types.Struct.VkPipelineVertexInputStateCreateInfo-import Graphics.Vulkan.Types.Struct.VkPipelineViewportStateCreateInfo-import Graphics.Vulkan.Types.Struct.VkPushConstantRange-import Graphics.Vulkan.Types.Struct.VkQueryPoolCreateInfo-import Graphics.Vulkan.Types.Struct.VkQueueFamilyProperties-import Graphics.Vulkan.Types.Struct.VkRect2D-import Graphics.Vulkan.Types.Struct.VkRenderPassBeginInfo-import Graphics.Vulkan.Types.Struct.VkRenderPassCreateInfo-import Graphics.Vulkan.Types.Struct.VkSamplerCreateInfo-import Graphics.Vulkan.Types.Struct.VkSemaphoreCreateInfo-import Graphics.Vulkan.Types.Struct.VkShaderModuleCreateInfo-import Graphics.Vulkan.Types.Struct.VkSparseBufferMemoryBindInfo-import Graphics.Vulkan.Types.Struct.VkSparseImageFormatProperties-import Graphics.Vulkan.Types.Struct.VkSparseImageMemoryBind-import Graphics.Vulkan.Types.Struct.VkSparseImageMemoryBindInfo-import Graphics.Vulkan.Types.Struct.VkSparseImageMemoryRequirements-import Graphics.Vulkan.Types.Struct.VkSparseImageOpaqueMemoryBindInfo-import Graphics.Vulkan.Types.Struct.VkSparseMemoryBind-import Graphics.Vulkan.Types.Struct.VkSpecializationInfo-import Graphics.Vulkan.Types.Struct.VkSpecializationMapEntry-import Graphics.Vulkan.Types.Struct.VkStencilOpState-import Graphics.Vulkan.Types.Struct.VkSubmitInfo-import Graphics.Vulkan.Types.Struct.VkSubpassDependency-import Graphics.Vulkan.Types.Struct.VkSubpassDescription-import Graphics.Vulkan.Types.Struct.VkSubresourceLayout-import Graphics.Vulkan.Types.Struct.VkVertexInputAttributeDescription-import Graphics.Vulkan.Types.Struct.VkVertexInputBindingDescription-import Graphics.Vulkan.Types.Struct.VkViewport-import Graphics.Vulkan.Types.Struct.VkWriteDescriptorSet---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_INITIALIZATION_FAILED', 'VK_ERROR_LAYER_NOT_PRESENT', 'VK_ERROR_EXTENSION_NOT_PRESENT', 'VK_ERROR_INCOMPATIBLE_DRIVER'.------ > VkResult vkCreateInstance--- > ( const VkInstanceCreateInfo* pCreateInfo--- > , const VkAllocationCallbacks* pAllocator--- > , VkInstance* pInstance--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCreateInstance.html vkCreateInstance registry at www.khronos.org>-foreign import ccall unsafe "vkCreateInstance" vkCreateInstance ::- Ptr VkInstanceCreateInfo -- ^ pCreateInfo- ->- Ptr VkAllocationCallbacks -- ^ pAllocator- -> Ptr VkInstance -- ^ pInstance- -> IO VkResult---- | > () vkDestroyInstance--- > ( VkInstance instance--- > , const VkAllocationCallbacks* pAllocator--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkDestroyInstance.html vkDestroyInstance registry at www.khronos.org>-foreign import ccall unsafe "vkDestroyInstance" vkDestroyInstance- :: VkInstance -- ^ instance- -> Ptr VkAllocationCallbacks -- ^ pAllocator- -> IO ()---- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_INITIALIZATION_FAILED'.------ > VkResult vkEnumeratePhysicalDevices--- > ( VkInstance instance--- > , uint32_t* pPhysicalDeviceCount--- > , VkPhysicalDevice* pPhysicalDevices--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkEnumeratePhysicalDevices.html vkEnumeratePhysicalDevices registry at www.khronos.org>-foreign import ccall unsafe "vkEnumeratePhysicalDevices"- vkEnumeratePhysicalDevices ::- VkInstance -- ^ instance- -> Ptr Word32 -- ^ pPhysicalDeviceCount- -> Ptr VkPhysicalDevice -- ^ pPhysicalDevices- -> IO VkResult---- | > () vkGetPhysicalDeviceFeatures--- > ( VkPhysicalDevice physicalDevice--- > , VkPhysicalDeviceFeatures* pFeatures--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetPhysicalDeviceFeatures.html vkGetPhysicalDeviceFeatures registry at www.khronos.org>-foreign import ccall unsafe "vkGetPhysicalDeviceFeatures"- vkGetPhysicalDeviceFeatures ::- VkPhysicalDevice -- ^ physicalDevice- -> Ptr VkPhysicalDeviceFeatures -- ^ pFeatures- -> IO ()---- | > () vkGetPhysicalDeviceFormatProperties--- > ( VkPhysicalDevice physicalDevice--- > , VkFormat format--- > , VkFormatProperties* pFormatProperties--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetPhysicalDeviceFormatProperties.html vkGetPhysicalDeviceFormatProperties registry at www.khronos.org>-foreign import ccall unsafe "vkGetPhysicalDeviceFormatProperties"- vkGetPhysicalDeviceFormatProperties ::- VkPhysicalDevice -- ^ physicalDevice- -> VkFormat -- ^ format- -> Ptr VkFormatProperties -- ^ pFormatProperties- -> IO ()---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_FORMAT_NOT_SUPPORTED'.------ > VkResult vkGetPhysicalDeviceImageFormatProperties--- > ( VkPhysicalDevice physicalDevice--- > , VkFormat format--- > , VkImageType type--- > , VkImageTiling tiling--- > , VkImageUsageFlags usage--- > , VkImageCreateFlags flags--- > , VkImageFormatProperties* pImageFormatProperties--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetPhysicalDeviceImageFormatProperties.html vkGetPhysicalDeviceImageFormatProperties registry at www.khronos.org>-foreign import ccall unsafe- "vkGetPhysicalDeviceImageFormatProperties"- vkGetPhysicalDeviceImageFormatProperties ::- VkPhysicalDevice -- ^ physicalDevice- ->- VkFormat -- ^ format- ->- VkImageType -- ^ type- ->- VkImageTiling -- ^ tiling- ->- VkImageUsageFlags -- ^ usage- ->- VkImageCreateFlags -- ^ flags- -> Ptr VkImageFormatProperties -- ^ pImageFormatProperties- -> IO VkResult---- | > () vkGetPhysicalDeviceProperties--- > ( VkPhysicalDevice physicalDevice--- > , VkPhysicalDeviceProperties* pProperties--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetPhysicalDeviceProperties.html vkGetPhysicalDeviceProperties registry at www.khronos.org>-foreign import ccall unsafe "vkGetPhysicalDeviceProperties"- vkGetPhysicalDeviceProperties ::- VkPhysicalDevice -- ^ physicalDevice- -> Ptr VkPhysicalDeviceProperties -- ^ pProperties- -> IO ()---- | > () vkGetPhysicalDeviceQueueFamilyProperties--- > ( VkPhysicalDevice physicalDevice--- > , uint32_t* pQueueFamilyPropertyCount--- > , VkQueueFamilyProperties* pQueueFamilyProperties--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetPhysicalDeviceQueueFamilyProperties.html vkGetPhysicalDeviceQueueFamilyProperties registry at www.khronos.org>-foreign import ccall unsafe- "vkGetPhysicalDeviceQueueFamilyProperties"- vkGetPhysicalDeviceQueueFamilyProperties ::- VkPhysicalDevice -- ^ physicalDevice- ->- Ptr Word32 -- ^ pQueueFamilyPropertyCount- -> Ptr VkQueueFamilyProperties -- ^ pQueueFamilyProperties- -> IO ()---- | > () vkGetPhysicalDeviceMemoryProperties--- > ( VkPhysicalDevice physicalDevice--- > , VkPhysicalDeviceMemoryProperties* pMemoryProperties--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetPhysicalDeviceMemoryProperties.html vkGetPhysicalDeviceMemoryProperties registry at www.khronos.org>-foreign import ccall unsafe "vkGetPhysicalDeviceMemoryProperties"- vkGetPhysicalDeviceMemoryProperties ::- VkPhysicalDevice -- ^ physicalDevice- -> Ptr VkPhysicalDeviceMemoryProperties -- ^ pMemoryProperties- -> IO ()---- | > PFN_vkVoidFunction vkGetInstanceProcAddr--- > ( VkInstance instance--- > , const char* pName--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetInstanceProcAddr.html vkGetInstanceProcAddr registry at www.khronos.org>-foreign import ccall unsafe "vkGetInstanceProcAddr"- vkGetInstanceProcAddr ::- VkInstance -- ^ instance- -> CString -- ^ pName- -> IO PFN_vkVoidFunction---- | > PFN_vkVoidFunction vkGetDeviceProcAddr--- > ( VkDevice device--- > , const char* pName--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetDeviceProcAddr.html vkGetDeviceProcAddr registry at www.khronos.org>-foreign import ccall unsafe "vkGetDeviceProcAddr"- vkGetDeviceProcAddr :: VkDevice -- ^ device- -> CString -- ^ pName- -> IO PFN_vkVoidFunction---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_INITIALIZATION_FAILED', 'VK_ERROR_EXTENSION_NOT_PRESENT', 'VK_ERROR_FEATURE_NOT_PRESENT', 'VK_ERROR_TOO_MANY_OBJECTS', 'VK_ERROR_DEVICE_LOST'.------ > VkResult vkCreateDevice--- > ( VkPhysicalDevice physicalDevice--- > , const VkDeviceCreateInfo* pCreateInfo--- > , const VkAllocationCallbacks* pAllocator--- > , VkDevice* pDevice--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCreateDevice.html vkCreateDevice registry at www.khronos.org>-foreign import ccall unsafe "vkCreateDevice" vkCreateDevice ::- VkPhysicalDevice -- ^ physicalDevice- ->- Ptr VkDeviceCreateInfo -- ^ pCreateInfo- ->- Ptr VkAllocationCallbacks -- ^ pAllocator- -> Ptr VkDevice -- ^ pDevice- -> IO VkResult---- | > () vkDestroyDevice--- > ( VkDevice device--- > , const VkAllocationCallbacks* pAllocator--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkDestroyDevice.html vkDestroyDevice registry at www.khronos.org>-foreign import ccall unsafe "vkDestroyDevice" vkDestroyDevice ::- VkDevice -- ^ device- -> Ptr VkAllocationCallbacks -- ^ pAllocator- -> IO ()---- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_LAYER_NOT_PRESENT'.------ > VkResult vkEnumerateInstanceExtensionProperties--- > ( const char* pLayerName--- > , uint32_t* pPropertyCount--- > , VkExtensionProperties* pProperties--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkEnumerateInstanceExtensionProperties.html vkEnumerateInstanceExtensionProperties registry at www.khronos.org>-foreign import ccall unsafe- "vkEnumerateInstanceExtensionProperties"- vkEnumerateInstanceExtensionProperties ::- CString -- ^ pLayerName- -> Ptr Word32 -- ^ pPropertyCount- -> Ptr VkExtensionProperties -- ^ pProperties- -> IO VkResult---- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_LAYER_NOT_PRESENT'.------ > VkResult vkEnumerateDeviceExtensionProperties--- > ( VkPhysicalDevice physicalDevice--- > , const char* pLayerName--- > , uint32_t* pPropertyCount--- > , VkExtensionProperties* pProperties--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkEnumerateDeviceExtensionProperties.html vkEnumerateDeviceExtensionProperties registry at www.khronos.org>-foreign import ccall unsafe "vkEnumerateDeviceExtensionProperties"- vkEnumerateDeviceExtensionProperties ::- VkPhysicalDevice -- ^ physicalDevice- ->- CString -- ^ pLayerName- -> Ptr Word32 -- ^ pPropertyCount- -> Ptr VkExtensionProperties -- ^ pProperties- -> IO VkResult---- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.------ > VkResult vkEnumerateInstanceLayerProperties--- > ( uint32_t* pPropertyCount--- > , VkLayerProperties* pProperties--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkEnumerateInstanceLayerProperties.html vkEnumerateInstanceLayerProperties registry at www.khronos.org>-foreign import ccall unsafe "vkEnumerateInstanceLayerProperties"- vkEnumerateInstanceLayerProperties ::- Ptr Word32 -- ^ pPropertyCount- -> Ptr VkLayerProperties -- ^ pProperties- -> IO VkResult---- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.------ > VkResult vkEnumerateDeviceLayerProperties--- > ( VkPhysicalDevice physicalDevice--- > , uint32_t* pPropertyCount--- > , VkLayerProperties* pProperties--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkEnumerateDeviceLayerProperties.html vkEnumerateDeviceLayerProperties registry at www.khronos.org>-foreign import ccall unsafe "vkEnumerateDeviceLayerProperties"- vkEnumerateDeviceLayerProperties ::- VkPhysicalDevice -- ^ physicalDevice- ->- Ptr Word32 -- ^ pPropertyCount- -> Ptr VkLayerProperties -- ^ pProperties- -> IO VkResult---- | > () vkGetDeviceQueue--- > ( VkDevice device--- > , uint32_t queueFamilyIndex--- > , uint32_t queueIndex--- > , VkQueue* pQueue--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetDeviceQueue.html vkGetDeviceQueue registry at www.khronos.org>-foreign import ccall unsafe "vkGetDeviceQueue" vkGetDeviceQueue ::- VkDevice -- ^ device- -> Word32 -- ^ queueFamilyIndex- -> Word32 -- ^ queueIndex- -> Ptr VkQueue -- ^ pQueue- -> IO ()---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_DEVICE_LOST'.------ > VkResult vkQueueSubmit--- > ( VkQueue queue--- > , uint32_t submitCount--- > , const VkSubmitInfo* pSubmits--- > , VkFence fence--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkQueueSubmit.html vkQueueSubmit registry at www.khronos.org>-foreign import ccall unsafe "vkQueueSubmit" vkQueueSubmit ::- VkQueue -- ^ queue- -> Word32 -- ^ submitCount- -> Ptr VkSubmitInfo -- ^ pSubmits- -> VkFence -- ^ fence- -> IO VkResult---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_DEVICE_LOST'.------ > VkResult vkQueueWaitIdle--- > ( VkQueue queue--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkQueueWaitIdle.html vkQueueWaitIdle registry at www.khronos.org>-foreign import ccall unsafe "vkQueueWaitIdle" vkQueueWaitIdle ::- VkQueue -- ^ queue- -> IO VkResult---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_DEVICE_LOST'.------ > VkResult vkDeviceWaitIdle--- > ( VkDevice device--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkDeviceWaitIdle.html vkDeviceWaitIdle registry at www.khronos.org>-foreign import ccall unsafe "vkDeviceWaitIdle" vkDeviceWaitIdle ::- VkDevice -- ^ device- -> IO VkResult---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_TOO_MANY_OBJECTS', 'VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR'.------ > VkResult vkAllocateMemory--- > ( VkDevice device--- > , const VkMemoryAllocateInfo* pAllocateInfo--- > , const VkAllocationCallbacks* pAllocator--- > , VkDeviceMemory* pMemory--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkAllocateMemory.html vkAllocateMemory registry at www.khronos.org>-foreign import ccall unsafe "vkAllocateMemory" vkAllocateMemory ::- VkDevice -- ^ device- ->- Ptr VkMemoryAllocateInfo -- ^ pAllocateInfo- ->- Ptr VkAllocationCallbacks -- ^ pAllocator- -> Ptr VkDeviceMemory -- ^ pMemory- -> IO VkResult---- | > () vkFreeMemory--- > ( VkDevice device--- > , VkDeviceMemory memory--- > , const VkAllocationCallbacks* pAllocator--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkFreeMemory.html vkFreeMemory registry at www.khronos.org>-foreign import ccall unsafe "vkFreeMemory" vkFreeMemory ::- VkDevice -- ^ device- -> VkDeviceMemory -- ^ memory- -> Ptr VkAllocationCallbacks -- ^ pAllocator- -> IO ()---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_MEMORY_MAP_FAILED'.------ > VkResult vkMapMemory--- > ( VkDevice device--- > , VkDeviceMemory memory--- > , VkDeviceSize offset--- > , VkDeviceSize size--- > , VkMemoryMapFlags flags--- > , void** ppData--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkMapMemory.html vkMapMemory registry at www.khronos.org>-foreign import ccall unsafe "vkMapMemory" vkMapMemory ::- VkDevice -- ^ device- ->- VkDeviceMemory -- ^ memory- ->- VkDeviceSize -- ^ offset- ->- VkDeviceSize -- ^ size- -> VkMemoryMapFlags -- ^ flags- -> Ptr (Ptr Void) -- ^ ppData- -> IO VkResult---- | > () vkUnmapMemory--- > ( VkDevice device--- > , VkDeviceMemory memory--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkUnmapMemory.html vkUnmapMemory registry at www.khronos.org>-foreign import ccall unsafe "vkUnmapMemory" vkUnmapMemory ::- VkDevice -- ^ device- -> VkDeviceMemory -- ^ memory- -> IO ()---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.------ > VkResult vkFlushMappedMemoryRanges--- > ( VkDevice device--- > , uint32_t memoryRangeCount--- > , const VkMappedMemoryRange* pMemoryRanges--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkFlushMappedMemoryRanges.html vkFlushMappedMemoryRanges registry at www.khronos.org>-foreign import ccall unsafe "vkFlushMappedMemoryRanges"- vkFlushMappedMemoryRanges ::- VkDevice -- ^ device- -> Word32 -- ^ memoryRangeCount- -> Ptr VkMappedMemoryRange -- ^ pMemoryRanges- -> IO VkResult---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.------ > VkResult vkInvalidateMappedMemoryRanges--- > ( VkDevice device--- > , uint32_t memoryRangeCount--- > , const VkMappedMemoryRange* pMemoryRanges--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkInvalidateMappedMemoryRanges.html vkInvalidateMappedMemoryRanges registry at www.khronos.org>-foreign import ccall unsafe "vkInvalidateMappedMemoryRanges"- vkInvalidateMappedMemoryRanges ::- VkDevice -- ^ device- -> Word32 -- ^ memoryRangeCount- -> Ptr VkMappedMemoryRange -- ^ pMemoryRanges- -> IO VkResult---- | > () vkGetDeviceMemoryCommitment--- > ( VkDevice device--- > , VkDeviceMemory memory--- > , VkDeviceSize* pCommittedMemoryInBytes--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetDeviceMemoryCommitment.html vkGetDeviceMemoryCommitment registry at www.khronos.org>-foreign import ccall unsafe "vkGetDeviceMemoryCommitment"- vkGetDeviceMemoryCommitment ::- VkDevice -- ^ device- -> VkDeviceMemory -- ^ memory- -> Ptr VkDeviceSize -- ^ pCommittedMemoryInBytes- -> IO ()---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.------ > VkResult vkBindBufferMemory--- > ( VkDevice device--- > , VkBuffer buffer--- > , VkDeviceMemory memory--- > , VkDeviceSize memoryOffset--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkBindBufferMemory.html vkBindBufferMemory registry at www.khronos.org>-foreign import ccall unsafe "vkBindBufferMemory" vkBindBufferMemory- ::- VkDevice -- ^ device- ->- VkBuffer -- ^ buffer- -> VkDeviceMemory -- ^ memory- -> VkDeviceSize -- ^ memoryOffset- -> IO VkResult---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.------ > VkResult vkBindImageMemory--- > ( VkDevice device--- > , VkImage image--- > , VkDeviceMemory memory--- > , VkDeviceSize memoryOffset--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkBindImageMemory.html vkBindImageMemory registry at www.khronos.org>-foreign import ccall unsafe "vkBindImageMemory" vkBindImageMemory- ::- VkDevice -- ^ device- ->- VkImage -- ^ image- -> VkDeviceMemory -- ^ memory- -> VkDeviceSize -- ^ memoryOffset- -> IO VkResult---- | > () vkGetBufferMemoryRequirements--- > ( VkDevice device--- > , VkBuffer buffer--- > , VkMemoryRequirements* pMemoryRequirements--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetBufferMemoryRequirements.html vkGetBufferMemoryRequirements registry at www.khronos.org>-foreign import ccall unsafe "vkGetBufferMemoryRequirements"- vkGetBufferMemoryRequirements ::- VkDevice -- ^ device- -> VkBuffer -- ^ buffer- -> Ptr VkMemoryRequirements -- ^ pMemoryRequirements- -> IO ()---- | > () vkGetImageMemoryRequirements--- > ( VkDevice device--- > , VkImage image--- > , VkMemoryRequirements* pMemoryRequirements--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetImageMemoryRequirements.html vkGetImageMemoryRequirements registry at www.khronos.org>-foreign import ccall unsafe "vkGetImageMemoryRequirements"- vkGetImageMemoryRequirements ::- VkDevice -- ^ device- -> VkImage -- ^ image- -> Ptr VkMemoryRequirements -- ^ pMemoryRequirements- -> IO ()---- | > () vkGetImageSparseMemoryRequirements--- > ( VkDevice device--- > , VkImage image--- > , uint32_t* pSparseMemoryRequirementCount--- > , VkSparseImageMemoryRequirements* pSparseMemoryRequirements--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetImageSparseMemoryRequirements.html vkGetImageSparseMemoryRequirements registry at www.khronos.org>-foreign import ccall unsafe "vkGetImageSparseMemoryRequirements"- vkGetImageSparseMemoryRequirements ::- VkDevice -- ^ device- ->- VkImage -- ^ image- ->- Ptr Word32 -- ^ pSparseMemoryRequirementCount- -> Ptr VkSparseImageMemoryRequirements -- ^ pSparseMemoryRequirements- -> IO ()---- | > () vkGetPhysicalDeviceSparseImageFormatProperties--- > ( VkPhysicalDevice physicalDevice--- > , VkFormat format--- > , VkImageType type--- > , VkSampleCountFlagBits samples--- > , VkImageUsageFlags usage--- > , VkImageTiling tiling--- > , uint32_t* pPropertyCount--- > , VkSparseImageFormatProperties* pProperties--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetPhysicalDeviceSparseImageFormatProperties.html vkGetPhysicalDeviceSparseImageFormatProperties registry at www.khronos.org>-foreign import ccall unsafe- "vkGetPhysicalDeviceSparseImageFormatProperties"- vkGetPhysicalDeviceSparseImageFormatProperties ::- VkPhysicalDevice -- ^ physicalDevice- ->- VkFormat -- ^ format- ->- VkImageType -- ^ type- ->- VkSampleCountFlagBits -- ^ samples- ->- VkImageUsageFlags -- ^ usage- ->- VkImageTiling -- ^ tiling- ->- Ptr Word32 -- ^ pPropertyCount- -> Ptr VkSparseImageFormatProperties -- ^ pProperties- -> IO ()---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_DEVICE_LOST'.------ queues: 'sparse_binding'.------ > VkResult vkQueueBindSparse--- > ( VkQueue queue--- > , uint32_t bindInfoCount--- > , const VkBindSparseInfo* pBindInfo--- > , VkFence fence--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkQueueBindSparse.html vkQueueBindSparse registry at www.khronos.org>-foreign import ccall unsafe "vkQueueBindSparse" vkQueueBindSparse- ::- VkQueue -- ^ queue- -> Word32 -- ^ bindInfoCount- -> Ptr VkBindSparseInfo -- ^ pBindInfo- -> VkFence -- ^ fence- -> IO VkResult---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.------ > VkResult vkCreateFence--- > ( VkDevice device--- > , const VkFenceCreateInfo* pCreateInfo--- > , const VkAllocationCallbacks* pAllocator--- > , VkFence* pFence--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCreateFence.html vkCreateFence registry at www.khronos.org>-foreign import ccall unsafe "vkCreateFence" vkCreateFence ::- VkDevice -- ^ device- ->- Ptr VkFenceCreateInfo -- ^ pCreateInfo- ->- Ptr VkAllocationCallbacks -- ^ pAllocator- -> Ptr VkFence -- ^ pFence- -> IO VkResult---- | > () vkDestroyFence--- > ( VkDevice device--- > , VkFence fence--- > , const VkAllocationCallbacks* pAllocator--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkDestroyFence.html vkDestroyFence registry at www.khronos.org>-foreign import ccall unsafe "vkDestroyFence" vkDestroyFence ::- VkDevice -- ^ device- -> VkFence -- ^ fence- -> Ptr VkAllocationCallbacks -- ^ pAllocator- -> IO ()---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.------ > VkResult vkResetFences--- > ( VkDevice device--- > , uint32_t fenceCount--- > , const VkFence* pFences--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkResetFences.html vkResetFences registry at www.khronos.org>-foreign import ccall unsafe "vkResetFences" vkResetFences ::- VkDevice -- ^ device- -> Word32 -- ^ fenceCount- -> Ptr VkFence -- ^ pFences- -> IO VkResult---- | Success codes: 'VK_SUCCESS', 'VK_NOT_READY'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_DEVICE_LOST'.------ > VkResult vkGetFenceStatus--- > ( VkDevice device--- > , VkFence fence--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetFenceStatus.html vkGetFenceStatus registry at www.khronos.org>-foreign import ccall unsafe "vkGetFenceStatus" vkGetFenceStatus ::- VkDevice -- ^ device- -> VkFence -- ^ fence- -> IO VkResult---- | Success codes: 'VK_SUCCESS', 'VK_TIMEOUT'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_DEVICE_LOST'.------ > VkResult vkWaitForFences--- > ( VkDevice device--- > , uint32_t fenceCount--- > , const VkFence* pFences--- > , VkBool32 waitAll--- > , uint64_t timeout--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkWaitForFences.html vkWaitForFences registry at www.khronos.org>-foreign import ccall unsafe "vkWaitForFences" vkWaitForFences ::- VkDevice -- ^ device- ->- Word32 -- ^ fenceCount- -> Ptr VkFence -- ^ pFences- -> VkBool32 -- ^ waitAll- -> Word64 -- ^ timeout- -> IO VkResult---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.------ > VkResult vkCreateSemaphore--- > ( VkDevice device--- > , const VkSemaphoreCreateInfo* pCreateInfo--- > , const VkAllocationCallbacks* pAllocator--- > , VkSemaphore* pSemaphore--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCreateSemaphore.html vkCreateSemaphore registry at www.khronos.org>-foreign import ccall unsafe "vkCreateSemaphore" vkCreateSemaphore- ::- VkDevice -- ^ device- ->- Ptr VkSemaphoreCreateInfo -- ^ pCreateInfo- ->- Ptr VkAllocationCallbacks -- ^ pAllocator- -> Ptr VkSemaphore -- ^ pSemaphore- -> IO VkResult---- | > () vkDestroySemaphore--- > ( VkDevice device--- > , VkSemaphore semaphore--- > , const VkAllocationCallbacks* pAllocator--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkDestroySemaphore.html vkDestroySemaphore registry at www.khronos.org>-foreign import ccall unsafe "vkDestroySemaphore" vkDestroySemaphore- :: VkDevice -- ^ device- -> VkSemaphore -- ^ semaphore- -> Ptr VkAllocationCallbacks -- ^ pAllocator- -> IO ()---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.------ > VkResult vkCreateEvent--- > ( VkDevice device--- > , const VkEventCreateInfo* pCreateInfo--- > , const VkAllocationCallbacks* pAllocator--- > , VkEvent* pEvent--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCreateEvent.html vkCreateEvent registry at www.khronos.org>-foreign import ccall unsafe "vkCreateEvent" vkCreateEvent ::- VkDevice -- ^ device- ->- Ptr VkEventCreateInfo -- ^ pCreateInfo- ->- Ptr VkAllocationCallbacks -- ^ pAllocator- -> Ptr VkEvent -- ^ pEvent- -> IO VkResult---- | > () vkDestroyEvent--- > ( VkDevice device--- > , VkEvent event--- > , const VkAllocationCallbacks* pAllocator--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkDestroyEvent.html vkDestroyEvent registry at www.khronos.org>-foreign import ccall unsafe "vkDestroyEvent" vkDestroyEvent ::- VkDevice -- ^ device- -> VkEvent -- ^ event- -> Ptr VkAllocationCallbacks -- ^ pAllocator- -> IO ()---- | Success codes: 'VK_EVENT_SET', 'VK_EVENT_RESET'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_DEVICE_LOST'.------ > VkResult vkGetEventStatus--- > ( VkDevice device--- > , VkEvent event--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetEventStatus.html vkGetEventStatus registry at www.khronos.org>-foreign import ccall unsafe "vkGetEventStatus" vkGetEventStatus ::- VkDevice -- ^ device- -> VkEvent -- ^ event- -> IO VkResult---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.------ > VkResult vkSetEvent--- > ( VkDevice device--- > , VkEvent event--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkSetEvent.html vkSetEvent registry at www.khronos.org>-foreign import ccall unsafe "vkSetEvent" vkSetEvent ::- VkDevice -- ^ device- -> VkEvent -- ^ event- -> IO VkResult---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.------ > VkResult vkResetEvent--- > ( VkDevice device--- > , VkEvent event--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkResetEvent.html vkResetEvent registry at www.khronos.org>-foreign import ccall unsafe "vkResetEvent" vkResetEvent ::- VkDevice -- ^ device- -> VkEvent -- ^ event- -> IO VkResult---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.------ > VkResult vkCreateQueryPool--- > ( VkDevice device--- > , const VkQueryPoolCreateInfo* pCreateInfo--- > , const VkAllocationCallbacks* pAllocator--- > , VkQueryPool* pQueryPool--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCreateQueryPool.html vkCreateQueryPool registry at www.khronos.org>-foreign import ccall unsafe "vkCreateQueryPool" vkCreateQueryPool- ::- VkDevice -- ^ device- ->- Ptr VkQueryPoolCreateInfo -- ^ pCreateInfo- ->- Ptr VkAllocationCallbacks -- ^ pAllocator- -> Ptr VkQueryPool -- ^ pQueryPool- -> IO VkResult---- | > () vkDestroyQueryPool--- > ( VkDevice device--- > , VkQueryPool queryPool--- > , const VkAllocationCallbacks* pAllocator--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkDestroyQueryPool.html vkDestroyQueryPool registry at www.khronos.org>-foreign import ccall unsafe "vkDestroyQueryPool" vkDestroyQueryPool- :: VkDevice -- ^ device- -> VkQueryPool -- ^ queryPool- -> Ptr VkAllocationCallbacks -- ^ pAllocator- -> IO ()---- | Success codes: 'VK_SUCCESS', 'VK_NOT_READY'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_DEVICE_LOST'.------ > VkResult vkGetQueryPoolResults--- > ( VkDevice device--- > , VkQueryPool queryPool--- > , uint32_t firstQuery--- > , uint32_t queryCount--- > , size_t dataSize--- > , void* pData--- > , VkDeviceSize stride--- > , VkQueryResultFlags flags--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetQueryPoolResults.html vkGetQueryPoolResults registry at www.khronos.org>-foreign import ccall unsafe "vkGetQueryPoolResults"- vkGetQueryPoolResults ::- VkDevice -- ^ device- ->- VkQueryPool -- ^ queryPool- ->- Word32 -- ^ firstQuery- ->- Word32 -- ^ queryCount- ->- CSize -- ^ dataSize- ->- Ptr Void -- ^ pData- -> VkDeviceSize -- ^ stride- -> VkQueryResultFlags -- ^ flags- -> IO VkResult---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.------ > VkResult vkCreateBuffer--- > ( VkDevice device--- > , const VkBufferCreateInfo* pCreateInfo--- > , const VkAllocationCallbacks* pAllocator--- > , VkBuffer* pBuffer--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCreateBuffer.html vkCreateBuffer registry at www.khronos.org>-foreign import ccall unsafe "vkCreateBuffer" vkCreateBuffer ::- VkDevice -- ^ device- ->- Ptr VkBufferCreateInfo -- ^ pCreateInfo- ->- Ptr VkAllocationCallbacks -- ^ pAllocator- -> Ptr VkBuffer -- ^ pBuffer- -> IO VkResult---- | > () vkDestroyBuffer--- > ( VkDevice device--- > , VkBuffer buffer--- > , const VkAllocationCallbacks* pAllocator--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkDestroyBuffer.html vkDestroyBuffer registry at www.khronos.org>-foreign import ccall unsafe "vkDestroyBuffer" vkDestroyBuffer ::- VkDevice -- ^ device- -> VkBuffer -- ^ buffer- -> Ptr VkAllocationCallbacks -- ^ pAllocator- -> IO ()---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.------ > VkResult vkCreateBufferView--- > ( VkDevice device--- > , const VkBufferViewCreateInfo* pCreateInfo--- > , const VkAllocationCallbacks* pAllocator--- > , VkBufferView* pView--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCreateBufferView.html vkCreateBufferView registry at www.khronos.org>-foreign import ccall unsafe "vkCreateBufferView" vkCreateBufferView- ::- VkDevice -- ^ device- ->- Ptr VkBufferViewCreateInfo -- ^ pCreateInfo- ->- Ptr VkAllocationCallbacks -- ^ pAllocator- -> Ptr VkBufferView -- ^ pView- -> IO VkResult---- | > () vkDestroyBufferView--- > ( VkDevice device--- > , VkBufferView bufferView--- > , const VkAllocationCallbacks* pAllocator--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkDestroyBufferView.html vkDestroyBufferView registry at www.khronos.org>-foreign import ccall unsafe "vkDestroyBufferView"- vkDestroyBufferView ::- VkDevice -- ^ device- -> VkBufferView -- ^ bufferView- -> Ptr VkAllocationCallbacks -- ^ pAllocator- -> IO ()---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.------ > VkResult vkCreateImage--- > ( VkDevice device--- > , const VkImageCreateInfo* pCreateInfo--- > , const VkAllocationCallbacks* pAllocator--- > , VkImage* pImage--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCreateImage.html vkCreateImage registry at www.khronos.org>-foreign import ccall unsafe "vkCreateImage" vkCreateImage ::- VkDevice -- ^ device- ->- Ptr VkImageCreateInfo -- ^ pCreateInfo- ->- Ptr VkAllocationCallbacks -- ^ pAllocator- -> Ptr VkImage -- ^ pImage- -> IO VkResult---- | > () vkDestroyImage--- > ( VkDevice device--- > , VkImage image--- > , const VkAllocationCallbacks* pAllocator--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkDestroyImage.html vkDestroyImage registry at www.khronos.org>-foreign import ccall unsafe "vkDestroyImage" vkDestroyImage ::- VkDevice -- ^ device- -> VkImage -- ^ image- -> Ptr VkAllocationCallbacks -- ^ pAllocator- -> IO ()---- | > () vkGetImageSubresourceLayout--- > ( VkDevice device--- > , VkImage image--- > , const VkImageSubresource* pSubresource--- > , VkSubresourceLayout* pLayout--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetImageSubresourceLayout.html vkGetImageSubresourceLayout registry at www.khronos.org>-foreign import ccall unsafe "vkGetImageSubresourceLayout"- vkGetImageSubresourceLayout ::- VkDevice -- ^ device- ->- VkImage -- ^ image- ->- Ptr VkImageSubresource -- ^ pSubresource- -> Ptr VkSubresourceLayout -- ^ pLayout- -> IO ()---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.------ > VkResult vkCreateImageView--- > ( VkDevice device--- > , const VkImageViewCreateInfo* pCreateInfo--- > , const VkAllocationCallbacks* pAllocator--- > , VkImageView* pView--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCreateImageView.html vkCreateImageView registry at www.khronos.org>-foreign import ccall unsafe "vkCreateImageView" vkCreateImageView- ::- VkDevice -- ^ device- ->- Ptr VkImageViewCreateInfo -- ^ pCreateInfo- ->- Ptr VkAllocationCallbacks -- ^ pAllocator- -> Ptr VkImageView -- ^ pView- -> IO VkResult---- | > () vkDestroyImageView--- > ( VkDevice device--- > , VkImageView imageView--- > , const VkAllocationCallbacks* pAllocator--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkDestroyImageView.html vkDestroyImageView registry at www.khronos.org>-foreign import ccall unsafe "vkDestroyImageView" vkDestroyImageView- :: VkDevice -- ^ device- -> VkImageView -- ^ imageView- -> Ptr VkAllocationCallbacks -- ^ pAllocator- -> IO ()---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_INVALID_SHADER_NV'.------ > VkResult vkCreateShaderModule--- > ( VkDevice device--- > , const VkShaderModuleCreateInfo* pCreateInfo--- > , const VkAllocationCallbacks* pAllocator--- > , VkShaderModule* pShaderModule--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCreateShaderModule.html vkCreateShaderModule registry at www.khronos.org>-foreign import ccall unsafe "vkCreateShaderModule"- vkCreateShaderModule ::- VkDevice -- ^ device- ->- Ptr VkShaderModuleCreateInfo -- ^ pCreateInfo- ->- Ptr VkAllocationCallbacks -- ^ pAllocator- -> Ptr VkShaderModule -- ^ pShaderModule- -> IO VkResult---- | > () vkDestroyShaderModule--- > ( VkDevice device--- > , VkShaderModule shaderModule--- > , const VkAllocationCallbacks* pAllocator--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkDestroyShaderModule.html vkDestroyShaderModule registry at www.khronos.org>-foreign import ccall unsafe "vkDestroyShaderModule"- vkDestroyShaderModule ::- VkDevice -- ^ device- -> VkShaderModule -- ^ shaderModule- -> Ptr VkAllocationCallbacks -- ^ pAllocator- -> IO ()---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.------ > VkResult vkCreatePipelineCache--- > ( VkDevice device--- > , const VkPipelineCacheCreateInfo* pCreateInfo--- > , const VkAllocationCallbacks* pAllocator--- > , VkPipelineCache* pPipelineCache--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCreatePipelineCache.html vkCreatePipelineCache registry at www.khronos.org>-foreign import ccall unsafe "vkCreatePipelineCache"- vkCreatePipelineCache ::- VkDevice -- ^ device- ->- Ptr VkPipelineCacheCreateInfo -- ^ pCreateInfo- ->- Ptr VkAllocationCallbacks -- ^ pAllocator- -> Ptr VkPipelineCache -- ^ pPipelineCache- -> IO VkResult---- | > () vkDestroyPipelineCache--- > ( VkDevice device--- > , VkPipelineCache pipelineCache--- > , const VkAllocationCallbacks* pAllocator--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkDestroyPipelineCache.html vkDestroyPipelineCache registry at www.khronos.org>-foreign import ccall unsafe "vkDestroyPipelineCache"- vkDestroyPipelineCache ::- VkDevice -- ^ device- -> VkPipelineCache -- ^ pipelineCache- -> Ptr VkAllocationCallbacks -- ^ pAllocator- -> IO ()---- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.------ > VkResult vkGetPipelineCacheData--- > ( VkDevice device--- > , VkPipelineCache pipelineCache--- > , size_t* pDataSize--- > , void* pData--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetPipelineCacheData.html vkGetPipelineCacheData registry at www.khronos.org>-foreign import ccall unsafe "vkGetPipelineCacheData"- vkGetPipelineCacheData ::- VkDevice -- ^ device- -> VkPipelineCache -- ^ pipelineCache- -> Ptr CSize -- ^ pDataSize- -> Ptr Void -- ^ pData- -> IO VkResult---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.------ > VkResult vkMergePipelineCaches--- > ( VkDevice device--- > , VkPipelineCache dstCache--- > , uint32_t srcCacheCount--- > , const VkPipelineCache* pSrcCaches--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkMergePipelineCaches.html vkMergePipelineCaches registry at www.khronos.org>-foreign import ccall unsafe "vkMergePipelineCaches"- vkMergePipelineCaches ::- VkDevice -- ^ device- ->- VkPipelineCache -- ^ dstCache- -> Word32 -- ^ srcCacheCount- -> Ptr VkPipelineCache -- ^ pSrcCaches- -> IO VkResult---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_INVALID_SHADER_NV'.------ > VkResult vkCreateGraphicsPipelines--- > ( VkDevice device--- > , VkPipelineCache pipelineCache--- > , uint32_t createInfoCount--- > , const VkGraphicsPipelineCreateInfo* pCreateInfos--- > , const VkAllocationCallbacks* pAllocator--- > , VkPipeline* pPipelines--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCreateGraphicsPipelines.html vkCreateGraphicsPipelines registry at www.khronos.org>-foreign import ccall unsafe "vkCreateGraphicsPipelines"- vkCreateGraphicsPipelines ::- VkDevice -- ^ device- ->- VkPipelineCache -- ^ pipelineCache- ->- Word32 -- ^ createInfoCount- ->- Ptr VkGraphicsPipelineCreateInfo -- ^ pCreateInfos- ->- Ptr VkAllocationCallbacks -- ^ pAllocator- -> Ptr VkPipeline -- ^ pPipelines- -> IO VkResult---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_INVALID_SHADER_NV'.------ > VkResult vkCreateComputePipelines--- > ( VkDevice device--- > , VkPipelineCache pipelineCache--- > , uint32_t createInfoCount--- > , const VkComputePipelineCreateInfo* pCreateInfos--- > , const VkAllocationCallbacks* pAllocator--- > , VkPipeline* pPipelines--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCreateComputePipelines.html vkCreateComputePipelines registry at www.khronos.org>-foreign import ccall unsafe "vkCreateComputePipelines"- vkCreateComputePipelines ::- VkDevice -- ^ device- ->- VkPipelineCache -- ^ pipelineCache- ->- Word32 -- ^ createInfoCount- ->- Ptr VkComputePipelineCreateInfo -- ^ pCreateInfos- ->- Ptr VkAllocationCallbacks -- ^ pAllocator- -> Ptr VkPipeline -- ^ pPipelines- -> IO VkResult---- | > () vkDestroyPipeline--- > ( VkDevice device--- > , VkPipeline pipeline--- > , const VkAllocationCallbacks* pAllocator--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkDestroyPipeline.html vkDestroyPipeline registry at www.khronos.org>-foreign import ccall unsafe "vkDestroyPipeline" vkDestroyPipeline- :: VkDevice -- ^ device- -> VkPipeline -- ^ pipeline- -> Ptr VkAllocationCallbacks -- ^ pAllocator- -> IO ()---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.------ > VkResult vkCreatePipelineLayout--- > ( VkDevice device--- > , const VkPipelineLayoutCreateInfo* pCreateInfo--- > , const VkAllocationCallbacks* pAllocator--- > , VkPipelineLayout* pPipelineLayout--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCreatePipelineLayout.html vkCreatePipelineLayout registry at www.khronos.org>-foreign import ccall unsafe "vkCreatePipelineLayout"- vkCreatePipelineLayout ::- VkDevice -- ^ device- ->- Ptr VkPipelineLayoutCreateInfo -- ^ pCreateInfo- ->- Ptr VkAllocationCallbacks -- ^ pAllocator- -> Ptr VkPipelineLayout -- ^ pPipelineLayout- -> IO VkResult---- | > () vkDestroyPipelineLayout--- > ( VkDevice device--- > , VkPipelineLayout pipelineLayout--- > , const VkAllocationCallbacks* pAllocator--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkDestroyPipelineLayout.html vkDestroyPipelineLayout registry at www.khronos.org>-foreign import ccall unsafe "vkDestroyPipelineLayout"- vkDestroyPipelineLayout ::- VkDevice -- ^ device- -> VkPipelineLayout -- ^ pipelineLayout- -> Ptr VkAllocationCallbacks -- ^ pAllocator- -> IO ()---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_TOO_MANY_OBJECTS'.------ > VkResult vkCreateSampler--- > ( VkDevice device--- > , const VkSamplerCreateInfo* pCreateInfo--- > , const VkAllocationCallbacks* pAllocator--- > , VkSampler* pSampler--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCreateSampler.html vkCreateSampler registry at www.khronos.org>-foreign import ccall unsafe "vkCreateSampler" vkCreateSampler ::- VkDevice -- ^ device- ->- Ptr VkSamplerCreateInfo -- ^ pCreateInfo- ->- Ptr VkAllocationCallbacks -- ^ pAllocator- -> Ptr VkSampler -- ^ pSampler- -> IO VkResult---- | > () vkDestroySampler--- > ( VkDevice device--- > , VkSampler sampler--- > , const VkAllocationCallbacks* pAllocator--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkDestroySampler.html vkDestroySampler registry at www.khronos.org>-foreign import ccall unsafe "vkDestroySampler" vkDestroySampler ::- VkDevice -- ^ device- -> VkSampler -- ^ sampler- -> Ptr VkAllocationCallbacks -- ^ pAllocator- -> IO ()---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.------ > VkResult vkCreateDescriptorSetLayout--- > ( VkDevice device--- > , const VkDescriptorSetLayoutCreateInfo* pCreateInfo--- > , const VkAllocationCallbacks* pAllocator--- > , VkDescriptorSetLayout* pSetLayout--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCreateDescriptorSetLayout.html vkCreateDescriptorSetLayout registry at www.khronos.org>-foreign import ccall unsafe "vkCreateDescriptorSetLayout"- vkCreateDescriptorSetLayout ::- VkDevice -- ^ device- ->- Ptr VkDescriptorSetLayoutCreateInfo -- ^ pCreateInfo- ->- Ptr VkAllocationCallbacks -- ^ pAllocator- ->- Ptr VkDescriptorSetLayout -- ^ pSetLayout- -> IO VkResult---- | > () vkDestroyDescriptorSetLayout--- > ( VkDevice device--- > , VkDescriptorSetLayout descriptorSetLayout--- > , const VkAllocationCallbacks* pAllocator--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkDestroyDescriptorSetLayout.html vkDestroyDescriptorSetLayout registry at www.khronos.org>-foreign import ccall unsafe "vkDestroyDescriptorSetLayout"- vkDestroyDescriptorSetLayout ::- VkDevice -- ^ device- ->- VkDescriptorSetLayout -- ^ descriptorSetLayout- -> Ptr VkAllocationCallbacks -- ^ pAllocator- -> IO ()---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.------ > VkResult vkCreateDescriptorPool--- > ( VkDevice device--- > , const VkDescriptorPoolCreateInfo* pCreateInfo--- > , const VkAllocationCallbacks* pAllocator--- > , VkDescriptorPool* pDescriptorPool--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCreateDescriptorPool.html vkCreateDescriptorPool registry at www.khronos.org>-foreign import ccall unsafe "vkCreateDescriptorPool"- vkCreateDescriptorPool ::- VkDevice -- ^ device- ->- Ptr VkDescriptorPoolCreateInfo -- ^ pCreateInfo- ->- Ptr VkAllocationCallbacks -- ^ pAllocator- -> Ptr VkDescriptorPool -- ^ pDescriptorPool- -> IO VkResult---- | > () vkDestroyDescriptorPool--- > ( VkDevice device--- > , VkDescriptorPool descriptorPool--- > , const VkAllocationCallbacks* pAllocator--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkDestroyDescriptorPool.html vkDestroyDescriptorPool registry at www.khronos.org>-foreign import ccall unsafe "vkDestroyDescriptorPool"- vkDestroyDescriptorPool ::- VkDevice -- ^ device- -> VkDescriptorPool -- ^ descriptorPool- -> Ptr VkAllocationCallbacks -- ^ pAllocator- -> IO ()---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.------ > VkResult vkResetDescriptorPool--- > ( VkDevice device--- > , VkDescriptorPool descriptorPool--- > , VkDescriptorPoolResetFlags flags--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkResetDescriptorPool.html vkResetDescriptorPool registry at www.khronos.org>-foreign import ccall unsafe "vkResetDescriptorPool"- vkResetDescriptorPool ::- VkDevice -- ^ device- ->- VkDescriptorPool -- ^ descriptorPool- -> VkDescriptorPoolResetFlags -- ^ flags- -> IO VkResult---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_FRAGMENTED_POOL', 'VK_ERROR_OUT_OF_POOL_MEMORY_KHR'.------ > VkResult vkAllocateDescriptorSets--- > ( VkDevice device--- > , const VkDescriptorSetAllocateInfo* pAllocateInfo--- > , VkDescriptorSet* pDescriptorSets--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkAllocateDescriptorSets.html vkAllocateDescriptorSets registry at www.khronos.org>-foreign import ccall unsafe "vkAllocateDescriptorSets"- vkAllocateDescriptorSets ::- VkDevice -- ^ device- ->- Ptr VkDescriptorSetAllocateInfo -- ^ pAllocateInfo- ->- Ptr VkDescriptorSet -- ^ pDescriptorSets- -> IO VkResult---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.------ > VkResult vkFreeDescriptorSets--- > ( VkDevice device--- > , VkDescriptorPool descriptorPool--- > , uint32_t descriptorSetCount--- > , const VkDescriptorSet* pDescriptorSets--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkFreeDescriptorSets.html vkFreeDescriptorSets registry at www.khronos.org>-foreign import ccall unsafe "vkFreeDescriptorSets"- vkFreeDescriptorSets ::- VkDevice -- ^ device- ->- VkDescriptorPool -- ^ descriptorPool- -> Word32 -- ^ descriptorSetCount- -> Ptr VkDescriptorSet -- ^ pDescriptorSets- -> IO VkResult---- | > () vkUpdateDescriptorSets--- > ( VkDevice device--- > , uint32_t descriptorWriteCount--- > , const VkWriteDescriptorSet* pDescriptorWrites--- > , uint32_t descriptorCopyCount--- > , const VkCopyDescriptorSet* pDescriptorCopies--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkUpdateDescriptorSets.html vkUpdateDescriptorSets registry at www.khronos.org>-foreign import ccall unsafe "vkUpdateDescriptorSets"- vkUpdateDescriptorSets ::- VkDevice -- ^ device- ->- Word32 -- ^ descriptorWriteCount- ->- Ptr VkWriteDescriptorSet -- ^ pDescriptorWrites- ->- Word32 -- ^ descriptorCopyCount- -> Ptr VkCopyDescriptorSet -- ^ pDescriptorCopies- -> IO ()---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.------ > VkResult vkCreateFramebuffer--- > ( VkDevice device--- > , const VkFramebufferCreateInfo* pCreateInfo--- > , const VkAllocationCallbacks* pAllocator--- > , VkFramebuffer* pFramebuffer--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCreateFramebuffer.html vkCreateFramebuffer registry at www.khronos.org>-foreign import ccall unsafe "vkCreateFramebuffer"- vkCreateFramebuffer ::- VkDevice -- ^ device- ->- Ptr VkFramebufferCreateInfo -- ^ pCreateInfo- ->- Ptr VkAllocationCallbacks -- ^ pAllocator- -> Ptr VkFramebuffer -- ^ pFramebuffer- -> IO VkResult---- | > () vkDestroyFramebuffer--- > ( VkDevice device--- > , VkFramebuffer framebuffer--- > , const VkAllocationCallbacks* pAllocator--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkDestroyFramebuffer.html vkDestroyFramebuffer registry at www.khronos.org>-foreign import ccall unsafe "vkDestroyFramebuffer"- vkDestroyFramebuffer ::- VkDevice -- ^ device- -> VkFramebuffer -- ^ framebuffer- -> Ptr VkAllocationCallbacks -- ^ pAllocator- -> IO ()---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.------ > VkResult vkCreateRenderPass--- > ( VkDevice device--- > , const VkRenderPassCreateInfo* pCreateInfo--- > , const VkAllocationCallbacks* pAllocator--- > , VkRenderPass* pRenderPass--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCreateRenderPass.html vkCreateRenderPass registry at www.khronos.org>-foreign import ccall unsafe "vkCreateRenderPass" vkCreateRenderPass- ::- VkDevice -- ^ device- ->- Ptr VkRenderPassCreateInfo -- ^ pCreateInfo- ->- Ptr VkAllocationCallbacks -- ^ pAllocator- -> Ptr VkRenderPass -- ^ pRenderPass- -> IO VkResult---- | > () vkDestroyRenderPass--- > ( VkDevice device--- > , VkRenderPass renderPass--- > , const VkAllocationCallbacks* pAllocator--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkDestroyRenderPass.html vkDestroyRenderPass registry at www.khronos.org>-foreign import ccall unsafe "vkDestroyRenderPass"- vkDestroyRenderPass ::- VkDevice -- ^ device- -> VkRenderPass -- ^ renderPass- -> Ptr VkAllocationCallbacks -- ^ pAllocator- -> IO ()---- | > () vkGetRenderAreaGranularity--- > ( VkDevice device--- > , VkRenderPass renderPass--- > , VkExtent2D* pGranularity--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetRenderAreaGranularity.html vkGetRenderAreaGranularity registry at www.khronos.org>-foreign import ccall unsafe "vkGetRenderAreaGranularity"- vkGetRenderAreaGranularity ::- VkDevice -- ^ device- -> VkRenderPass -- ^ renderPass- -> Ptr VkExtent2D -- ^ pGranularity- -> IO ()---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.------ > VkResult vkCreateCommandPool--- > ( VkDevice device--- > , const VkCommandPoolCreateInfo* pCreateInfo--- > , const VkAllocationCallbacks* pAllocator--- > , VkCommandPool* pCommandPool--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCreateCommandPool.html vkCreateCommandPool registry at www.khronos.org>-foreign import ccall unsafe "vkCreateCommandPool"- vkCreateCommandPool ::- VkDevice -- ^ device- ->- Ptr VkCommandPoolCreateInfo -- ^ pCreateInfo- ->- Ptr VkAllocationCallbacks -- ^ pAllocator- -> Ptr VkCommandPool -- ^ pCommandPool- -> IO VkResult---- | > () vkDestroyCommandPool--- > ( VkDevice device--- > , VkCommandPool commandPool--- > , const VkAllocationCallbacks* pAllocator--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkDestroyCommandPool.html vkDestroyCommandPool registry at www.khronos.org>-foreign import ccall unsafe "vkDestroyCommandPool"- vkDestroyCommandPool ::- VkDevice -- ^ device- -> VkCommandPool -- ^ commandPool- -> Ptr VkAllocationCallbacks -- ^ pAllocator- -> IO ()---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.------ > VkResult vkResetCommandPool--- > ( VkDevice device--- > , VkCommandPool commandPool--- > , VkCommandPoolResetFlags flags--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkResetCommandPool.html vkResetCommandPool registry at www.khronos.org>-foreign import ccall unsafe "vkResetCommandPool" vkResetCommandPool- ::- VkDevice -- ^ device- -> VkCommandPool -- ^ commandPool- -> VkCommandPoolResetFlags -- ^ flags- -> IO VkResult---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.------ > VkResult vkAllocateCommandBuffers--- > ( VkDevice device--- > , const VkCommandBufferAllocateInfo* pAllocateInfo--- > , VkCommandBuffer* pCommandBuffers--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkAllocateCommandBuffers.html vkAllocateCommandBuffers registry at www.khronos.org>-foreign import ccall unsafe "vkAllocateCommandBuffers"- vkAllocateCommandBuffers ::- VkDevice -- ^ device- ->- Ptr VkCommandBufferAllocateInfo -- ^ pAllocateInfo- ->- Ptr VkCommandBuffer -- ^ pCommandBuffers- -> IO VkResult---- | > () vkFreeCommandBuffers--- > ( VkDevice device--- > , VkCommandPool commandPool--- > , uint32_t commandBufferCount--- > , const VkCommandBuffer* pCommandBuffers--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkFreeCommandBuffers.html vkFreeCommandBuffers registry at www.khronos.org>-foreign import ccall unsafe "vkFreeCommandBuffers"- vkFreeCommandBuffers ::- VkDevice -- ^ device- -> VkCommandPool -- ^ commandPool- -> Word32 -- ^ commandBufferCount- -> Ptr VkCommandBuffer -- ^ pCommandBuffers- -> IO ()---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.------ > VkResult vkBeginCommandBuffer--- > ( VkCommandBuffer commandBuffer--- > , const VkCommandBufferBeginInfo* pBeginInfo--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkBeginCommandBuffer.html vkBeginCommandBuffer registry at www.khronos.org>-foreign import ccall unsafe "vkBeginCommandBuffer"- vkBeginCommandBuffer ::- VkCommandBuffer -- ^ commandBuffer- -> Ptr VkCommandBufferBeginInfo -- ^ pBeginInfo- -> IO VkResult---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.------ > VkResult vkEndCommandBuffer--- > ( VkCommandBuffer commandBuffer--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkEndCommandBuffer.html vkEndCommandBuffer registry at www.khronos.org>-foreign import ccall unsafe "vkEndCommandBuffer" vkEndCommandBuffer- :: VkCommandBuffer -- ^ commandBuffer- -> IO VkResult---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.------ > VkResult vkResetCommandBuffer--- > ( VkCommandBuffer commandBuffer--- > , VkCommandBufferResetFlags flags--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkResetCommandBuffer.html vkResetCommandBuffer registry at www.khronos.org>-foreign import ccall unsafe "vkResetCommandBuffer"- vkResetCommandBuffer ::- VkCommandBuffer -- ^ commandBuffer- -> VkCommandBufferResetFlags -- ^ flags- -> IO VkResult---- | queues: 'graphics', 'compute'.------ renderpass: @both@------ > () vkCmdBindPipeline--- > ( VkCommandBuffer commandBuffer--- > , VkPipelineBindPoint pipelineBindPoint--- > , VkPipeline pipeline--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdBindPipeline.html vkCmdBindPipeline registry at www.khronos.org>-foreign import ccall unsafe "vkCmdBindPipeline" vkCmdBindPipeline- :: VkCommandBuffer -- ^ commandBuffer- -> VkPipelineBindPoint -- ^ pipelineBindPoint- -> VkPipeline -- ^ pipeline- -> IO ()---- | queues: 'graphics'.------ renderpass: @both@------ > () vkCmdSetViewport--- > ( VkCommandBuffer commandBuffer--- > , uint32_t firstViewport--- > , uint32_t viewportCount--- > , const VkViewport* pViewports--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdSetViewport.html vkCmdSetViewport registry at www.khronos.org>-foreign import ccall unsafe "vkCmdSetViewport" vkCmdSetViewport ::- VkCommandBuffer -- ^ commandBuffer- -> Word32 -- ^ firstViewport- -> Word32 -- ^ viewportCount- -> Ptr VkViewport -- ^ pViewports- -> IO ()---- | queues: 'graphics'.------ renderpass: @both@------ > () vkCmdSetScissor--- > ( VkCommandBuffer commandBuffer--- > , uint32_t firstScissor--- > , uint32_t scissorCount--- > , const VkRect2D* pScissors--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdSetScissor.html vkCmdSetScissor registry at www.khronos.org>-foreign import ccall unsafe "vkCmdSetScissor" vkCmdSetScissor ::- VkCommandBuffer -- ^ commandBuffer- -> Word32 -- ^ firstScissor- -> Word32 -- ^ scissorCount- -> Ptr VkRect2D -- ^ pScissors- -> IO ()---- | queues: 'graphics'.------ renderpass: @both@------ > () vkCmdSetLineWidth--- > ( VkCommandBuffer commandBuffer--- > , float lineWidth--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdSetLineWidth.html vkCmdSetLineWidth registry at www.khronos.org>-foreign import ccall unsafe "vkCmdSetLineWidth" vkCmdSetLineWidth- :: VkCommandBuffer -- ^ commandBuffer- -> #{type float} -> IO ()---- | queues: 'graphics'.------ renderpass: @both@------ > () vkCmdSetDepthBias--- > ( VkCommandBuffer commandBuffer--- > , float depthBiasConstantFactor--- > , float depthBiasClamp--- > , float depthBiasSlopeFactor--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdSetDepthBias.html vkCmdSetDepthBias registry at www.khronos.org>-foreign import ccall unsafe "vkCmdSetDepthBias" vkCmdSetDepthBias- ::- VkCommandBuffer -- ^ commandBuffer- ->- #{type float} ->- #{type float} -> #{type float} -> IO ()---- | queues: 'graphics'.------ renderpass: @both@------ > () vkCmdSetBlendConstants--- > ( VkCommandBuffer commandBuffer--- > , const float blendConstants[4]--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdSetBlendConstants.html vkCmdSetBlendConstants registry at www.khronos.org>-foreign import ccall unsafe "vkCmdSetBlendConstants"- vkCmdSetBlendConstants ::- VkCommandBuffer -- ^ commandBuffer- -> Ptr #{type float} -- ^ blendConstants- -> IO ()---- | queues: 'graphics'.------ renderpass: @both@------ > () vkCmdSetDepthBounds--- > ( VkCommandBuffer commandBuffer--- > , float minDepthBounds--- > , float maxDepthBounds--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdSetDepthBounds.html vkCmdSetDepthBounds registry at www.khronos.org>-foreign import ccall unsafe "vkCmdSetDepthBounds"- vkCmdSetDepthBounds ::- VkCommandBuffer -- ^ commandBuffer- ->- #{type float} -> #{type float} -> IO ()---- | queues: 'graphics'.------ renderpass: @both@------ > () vkCmdSetStencilCompareMask--- > ( VkCommandBuffer commandBuffer--- > , VkStencilFaceFlags faceMask--- > , uint32_t compareMask--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdSetStencilCompareMask.html vkCmdSetStencilCompareMask registry at www.khronos.org>-foreign import ccall unsafe "vkCmdSetStencilCompareMask"- vkCmdSetStencilCompareMask ::- VkCommandBuffer -- ^ commandBuffer- -> VkStencilFaceFlags -- ^ faceMask- -> Word32 -- ^ compareMask- -> IO ()---- | queues: 'graphics'.------ renderpass: @both@------ > () vkCmdSetStencilWriteMask--- > ( VkCommandBuffer commandBuffer--- > , VkStencilFaceFlags faceMask--- > , uint32_t writeMask--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdSetStencilWriteMask.html vkCmdSetStencilWriteMask registry at www.khronos.org>-foreign import ccall unsafe "vkCmdSetStencilWriteMask"- vkCmdSetStencilWriteMask ::- VkCommandBuffer -- ^ commandBuffer- -> VkStencilFaceFlags -- ^ faceMask- -> Word32 -- ^ writeMask- -> IO ()---- | queues: 'graphics'.------ renderpass: @both@------ > () vkCmdSetStencilReference--- > ( VkCommandBuffer commandBuffer--- > , VkStencilFaceFlags faceMask--- > , uint32_t reference--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdSetStencilReference.html vkCmdSetStencilReference registry at www.khronos.org>-foreign import ccall unsafe "vkCmdSetStencilReference"- vkCmdSetStencilReference ::- VkCommandBuffer -- ^ commandBuffer- -> VkStencilFaceFlags -- ^ faceMask- -> Word32 -- ^ reference- -> IO ()---- | queues: 'graphics', 'compute'.------ renderpass: @both@------ > () vkCmdBindDescriptorSets--- > ( VkCommandBuffer commandBuffer--- > , VkPipelineBindPoint pipelineBindPoint--- > , VkPipelineLayout layout--- > , uint32_t firstSet--- > , uint32_t descriptorSetCount--- > , const VkDescriptorSet* pDescriptorSets--- > , uint32_t dynamicOffsetCount--- > , const uint32_t* pDynamicOffsets--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdBindDescriptorSets.html vkCmdBindDescriptorSets registry at www.khronos.org>-foreign import ccall unsafe "vkCmdBindDescriptorSets"- vkCmdBindDescriptorSets ::- VkCommandBuffer -- ^ commandBuffer- ->- VkPipelineBindPoint -- ^ pipelineBindPoint- ->- VkPipelineLayout -- ^ layout- ->- Word32 -- ^ firstSet- ->- Word32 -- ^ descriptorSetCount- -> Ptr VkDescriptorSet -- ^ pDescriptorSets- -> Word32 -- ^ dynamicOffsetCount- -> Ptr Word32 -- ^ pDynamicOffsets- -> IO ()---- | queues: 'graphics'.------ renderpass: @both@------ > () vkCmdBindIndexBuffer--- > ( VkCommandBuffer commandBuffer--- > , VkBuffer buffer--- > , VkDeviceSize offset--- > , VkIndexType indexType--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdBindIndexBuffer.html vkCmdBindIndexBuffer registry at www.khronos.org>-foreign import ccall unsafe "vkCmdBindIndexBuffer"- vkCmdBindIndexBuffer ::- VkCommandBuffer -- ^ commandBuffer- -> VkBuffer -- ^ buffer- -> VkDeviceSize -- ^ offset- -> VkIndexType -- ^ indexType- -> IO ()---- | queues: 'graphics'.------ renderpass: @both@------ > () vkCmdBindVertexBuffers--- > ( VkCommandBuffer commandBuffer--- > , uint32_t firstBinding--- > , uint32_t bindingCount--- > , const VkBuffer* pBuffers--- > , const VkDeviceSize* pOffsets--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdBindVertexBuffers.html vkCmdBindVertexBuffers registry at www.khronos.org>-foreign import ccall unsafe "vkCmdBindVertexBuffers"- vkCmdBindVertexBuffers ::- VkCommandBuffer -- ^ commandBuffer- ->- Word32 -- ^ firstBinding- -> Word32 -- ^ bindingCount- -> Ptr VkBuffer -- ^ pBuffers- -> Ptr VkDeviceSize -- ^ pOffsets- -> IO ()---- | queues: 'graphics'.------ renderpass: @inside@------ pipeline: @graphics@------ > () vkCmdDraw--- > ( VkCommandBuffer commandBuffer--- > , uint32_t vertexCount--- > , uint32_t instanceCount--- > , uint32_t firstVertex--- > , uint32_t firstInstance--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdDraw.html vkCmdDraw registry at www.khronos.org>-foreign import ccall unsafe "vkCmdDraw" vkCmdDraw ::- VkCommandBuffer -- ^ commandBuffer- -> Word32 -- ^ vertexCount- -> Word32 -- ^ instanceCount- -> Word32 -- ^ firstVertex- -> Word32 -- ^ firstInstance- -> IO ()---- | queues: 'graphics'.------ renderpass: @inside@------ pipeline: @graphics@------ > () vkCmdDrawIndexed--- > ( VkCommandBuffer commandBuffer--- > , uint32_t indexCount--- > , uint32_t instanceCount--- > , uint32_t firstIndex--- > , int32_t vertexOffset--- > , uint32_t firstInstance--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdDrawIndexed.html vkCmdDrawIndexed registry at www.khronos.org>-foreign import ccall unsafe "vkCmdDrawIndexed" vkCmdDrawIndexed ::- VkCommandBuffer -- ^ commandBuffer- ->- Word32 -- ^ indexCount- -> Word32 -- ^ instanceCount- -> Word32 -- ^ firstIndex- -> Int32 -- ^ vertexOffset- -> Word32 -- ^ firstInstance- -> IO ()---- | queues: 'graphics'.------ renderpass: @inside@------ pipeline: @graphics@------ > () vkCmdDrawIndirect--- > ( VkCommandBuffer commandBuffer--- > , VkBuffer buffer--- > , VkDeviceSize offset--- > , uint32_t drawCount--- > , uint32_t stride--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdDrawIndirect.html vkCmdDrawIndirect registry at www.khronos.org>-foreign import ccall unsafe "vkCmdDrawIndirect" vkCmdDrawIndirect- ::- VkCommandBuffer -- ^ commandBuffer- ->- VkBuffer -- ^ buffer- -> VkDeviceSize -- ^ offset- -> Word32 -- ^ drawCount- -> Word32 -- ^ stride- -> IO ()---- | queues: 'graphics'.------ renderpass: @inside@------ pipeline: @graphics@------ > () vkCmdDrawIndexedIndirect--- > ( VkCommandBuffer commandBuffer--- > , VkBuffer buffer--- > , VkDeviceSize offset--- > , uint32_t drawCount--- > , uint32_t stride--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdDrawIndexedIndirect.html vkCmdDrawIndexedIndirect registry at www.khronos.org>-foreign import ccall unsafe "vkCmdDrawIndexedIndirect"- vkCmdDrawIndexedIndirect ::- VkCommandBuffer -- ^ commandBuffer- ->- VkBuffer -- ^ buffer- -> VkDeviceSize -- ^ offset- -> Word32 -- ^ drawCount- -> Word32 -- ^ stride- -> IO ()---- | queues: 'compute'.------ renderpass: @outside@------ pipeline: @compute@------ > () vkCmdDispatch--- > ( VkCommandBuffer commandBuffer--- > , uint32_t groupCountX--- > , uint32_t groupCountY--- > , uint32_t groupCountZ--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdDispatch.html vkCmdDispatch registry at www.khronos.org>-foreign import ccall unsafe "vkCmdDispatch" vkCmdDispatch ::- VkCommandBuffer -- ^ commandBuffer- -> Word32 -- ^ groupCountX- -> Word32 -- ^ groupCountY- -> Word32 -- ^ groupCountZ- -> IO ()---- | queues: 'compute'.------ renderpass: @outside@------ pipeline: @compute@------ > () vkCmdDispatchIndirect--- > ( VkCommandBuffer commandBuffer--- > , VkBuffer buffer--- > , VkDeviceSize offset--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdDispatchIndirect.html vkCmdDispatchIndirect registry at www.khronos.org>-foreign import ccall unsafe "vkCmdDispatchIndirect"- vkCmdDispatchIndirect ::- VkCommandBuffer -- ^ commandBuffer- -> VkBuffer -- ^ buffer- -> VkDeviceSize -- ^ offset- -> IO ()---- | queues: 'transfer', 'graphics', 'compute'.------ renderpass: @outside@------ pipeline: @transfer@------ > () vkCmdCopyBuffer--- > ( VkCommandBuffer commandBuffer--- > , VkBuffer srcBuffer--- > , VkBuffer dstBuffer--- > , uint32_t regionCount--- > , const VkBufferCopy* pRegions--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdCopyBuffer.html vkCmdCopyBuffer registry at www.khronos.org>-foreign import ccall unsafe "vkCmdCopyBuffer" vkCmdCopyBuffer ::- VkCommandBuffer -- ^ commandBuffer- ->- VkBuffer -- ^ srcBuffer- -> VkBuffer -- ^ dstBuffer- -> Word32 -- ^ regionCount- -> Ptr VkBufferCopy -- ^ pRegions- -> IO ()---- | queues: 'transfer', 'graphics', 'compute'.------ renderpass: @outside@------ pipeline: @transfer@------ > () vkCmdCopyImage--- > ( VkCommandBuffer commandBuffer--- > , VkImage srcImage--- > , VkImageLayout srcImageLayout--- > , VkImage dstImage--- > , VkImageLayout dstImageLayout--- > , uint32_t regionCount--- > , const VkImageCopy* pRegions--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdCopyImage.html vkCmdCopyImage registry at www.khronos.org>-foreign import ccall unsafe "vkCmdCopyImage" vkCmdCopyImage ::- VkCommandBuffer -- ^ commandBuffer- ->- VkImage -- ^ srcImage- ->- VkImageLayout -- ^ srcImageLayout- ->- VkImage -- ^ dstImage- -> VkImageLayout -- ^ dstImageLayout- -> Word32 -- ^ regionCount- -> Ptr VkImageCopy -- ^ pRegions- -> IO ()---- | queues: 'graphics'.------ renderpass: @outside@------ pipeline: @transfer@------ > () vkCmdBlitImage--- > ( VkCommandBuffer commandBuffer--- > , VkImage srcImage--- > , VkImageLayout srcImageLayout--- > , VkImage dstImage--- > , VkImageLayout dstImageLayout--- > , uint32_t regionCount--- > , const VkImageBlit* pRegions--- > , VkFilter filter--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdBlitImage.html vkCmdBlitImage registry at www.khronos.org>-foreign import ccall unsafe "vkCmdBlitImage" vkCmdBlitImage ::- VkCommandBuffer -- ^ commandBuffer- ->- VkImage -- ^ srcImage- ->- VkImageLayout -- ^ srcImageLayout- ->- VkImage -- ^ dstImage- ->- VkImageLayout -- ^ dstImageLayout- -> Word32 -- ^ regionCount- -> Ptr VkImageBlit -- ^ pRegions- -> VkFilter -- ^ filter- -> IO ()---- | queues: 'transfer', 'graphics', 'compute'.------ renderpass: @outside@------ pipeline: @transfer@------ > () vkCmdCopyBufferToImage--- > ( VkCommandBuffer commandBuffer--- > , VkBuffer srcBuffer--- > , VkImage dstImage--- > , VkImageLayout dstImageLayout--- > , uint32_t regionCount--- > , const VkBufferImageCopy* pRegions--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdCopyBufferToImage.html vkCmdCopyBufferToImage registry at www.khronos.org>-foreign import ccall unsafe "vkCmdCopyBufferToImage"- vkCmdCopyBufferToImage ::- VkCommandBuffer -- ^ commandBuffer- ->- VkBuffer -- ^ srcBuffer- ->- VkImage -- ^ dstImage- ->- VkImageLayout -- ^ dstImageLayout- -> Word32 -- ^ regionCount- -> Ptr VkBufferImageCopy -- ^ pRegions- -> IO ()---- | queues: 'transfer', 'graphics', 'compute'.------ renderpass: @outside@------ pipeline: @transfer@------ > () vkCmdCopyImageToBuffer--- > ( VkCommandBuffer commandBuffer--- > , VkImage srcImage--- > , VkImageLayout srcImageLayout--- > , VkBuffer dstBuffer--- > , uint32_t regionCount--- > , const VkBufferImageCopy* pRegions--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdCopyImageToBuffer.html vkCmdCopyImageToBuffer registry at www.khronos.org>-foreign import ccall unsafe "vkCmdCopyImageToBuffer"- vkCmdCopyImageToBuffer ::- VkCommandBuffer -- ^ commandBuffer- ->- VkImage -- ^ srcImage- ->- VkImageLayout -- ^ srcImageLayout- ->- VkBuffer -- ^ dstBuffer- -> Word32 -- ^ regionCount- -> Ptr VkBufferImageCopy -- ^ pRegions- -> IO ()---- | queues: 'transfer', 'graphics', 'compute'.------ renderpass: @outside@------ pipeline: @transfer@------ > () vkCmdUpdateBuffer--- > ( VkCommandBuffer commandBuffer--- > , VkBuffer dstBuffer--- > , VkDeviceSize dstOffset--- > , VkDeviceSize dataSize--- > , const void* pData--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdUpdateBuffer.html vkCmdUpdateBuffer registry at www.khronos.org>-foreign import ccall unsafe "vkCmdUpdateBuffer" vkCmdUpdateBuffer- ::- VkCommandBuffer -- ^ commandBuffer- ->- VkBuffer -- ^ dstBuffer- -> VkDeviceSize -- ^ dstOffset- -> VkDeviceSize -- ^ dataSize- -> Ptr Void -- ^ pData- -> IO ()---- | transfer support is only available when VK_KHR_maintenance1 is enabled, as documented in valid usage language in the specification------ queues: 'transfer', 'graphics', 'compute'.------ renderpass: @outside@------ pipeline: @transfer@------ > () vkCmdFillBuffer--- > ( VkCommandBuffer commandBuffer--- > , VkBuffer dstBuffer--- > , VkDeviceSize dstOffset--- > , VkDeviceSize size--- > , uint32_t data--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdFillBuffer.html vkCmdFillBuffer registry at www.khronos.org>-foreign import ccall unsafe "vkCmdFillBuffer" vkCmdFillBuffer ::- VkCommandBuffer -- ^ commandBuffer- ->- VkBuffer -- ^ dstBuffer- -> VkDeviceSize -- ^ dstOffset- -> VkDeviceSize -- ^ size- -> Word32 -- ^ data- -> IO ()---- | queues: 'graphics', 'compute'.------ renderpass: @outside@------ pipeline: @transfer@------ > () vkCmdClearColorImage--- > ( VkCommandBuffer commandBuffer--- > , VkImage image--- > , VkImageLayout imageLayout--- > , const VkClearColorValue* pColor--- > , uint32_t rangeCount--- > , const VkImageSubresourceRange* pRanges--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdClearColorImage.html vkCmdClearColorImage registry at www.khronos.org>-foreign import ccall unsafe "vkCmdClearColorImage"- vkCmdClearColorImage ::- VkCommandBuffer -- ^ commandBuffer- ->- VkImage -- ^ image- ->- VkImageLayout -- ^ imageLayout- ->- Ptr VkClearColorValue -- ^ pColor- ->- Word32 -- ^ rangeCount- -> Ptr VkImageSubresourceRange -- ^ pRanges- -> IO ()---- | queues: 'graphics'.------ renderpass: @outside@------ pipeline: @transfer@------ > () vkCmdClearDepthStencilImage--- > ( VkCommandBuffer commandBuffer--- > , VkImage image--- > , VkImageLayout imageLayout--- > , const VkClearDepthStencilValue* pDepthStencil--- > , uint32_t rangeCount--- > , const VkImageSubresourceRange* pRanges--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdClearDepthStencilImage.html vkCmdClearDepthStencilImage registry at www.khronos.org>-foreign import ccall unsafe "vkCmdClearDepthStencilImage"- vkCmdClearDepthStencilImage ::- VkCommandBuffer -- ^ commandBuffer- ->- VkImage -- ^ image- ->- VkImageLayout -- ^ imageLayout- ->- Ptr VkClearDepthStencilValue -- ^ pDepthStencil- ->- Word32 -- ^ rangeCount- -> Ptr VkImageSubresourceRange -- ^ pRanges- -> IO ()---- | queues: 'graphics'.------ renderpass: @inside@------ pipeline: @graphics@------ > () vkCmdClearAttachments--- > ( VkCommandBuffer commandBuffer--- > , uint32_t attachmentCount--- > , const VkClearAttachment* pAttachments--- > , uint32_t rectCount--- > , const VkClearRect* pRects--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdClearAttachments.html vkCmdClearAttachments registry at www.khronos.org>-foreign import ccall unsafe "vkCmdClearAttachments"- vkCmdClearAttachments ::- VkCommandBuffer -- ^ commandBuffer- ->- Word32 -- ^ attachmentCount- ->- Ptr VkClearAttachment -- ^ pAttachments- -> Word32 -- ^ rectCount- -> Ptr VkClearRect -- ^ pRects- -> IO ()---- | queues: 'graphics'.------ renderpass: @outside@------ pipeline: @transfer@------ > () vkCmdResolveImage--- > ( VkCommandBuffer commandBuffer--- > , VkImage srcImage--- > , VkImageLayout srcImageLayout--- > , VkImage dstImage--- > , VkImageLayout dstImageLayout--- > , uint32_t regionCount--- > , const VkImageResolve* pRegions--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdResolveImage.html vkCmdResolveImage registry at www.khronos.org>-foreign import ccall unsafe "vkCmdResolveImage" vkCmdResolveImage- ::- VkCommandBuffer -- ^ commandBuffer- ->- VkImage -- ^ srcImage- ->- VkImageLayout -- ^ srcImageLayout- ->- VkImage -- ^ dstImage- -> VkImageLayout -- ^ dstImageLayout- -> Word32 -- ^ regionCount- -> Ptr VkImageResolve -- ^ pRegions- -> IO ()---- | queues: 'graphics', 'compute'.------ renderpass: @outside@------ > () vkCmdSetEvent--- > ( VkCommandBuffer commandBuffer--- > , VkEvent event--- > , VkPipelineStageFlags stageMask--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdSetEvent.html vkCmdSetEvent registry at www.khronos.org>-foreign import ccall unsafe "vkCmdSetEvent" vkCmdSetEvent ::- VkCommandBuffer -- ^ commandBuffer- -> VkEvent -- ^ event- -> VkPipelineStageFlags -- ^ stageMask- -> IO ()---- | queues: 'graphics', 'compute'.------ renderpass: @outside@------ > () vkCmdResetEvent--- > ( VkCommandBuffer commandBuffer--- > , VkEvent event--- > , VkPipelineStageFlags stageMask--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdResetEvent.html vkCmdResetEvent registry at www.khronos.org>-foreign import ccall unsafe "vkCmdResetEvent" vkCmdResetEvent ::- VkCommandBuffer -- ^ commandBuffer- -> VkEvent -- ^ event- -> VkPipelineStageFlags -- ^ stageMask- -> IO ()---- | queues: 'graphics', 'compute'.------ renderpass: @both@------ > () vkCmdWaitEvents--- > ( VkCommandBuffer commandBuffer--- > , uint32_t eventCount--- > , const VkEvent* pEvents--- > , VkPipelineStageFlags srcStageMask--- > , VkPipelineStageFlags dstStageMask--- > , uint32_t memoryBarrierCount--- > , const VkMemoryBarrier* pMemoryBarriers--- > , uint32_t bufferMemoryBarrierCount--- > , const VkBufferMemoryBarrier* pBufferMemoryBarriers--- > , uint32_t imageMemoryBarrierCount--- > , const VkImageMemoryBarrier* pImageMemoryBarriers--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdWaitEvents.html vkCmdWaitEvents registry at www.khronos.org>-foreign import ccall unsafe "vkCmdWaitEvents" vkCmdWaitEvents ::- VkCommandBuffer -- ^ commandBuffer- ->- Word32 -- ^ eventCount- ->- Ptr VkEvent -- ^ pEvents- ->- VkPipelineStageFlags -- ^ srcStageMask- ->- VkPipelineStageFlags -- ^ dstStageMask- ->- Word32 -- ^ memoryBarrierCount- ->- Ptr VkMemoryBarrier -- ^ pMemoryBarriers- ->- Word32 -- ^ bufferMemoryBarrierCount- ->- Ptr VkBufferMemoryBarrier -- ^ pBufferMemoryBarriers- ->- Word32 -- ^ imageMemoryBarrierCount- -> Ptr VkImageMemoryBarrier -- ^ pImageMemoryBarriers- -> IO ()---- | queues: 'transfer', 'graphics', 'compute'.------ renderpass: @both@------ > () vkCmdPipelineBarrier--- > ( VkCommandBuffer commandBuffer--- > , VkPipelineStageFlags srcStageMask--- > , VkPipelineStageFlags dstStageMask--- > , VkDependencyFlags dependencyFlags--- > , uint32_t memoryBarrierCount--- > , const VkMemoryBarrier* pMemoryBarriers--- > , uint32_t bufferMemoryBarrierCount--- > , const VkBufferMemoryBarrier* pBufferMemoryBarriers--- > , uint32_t imageMemoryBarrierCount--- > , const VkImageMemoryBarrier* pImageMemoryBarriers--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdPipelineBarrier.html vkCmdPipelineBarrier registry at www.khronos.org>-foreign import ccall unsafe "vkCmdPipelineBarrier"- vkCmdPipelineBarrier ::- VkCommandBuffer -- ^ commandBuffer- ->- VkPipelineStageFlags -- ^ srcStageMask- ->- VkPipelineStageFlags -- ^ dstStageMask- ->- VkDependencyFlags -- ^ dependencyFlags- ->- Word32 -- ^ memoryBarrierCount- ->- Ptr VkMemoryBarrier -- ^ pMemoryBarriers- ->- Word32 -- ^ bufferMemoryBarrierCount- ->- Ptr VkBufferMemoryBarrier -- ^ pBufferMemoryBarriers- ->- Word32 -- ^ imageMemoryBarrierCount- -> Ptr VkImageMemoryBarrier -- ^ pImageMemoryBarriers- -> IO ()---- | queues: 'graphics', 'compute'.------ renderpass: @both@------ > () vkCmdBeginQuery--- > ( VkCommandBuffer commandBuffer--- > , VkQueryPool queryPool--- > , uint32_t query--- > , VkQueryControlFlags flags--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdBeginQuery.html vkCmdBeginQuery registry at www.khronos.org>-foreign import ccall unsafe "vkCmdBeginQuery" vkCmdBeginQuery ::- VkCommandBuffer -- ^ commandBuffer- ->- VkQueryPool -- ^ queryPool- -> Word32 -- ^ query- -> VkQueryControlFlags -- ^ flags- -> IO ()---- | queues: 'graphics', 'compute'.------ renderpass: @both@------ > () vkCmdEndQuery--- > ( VkCommandBuffer commandBuffer--- > , VkQueryPool queryPool--- > , uint32_t query--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdEndQuery.html vkCmdEndQuery registry at www.khronos.org>-foreign import ccall unsafe "vkCmdEndQuery" vkCmdEndQuery ::- VkCommandBuffer -- ^ commandBuffer- -> VkQueryPool -- ^ queryPool- -> Word32 -- ^ query- -> IO ()---- | queues: 'graphics', 'compute'.------ renderpass: @outside@------ > () vkCmdResetQueryPool--- > ( VkCommandBuffer commandBuffer--- > , VkQueryPool queryPool--- > , uint32_t firstQuery--- > , uint32_t queryCount--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdResetQueryPool.html vkCmdResetQueryPool registry at www.khronos.org>-foreign import ccall unsafe "vkCmdResetQueryPool"- vkCmdResetQueryPool ::- VkCommandBuffer -- ^ commandBuffer- -> VkQueryPool -- ^ queryPool- -> Word32 -- ^ firstQuery- -> Word32 -- ^ queryCount- -> IO ()---- | queues: 'transfer', 'graphics', 'compute'.------ renderpass: @both@------ pipeline: @transfer@------ > () vkCmdWriteTimestamp--- > ( VkCommandBuffer commandBuffer--- > , VkPipelineStageFlagBits pipelineStage--- > , VkQueryPool queryPool--- > , uint32_t query--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdWriteTimestamp.html vkCmdWriteTimestamp registry at www.khronos.org>-foreign import ccall unsafe "vkCmdWriteTimestamp"- vkCmdWriteTimestamp ::- VkCommandBuffer -- ^ commandBuffer- ->- VkPipelineStageFlagBits -- ^ pipelineStage- -> VkQueryPool -- ^ queryPool- -> Word32 -- ^ query- -> IO ()---- | queues: 'graphics', 'compute'.------ renderpass: @outside@------ pipeline: @transfer@------ > () vkCmdCopyQueryPoolResults--- > ( VkCommandBuffer commandBuffer--- > , VkQueryPool queryPool--- > , uint32_t firstQuery--- > , uint32_t queryCount--- > , VkBuffer dstBuffer--- > , VkDeviceSize dstOffset--- > , VkDeviceSize stride--- > , VkQueryResultFlags flags--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdCopyQueryPoolResults.html vkCmdCopyQueryPoolResults registry at www.khronos.org>-foreign import ccall unsafe "vkCmdCopyQueryPoolResults"- vkCmdCopyQueryPoolResults ::- VkCommandBuffer -- ^ commandBuffer- ->- VkQueryPool -- ^ queryPool- ->- Word32 -- ^ firstQuery- ->- Word32 -- ^ queryCount- ->- VkBuffer -- ^ dstBuffer- ->- VkDeviceSize -- ^ dstOffset- -> VkDeviceSize -- ^ stride- -> VkQueryResultFlags -- ^ flags- -> IO ()---- | queues: 'graphics', 'compute'.------ renderpass: @both@------ > () vkCmdPushConstants--- > ( VkCommandBuffer commandBuffer--- > , VkPipelineLayout layout--- > , VkShaderStageFlags stageFlags--- > , uint32_t offset--- > , uint32_t size--- > , const void* pValues--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdPushConstants.html vkCmdPushConstants registry at www.khronos.org>-foreign import ccall unsafe "vkCmdPushConstants" vkCmdPushConstants- ::- VkCommandBuffer -- ^ commandBuffer- ->- VkPipelineLayout -- ^ layout- ->- VkShaderStageFlags -- ^ stageFlags- -> Word32 -- ^ offset- -> Word32 -- ^ size- -> Ptr Void -- ^ pValues- -> IO ()---- | queues: 'graphics'.------ renderpass: @outside@------ pipeline: @graphics@------ > () vkCmdBeginRenderPass--- > ( VkCommandBuffer commandBuffer--- > , const VkRenderPassBeginInfo* pRenderPassBegin--- > , VkSubpassContents contents--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdBeginRenderPass.html vkCmdBeginRenderPass registry at www.khronos.org>-foreign import ccall unsafe "vkCmdBeginRenderPass"- vkCmdBeginRenderPass ::- VkCommandBuffer -- ^ commandBuffer- ->- Ptr VkRenderPassBeginInfo -- ^ pRenderPassBegin- -> VkSubpassContents -- ^ contents- -> IO ()---- | queues: 'graphics'.------ renderpass: @inside@------ pipeline: @graphics@------ > () vkCmdNextSubpass--- > ( VkCommandBuffer commandBuffer--- > , VkSubpassContents contents--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdNextSubpass.html vkCmdNextSubpass registry at www.khronos.org>-foreign import ccall unsafe "vkCmdNextSubpass" vkCmdNextSubpass ::- VkCommandBuffer -- ^ commandBuffer- -> VkSubpassContents -- ^ contents- -> IO ()---- | queues: 'graphics'.------ renderpass: @inside@------ pipeline: @graphics@------ > () vkCmdEndRenderPass--- > ( VkCommandBuffer commandBuffer--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdEndRenderPass.html vkCmdEndRenderPass registry at www.khronos.org>-foreign import ccall unsafe "vkCmdEndRenderPass" vkCmdEndRenderPass- :: VkCommandBuffer -- ^ commandBuffer- -> IO ()---- | queues: 'transfer', 'graphics', 'compute'.------ renderpass: @both@------ > () vkCmdExecuteCommands--- > ( VkCommandBuffer commandBuffer--- > , uint32_t commandBufferCount--- > , const VkCommandBuffer* pCommandBuffers--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdExecuteCommands.html vkCmdExecuteCommands registry at www.khronos.org>-foreign import ccall unsafe "vkCmdExecuteCommands"- vkCmdExecuteCommands ::- VkCommandBuffer -- ^ commandBuffer- -> Word32 -- ^ commandBufferCount- -> Ptr VkCommandBuffer -- ^ pCommandBuffers- -> IO ()
@@ -0,0 +1,5937 @@+#include "vulkan/vulkan.h"++{-# OPTIONS_GHC -fno-warn-unused-imports#-}+{-# OPTIONS_HADDOCK not-home#-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE ForeignFunctionInterface #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Core_1_0+ (-- * Vulkan core API interface definitions+ -- |+ --+ -- @api = vulkan@+ --+ -- @name = VK_VERSION_1_0@+ --+ -- @number = 1.0@+ --++ -- ** Header boilerplate+ --+ -- |+ -- > ##include "vk_platform.h"+ --++ -- ** API version+ --++ -- ** API constants+ module Graphics.Vulkan.Types.Enum.VkPipelineCacheHeaderVersion,+ pattern VK_LOD_CLAMP_NONE, pattern VK_REMAINING_MIP_LEVELS,+ pattern VK_REMAINING_ARRAY_LAYERS, pattern VK_WHOLE_SIZE,+ pattern VK_ATTACHMENT_UNUSED, pattern VK_TRUE, pattern VK_FALSE,+ pattern VK_QUEUE_FAMILY_IGNORED, pattern VK_SUBPASS_EXTERNAL,+ -- ** Device initialization+ vkCreateInstance, vkCreateInstanceSafe, vkDestroyInstance,+ vkDestroyInstanceSafe, vkEnumeratePhysicalDevices,+ vkEnumeratePhysicalDevicesSafe, vkGetPhysicalDeviceFeatures,+ vkGetPhysicalDeviceFeaturesSafe,+ vkGetPhysicalDeviceFormatProperties,+ vkGetPhysicalDeviceFormatPropertiesSafe,+ vkGetPhysicalDeviceImageFormatProperties,+ vkGetPhysicalDeviceImageFormatPropertiesSafe,+ vkGetPhysicalDeviceProperties, vkGetPhysicalDevicePropertiesSafe,+ vkGetPhysicalDeviceQueueFamilyProperties,+ vkGetPhysicalDeviceQueueFamilyPropertiesSafe,+ vkGetPhysicalDeviceMemoryProperties,+ vkGetPhysicalDeviceMemoryPropertiesSafe, vkGetInstanceProcAddr,+ vkGetInstanceProcAddrSafe, vkGetDeviceProcAddr,+ vkGetDeviceProcAddrSafe, module Graphics.Vulkan.Marshal,+ module Graphics.Vulkan.Types.BaseTypes,+ module Graphics.Vulkan.Types.Bitmasks,+ module Graphics.Vulkan.Types.Enum.VkFormat,+ module Graphics.Vulkan.Types.Enum.VkFormatFeatureFlags,+ module Graphics.Vulkan.Types.Enum.VkImageCreateFlags,+ module Graphics.Vulkan.Types.Enum.VkImageTiling,+ module Graphics.Vulkan.Types.Enum.VkImageType,+ module Graphics.Vulkan.Types.Enum.VkImageUsageFlags,+ module Graphics.Vulkan.Types.Enum.VkInternalAllocationType,+ module Graphics.Vulkan.Types.Enum.VkMemoryHeapFlags,+ module Graphics.Vulkan.Types.Enum.VkMemoryPropertyFlags,+ module Graphics.Vulkan.Types.Enum.VkPhysicalDeviceType,+ module Graphics.Vulkan.Types.Enum.VkQueueFlags,+ module Graphics.Vulkan.Types.Enum.VkResult,+ module Graphics.Vulkan.Types.Enum.VkSampleCountFlags,+ module Graphics.Vulkan.Types.Enum.VkStructureType,+ module Graphics.Vulkan.Types.Enum.VkSystemAllocationScope,+ module Graphics.Vulkan.Types.Funcpointers,+ module Graphics.Vulkan.Types.Handles,+ module Graphics.Vulkan.Types.Struct.VkAllocationCallbacks,+ module Graphics.Vulkan.Types.Struct.VkApplicationInfo,+ module Graphics.Vulkan.Types.Struct.VkExtent3D,+ module Graphics.Vulkan.Types.Struct.VkFormatProperties,+ module Graphics.Vulkan.Types.Struct.VkImageFormatProperties,+ module Graphics.Vulkan.Types.Struct.VkInstanceCreateInfo,+ module Graphics.Vulkan.Types.Struct.VkMemoryHeap,+ module Graphics.Vulkan.Types.Struct.VkMemoryType,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceFeatures,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceLimits,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceMemoryProperties,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseProperties,+ module Graphics.Vulkan.Types.Struct.VkQueueFamilyProperties,+ -- ** Device commands+ vkCreateDevice, vkCreateDeviceSafe, vkDestroyDevice,+ vkDestroyDeviceSafe,+ module Graphics.Vulkan.Types.Enum.VkDeviceQueueCreateFlags,+ module Graphics.Vulkan.Types.Struct.VkDeviceCreateInfo,+ module Graphics.Vulkan.Types.Struct.VkDeviceQueueCreateInfo,+ -- ** Extension discovery commands+ vkEnumerateInstanceExtensionProperties,+ vkEnumerateInstanceExtensionPropertiesSafe,+ vkEnumerateDeviceExtensionProperties,+ vkEnumerateDeviceExtensionPropertiesSafe,+ module Graphics.Vulkan.Types.Struct.VkExtensionProperties,+ -- ** Layer discovery commands+ vkEnumerateInstanceLayerProperties,+ vkEnumerateInstanceLayerPropertiesSafe,+ vkEnumerateDeviceLayerProperties,+ vkEnumerateDeviceLayerPropertiesSafe,+ module Graphics.Vulkan.Types.Struct.VkLayerProperties,+ -- ** queue commands+ vkGetDeviceQueue, vkGetDeviceQueueSafe, vkQueueSubmit,+ vkQueueSubmitSafe, vkQueueWaitIdle, vkQueueWaitIdleSafe,+ vkDeviceWaitIdle, vkDeviceWaitIdleSafe,+ module Graphics.Vulkan.Types.Enum.VkPipelineStageFlags,+ module Graphics.Vulkan.Types.Struct.VkSubmitInfo, -- ** Memory commands+ vkAllocateMemory,+ vkAllocateMemorySafe, vkFreeMemory, vkFreeMemorySafe, vkMapMemory,+ vkMapMemorySafe, vkUnmapMemory, vkUnmapMemorySafe,+ vkFlushMappedMemoryRanges, vkFlushMappedMemoryRangesSafe,+ vkInvalidateMappedMemoryRanges, vkInvalidateMappedMemoryRangesSafe,+ vkGetDeviceMemoryCommitment, vkGetDeviceMemoryCommitmentSafe,+ module Graphics.Vulkan.Types.Struct.VkMappedMemoryRange,+ module Graphics.Vulkan.Types.Struct.VkMemoryAllocateInfo,+ -- ** Memory management API commands+ vkBindBufferMemory, vkBindBufferMemorySafe, vkBindImageMemory,+ vkBindImageMemorySafe, vkGetBufferMemoryRequirements,+ vkGetBufferMemoryRequirementsSafe, vkGetImageMemoryRequirements,+ vkGetImageMemoryRequirementsSafe,+ module Graphics.Vulkan.Types.Struct.VkMemoryRequirements,+ -- ** Sparse resource memory management API commands+ vkGetImageSparseMemoryRequirements,+ vkGetImageSparseMemoryRequirementsSafe,+ vkGetPhysicalDeviceSparseImageFormatProperties,+ vkGetPhysicalDeviceSparseImageFormatPropertiesSafe,+ vkQueueBindSparse, vkQueueBindSparseSafe,+ module Graphics.Vulkan.Types.Enum.VkImageAspectFlags,+ module Graphics.Vulkan.Types.Enum.VkSparseImageFormatFlags,+ module Graphics.Vulkan.Types.Enum.VkSparseMemoryBindFlags,+ module Graphics.Vulkan.Types.Struct.VkBindSparseInfo,+ module Graphics.Vulkan.Types.Struct.VkImageSubresource,+ module Graphics.Vulkan.Types.Struct.VkOffset3D,+ module Graphics.Vulkan.Types.Struct.VkSparseBufferMemoryBindInfo,+ module Graphics.Vulkan.Types.Struct.VkSparseImageFormatProperties,+ module Graphics.Vulkan.Types.Struct.VkSparseImageMemoryBind,+ module Graphics.Vulkan.Types.Struct.VkSparseImageMemoryBindInfo,+ module Graphics.Vulkan.Types.Struct.VkSparseImageMemoryRequirements,+ module Graphics.Vulkan.Types.Struct.VkSparseImageOpaqueMemoryBindInfo,+ module Graphics.Vulkan.Types.Struct.VkSparseMemoryBind,+ -- ** Fence commands+ vkCreateFence, vkCreateFenceSafe, vkDestroyFence,+ vkDestroyFenceSafe, vkResetFences, vkResetFencesSafe,+ vkGetFenceStatus, vkGetFenceStatusSafe, vkWaitForFences,+ vkWaitForFencesSafe,+ module Graphics.Vulkan.Types.Enum.VkFenceCreateFlags,+ module Graphics.Vulkan.Types.Struct.VkFenceCreateInfo,+ -- ** Queue semaphore commands+ vkCreateSemaphore, vkCreateSemaphoreSafe, vkDestroySemaphore,+ vkDestroySemaphoreSafe,+ module Graphics.Vulkan.Types.Struct.VkSemaphoreCreateInfo,+ -- ** Event commands+ vkCreateEvent, vkCreateEventSafe, vkDestroyEvent,+ vkDestroyEventSafe, vkGetEventStatus, vkGetEventStatusSafe,+ vkSetEvent, vkSetEventSafe, vkResetEvent, vkResetEventSafe,+ module Graphics.Vulkan.Types.Struct.VkEventCreateInfo,+ -- ** Query commands+ vkCreateQueryPool, vkCreateQueryPoolSafe, vkDestroyQueryPool,+ vkDestroyQueryPoolSafe, vkGetQueryPoolResults,+ vkGetQueryPoolResultsSafe,+ module Graphics.Vulkan.Types.Enum.VkQueryPipelineStatisticFlags,+ module Graphics.Vulkan.Types.Enum.VkQueryResultFlags,+ module Graphics.Vulkan.Types.Enum.VkQueryType,+ module Graphics.Vulkan.Types.Struct.VkQueryPoolCreateInfo,+ -- ** Buffer commands+ vkCreateBuffer, vkCreateBufferSafe, vkDestroyBuffer,+ vkDestroyBufferSafe,+ module Graphics.Vulkan.Types.Enum.VkBufferCreateFlags,+ module Graphics.Vulkan.Types.Enum.VkBufferUsageFlags,+ module Graphics.Vulkan.Types.Enum.VkSharingMode,+ module Graphics.Vulkan.Types.Struct.VkBufferCreateInfo,+ -- ** Buffer view commands+ vkCreateBufferView, vkCreateBufferViewSafe, vkDestroyBufferView,+ vkDestroyBufferViewSafe,+ module Graphics.Vulkan.Types.Struct.VkBufferViewCreateInfo,+ -- ** Image commands+ vkCreateImage, vkCreateImageSafe, vkDestroyImage,+ vkDestroyImageSafe, vkGetImageSubresourceLayout,+ vkGetImageSubresourceLayoutSafe,+ module Graphics.Vulkan.Types.Enum.VkImageLayout,+ module Graphics.Vulkan.Types.Struct.VkImageCreateInfo,+ module Graphics.Vulkan.Types.Struct.VkSubresourceLayout,+ -- ** Image view commands+ vkCreateImageView, vkCreateImageViewSafe, vkDestroyImageView,+ vkDestroyImageViewSafe,+ module Graphics.Vulkan.Types.Enum.VkComponentSwizzle,+ module Graphics.Vulkan.Types.Enum.VkImageViewType,+ module Graphics.Vulkan.Types.Struct.VkComponentMapping,+ module Graphics.Vulkan.Types.Struct.VkImageSubresourceRange,+ module Graphics.Vulkan.Types.Struct.VkImageViewCreateInfo,+ -- ** Shader commands+ vkCreateShaderModule, vkCreateShaderModuleSafe,+ vkDestroyShaderModule, vkDestroyShaderModuleSafe,+ module Graphics.Vulkan.Types.Struct.VkShaderModuleCreateInfo,+ -- ** Pipeline Cache commands+ vkCreatePipelineCache, vkCreatePipelineCacheSafe,+ vkDestroyPipelineCache, vkDestroyPipelineCacheSafe,+ vkGetPipelineCacheData, vkGetPipelineCacheDataSafe,+ vkMergePipelineCaches, vkMergePipelineCachesSafe,+ module Graphics.Vulkan.Types.Struct.VkPipelineCacheCreateInfo,+ -- ** Pipeline commands+ vkCreateGraphicsPipelines, vkCreateGraphicsPipelinesSafe,+ vkCreateComputePipelines, vkCreateComputePipelinesSafe,+ vkDestroyPipeline, vkDestroyPipelineSafe,+ module Graphics.Vulkan.Types.Enum.VkBlendFactor,+ module Graphics.Vulkan.Types.Enum.VkBlendOp,+ module Graphics.Vulkan.Types.Enum.VkColorComponentFlags,+ module Graphics.Vulkan.Types.Enum.VkCompareOp,+ module Graphics.Vulkan.Types.Enum.VkCullModeFlags,+ module Graphics.Vulkan.Types.Enum.VkDynamicState,+ module Graphics.Vulkan.Types.Enum.VkFrontFace,+ module Graphics.Vulkan.Types.Enum.VkLogicOp,+ module Graphics.Vulkan.Types.Enum.VkPipelineCreateFlags,+ module Graphics.Vulkan.Types.Enum.VkPolygonMode,+ module Graphics.Vulkan.Types.Enum.VkPrimitiveTopology,+ module Graphics.Vulkan.Types.Enum.VkShaderStageFlags,+ module Graphics.Vulkan.Types.Enum.VkStencilOp,+ module Graphics.Vulkan.Types.Enum.VkVertexInputRate,+ module Graphics.Vulkan.Types.Struct.VkComputePipelineCreateInfo,+ module Graphics.Vulkan.Types.Struct.VkExtent2D,+ module Graphics.Vulkan.Types.Struct.VkGraphicsPipelineCreateInfo,+ module Graphics.Vulkan.Types.Struct.VkOffset2D,+ module Graphics.Vulkan.Types.Struct.VkPipelineColorBlendAttachmentState,+ module Graphics.Vulkan.Types.Struct.VkPipelineColorBlendStateCreateInfo,+ module Graphics.Vulkan.Types.Struct.VkPipelineDepthStencilStateCreateInfo,+ module Graphics.Vulkan.Types.Struct.VkPipelineDynamicStateCreateInfo,+ module Graphics.Vulkan.Types.Struct.VkPipelineInputAssemblyStateCreateInfo,+ module Graphics.Vulkan.Types.Struct.VkPipelineMultisampleStateCreateInfo,+ module Graphics.Vulkan.Types.Struct.VkPipelineRasterizationStateCreateInfo,+ module Graphics.Vulkan.Types.Struct.VkPipelineShaderStageCreateInfo,+ module Graphics.Vulkan.Types.Struct.VkPipelineTessellationStateCreateInfo,+ module Graphics.Vulkan.Types.Struct.VkPipelineVertexInputStateCreateInfo,+ module Graphics.Vulkan.Types.Struct.VkPipelineViewportStateCreateInfo,+ module Graphics.Vulkan.Types.Struct.VkRect2D,+ module Graphics.Vulkan.Types.Struct.VkSpecializationInfo,+ module Graphics.Vulkan.Types.Struct.VkSpecializationMapEntry,+ module Graphics.Vulkan.Types.Struct.VkStencilOpState,+ module Graphics.Vulkan.Types.Struct.VkVertexInputAttributeDescription,+ module Graphics.Vulkan.Types.Struct.VkVertexInputBindingDescription,+ module Graphics.Vulkan.Types.Struct.VkViewport,+ -- ** Pipeline layout commands+ vkCreatePipelineLayout, vkCreatePipelineLayoutSafe,+ vkDestroyPipelineLayout, vkDestroyPipelineLayoutSafe,+ module Graphics.Vulkan.Types.Struct.VkPipelineLayoutCreateInfo,+ module Graphics.Vulkan.Types.Struct.VkPushConstantRange,+ -- ** Sampler commands+ vkCreateSampler, vkCreateSamplerSafe, vkDestroySampler,+ vkDestroySamplerSafe,+ module Graphics.Vulkan.Types.Enum.VkBorderColor,+ module Graphics.Vulkan.Types.Enum.VkFilter,+ module Graphics.Vulkan.Types.Enum.VkSamplerAddressMode,+ module Graphics.Vulkan.Types.Enum.VkSamplerMipmapMode,+ module Graphics.Vulkan.Types.Struct.VkSamplerCreateInfo,+ -- ** Descriptor set commands+ vkCreateDescriptorSetLayout, vkCreateDescriptorSetLayoutSafe,+ vkDestroyDescriptorSetLayout, vkDestroyDescriptorSetLayoutSafe,+ vkCreateDescriptorPool, vkCreateDescriptorPoolSafe,+ vkDestroyDescriptorPool, vkDestroyDescriptorPoolSafe,+ vkResetDescriptorPool, vkResetDescriptorPoolSafe,+ vkAllocateDescriptorSets, vkAllocateDescriptorSetsSafe,+ vkFreeDescriptorSets, vkFreeDescriptorSetsSafe,+ vkUpdateDescriptorSets, vkUpdateDescriptorSetsSafe,+ module Graphics.Vulkan.Types.Enum.VkDescriptorPoolCreateFlags,+ module Graphics.Vulkan.Types.Enum.VkDescriptorSetLayoutCreateFlags,+ module Graphics.Vulkan.Types.Enum.VkDescriptorType,+ module Graphics.Vulkan.Types.Struct.VkCopyDescriptorSet,+ module Graphics.Vulkan.Types.Struct.VkDescriptorBufferInfo,+ module Graphics.Vulkan.Types.Struct.VkDescriptorImageInfo,+ module Graphics.Vulkan.Types.Struct.VkDescriptorPoolCreateInfo,+ module Graphics.Vulkan.Types.Struct.VkDescriptorPoolSize,+ module Graphics.Vulkan.Types.Struct.VkDescriptorSetAllocateInfo,+ module Graphics.Vulkan.Types.Struct.VkDescriptorSetLayoutBinding,+ module Graphics.Vulkan.Types.Struct.VkDescriptorSetLayoutCreateInfo,+ module Graphics.Vulkan.Types.Struct.VkWriteDescriptorSet,+ -- ** Pass commands+ vkCreateFramebuffer, vkCreateFramebufferSafe, vkDestroyFramebuffer,+ vkDestroyFramebufferSafe, vkCreateRenderPass,+ vkCreateRenderPassSafe, vkDestroyRenderPass,+ vkDestroyRenderPassSafe, vkGetRenderAreaGranularity,+ vkGetRenderAreaGranularitySafe,+ module Graphics.Vulkan.Types.Enum.VkAccessFlags,+ module Graphics.Vulkan.Types.Enum.VkAttachmentDescriptionFlags,+ module Graphics.Vulkan.Types.Enum.VkAttachmentLoadOp,+ module Graphics.Vulkan.Types.Enum.VkAttachmentStoreOp,+ module Graphics.Vulkan.Types.Enum.VkDependencyFlags,+ module Graphics.Vulkan.Types.Enum.VkPipelineBindPoint,+ module Graphics.Vulkan.Types.Enum.VkSubpassDescriptionFlags,+ module Graphics.Vulkan.Types.Struct.VkAttachmentDescription,+ module Graphics.Vulkan.Types.Struct.VkAttachmentReference,+ module Graphics.Vulkan.Types.Struct.VkFramebufferCreateInfo,+ module Graphics.Vulkan.Types.Struct.VkRenderPassCreateInfo,+ module Graphics.Vulkan.Types.Struct.VkSubpassDependency,+ module Graphics.Vulkan.Types.Struct.VkSubpassDescription,+ -- ** Command pool commands+ vkCreateCommandPool, vkCreateCommandPoolSafe, vkDestroyCommandPool,+ vkDestroyCommandPoolSafe, vkResetCommandPool,+ vkResetCommandPoolSafe,+ module Graphics.Vulkan.Types.Enum.VkCommandPoolCreateFlags,+ module Graphics.Vulkan.Types.Enum.VkCommandPoolResetFlags,+ module Graphics.Vulkan.Types.Struct.VkCommandPoolCreateInfo,+ -- ** Command buffer commands+ vkAllocateCommandBuffers, vkAllocateCommandBuffersSafe,+ vkFreeCommandBuffers, vkFreeCommandBuffersSafe,+ vkBeginCommandBuffer, vkBeginCommandBufferSafe, vkEndCommandBuffer,+ vkEndCommandBufferSafe, vkResetCommandBuffer,+ vkResetCommandBufferSafe,+ module Graphics.Vulkan.Types.Enum.VkCommandBufferLevel,+ module Graphics.Vulkan.Types.Enum.VkCommandBufferResetFlags,+ module Graphics.Vulkan.Types.Enum.VkCommandBufferUsageFlags,+ module Graphics.Vulkan.Types.Enum.VkQueryControlFlags,+ module Graphics.Vulkan.Types.Struct.VkCommandBufferAllocateInfo,+ module Graphics.Vulkan.Types.Struct.VkCommandBufferBeginInfo,+ module Graphics.Vulkan.Types.Struct.VkCommandBufferInheritanceInfo,+ -- ** Command buffer building commands+ vkCmdBindPipeline, vkCmdBindPipelineSafe, vkCmdSetViewport,+ vkCmdSetViewportSafe, vkCmdSetScissor, vkCmdSetScissorSafe,+ vkCmdSetLineWidth, vkCmdSetLineWidthSafe, vkCmdSetDepthBias,+ vkCmdSetDepthBiasSafe, vkCmdSetBlendConstants,+ vkCmdSetBlendConstantsSafe, vkCmdSetDepthBounds,+ vkCmdSetDepthBoundsSafe, vkCmdSetStencilCompareMask,+ vkCmdSetStencilCompareMaskSafe, vkCmdSetStencilWriteMask,+ vkCmdSetStencilWriteMaskSafe, vkCmdSetStencilReference,+ vkCmdSetStencilReferenceSafe, vkCmdBindDescriptorSets,+ vkCmdBindDescriptorSetsSafe, vkCmdBindIndexBuffer,+ vkCmdBindIndexBufferSafe, vkCmdBindVertexBuffers,+ vkCmdBindVertexBuffersSafe, vkCmdDraw, vkCmdDrawSafe,+ vkCmdDrawIndexed, vkCmdDrawIndexedSafe, vkCmdDrawIndirect,+ vkCmdDrawIndirectSafe, vkCmdDrawIndexedIndirect,+ vkCmdDrawIndexedIndirectSafe, vkCmdDispatch, vkCmdDispatchSafe,+ vkCmdDispatchIndirect, vkCmdDispatchIndirectSafe, vkCmdCopyBuffer,+ vkCmdCopyBufferSafe, vkCmdCopyImage, vkCmdCopyImageSafe,+ vkCmdBlitImage, vkCmdBlitImageSafe, vkCmdCopyBufferToImage,+ vkCmdCopyBufferToImageSafe, vkCmdCopyImageToBuffer,+ vkCmdCopyImageToBufferSafe, vkCmdUpdateBuffer,+ vkCmdUpdateBufferSafe, vkCmdFillBuffer, vkCmdFillBufferSafe,+ vkCmdClearColorImage, vkCmdClearColorImageSafe,+ vkCmdClearDepthStencilImage, vkCmdClearDepthStencilImageSafe,+ vkCmdClearAttachments, vkCmdClearAttachmentsSafe,+ vkCmdResolveImage, vkCmdResolveImageSafe, vkCmdSetEvent,+ vkCmdSetEventSafe, vkCmdResetEvent, vkCmdResetEventSafe,+ vkCmdWaitEvents, vkCmdWaitEventsSafe, vkCmdPipelineBarrier,+ vkCmdPipelineBarrierSafe, vkCmdBeginQuery, vkCmdBeginQuerySafe,+ vkCmdEndQuery, vkCmdEndQuerySafe, vkCmdResetQueryPool,+ vkCmdResetQueryPoolSafe, vkCmdWriteTimestamp,+ vkCmdWriteTimestampSafe, vkCmdCopyQueryPoolResults,+ vkCmdCopyQueryPoolResultsSafe, vkCmdPushConstants,+ vkCmdPushConstantsSafe, vkCmdBeginRenderPass,+ vkCmdBeginRenderPassSafe, vkCmdNextSubpass, vkCmdNextSubpassSafe,+ vkCmdEndRenderPass, vkCmdEndRenderPassSafe, vkCmdExecuteCommands,+ vkCmdExecuteCommandsSafe,+ module Graphics.Vulkan.Types.Enum.VkIndexType,+ module Graphics.Vulkan.Types.Enum.VkStencilFaceFlags,+ module Graphics.Vulkan.Types.Enum.VkSubpassContents,+ module Graphics.Vulkan.Types.Struct.VkBufferCopy,+ module Graphics.Vulkan.Types.Struct.VkBufferImageCopy,+ module Graphics.Vulkan.Types.Struct.VkBufferMemoryBarrier,+ module Graphics.Vulkan.Types.Struct.VkClearAttachment,+ module Graphics.Vulkan.Types.Struct.VkClearColorValue,+ module Graphics.Vulkan.Types.Struct.VkClearDepthStencilValue,+ module Graphics.Vulkan.Types.Struct.VkClearRect,+ module Graphics.Vulkan.Types.Struct.VkClearValue,+ module Graphics.Vulkan.Types.Struct.VkImageBlit,+ module Graphics.Vulkan.Types.Struct.VkImageCopy,+ module Graphics.Vulkan.Types.Struct.VkImageMemoryBarrier,+ module Graphics.Vulkan.Types.Struct.VkImageResolve,+ module Graphics.Vulkan.Types.Struct.VkImageSubresourceLayers,+ module Graphics.Vulkan.Types.Struct.VkMemoryBarrier,+ module Graphics.Vulkan.Types.Struct.VkRenderPassBeginInfo,+ -- ** Types not directly used by the API. Include e.g. structs that are not parameter types of commands, but still defined by the API.+ module Graphics.Vulkan.Types.Struct.VkDispatchIndirectCommand,+ module Graphics.Vulkan.Types.Struct.VkDrawIndexedIndirectCommand,+ module Graphics.Vulkan.Types.Struct.VkDrawIndirectCommand,+ module Graphics.Vulkan.Types.Enum.VkObjectType)+ where+import Graphics.Vulkan.Constants+ (pattern VK_ATTACHMENT_UNUSED,+ pattern VK_FALSE,+ pattern VK_LOD_CLAMP_NONE,+ pattern VK_QUEUE_FAMILY_IGNORED,+ pattern VK_REMAINING_ARRAY_LAYERS,+ pattern VK_REMAINING_MIP_LEVELS,+ pattern VK_SUBPASS_EXTERNAL,+ pattern VK_TRUE,+ pattern VK_WHOLE_SIZE)+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Types.BaseTypes+import Graphics.Vulkan.Types.Bitmasks+import Graphics.Vulkan.Types.Enum.VkAccessFlags+import Graphics.Vulkan.Types.Enum.VkAttachmentDescriptionFlags+import Graphics.Vulkan.Types.Enum.VkAttachmentLoadOp+import Graphics.Vulkan.Types.Enum.VkAttachmentStoreOp+import Graphics.Vulkan.Types.Enum.VkBlendFactor+import Graphics.Vulkan.Types.Enum.VkBlendOp+import Graphics.Vulkan.Types.Enum.VkBorderColor+import Graphics.Vulkan.Types.Enum.VkBufferCreateFlags+import Graphics.Vulkan.Types.Enum.VkBufferUsageFlags+import Graphics.Vulkan.Types.Enum.VkColorComponentFlags+import Graphics.Vulkan.Types.Enum.VkCommandBufferLevel+import Graphics.Vulkan.Types.Enum.VkCommandBufferResetFlags+import Graphics.Vulkan.Types.Enum.VkCommandBufferUsageFlags+import Graphics.Vulkan.Types.Enum.VkCommandPoolCreateFlags+import Graphics.Vulkan.Types.Enum.VkCommandPoolResetFlags+import Graphics.Vulkan.Types.Enum.VkCompareOp+import Graphics.Vulkan.Types.Enum.VkComponentSwizzle+import Graphics.Vulkan.Types.Enum.VkCullModeFlags+import Graphics.Vulkan.Types.Enum.VkDependencyFlags+import Graphics.Vulkan.Types.Enum.VkDescriptorPoolCreateFlags+import Graphics.Vulkan.Types.Enum.VkDescriptorSetLayoutCreateFlags+import Graphics.Vulkan.Types.Enum.VkDescriptorType+import Graphics.Vulkan.Types.Enum.VkDeviceQueueCreateFlags+import Graphics.Vulkan.Types.Enum.VkDynamicState+import Graphics.Vulkan.Types.Enum.VkFenceCreateFlags+import Graphics.Vulkan.Types.Enum.VkFilter+import Graphics.Vulkan.Types.Enum.VkFormat+import Graphics.Vulkan.Types.Enum.VkFormatFeatureFlags+import Graphics.Vulkan.Types.Enum.VkFrontFace+import Graphics.Vulkan.Types.Enum.VkImageAspectFlags+import Graphics.Vulkan.Types.Enum.VkImageCreateFlags+import Graphics.Vulkan.Types.Enum.VkImageLayout+import Graphics.Vulkan.Types.Enum.VkImageTiling+import Graphics.Vulkan.Types.Enum.VkImageType+import Graphics.Vulkan.Types.Enum.VkImageUsageFlags+import Graphics.Vulkan.Types.Enum.VkImageViewType+import Graphics.Vulkan.Types.Enum.VkIndexType+import Graphics.Vulkan.Types.Enum.VkInternalAllocationType+import Graphics.Vulkan.Types.Enum.VkLogicOp+import Graphics.Vulkan.Types.Enum.VkMemoryHeapFlags+import Graphics.Vulkan.Types.Enum.VkMemoryPropertyFlags+import Graphics.Vulkan.Types.Enum.VkObjectType+import Graphics.Vulkan.Types.Enum.VkPhysicalDeviceType+import Graphics.Vulkan.Types.Enum.VkPipelineBindPoint+import Graphics.Vulkan.Types.Enum.VkPipelineCacheHeaderVersion+import Graphics.Vulkan.Types.Enum.VkPipelineCreateFlags+import Graphics.Vulkan.Types.Enum.VkPipelineStageFlags+import Graphics.Vulkan.Types.Enum.VkPolygonMode+import Graphics.Vulkan.Types.Enum.VkPrimitiveTopology+import Graphics.Vulkan.Types.Enum.VkQueryControlFlags+import Graphics.Vulkan.Types.Enum.VkQueryPipelineStatisticFlags+import Graphics.Vulkan.Types.Enum.VkQueryResultFlags+import Graphics.Vulkan.Types.Enum.VkQueryType+import Graphics.Vulkan.Types.Enum.VkQueueFlags+import Graphics.Vulkan.Types.Enum.VkResult+import Graphics.Vulkan.Types.Enum.VkSampleCountFlags+import Graphics.Vulkan.Types.Enum.VkSamplerAddressMode+import Graphics.Vulkan.Types.Enum.VkSamplerMipmapMode+import Graphics.Vulkan.Types.Enum.VkShaderStageFlags+import Graphics.Vulkan.Types.Enum.VkSharingMode+import Graphics.Vulkan.Types.Enum.VkSparseImageFormatFlags+import Graphics.Vulkan.Types.Enum.VkSparseMemoryBindFlags+import Graphics.Vulkan.Types.Enum.VkStencilFaceFlags+import Graphics.Vulkan.Types.Enum.VkStencilOp+import Graphics.Vulkan.Types.Enum.VkStructureType+import Graphics.Vulkan.Types.Enum.VkSubpassContents+import Graphics.Vulkan.Types.Enum.VkSubpassDescriptionFlags+import Graphics.Vulkan.Types.Enum.VkSystemAllocationScope+import Graphics.Vulkan.Types.Enum.VkVertexInputRate+import Graphics.Vulkan.Types.Funcpointers+import Graphics.Vulkan.Types.Handles+import Graphics.Vulkan.Types.Struct.VkAllocationCallbacks+import Graphics.Vulkan.Types.Struct.VkApplicationInfo+import Graphics.Vulkan.Types.Struct.VkAttachmentDescription+import Graphics.Vulkan.Types.Struct.VkAttachmentReference+import Graphics.Vulkan.Types.Struct.VkBindSparseInfo+import Graphics.Vulkan.Types.Struct.VkBufferCopy+import Graphics.Vulkan.Types.Struct.VkBufferCreateInfo+import Graphics.Vulkan.Types.Struct.VkBufferImageCopy+import Graphics.Vulkan.Types.Struct.VkBufferMemoryBarrier+import Graphics.Vulkan.Types.Struct.VkBufferViewCreateInfo+import Graphics.Vulkan.Types.Struct.VkClearAttachment+import Graphics.Vulkan.Types.Struct.VkClearColorValue+import Graphics.Vulkan.Types.Struct.VkClearDepthStencilValue+import Graphics.Vulkan.Types.Struct.VkClearRect+import Graphics.Vulkan.Types.Struct.VkClearValue+import Graphics.Vulkan.Types.Struct.VkCommandBufferAllocateInfo+import Graphics.Vulkan.Types.Struct.VkCommandBufferBeginInfo+import Graphics.Vulkan.Types.Struct.VkCommandBufferInheritanceInfo+import Graphics.Vulkan.Types.Struct.VkCommandPoolCreateInfo+import Graphics.Vulkan.Types.Struct.VkComponentMapping+import Graphics.Vulkan.Types.Struct.VkComputePipelineCreateInfo+import Graphics.Vulkan.Types.Struct.VkCopyDescriptorSet+import Graphics.Vulkan.Types.Struct.VkDescriptorBufferInfo+import Graphics.Vulkan.Types.Struct.VkDescriptorImageInfo+import Graphics.Vulkan.Types.Struct.VkDescriptorPoolCreateInfo+import Graphics.Vulkan.Types.Struct.VkDescriptorPoolSize+import Graphics.Vulkan.Types.Struct.VkDescriptorSetAllocateInfo+import Graphics.Vulkan.Types.Struct.VkDescriptorSetLayoutBinding+import Graphics.Vulkan.Types.Struct.VkDescriptorSetLayoutCreateInfo+import Graphics.Vulkan.Types.Struct.VkDeviceCreateInfo+import Graphics.Vulkan.Types.Struct.VkDeviceQueueCreateInfo+import Graphics.Vulkan.Types.Struct.VkDispatchIndirectCommand+import Graphics.Vulkan.Types.Struct.VkDrawIndexedIndirectCommand+import Graphics.Vulkan.Types.Struct.VkDrawIndirectCommand+import Graphics.Vulkan.Types.Struct.VkEventCreateInfo+import Graphics.Vulkan.Types.Struct.VkExtensionProperties+import Graphics.Vulkan.Types.Struct.VkExtent2D+import Graphics.Vulkan.Types.Struct.VkExtent3D+import Graphics.Vulkan.Types.Struct.VkFenceCreateInfo+import Graphics.Vulkan.Types.Struct.VkFormatProperties+import Graphics.Vulkan.Types.Struct.VkFramebufferCreateInfo+import Graphics.Vulkan.Types.Struct.VkGraphicsPipelineCreateInfo+import Graphics.Vulkan.Types.Struct.VkImageBlit+import Graphics.Vulkan.Types.Struct.VkImageCopy+import Graphics.Vulkan.Types.Struct.VkImageCreateInfo+import Graphics.Vulkan.Types.Struct.VkImageFormatProperties+import Graphics.Vulkan.Types.Struct.VkImageMemoryBarrier+import Graphics.Vulkan.Types.Struct.VkImageResolve+import Graphics.Vulkan.Types.Struct.VkImageSubresource+import Graphics.Vulkan.Types.Struct.VkImageSubresourceLayers+import Graphics.Vulkan.Types.Struct.VkImageSubresourceRange+import Graphics.Vulkan.Types.Struct.VkImageViewCreateInfo+import Graphics.Vulkan.Types.Struct.VkInstanceCreateInfo+import Graphics.Vulkan.Types.Struct.VkLayerProperties+import Graphics.Vulkan.Types.Struct.VkMappedMemoryRange+import Graphics.Vulkan.Types.Struct.VkMemoryAllocateInfo+import Graphics.Vulkan.Types.Struct.VkMemoryBarrier+import Graphics.Vulkan.Types.Struct.VkMemoryHeap+import Graphics.Vulkan.Types.Struct.VkMemoryRequirements+import Graphics.Vulkan.Types.Struct.VkMemoryType+import Graphics.Vulkan.Types.Struct.VkOffset2D+import Graphics.Vulkan.Types.Struct.VkOffset3D+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceFeatures+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceLimits+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceMemoryProperties+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseProperties+import Graphics.Vulkan.Types.Struct.VkPipelineCacheCreateInfo+import Graphics.Vulkan.Types.Struct.VkPipelineColorBlendAttachmentState+import Graphics.Vulkan.Types.Struct.VkPipelineColorBlendStateCreateInfo+import Graphics.Vulkan.Types.Struct.VkPipelineDepthStencilStateCreateInfo+import Graphics.Vulkan.Types.Struct.VkPipelineDynamicStateCreateInfo+import Graphics.Vulkan.Types.Struct.VkPipelineInputAssemblyStateCreateInfo+import Graphics.Vulkan.Types.Struct.VkPipelineLayoutCreateInfo+import Graphics.Vulkan.Types.Struct.VkPipelineMultisampleStateCreateInfo+import Graphics.Vulkan.Types.Struct.VkPipelineRasterizationStateCreateInfo+import Graphics.Vulkan.Types.Struct.VkPipelineShaderStageCreateInfo+import Graphics.Vulkan.Types.Struct.VkPipelineTessellationStateCreateInfo+import Graphics.Vulkan.Types.Struct.VkPipelineVertexInputStateCreateInfo+import Graphics.Vulkan.Types.Struct.VkPipelineViewportStateCreateInfo+import Graphics.Vulkan.Types.Struct.VkPushConstantRange+import Graphics.Vulkan.Types.Struct.VkQueryPoolCreateInfo+import Graphics.Vulkan.Types.Struct.VkQueueFamilyProperties+import Graphics.Vulkan.Types.Struct.VkRect2D+import Graphics.Vulkan.Types.Struct.VkRenderPassBeginInfo+import Graphics.Vulkan.Types.Struct.VkRenderPassCreateInfo+import Graphics.Vulkan.Types.Struct.VkSamplerCreateInfo+import Graphics.Vulkan.Types.Struct.VkSemaphoreCreateInfo+import Graphics.Vulkan.Types.Struct.VkShaderModuleCreateInfo+import Graphics.Vulkan.Types.Struct.VkSparseBufferMemoryBindInfo+import Graphics.Vulkan.Types.Struct.VkSparseImageFormatProperties+import Graphics.Vulkan.Types.Struct.VkSparseImageMemoryBind+import Graphics.Vulkan.Types.Struct.VkSparseImageMemoryBindInfo+import Graphics.Vulkan.Types.Struct.VkSparseImageMemoryRequirements+import Graphics.Vulkan.Types.Struct.VkSparseImageOpaqueMemoryBindInfo+import Graphics.Vulkan.Types.Struct.VkSparseMemoryBind+import Graphics.Vulkan.Types.Struct.VkSpecializationInfo+import Graphics.Vulkan.Types.Struct.VkSpecializationMapEntry+import Graphics.Vulkan.Types.Struct.VkStencilOpState+import Graphics.Vulkan.Types.Struct.VkSubmitInfo+import Graphics.Vulkan.Types.Struct.VkSubpassDependency+import Graphics.Vulkan.Types.Struct.VkSubpassDescription+import Graphics.Vulkan.Types.Struct.VkSubresourceLayout+import Graphics.Vulkan.Types.Struct.VkVertexInputAttributeDescription+import Graphics.Vulkan.Types.Struct.VkVertexInputBindingDescription+import Graphics.Vulkan.Types.Struct.VkViewport+import Graphics.Vulkan.Types.Struct.VkWriteDescriptorSet++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_INITIALIZATION_FAILED', 'VK_ERROR_LAYER_NOT_PRESENT', 'VK_ERROR_EXTENSION_NOT_PRESENT', 'VK_ERROR_INCOMPATIBLE_DRIVER'.+--+-- > VkResult vkCreateInstance+-- > ( const VkInstanceCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkInstance* pInstance+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateInstance.html vkCreateInstance registry at www.khronos.org>+foreign import ccall unsafe "vkCreateInstance" vkCreateInstance ::+ Ptr VkInstanceCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkInstance -- ^ pInstance+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_INITIALIZATION_FAILED', 'VK_ERROR_LAYER_NOT_PRESENT', 'VK_ERROR_EXTENSION_NOT_PRESENT', 'VK_ERROR_INCOMPATIBLE_DRIVER'.+--+-- > VkResult vkCreateInstance+-- > ( const VkInstanceCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkInstance* pInstance+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateInstance.html vkCreateInstance registry at www.khronos.org>+foreign import ccall safe "vkCreateInstance" vkCreateInstanceSafe+ ::+ Ptr VkInstanceCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkInstance -- ^ pInstance+ -> IO VkResult++-- | > () vkDestroyInstance+-- > ( VkInstance instance+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyInstance.html vkDestroyInstance registry at www.khronos.org>+foreign import ccall unsafe "vkDestroyInstance" vkDestroyInstance+ :: VkInstance -- ^ instance+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | > () vkDestroyInstance+-- > ( VkInstance instance+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyInstance.html vkDestroyInstance registry at www.khronos.org>+foreign import ccall safe "vkDestroyInstance" vkDestroyInstanceSafe+ :: VkInstance -- ^ instance+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_INITIALIZATION_FAILED'.+--+-- > VkResult vkEnumeratePhysicalDevices+-- > ( VkInstance instance+-- > , uint32_t* pPhysicalDeviceCount+-- > , VkPhysicalDevice* pPhysicalDevices+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkEnumeratePhysicalDevices.html vkEnumeratePhysicalDevices registry at www.khronos.org>+foreign import ccall unsafe "vkEnumeratePhysicalDevices"+ vkEnumeratePhysicalDevices ::+ VkInstance -- ^ instance+ -> Ptr Word32 -- ^ pPhysicalDeviceCount+ -> Ptr VkPhysicalDevice -- ^ pPhysicalDevices+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_INITIALIZATION_FAILED'.+--+-- > VkResult vkEnumeratePhysicalDevices+-- > ( VkInstance instance+-- > , uint32_t* pPhysicalDeviceCount+-- > , VkPhysicalDevice* pPhysicalDevices+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkEnumeratePhysicalDevices.html vkEnumeratePhysicalDevices registry at www.khronos.org>+foreign import ccall safe "vkEnumeratePhysicalDevices"+ vkEnumeratePhysicalDevicesSafe ::+ VkInstance -- ^ instance+ -> Ptr Word32 -- ^ pPhysicalDeviceCount+ -> Ptr VkPhysicalDevice -- ^ pPhysicalDevices+ -> IO VkResult++-- | > () vkGetPhysicalDeviceFeatures+-- > ( VkPhysicalDevice physicalDevice+-- > , VkPhysicalDeviceFeatures* pFeatures+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceFeatures.html vkGetPhysicalDeviceFeatures registry at www.khronos.org>+foreign import ccall unsafe "vkGetPhysicalDeviceFeatures"+ vkGetPhysicalDeviceFeatures ::+ VkPhysicalDevice -- ^ physicalDevice+ -> Ptr VkPhysicalDeviceFeatures -- ^ pFeatures+ -> IO ()++-- | > () vkGetPhysicalDeviceFeatures+-- > ( VkPhysicalDevice physicalDevice+-- > , VkPhysicalDeviceFeatures* pFeatures+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceFeatures.html vkGetPhysicalDeviceFeatures registry at www.khronos.org>+foreign import ccall safe "vkGetPhysicalDeviceFeatures"+ vkGetPhysicalDeviceFeaturesSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ -> Ptr VkPhysicalDeviceFeatures -- ^ pFeatures+ -> IO ()++-- | > () vkGetPhysicalDeviceFormatProperties+-- > ( VkPhysicalDevice physicalDevice+-- > , VkFormat format+-- > , VkFormatProperties* pFormatProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceFormatProperties.html vkGetPhysicalDeviceFormatProperties registry at www.khronos.org>+foreign import ccall unsafe "vkGetPhysicalDeviceFormatProperties"+ vkGetPhysicalDeviceFormatProperties ::+ VkPhysicalDevice -- ^ physicalDevice+ -> VkFormat -- ^ format+ -> Ptr VkFormatProperties -- ^ pFormatProperties+ -> IO ()++-- | > () vkGetPhysicalDeviceFormatProperties+-- > ( VkPhysicalDevice physicalDevice+-- > , VkFormat format+-- > , VkFormatProperties* pFormatProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceFormatProperties.html vkGetPhysicalDeviceFormatProperties registry at www.khronos.org>+foreign import ccall safe "vkGetPhysicalDeviceFormatProperties"+ vkGetPhysicalDeviceFormatPropertiesSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ -> VkFormat -- ^ format+ -> Ptr VkFormatProperties -- ^ pFormatProperties+ -> IO ()++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_FORMAT_NOT_SUPPORTED'.+--+-- > VkResult vkGetPhysicalDeviceImageFormatProperties+-- > ( VkPhysicalDevice physicalDevice+-- > , VkFormat format+-- > , VkImageType type+-- > , VkImageTiling tiling+-- > , VkImageUsageFlags usage+-- > , VkImageCreateFlags flags+-- > , VkImageFormatProperties* pImageFormatProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceImageFormatProperties.html vkGetPhysicalDeviceImageFormatProperties registry at www.khronos.org>+foreign import ccall unsafe+ "vkGetPhysicalDeviceImageFormatProperties"+ vkGetPhysicalDeviceImageFormatProperties ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ VkFormat -- ^ format+ ->+ VkImageType -- ^ type+ ->+ VkImageTiling -- ^ tiling+ ->+ VkImageUsageFlags -- ^ usage+ ->+ VkImageCreateFlags -- ^ flags+ -> Ptr VkImageFormatProperties -- ^ pImageFormatProperties+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_FORMAT_NOT_SUPPORTED'.+--+-- > VkResult vkGetPhysicalDeviceImageFormatProperties+-- > ( VkPhysicalDevice physicalDevice+-- > , VkFormat format+-- > , VkImageType type+-- > , VkImageTiling tiling+-- > , VkImageUsageFlags usage+-- > , VkImageCreateFlags flags+-- > , VkImageFormatProperties* pImageFormatProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceImageFormatProperties.html vkGetPhysicalDeviceImageFormatProperties registry at www.khronos.org>+foreign import ccall safe+ "vkGetPhysicalDeviceImageFormatProperties"+ vkGetPhysicalDeviceImageFormatPropertiesSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ VkFormat -- ^ format+ ->+ VkImageType -- ^ type+ ->+ VkImageTiling -- ^ tiling+ ->+ VkImageUsageFlags -- ^ usage+ ->+ VkImageCreateFlags -- ^ flags+ -> Ptr VkImageFormatProperties -- ^ pImageFormatProperties+ -> IO VkResult++-- | > () vkGetPhysicalDeviceProperties+-- > ( VkPhysicalDevice physicalDevice+-- > , VkPhysicalDeviceProperties* pProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceProperties.html vkGetPhysicalDeviceProperties registry at www.khronos.org>+foreign import ccall unsafe "vkGetPhysicalDeviceProperties"+ vkGetPhysicalDeviceProperties ::+ VkPhysicalDevice -- ^ physicalDevice+ -> Ptr VkPhysicalDeviceProperties -- ^ pProperties+ -> IO ()++-- | > () vkGetPhysicalDeviceProperties+-- > ( VkPhysicalDevice physicalDevice+-- > , VkPhysicalDeviceProperties* pProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceProperties.html vkGetPhysicalDeviceProperties registry at www.khronos.org>+foreign import ccall safe "vkGetPhysicalDeviceProperties"+ vkGetPhysicalDevicePropertiesSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ -> Ptr VkPhysicalDeviceProperties -- ^ pProperties+ -> IO ()++-- | > () vkGetPhysicalDeviceQueueFamilyProperties+-- > ( VkPhysicalDevice physicalDevice+-- > , uint32_t* pQueueFamilyPropertyCount+-- > , VkQueueFamilyProperties* pQueueFamilyProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceQueueFamilyProperties.html vkGetPhysicalDeviceQueueFamilyProperties registry at www.khronos.org>+foreign import ccall unsafe+ "vkGetPhysicalDeviceQueueFamilyProperties"+ vkGetPhysicalDeviceQueueFamilyProperties ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ Ptr Word32 -- ^ pQueueFamilyPropertyCount+ -> Ptr VkQueueFamilyProperties -- ^ pQueueFamilyProperties+ -> IO ()++-- | > () vkGetPhysicalDeviceQueueFamilyProperties+-- > ( VkPhysicalDevice physicalDevice+-- > , uint32_t* pQueueFamilyPropertyCount+-- > , VkQueueFamilyProperties* pQueueFamilyProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceQueueFamilyProperties.html vkGetPhysicalDeviceQueueFamilyProperties registry at www.khronos.org>+foreign import ccall safe+ "vkGetPhysicalDeviceQueueFamilyProperties"+ vkGetPhysicalDeviceQueueFamilyPropertiesSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ Ptr Word32 -- ^ pQueueFamilyPropertyCount+ -> Ptr VkQueueFamilyProperties -- ^ pQueueFamilyProperties+ -> IO ()++-- | > () vkGetPhysicalDeviceMemoryProperties+-- > ( VkPhysicalDevice physicalDevice+-- > , VkPhysicalDeviceMemoryProperties* pMemoryProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceMemoryProperties.html vkGetPhysicalDeviceMemoryProperties registry at www.khronos.org>+foreign import ccall unsafe "vkGetPhysicalDeviceMemoryProperties"+ vkGetPhysicalDeviceMemoryProperties ::+ VkPhysicalDevice -- ^ physicalDevice+ -> Ptr VkPhysicalDeviceMemoryProperties -- ^ pMemoryProperties+ -> IO ()++-- | > () vkGetPhysicalDeviceMemoryProperties+-- > ( VkPhysicalDevice physicalDevice+-- > , VkPhysicalDeviceMemoryProperties* pMemoryProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceMemoryProperties.html vkGetPhysicalDeviceMemoryProperties registry at www.khronos.org>+foreign import ccall safe "vkGetPhysicalDeviceMemoryProperties"+ vkGetPhysicalDeviceMemoryPropertiesSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ -> Ptr VkPhysicalDeviceMemoryProperties -- ^ pMemoryProperties+ -> IO ()++-- | > PFN_vkVoidFunction vkGetInstanceProcAddr+-- > ( VkInstance instance+-- > , const char* pName+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetInstanceProcAddr.html vkGetInstanceProcAddr registry at www.khronos.org>+foreign import ccall unsafe "vkGetInstanceProcAddr"+ vkGetInstanceProcAddr ::+ VkInstance -- ^ instance+ -> CString -- ^ pName+ -> IO PFN_vkVoidFunction++-- | > PFN_vkVoidFunction vkGetInstanceProcAddr+-- > ( VkInstance instance+-- > , const char* pName+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetInstanceProcAddr.html vkGetInstanceProcAddr registry at www.khronos.org>+foreign import ccall safe "vkGetInstanceProcAddr"+ vkGetInstanceProcAddrSafe ::+ VkInstance -- ^ instance+ -> CString -- ^ pName+ -> IO PFN_vkVoidFunction++-- | > PFN_vkVoidFunction vkGetDeviceProcAddr+-- > ( VkDevice device+-- > , const char* pName+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetDeviceProcAddr.html vkGetDeviceProcAddr registry at www.khronos.org>+foreign import ccall unsafe "vkGetDeviceProcAddr"+ vkGetDeviceProcAddr :: VkDevice -- ^ device+ -> CString -- ^ pName+ -> IO PFN_vkVoidFunction++-- | > PFN_vkVoidFunction vkGetDeviceProcAddr+-- > ( VkDevice device+-- > , const char* pName+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetDeviceProcAddr.html vkGetDeviceProcAddr registry at www.khronos.org>+foreign import ccall safe "vkGetDeviceProcAddr"+ vkGetDeviceProcAddrSafe ::+ VkDevice -- ^ device+ -> CString -- ^ pName+ -> IO PFN_vkVoidFunction++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_INITIALIZATION_FAILED', 'VK_ERROR_EXTENSION_NOT_PRESENT', 'VK_ERROR_FEATURE_NOT_PRESENT', 'VK_ERROR_TOO_MANY_OBJECTS', 'VK_ERROR_DEVICE_LOST'.+--+-- > VkResult vkCreateDevice+-- > ( VkPhysicalDevice physicalDevice+-- > , const VkDeviceCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkDevice* pDevice+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateDevice.html vkCreateDevice registry at www.khronos.org>+foreign import ccall unsafe "vkCreateDevice" vkCreateDevice ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ Ptr VkDeviceCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkDevice -- ^ pDevice+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_INITIALIZATION_FAILED', 'VK_ERROR_EXTENSION_NOT_PRESENT', 'VK_ERROR_FEATURE_NOT_PRESENT', 'VK_ERROR_TOO_MANY_OBJECTS', 'VK_ERROR_DEVICE_LOST'.+--+-- > VkResult vkCreateDevice+-- > ( VkPhysicalDevice physicalDevice+-- > , const VkDeviceCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkDevice* pDevice+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateDevice.html vkCreateDevice registry at www.khronos.org>+foreign import ccall safe "vkCreateDevice" vkCreateDeviceSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ Ptr VkDeviceCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkDevice -- ^ pDevice+ -> IO VkResult++-- | > () vkDestroyDevice+-- > ( VkDevice device+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyDevice.html vkDestroyDevice registry at www.khronos.org>+foreign import ccall unsafe "vkDestroyDevice" vkDestroyDevice ::+ VkDevice -- ^ device+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | > () vkDestroyDevice+-- > ( VkDevice device+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyDevice.html vkDestroyDevice registry at www.khronos.org>+foreign import ccall safe "vkDestroyDevice" vkDestroyDeviceSafe ::+ VkDevice -- ^ device+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_LAYER_NOT_PRESENT'.+--+-- > VkResult vkEnumerateInstanceExtensionProperties+-- > ( const char* pLayerName+-- > , uint32_t* pPropertyCount+-- > , VkExtensionProperties* pProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkEnumerateInstanceExtensionProperties.html vkEnumerateInstanceExtensionProperties registry at www.khronos.org>+foreign import ccall unsafe+ "vkEnumerateInstanceExtensionProperties"+ vkEnumerateInstanceExtensionProperties ::+ CString -- ^ pLayerName+ -> Ptr Word32 -- ^ pPropertyCount+ -> Ptr VkExtensionProperties -- ^ pProperties+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_LAYER_NOT_PRESENT'.+--+-- > VkResult vkEnumerateInstanceExtensionProperties+-- > ( const char* pLayerName+-- > , uint32_t* pPropertyCount+-- > , VkExtensionProperties* pProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkEnumerateInstanceExtensionProperties.html vkEnumerateInstanceExtensionProperties registry at www.khronos.org>+foreign import ccall safe "vkEnumerateInstanceExtensionProperties"+ vkEnumerateInstanceExtensionPropertiesSafe ::+ CString -- ^ pLayerName+ -> Ptr Word32 -- ^ pPropertyCount+ -> Ptr VkExtensionProperties -- ^ pProperties+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_LAYER_NOT_PRESENT'.+--+-- > VkResult vkEnumerateDeviceExtensionProperties+-- > ( VkPhysicalDevice physicalDevice+-- > , const char* pLayerName+-- > , uint32_t* pPropertyCount+-- > , VkExtensionProperties* pProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkEnumerateDeviceExtensionProperties.html vkEnumerateDeviceExtensionProperties registry at www.khronos.org>+foreign import ccall unsafe "vkEnumerateDeviceExtensionProperties"+ vkEnumerateDeviceExtensionProperties ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ CString -- ^ pLayerName+ -> Ptr Word32 -- ^ pPropertyCount+ -> Ptr VkExtensionProperties -- ^ pProperties+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_LAYER_NOT_PRESENT'.+--+-- > VkResult vkEnumerateDeviceExtensionProperties+-- > ( VkPhysicalDevice physicalDevice+-- > , const char* pLayerName+-- > , uint32_t* pPropertyCount+-- > , VkExtensionProperties* pProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkEnumerateDeviceExtensionProperties.html vkEnumerateDeviceExtensionProperties registry at www.khronos.org>+foreign import ccall safe "vkEnumerateDeviceExtensionProperties"+ vkEnumerateDeviceExtensionPropertiesSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ CString -- ^ pLayerName+ -> Ptr Word32 -- ^ pPropertyCount+ -> Ptr VkExtensionProperties -- ^ pProperties+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkEnumerateInstanceLayerProperties+-- > ( uint32_t* pPropertyCount+-- > , VkLayerProperties* pProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkEnumerateInstanceLayerProperties.html vkEnumerateInstanceLayerProperties registry at www.khronos.org>+foreign import ccall unsafe "vkEnumerateInstanceLayerProperties"+ vkEnumerateInstanceLayerProperties ::+ Ptr Word32 -- ^ pPropertyCount+ -> Ptr VkLayerProperties -- ^ pProperties+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkEnumerateInstanceLayerProperties+-- > ( uint32_t* pPropertyCount+-- > , VkLayerProperties* pProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkEnumerateInstanceLayerProperties.html vkEnumerateInstanceLayerProperties registry at www.khronos.org>+foreign import ccall safe "vkEnumerateInstanceLayerProperties"+ vkEnumerateInstanceLayerPropertiesSafe ::+ Ptr Word32 -- ^ pPropertyCount+ -> Ptr VkLayerProperties -- ^ pProperties+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkEnumerateDeviceLayerProperties+-- > ( VkPhysicalDevice physicalDevice+-- > , uint32_t* pPropertyCount+-- > , VkLayerProperties* pProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkEnumerateDeviceLayerProperties.html vkEnumerateDeviceLayerProperties registry at www.khronos.org>+foreign import ccall unsafe "vkEnumerateDeviceLayerProperties"+ vkEnumerateDeviceLayerProperties ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ Ptr Word32 -- ^ pPropertyCount+ -> Ptr VkLayerProperties -- ^ pProperties+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkEnumerateDeviceLayerProperties+-- > ( VkPhysicalDevice physicalDevice+-- > , uint32_t* pPropertyCount+-- > , VkLayerProperties* pProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkEnumerateDeviceLayerProperties.html vkEnumerateDeviceLayerProperties registry at www.khronos.org>+foreign import ccall safe "vkEnumerateDeviceLayerProperties"+ vkEnumerateDeviceLayerPropertiesSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ Ptr Word32 -- ^ pPropertyCount+ -> Ptr VkLayerProperties -- ^ pProperties+ -> IO VkResult++-- | > () vkGetDeviceQueue+-- > ( VkDevice device+-- > , uint32_t queueFamilyIndex+-- > , uint32_t queueIndex+-- > , VkQueue* pQueue+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetDeviceQueue.html vkGetDeviceQueue registry at www.khronos.org>+foreign import ccall unsafe "vkGetDeviceQueue" vkGetDeviceQueue ::+ VkDevice -- ^ device+ -> Word32 -- ^ queueFamilyIndex+ -> Word32 -- ^ queueIndex+ -> Ptr VkQueue -- ^ pQueue+ -> IO ()++-- | > () vkGetDeviceQueue+-- > ( VkDevice device+-- > , uint32_t queueFamilyIndex+-- > , uint32_t queueIndex+-- > , VkQueue* pQueue+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetDeviceQueue.html vkGetDeviceQueue registry at www.khronos.org>+foreign import ccall safe "vkGetDeviceQueue" vkGetDeviceQueueSafe+ :: VkDevice -- ^ device+ -> Word32 -- ^ queueFamilyIndex+ -> Word32 -- ^ queueIndex+ -> Ptr VkQueue -- ^ pQueue+ -> IO ()++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_DEVICE_LOST'.+--+-- > VkResult vkQueueSubmit+-- > ( VkQueue queue+-- > , uint32_t submitCount+-- > , const VkSubmitInfo* pSubmits+-- > , VkFence fence+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkQueueSubmit.html vkQueueSubmit registry at www.khronos.org>+foreign import ccall unsafe "vkQueueSubmit" vkQueueSubmit ::+ VkQueue -- ^ queue+ -> Word32 -- ^ submitCount+ -> Ptr VkSubmitInfo -- ^ pSubmits+ -> VkFence -- ^ fence+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_DEVICE_LOST'.+--+-- > VkResult vkQueueSubmit+-- > ( VkQueue queue+-- > , uint32_t submitCount+-- > , const VkSubmitInfo* pSubmits+-- > , VkFence fence+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkQueueSubmit.html vkQueueSubmit registry at www.khronos.org>+foreign import ccall safe "vkQueueSubmit" vkQueueSubmitSafe ::+ VkQueue -- ^ queue+ -> Word32 -- ^ submitCount+ -> Ptr VkSubmitInfo -- ^ pSubmits+ -> VkFence -- ^ fence+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_DEVICE_LOST'.+--+-- > VkResult vkQueueWaitIdle+-- > ( VkQueue queue+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkQueueWaitIdle.html vkQueueWaitIdle registry at www.khronos.org>+foreign import ccall unsafe "vkQueueWaitIdle" vkQueueWaitIdle ::+ VkQueue -- ^ queue+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_DEVICE_LOST'.+--+-- > VkResult vkQueueWaitIdle+-- > ( VkQueue queue+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkQueueWaitIdle.html vkQueueWaitIdle registry at www.khronos.org>+foreign import ccall safe "vkQueueWaitIdle" vkQueueWaitIdleSafe ::+ VkQueue -- ^ queue+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_DEVICE_LOST'.+--+-- > VkResult vkDeviceWaitIdle+-- > ( VkDevice device+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDeviceWaitIdle.html vkDeviceWaitIdle registry at www.khronos.org>+foreign import ccall unsafe "vkDeviceWaitIdle" vkDeviceWaitIdle ::+ VkDevice -- ^ device+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_DEVICE_LOST'.+--+-- > VkResult vkDeviceWaitIdle+-- > ( VkDevice device+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDeviceWaitIdle.html vkDeviceWaitIdle registry at www.khronos.org>+foreign import ccall safe "vkDeviceWaitIdle" vkDeviceWaitIdleSafe+ :: VkDevice -- ^ device+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_TOO_MANY_OBJECTS', 'VK_ERROR_INVALID_EXTERNAL_HANDLE'.+--+-- > VkResult vkAllocateMemory+-- > ( VkDevice device+-- > , const VkMemoryAllocateInfo* pAllocateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkDeviceMemory* pMemory+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkAllocateMemory.html vkAllocateMemory registry at www.khronos.org>+foreign import ccall unsafe "vkAllocateMemory" vkAllocateMemory ::+ VkDevice -- ^ device+ ->+ Ptr VkMemoryAllocateInfo -- ^ pAllocateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkDeviceMemory -- ^ pMemory+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_TOO_MANY_OBJECTS', 'VK_ERROR_INVALID_EXTERNAL_HANDLE'.+--+-- > VkResult vkAllocateMemory+-- > ( VkDevice device+-- > , const VkMemoryAllocateInfo* pAllocateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkDeviceMemory* pMemory+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkAllocateMemory.html vkAllocateMemory registry at www.khronos.org>+foreign import ccall safe "vkAllocateMemory" vkAllocateMemorySafe+ ::+ VkDevice -- ^ device+ ->+ Ptr VkMemoryAllocateInfo -- ^ pAllocateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkDeviceMemory -- ^ pMemory+ -> IO VkResult++-- | > () vkFreeMemory+-- > ( VkDevice device+-- > , VkDeviceMemory memory+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkFreeMemory.html vkFreeMemory registry at www.khronos.org>+foreign import ccall unsafe "vkFreeMemory" vkFreeMemory ::+ VkDevice -- ^ device+ -> VkDeviceMemory -- ^ memory+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | > () vkFreeMemory+-- > ( VkDevice device+-- > , VkDeviceMemory memory+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkFreeMemory.html vkFreeMemory registry at www.khronos.org>+foreign import ccall safe "vkFreeMemory" vkFreeMemorySafe ::+ VkDevice -- ^ device+ -> VkDeviceMemory -- ^ memory+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_MEMORY_MAP_FAILED'.+--+-- > VkResult vkMapMemory+-- > ( VkDevice device+-- > , VkDeviceMemory memory+-- > , VkDeviceSize offset+-- > , VkDeviceSize size+-- > , VkMemoryMapFlags flags+-- > , void** ppData+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkMapMemory.html vkMapMemory registry at www.khronos.org>+foreign import ccall unsafe "vkMapMemory" vkMapMemory ::+ VkDevice -- ^ device+ ->+ VkDeviceMemory -- ^ memory+ ->+ VkDeviceSize -- ^ offset+ ->+ VkDeviceSize -- ^ size+ -> VkMemoryMapFlags -- ^ flags+ -> Ptr (Ptr Void) -- ^ ppData+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_MEMORY_MAP_FAILED'.+--+-- > VkResult vkMapMemory+-- > ( VkDevice device+-- > , VkDeviceMemory memory+-- > , VkDeviceSize offset+-- > , VkDeviceSize size+-- > , VkMemoryMapFlags flags+-- > , void** ppData+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkMapMemory.html vkMapMemory registry at www.khronos.org>+foreign import ccall safe "vkMapMemory" vkMapMemorySafe ::+ VkDevice -- ^ device+ ->+ VkDeviceMemory -- ^ memory+ ->+ VkDeviceSize -- ^ offset+ ->+ VkDeviceSize -- ^ size+ -> VkMemoryMapFlags -- ^ flags+ -> Ptr (Ptr Void) -- ^ ppData+ -> IO VkResult++-- | > () vkUnmapMemory+-- > ( VkDevice device+-- > , VkDeviceMemory memory+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkUnmapMemory.html vkUnmapMemory registry at www.khronos.org>+foreign import ccall unsafe "vkUnmapMemory" vkUnmapMemory ::+ VkDevice -- ^ device+ -> VkDeviceMemory -- ^ memory+ -> IO ()++-- | > () vkUnmapMemory+-- > ( VkDevice device+-- > , VkDeviceMemory memory+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkUnmapMemory.html vkUnmapMemory registry at www.khronos.org>+foreign import ccall safe "vkUnmapMemory" vkUnmapMemorySafe ::+ VkDevice -- ^ device+ -> VkDeviceMemory -- ^ memory+ -> IO ()++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkFlushMappedMemoryRanges+-- > ( VkDevice device+-- > , uint32_t memoryRangeCount+-- > , const VkMappedMemoryRange* pMemoryRanges+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkFlushMappedMemoryRanges.html vkFlushMappedMemoryRanges registry at www.khronos.org>+foreign import ccall unsafe "vkFlushMappedMemoryRanges"+ vkFlushMappedMemoryRanges ::+ VkDevice -- ^ device+ -> Word32 -- ^ memoryRangeCount+ -> Ptr VkMappedMemoryRange -- ^ pMemoryRanges+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkFlushMappedMemoryRanges+-- > ( VkDevice device+-- > , uint32_t memoryRangeCount+-- > , const VkMappedMemoryRange* pMemoryRanges+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkFlushMappedMemoryRanges.html vkFlushMappedMemoryRanges registry at www.khronos.org>+foreign import ccall safe "vkFlushMappedMemoryRanges"+ vkFlushMappedMemoryRangesSafe ::+ VkDevice -- ^ device+ -> Word32 -- ^ memoryRangeCount+ -> Ptr VkMappedMemoryRange -- ^ pMemoryRanges+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkInvalidateMappedMemoryRanges+-- > ( VkDevice device+-- > , uint32_t memoryRangeCount+-- > , const VkMappedMemoryRange* pMemoryRanges+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkInvalidateMappedMemoryRanges.html vkInvalidateMappedMemoryRanges registry at www.khronos.org>+foreign import ccall unsafe "vkInvalidateMappedMemoryRanges"+ vkInvalidateMappedMemoryRanges ::+ VkDevice -- ^ device+ -> Word32 -- ^ memoryRangeCount+ -> Ptr VkMappedMemoryRange -- ^ pMemoryRanges+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkInvalidateMappedMemoryRanges+-- > ( VkDevice device+-- > , uint32_t memoryRangeCount+-- > , const VkMappedMemoryRange* pMemoryRanges+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkInvalidateMappedMemoryRanges.html vkInvalidateMappedMemoryRanges registry at www.khronos.org>+foreign import ccall safe "vkInvalidateMappedMemoryRanges"+ vkInvalidateMappedMemoryRangesSafe ::+ VkDevice -- ^ device+ -> Word32 -- ^ memoryRangeCount+ -> Ptr VkMappedMemoryRange -- ^ pMemoryRanges+ -> IO VkResult++-- | > () vkGetDeviceMemoryCommitment+-- > ( VkDevice device+-- > , VkDeviceMemory memory+-- > , VkDeviceSize* pCommittedMemoryInBytes+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetDeviceMemoryCommitment.html vkGetDeviceMemoryCommitment registry at www.khronos.org>+foreign import ccall unsafe "vkGetDeviceMemoryCommitment"+ vkGetDeviceMemoryCommitment ::+ VkDevice -- ^ device+ -> VkDeviceMemory -- ^ memory+ -> Ptr VkDeviceSize -- ^ pCommittedMemoryInBytes+ -> IO ()++-- | > () vkGetDeviceMemoryCommitment+-- > ( VkDevice device+-- > , VkDeviceMemory memory+-- > , VkDeviceSize* pCommittedMemoryInBytes+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetDeviceMemoryCommitment.html vkGetDeviceMemoryCommitment registry at www.khronos.org>+foreign import ccall safe "vkGetDeviceMemoryCommitment"+ vkGetDeviceMemoryCommitmentSafe ::+ VkDevice -- ^ device+ -> VkDeviceMemory -- ^ memory+ -> Ptr VkDeviceSize -- ^ pCommittedMemoryInBytes+ -> IO ()++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkBindBufferMemory+-- > ( VkDevice device+-- > , VkBuffer buffer+-- > , VkDeviceMemory memory+-- > , VkDeviceSize memoryOffset+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkBindBufferMemory.html vkBindBufferMemory registry at www.khronos.org>+foreign import ccall unsafe "vkBindBufferMemory" vkBindBufferMemory+ ::+ VkDevice -- ^ device+ ->+ VkBuffer -- ^ buffer+ -> VkDeviceMemory -- ^ memory+ -> VkDeviceSize -- ^ memoryOffset+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkBindBufferMemory+-- > ( VkDevice device+-- > , VkBuffer buffer+-- > , VkDeviceMemory memory+-- > , VkDeviceSize memoryOffset+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkBindBufferMemory.html vkBindBufferMemory registry at www.khronos.org>+foreign import ccall safe "vkBindBufferMemory"+ vkBindBufferMemorySafe ::+ VkDevice -- ^ device+ ->+ VkBuffer -- ^ buffer+ -> VkDeviceMemory -- ^ memory+ -> VkDeviceSize -- ^ memoryOffset+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkBindImageMemory+-- > ( VkDevice device+-- > , VkImage image+-- > , VkDeviceMemory memory+-- > , VkDeviceSize memoryOffset+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkBindImageMemory.html vkBindImageMemory registry at www.khronos.org>+foreign import ccall unsafe "vkBindImageMemory" vkBindImageMemory+ ::+ VkDevice -- ^ device+ ->+ VkImage -- ^ image+ -> VkDeviceMemory -- ^ memory+ -> VkDeviceSize -- ^ memoryOffset+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkBindImageMemory+-- > ( VkDevice device+-- > , VkImage image+-- > , VkDeviceMemory memory+-- > , VkDeviceSize memoryOffset+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkBindImageMemory.html vkBindImageMemory registry at www.khronos.org>+foreign import ccall safe "vkBindImageMemory" vkBindImageMemorySafe+ ::+ VkDevice -- ^ device+ ->+ VkImage -- ^ image+ -> VkDeviceMemory -- ^ memory+ -> VkDeviceSize -- ^ memoryOffset+ -> IO VkResult++-- | > () vkGetBufferMemoryRequirements+-- > ( VkDevice device+-- > , VkBuffer buffer+-- > , VkMemoryRequirements* pMemoryRequirements+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetBufferMemoryRequirements.html vkGetBufferMemoryRequirements registry at www.khronos.org>+foreign import ccall unsafe "vkGetBufferMemoryRequirements"+ vkGetBufferMemoryRequirements ::+ VkDevice -- ^ device+ -> VkBuffer -- ^ buffer+ -> Ptr VkMemoryRequirements -- ^ pMemoryRequirements+ -> IO ()++-- | > () vkGetBufferMemoryRequirements+-- > ( VkDevice device+-- > , VkBuffer buffer+-- > , VkMemoryRequirements* pMemoryRequirements+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetBufferMemoryRequirements.html vkGetBufferMemoryRequirements registry at www.khronos.org>+foreign import ccall safe "vkGetBufferMemoryRequirements"+ vkGetBufferMemoryRequirementsSafe ::+ VkDevice -- ^ device+ -> VkBuffer -- ^ buffer+ -> Ptr VkMemoryRequirements -- ^ pMemoryRequirements+ -> IO ()++-- | > () vkGetImageMemoryRequirements+-- > ( VkDevice device+-- > , VkImage image+-- > , VkMemoryRequirements* pMemoryRequirements+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetImageMemoryRequirements.html vkGetImageMemoryRequirements registry at www.khronos.org>+foreign import ccall unsafe "vkGetImageMemoryRequirements"+ vkGetImageMemoryRequirements ::+ VkDevice -- ^ device+ -> VkImage -- ^ image+ -> Ptr VkMemoryRequirements -- ^ pMemoryRequirements+ -> IO ()++-- | > () vkGetImageMemoryRequirements+-- > ( VkDevice device+-- > , VkImage image+-- > , VkMemoryRequirements* pMemoryRequirements+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetImageMemoryRequirements.html vkGetImageMemoryRequirements registry at www.khronos.org>+foreign import ccall safe "vkGetImageMemoryRequirements"+ vkGetImageMemoryRequirementsSafe ::+ VkDevice -- ^ device+ -> VkImage -- ^ image+ -> Ptr VkMemoryRequirements -- ^ pMemoryRequirements+ -> IO ()++-- | > () vkGetImageSparseMemoryRequirements+-- > ( VkDevice device+-- > , VkImage image+-- > , uint32_t* pSparseMemoryRequirementCount+-- > , VkSparseImageMemoryRequirements* pSparseMemoryRequirements+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetImageSparseMemoryRequirements.html vkGetImageSparseMemoryRequirements registry at www.khronos.org>+foreign import ccall unsafe "vkGetImageSparseMemoryRequirements"+ vkGetImageSparseMemoryRequirements ::+ VkDevice -- ^ device+ ->+ VkImage -- ^ image+ ->+ Ptr Word32 -- ^ pSparseMemoryRequirementCount+ -> Ptr VkSparseImageMemoryRequirements -- ^ pSparseMemoryRequirements+ -> IO ()++-- | > () vkGetImageSparseMemoryRequirements+-- > ( VkDevice device+-- > , VkImage image+-- > , uint32_t* pSparseMemoryRequirementCount+-- > , VkSparseImageMemoryRequirements* pSparseMemoryRequirements+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetImageSparseMemoryRequirements.html vkGetImageSparseMemoryRequirements registry at www.khronos.org>+foreign import ccall safe "vkGetImageSparseMemoryRequirements"+ vkGetImageSparseMemoryRequirementsSafe ::+ VkDevice -- ^ device+ ->+ VkImage -- ^ image+ ->+ Ptr Word32 -- ^ pSparseMemoryRequirementCount+ -> Ptr VkSparseImageMemoryRequirements -- ^ pSparseMemoryRequirements+ -> IO ()++-- | > () vkGetPhysicalDeviceSparseImageFormatProperties+-- > ( VkPhysicalDevice physicalDevice+-- > , VkFormat format+-- > , VkImageType type+-- > , VkSampleCountFlagBits samples+-- > , VkImageUsageFlags usage+-- > , VkImageTiling tiling+-- > , uint32_t* pPropertyCount+-- > , VkSparseImageFormatProperties* pProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceSparseImageFormatProperties.html vkGetPhysicalDeviceSparseImageFormatProperties registry at www.khronos.org>+foreign import ccall unsafe+ "vkGetPhysicalDeviceSparseImageFormatProperties"+ vkGetPhysicalDeviceSparseImageFormatProperties ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ VkFormat -- ^ format+ ->+ VkImageType -- ^ type+ ->+ VkSampleCountFlagBits -- ^ samples+ ->+ VkImageUsageFlags -- ^ usage+ ->+ VkImageTiling -- ^ tiling+ ->+ Ptr Word32 -- ^ pPropertyCount+ -> Ptr VkSparseImageFormatProperties -- ^ pProperties+ -> IO ()++-- | > () vkGetPhysicalDeviceSparseImageFormatProperties+-- > ( VkPhysicalDevice physicalDevice+-- > , VkFormat format+-- > , VkImageType type+-- > , VkSampleCountFlagBits samples+-- > , VkImageUsageFlags usage+-- > , VkImageTiling tiling+-- > , uint32_t* pPropertyCount+-- > , VkSparseImageFormatProperties* pProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceSparseImageFormatProperties.html vkGetPhysicalDeviceSparseImageFormatProperties registry at www.khronos.org>+foreign import ccall safe+ "vkGetPhysicalDeviceSparseImageFormatProperties"+ vkGetPhysicalDeviceSparseImageFormatPropertiesSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ VkFormat -- ^ format+ ->+ VkImageType -- ^ type+ ->+ VkSampleCountFlagBits -- ^ samples+ ->+ VkImageUsageFlags -- ^ usage+ ->+ VkImageTiling -- ^ tiling+ ->+ Ptr Word32 -- ^ pPropertyCount+ -> Ptr VkSparseImageFormatProperties -- ^ pProperties+ -> IO ()++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_DEVICE_LOST'.+--+-- queues: 'sparse_binding'.+--+-- > VkResult vkQueueBindSparse+-- > ( VkQueue queue+-- > , uint32_t bindInfoCount+-- > , const VkBindSparseInfo* pBindInfo+-- > , VkFence fence+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkQueueBindSparse.html vkQueueBindSparse registry at www.khronos.org>+foreign import ccall unsafe "vkQueueBindSparse" vkQueueBindSparse+ ::+ VkQueue -- ^ queue+ -> Word32 -- ^ bindInfoCount+ -> Ptr VkBindSparseInfo -- ^ pBindInfo+ -> VkFence -- ^ fence+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_DEVICE_LOST'.+--+-- queues: 'sparse_binding'.+--+-- > VkResult vkQueueBindSparse+-- > ( VkQueue queue+-- > , uint32_t bindInfoCount+-- > , const VkBindSparseInfo* pBindInfo+-- > , VkFence fence+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkQueueBindSparse.html vkQueueBindSparse registry at www.khronos.org>+foreign import ccall safe "vkQueueBindSparse" vkQueueBindSparseSafe+ ::+ VkQueue -- ^ queue+ -> Word32 -- ^ bindInfoCount+ -> Ptr VkBindSparseInfo -- ^ pBindInfo+ -> VkFence -- ^ fence+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreateFence+-- > ( VkDevice device+-- > , const VkFenceCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkFence* pFence+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateFence.html vkCreateFence registry at www.khronos.org>+foreign import ccall unsafe "vkCreateFence" vkCreateFence ::+ VkDevice -- ^ device+ ->+ Ptr VkFenceCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkFence -- ^ pFence+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreateFence+-- > ( VkDevice device+-- > , const VkFenceCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkFence* pFence+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateFence.html vkCreateFence registry at www.khronos.org>+foreign import ccall safe "vkCreateFence" vkCreateFenceSafe ::+ VkDevice -- ^ device+ ->+ Ptr VkFenceCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkFence -- ^ pFence+ -> IO VkResult++-- | > () vkDestroyFence+-- > ( VkDevice device+-- > , VkFence fence+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyFence.html vkDestroyFence registry at www.khronos.org>+foreign import ccall unsafe "vkDestroyFence" vkDestroyFence ::+ VkDevice -- ^ device+ -> VkFence -- ^ fence+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | > () vkDestroyFence+-- > ( VkDevice device+-- > , VkFence fence+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyFence.html vkDestroyFence registry at www.khronos.org>+foreign import ccall safe "vkDestroyFence" vkDestroyFenceSafe ::+ VkDevice -- ^ device+ -> VkFence -- ^ fence+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkResetFences+-- > ( VkDevice device+-- > , uint32_t fenceCount+-- > , const VkFence* pFences+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkResetFences.html vkResetFences registry at www.khronos.org>+foreign import ccall unsafe "vkResetFences" vkResetFences ::+ VkDevice -- ^ device+ -> Word32 -- ^ fenceCount+ -> Ptr VkFence -- ^ pFences+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkResetFences+-- > ( VkDevice device+-- > , uint32_t fenceCount+-- > , const VkFence* pFences+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkResetFences.html vkResetFences registry at www.khronos.org>+foreign import ccall safe "vkResetFences" vkResetFencesSafe ::+ VkDevice -- ^ device+ -> Word32 -- ^ fenceCount+ -> Ptr VkFence -- ^ pFences+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS', 'VK_NOT_READY'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_DEVICE_LOST'.+--+-- > VkResult vkGetFenceStatus+-- > ( VkDevice device+-- > , VkFence fence+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetFenceStatus.html vkGetFenceStatus registry at www.khronos.org>+foreign import ccall unsafe "vkGetFenceStatus" vkGetFenceStatus ::+ VkDevice -- ^ device+ -> VkFence -- ^ fence+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS', 'VK_NOT_READY'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_DEVICE_LOST'.+--+-- > VkResult vkGetFenceStatus+-- > ( VkDevice device+-- > , VkFence fence+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetFenceStatus.html vkGetFenceStatus registry at www.khronos.org>+foreign import ccall safe "vkGetFenceStatus" vkGetFenceStatusSafe+ :: VkDevice -- ^ device+ -> VkFence -- ^ fence+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS', 'VK_TIMEOUT'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_DEVICE_LOST'.+--+-- > VkResult vkWaitForFences+-- > ( VkDevice device+-- > , uint32_t fenceCount+-- > , const VkFence* pFences+-- > , VkBool32 waitAll+-- > , uint64_t timeout+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkWaitForFences.html vkWaitForFences registry at www.khronos.org>+foreign import ccall unsafe "vkWaitForFences" vkWaitForFences ::+ VkDevice -- ^ device+ ->+ Word32 -- ^ fenceCount+ -> Ptr VkFence -- ^ pFences+ -> VkBool32 -- ^ waitAll+ -> Word64 -- ^ timeout+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS', 'VK_TIMEOUT'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_DEVICE_LOST'.+--+-- > VkResult vkWaitForFences+-- > ( VkDevice device+-- > , uint32_t fenceCount+-- > , const VkFence* pFences+-- > , VkBool32 waitAll+-- > , uint64_t timeout+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkWaitForFences.html vkWaitForFences registry at www.khronos.org>+foreign import ccall safe "vkWaitForFences" vkWaitForFencesSafe ::+ VkDevice -- ^ device+ ->+ Word32 -- ^ fenceCount+ -> Ptr VkFence -- ^ pFences+ -> VkBool32 -- ^ waitAll+ -> Word64 -- ^ timeout+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreateSemaphore+-- > ( VkDevice device+-- > , const VkSemaphoreCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkSemaphore* pSemaphore+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateSemaphore.html vkCreateSemaphore registry at www.khronos.org>+foreign import ccall unsafe "vkCreateSemaphore" vkCreateSemaphore+ ::+ VkDevice -- ^ device+ ->+ Ptr VkSemaphoreCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkSemaphore -- ^ pSemaphore+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreateSemaphore+-- > ( VkDevice device+-- > , const VkSemaphoreCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkSemaphore* pSemaphore+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateSemaphore.html vkCreateSemaphore registry at www.khronos.org>+foreign import ccall safe "vkCreateSemaphore" vkCreateSemaphoreSafe+ ::+ VkDevice -- ^ device+ ->+ Ptr VkSemaphoreCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkSemaphore -- ^ pSemaphore+ -> IO VkResult++-- | > () vkDestroySemaphore+-- > ( VkDevice device+-- > , VkSemaphore semaphore+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroySemaphore.html vkDestroySemaphore registry at www.khronos.org>+foreign import ccall unsafe "vkDestroySemaphore" vkDestroySemaphore+ :: VkDevice -- ^ device+ -> VkSemaphore -- ^ semaphore+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | > () vkDestroySemaphore+-- > ( VkDevice device+-- > , VkSemaphore semaphore+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroySemaphore.html vkDestroySemaphore registry at www.khronos.org>+foreign import ccall safe "vkDestroySemaphore"+ vkDestroySemaphoreSafe ::+ VkDevice -- ^ device+ -> VkSemaphore -- ^ semaphore+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreateEvent+-- > ( VkDevice device+-- > , const VkEventCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkEvent* pEvent+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateEvent.html vkCreateEvent registry at www.khronos.org>+foreign import ccall unsafe "vkCreateEvent" vkCreateEvent ::+ VkDevice -- ^ device+ ->+ Ptr VkEventCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkEvent -- ^ pEvent+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreateEvent+-- > ( VkDevice device+-- > , const VkEventCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkEvent* pEvent+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateEvent.html vkCreateEvent registry at www.khronos.org>+foreign import ccall safe "vkCreateEvent" vkCreateEventSafe ::+ VkDevice -- ^ device+ ->+ Ptr VkEventCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkEvent -- ^ pEvent+ -> IO VkResult++-- | > () vkDestroyEvent+-- > ( VkDevice device+-- > , VkEvent event+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyEvent.html vkDestroyEvent registry at www.khronos.org>+foreign import ccall unsafe "vkDestroyEvent" vkDestroyEvent ::+ VkDevice -- ^ device+ -> VkEvent -- ^ event+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | > () vkDestroyEvent+-- > ( VkDevice device+-- > , VkEvent event+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyEvent.html vkDestroyEvent registry at www.khronos.org>+foreign import ccall safe "vkDestroyEvent" vkDestroyEventSafe ::+ VkDevice -- ^ device+ -> VkEvent -- ^ event+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | Success codes: 'VK_EVENT_SET', 'VK_EVENT_RESET'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_DEVICE_LOST'.+--+-- > VkResult vkGetEventStatus+-- > ( VkDevice device+-- > , VkEvent event+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetEventStatus.html vkGetEventStatus registry at www.khronos.org>+foreign import ccall unsafe "vkGetEventStatus" vkGetEventStatus ::+ VkDevice -- ^ device+ -> VkEvent -- ^ event+ -> IO VkResult++-- | Success codes: 'VK_EVENT_SET', 'VK_EVENT_RESET'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_DEVICE_LOST'.+--+-- > VkResult vkGetEventStatus+-- > ( VkDevice device+-- > , VkEvent event+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetEventStatus.html vkGetEventStatus registry at www.khronos.org>+foreign import ccall safe "vkGetEventStatus" vkGetEventStatusSafe+ :: VkDevice -- ^ device+ -> VkEvent -- ^ event+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkSetEvent+-- > ( VkDevice device+-- > , VkEvent event+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkSetEvent.html vkSetEvent registry at www.khronos.org>+foreign import ccall unsafe "vkSetEvent" vkSetEvent ::+ VkDevice -- ^ device+ -> VkEvent -- ^ event+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkSetEvent+-- > ( VkDevice device+-- > , VkEvent event+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkSetEvent.html vkSetEvent registry at www.khronos.org>+foreign import ccall safe "vkSetEvent" vkSetEventSafe ::+ VkDevice -- ^ device+ -> VkEvent -- ^ event+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkResetEvent+-- > ( VkDevice device+-- > , VkEvent event+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkResetEvent.html vkResetEvent registry at www.khronos.org>+foreign import ccall unsafe "vkResetEvent" vkResetEvent ::+ VkDevice -- ^ device+ -> VkEvent -- ^ event+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkResetEvent+-- > ( VkDevice device+-- > , VkEvent event+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkResetEvent.html vkResetEvent registry at www.khronos.org>+foreign import ccall safe "vkResetEvent" vkResetEventSafe ::+ VkDevice -- ^ device+ -> VkEvent -- ^ event+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreateQueryPool+-- > ( VkDevice device+-- > , const VkQueryPoolCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkQueryPool* pQueryPool+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateQueryPool.html vkCreateQueryPool registry at www.khronos.org>+foreign import ccall unsafe "vkCreateQueryPool" vkCreateQueryPool+ ::+ VkDevice -- ^ device+ ->+ Ptr VkQueryPoolCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkQueryPool -- ^ pQueryPool+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreateQueryPool+-- > ( VkDevice device+-- > , const VkQueryPoolCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkQueryPool* pQueryPool+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateQueryPool.html vkCreateQueryPool registry at www.khronos.org>+foreign import ccall safe "vkCreateQueryPool" vkCreateQueryPoolSafe+ ::+ VkDevice -- ^ device+ ->+ Ptr VkQueryPoolCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkQueryPool -- ^ pQueryPool+ -> IO VkResult++-- | > () vkDestroyQueryPool+-- > ( VkDevice device+-- > , VkQueryPool queryPool+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyQueryPool.html vkDestroyQueryPool registry at www.khronos.org>+foreign import ccall unsafe "vkDestroyQueryPool" vkDestroyQueryPool+ :: VkDevice -- ^ device+ -> VkQueryPool -- ^ queryPool+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | > () vkDestroyQueryPool+-- > ( VkDevice device+-- > , VkQueryPool queryPool+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyQueryPool.html vkDestroyQueryPool registry at www.khronos.org>+foreign import ccall safe "vkDestroyQueryPool"+ vkDestroyQueryPoolSafe ::+ VkDevice -- ^ device+ -> VkQueryPool -- ^ queryPool+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | Success codes: 'VK_SUCCESS', 'VK_NOT_READY'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_DEVICE_LOST'.+--+-- > VkResult vkGetQueryPoolResults+-- > ( VkDevice device+-- > , VkQueryPool queryPool+-- > , uint32_t firstQuery+-- > , uint32_t queryCount+-- > , size_t dataSize+-- > , void* pData+-- > , VkDeviceSize stride+-- > , VkQueryResultFlags flags+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetQueryPoolResults.html vkGetQueryPoolResults registry at www.khronos.org>+foreign import ccall unsafe "vkGetQueryPoolResults"+ vkGetQueryPoolResults ::+ VkDevice -- ^ device+ ->+ VkQueryPool -- ^ queryPool+ ->+ Word32 -- ^ firstQuery+ ->+ Word32 -- ^ queryCount+ ->+ CSize -- ^ dataSize+ ->+ Ptr Void -- ^ pData+ -> VkDeviceSize -- ^ stride+ -> VkQueryResultFlags -- ^ flags+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS', 'VK_NOT_READY'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_DEVICE_LOST'.+--+-- > VkResult vkGetQueryPoolResults+-- > ( VkDevice device+-- > , VkQueryPool queryPool+-- > , uint32_t firstQuery+-- > , uint32_t queryCount+-- > , size_t dataSize+-- > , void* pData+-- > , VkDeviceSize stride+-- > , VkQueryResultFlags flags+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetQueryPoolResults.html vkGetQueryPoolResults registry at www.khronos.org>+foreign import ccall safe "vkGetQueryPoolResults"+ vkGetQueryPoolResultsSafe ::+ VkDevice -- ^ device+ ->+ VkQueryPool -- ^ queryPool+ ->+ Word32 -- ^ firstQuery+ ->+ Word32 -- ^ queryCount+ ->+ CSize -- ^ dataSize+ ->+ Ptr Void -- ^ pData+ -> VkDeviceSize -- ^ stride+ -> VkQueryResultFlags -- ^ flags+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreateBuffer+-- > ( VkDevice device+-- > , const VkBufferCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkBuffer* pBuffer+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateBuffer.html vkCreateBuffer registry at www.khronos.org>+foreign import ccall unsafe "vkCreateBuffer" vkCreateBuffer ::+ VkDevice -- ^ device+ ->+ Ptr VkBufferCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkBuffer -- ^ pBuffer+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreateBuffer+-- > ( VkDevice device+-- > , const VkBufferCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkBuffer* pBuffer+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateBuffer.html vkCreateBuffer registry at www.khronos.org>+foreign import ccall safe "vkCreateBuffer" vkCreateBufferSafe ::+ VkDevice -- ^ device+ ->+ Ptr VkBufferCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkBuffer -- ^ pBuffer+ -> IO VkResult++-- | > () vkDestroyBuffer+-- > ( VkDevice device+-- > , VkBuffer buffer+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyBuffer.html vkDestroyBuffer registry at www.khronos.org>+foreign import ccall unsafe "vkDestroyBuffer" vkDestroyBuffer ::+ VkDevice -- ^ device+ -> VkBuffer -- ^ buffer+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | > () vkDestroyBuffer+-- > ( VkDevice device+-- > , VkBuffer buffer+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyBuffer.html vkDestroyBuffer registry at www.khronos.org>+foreign import ccall safe "vkDestroyBuffer" vkDestroyBufferSafe ::+ VkDevice -- ^ device+ -> VkBuffer -- ^ buffer+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreateBufferView+-- > ( VkDevice device+-- > , const VkBufferViewCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkBufferView* pView+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateBufferView.html vkCreateBufferView registry at www.khronos.org>+foreign import ccall unsafe "vkCreateBufferView" vkCreateBufferView+ ::+ VkDevice -- ^ device+ ->+ Ptr VkBufferViewCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkBufferView -- ^ pView+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreateBufferView+-- > ( VkDevice device+-- > , const VkBufferViewCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkBufferView* pView+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateBufferView.html vkCreateBufferView registry at www.khronos.org>+foreign import ccall safe "vkCreateBufferView"+ vkCreateBufferViewSafe ::+ VkDevice -- ^ device+ ->+ Ptr VkBufferViewCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkBufferView -- ^ pView+ -> IO VkResult++-- | > () vkDestroyBufferView+-- > ( VkDevice device+-- > , VkBufferView bufferView+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyBufferView.html vkDestroyBufferView registry at www.khronos.org>+foreign import ccall unsafe "vkDestroyBufferView"+ vkDestroyBufferView ::+ VkDevice -- ^ device+ -> VkBufferView -- ^ bufferView+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | > () vkDestroyBufferView+-- > ( VkDevice device+-- > , VkBufferView bufferView+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyBufferView.html vkDestroyBufferView registry at www.khronos.org>+foreign import ccall safe "vkDestroyBufferView"+ vkDestroyBufferViewSafe ::+ VkDevice -- ^ device+ -> VkBufferView -- ^ bufferView+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreateImage+-- > ( VkDevice device+-- > , const VkImageCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkImage* pImage+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateImage.html vkCreateImage registry at www.khronos.org>+foreign import ccall unsafe "vkCreateImage" vkCreateImage ::+ VkDevice -- ^ device+ ->+ Ptr VkImageCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkImage -- ^ pImage+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreateImage+-- > ( VkDevice device+-- > , const VkImageCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkImage* pImage+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateImage.html vkCreateImage registry at www.khronos.org>+foreign import ccall safe "vkCreateImage" vkCreateImageSafe ::+ VkDevice -- ^ device+ ->+ Ptr VkImageCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkImage -- ^ pImage+ -> IO VkResult++-- | > () vkDestroyImage+-- > ( VkDevice device+-- > , VkImage image+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyImage.html vkDestroyImage registry at www.khronos.org>+foreign import ccall unsafe "vkDestroyImage" vkDestroyImage ::+ VkDevice -- ^ device+ -> VkImage -- ^ image+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | > () vkDestroyImage+-- > ( VkDevice device+-- > , VkImage image+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyImage.html vkDestroyImage registry at www.khronos.org>+foreign import ccall safe "vkDestroyImage" vkDestroyImageSafe ::+ VkDevice -- ^ device+ -> VkImage -- ^ image+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | > () vkGetImageSubresourceLayout+-- > ( VkDevice device+-- > , VkImage image+-- > , const VkImageSubresource* pSubresource+-- > , VkSubresourceLayout* pLayout+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetImageSubresourceLayout.html vkGetImageSubresourceLayout registry at www.khronos.org>+foreign import ccall unsafe "vkGetImageSubresourceLayout"+ vkGetImageSubresourceLayout ::+ VkDevice -- ^ device+ ->+ VkImage -- ^ image+ ->+ Ptr VkImageSubresource -- ^ pSubresource+ -> Ptr VkSubresourceLayout -- ^ pLayout+ -> IO ()++-- | > () vkGetImageSubresourceLayout+-- > ( VkDevice device+-- > , VkImage image+-- > , const VkImageSubresource* pSubresource+-- > , VkSubresourceLayout* pLayout+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetImageSubresourceLayout.html vkGetImageSubresourceLayout registry at www.khronos.org>+foreign import ccall safe "vkGetImageSubresourceLayout"+ vkGetImageSubresourceLayoutSafe ::+ VkDevice -- ^ device+ ->+ VkImage -- ^ image+ ->+ Ptr VkImageSubresource -- ^ pSubresource+ -> Ptr VkSubresourceLayout -- ^ pLayout+ -> IO ()++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreateImageView+-- > ( VkDevice device+-- > , const VkImageViewCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkImageView* pView+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateImageView.html vkCreateImageView registry at www.khronos.org>+foreign import ccall unsafe "vkCreateImageView" vkCreateImageView+ ::+ VkDevice -- ^ device+ ->+ Ptr VkImageViewCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkImageView -- ^ pView+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreateImageView+-- > ( VkDevice device+-- > , const VkImageViewCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkImageView* pView+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateImageView.html vkCreateImageView registry at www.khronos.org>+foreign import ccall safe "vkCreateImageView" vkCreateImageViewSafe+ ::+ VkDevice -- ^ device+ ->+ Ptr VkImageViewCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkImageView -- ^ pView+ -> IO VkResult++-- | > () vkDestroyImageView+-- > ( VkDevice device+-- > , VkImageView imageView+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyImageView.html vkDestroyImageView registry at www.khronos.org>+foreign import ccall unsafe "vkDestroyImageView" vkDestroyImageView+ :: VkDevice -- ^ device+ -> VkImageView -- ^ imageView+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | > () vkDestroyImageView+-- > ( VkDevice device+-- > , VkImageView imageView+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyImageView.html vkDestroyImageView registry at www.khronos.org>+foreign import ccall safe "vkDestroyImageView"+ vkDestroyImageViewSafe ::+ VkDevice -- ^ device+ -> VkImageView -- ^ imageView+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_INVALID_SHADER_NV'.+--+-- > VkResult vkCreateShaderModule+-- > ( VkDevice device+-- > , const VkShaderModuleCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkShaderModule* pShaderModule+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateShaderModule.html vkCreateShaderModule registry at www.khronos.org>+foreign import ccall unsafe "vkCreateShaderModule"+ vkCreateShaderModule ::+ VkDevice -- ^ device+ ->+ Ptr VkShaderModuleCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkShaderModule -- ^ pShaderModule+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_INVALID_SHADER_NV'.+--+-- > VkResult vkCreateShaderModule+-- > ( VkDevice device+-- > , const VkShaderModuleCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkShaderModule* pShaderModule+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateShaderModule.html vkCreateShaderModule registry at www.khronos.org>+foreign import ccall safe "vkCreateShaderModule"+ vkCreateShaderModuleSafe ::+ VkDevice -- ^ device+ ->+ Ptr VkShaderModuleCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkShaderModule -- ^ pShaderModule+ -> IO VkResult++-- | > () vkDestroyShaderModule+-- > ( VkDevice device+-- > , VkShaderModule shaderModule+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyShaderModule.html vkDestroyShaderModule registry at www.khronos.org>+foreign import ccall unsafe "vkDestroyShaderModule"+ vkDestroyShaderModule ::+ VkDevice -- ^ device+ -> VkShaderModule -- ^ shaderModule+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | > () vkDestroyShaderModule+-- > ( VkDevice device+-- > , VkShaderModule shaderModule+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyShaderModule.html vkDestroyShaderModule registry at www.khronos.org>+foreign import ccall safe "vkDestroyShaderModule"+ vkDestroyShaderModuleSafe ::+ VkDevice -- ^ device+ -> VkShaderModule -- ^ shaderModule+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreatePipelineCache+-- > ( VkDevice device+-- > , const VkPipelineCacheCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkPipelineCache* pPipelineCache+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreatePipelineCache.html vkCreatePipelineCache registry at www.khronos.org>+foreign import ccall unsafe "vkCreatePipelineCache"+ vkCreatePipelineCache ::+ VkDevice -- ^ device+ ->+ Ptr VkPipelineCacheCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkPipelineCache -- ^ pPipelineCache+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreatePipelineCache+-- > ( VkDevice device+-- > , const VkPipelineCacheCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkPipelineCache* pPipelineCache+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreatePipelineCache.html vkCreatePipelineCache registry at www.khronos.org>+foreign import ccall safe "vkCreatePipelineCache"+ vkCreatePipelineCacheSafe ::+ VkDevice -- ^ device+ ->+ Ptr VkPipelineCacheCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkPipelineCache -- ^ pPipelineCache+ -> IO VkResult++-- | > () vkDestroyPipelineCache+-- > ( VkDevice device+-- > , VkPipelineCache pipelineCache+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyPipelineCache.html vkDestroyPipelineCache registry at www.khronos.org>+foreign import ccall unsafe "vkDestroyPipelineCache"+ vkDestroyPipelineCache ::+ VkDevice -- ^ device+ -> VkPipelineCache -- ^ pipelineCache+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | > () vkDestroyPipelineCache+-- > ( VkDevice device+-- > , VkPipelineCache pipelineCache+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyPipelineCache.html vkDestroyPipelineCache registry at www.khronos.org>+foreign import ccall safe "vkDestroyPipelineCache"+ vkDestroyPipelineCacheSafe ::+ VkDevice -- ^ device+ -> VkPipelineCache -- ^ pipelineCache+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkGetPipelineCacheData+-- > ( VkDevice device+-- > , VkPipelineCache pipelineCache+-- > , size_t* pDataSize+-- > , void* pData+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPipelineCacheData.html vkGetPipelineCacheData registry at www.khronos.org>+foreign import ccall unsafe "vkGetPipelineCacheData"+ vkGetPipelineCacheData ::+ VkDevice -- ^ device+ -> VkPipelineCache -- ^ pipelineCache+ -> Ptr CSize -- ^ pDataSize+ -> Ptr Void -- ^ pData+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkGetPipelineCacheData+-- > ( VkDevice device+-- > , VkPipelineCache pipelineCache+-- > , size_t* pDataSize+-- > , void* pData+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPipelineCacheData.html vkGetPipelineCacheData registry at www.khronos.org>+foreign import ccall safe "vkGetPipelineCacheData"+ vkGetPipelineCacheDataSafe ::+ VkDevice -- ^ device+ -> VkPipelineCache -- ^ pipelineCache+ -> Ptr CSize -- ^ pDataSize+ -> Ptr Void -- ^ pData+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkMergePipelineCaches+-- > ( VkDevice device+-- > , VkPipelineCache dstCache+-- > , uint32_t srcCacheCount+-- > , const VkPipelineCache* pSrcCaches+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkMergePipelineCaches.html vkMergePipelineCaches registry at www.khronos.org>+foreign import ccall unsafe "vkMergePipelineCaches"+ vkMergePipelineCaches ::+ VkDevice -- ^ device+ ->+ VkPipelineCache -- ^ dstCache+ -> Word32 -- ^ srcCacheCount+ -> Ptr VkPipelineCache -- ^ pSrcCaches+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkMergePipelineCaches+-- > ( VkDevice device+-- > , VkPipelineCache dstCache+-- > , uint32_t srcCacheCount+-- > , const VkPipelineCache* pSrcCaches+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkMergePipelineCaches.html vkMergePipelineCaches registry at www.khronos.org>+foreign import ccall safe "vkMergePipelineCaches"+ vkMergePipelineCachesSafe ::+ VkDevice -- ^ device+ ->+ VkPipelineCache -- ^ dstCache+ -> Word32 -- ^ srcCacheCount+ -> Ptr VkPipelineCache -- ^ pSrcCaches+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_INVALID_SHADER_NV'.+--+-- > VkResult vkCreateGraphicsPipelines+-- > ( VkDevice device+-- > , VkPipelineCache pipelineCache+-- > , uint32_t createInfoCount+-- > , const VkGraphicsPipelineCreateInfo* pCreateInfos+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkPipeline* pPipelines+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateGraphicsPipelines.html vkCreateGraphicsPipelines registry at www.khronos.org>+foreign import ccall unsafe "vkCreateGraphicsPipelines"+ vkCreateGraphicsPipelines ::+ VkDevice -- ^ device+ ->+ VkPipelineCache -- ^ pipelineCache+ ->+ Word32 -- ^ createInfoCount+ ->+ Ptr VkGraphicsPipelineCreateInfo -- ^ pCreateInfos+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkPipeline -- ^ pPipelines+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_INVALID_SHADER_NV'.+--+-- > VkResult vkCreateGraphicsPipelines+-- > ( VkDevice device+-- > , VkPipelineCache pipelineCache+-- > , uint32_t createInfoCount+-- > , const VkGraphicsPipelineCreateInfo* pCreateInfos+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkPipeline* pPipelines+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateGraphicsPipelines.html vkCreateGraphicsPipelines registry at www.khronos.org>+foreign import ccall safe "vkCreateGraphicsPipelines"+ vkCreateGraphicsPipelinesSafe ::+ VkDevice -- ^ device+ ->+ VkPipelineCache -- ^ pipelineCache+ ->+ Word32 -- ^ createInfoCount+ ->+ Ptr VkGraphicsPipelineCreateInfo -- ^ pCreateInfos+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkPipeline -- ^ pPipelines+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_INVALID_SHADER_NV'.+--+-- > VkResult vkCreateComputePipelines+-- > ( VkDevice device+-- > , VkPipelineCache pipelineCache+-- > , uint32_t createInfoCount+-- > , const VkComputePipelineCreateInfo* pCreateInfos+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkPipeline* pPipelines+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateComputePipelines.html vkCreateComputePipelines registry at www.khronos.org>+foreign import ccall unsafe "vkCreateComputePipelines"+ vkCreateComputePipelines ::+ VkDevice -- ^ device+ ->+ VkPipelineCache -- ^ pipelineCache+ ->+ Word32 -- ^ createInfoCount+ ->+ Ptr VkComputePipelineCreateInfo -- ^ pCreateInfos+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkPipeline -- ^ pPipelines+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_INVALID_SHADER_NV'.+--+-- > VkResult vkCreateComputePipelines+-- > ( VkDevice device+-- > , VkPipelineCache pipelineCache+-- > , uint32_t createInfoCount+-- > , const VkComputePipelineCreateInfo* pCreateInfos+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkPipeline* pPipelines+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateComputePipelines.html vkCreateComputePipelines registry at www.khronos.org>+foreign import ccall safe "vkCreateComputePipelines"+ vkCreateComputePipelinesSafe ::+ VkDevice -- ^ device+ ->+ VkPipelineCache -- ^ pipelineCache+ ->+ Word32 -- ^ createInfoCount+ ->+ Ptr VkComputePipelineCreateInfo -- ^ pCreateInfos+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkPipeline -- ^ pPipelines+ -> IO VkResult++-- | > () vkDestroyPipeline+-- > ( VkDevice device+-- > , VkPipeline pipeline+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyPipeline.html vkDestroyPipeline registry at www.khronos.org>+foreign import ccall unsafe "vkDestroyPipeline" vkDestroyPipeline+ :: VkDevice -- ^ device+ -> VkPipeline -- ^ pipeline+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | > () vkDestroyPipeline+-- > ( VkDevice device+-- > , VkPipeline pipeline+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyPipeline.html vkDestroyPipeline registry at www.khronos.org>+foreign import ccall safe "vkDestroyPipeline" vkDestroyPipelineSafe+ :: VkDevice -- ^ device+ -> VkPipeline -- ^ pipeline+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreatePipelineLayout+-- > ( VkDevice device+-- > , const VkPipelineLayoutCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkPipelineLayout* pPipelineLayout+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreatePipelineLayout.html vkCreatePipelineLayout registry at www.khronos.org>+foreign import ccall unsafe "vkCreatePipelineLayout"+ vkCreatePipelineLayout ::+ VkDevice -- ^ device+ ->+ Ptr VkPipelineLayoutCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkPipelineLayout -- ^ pPipelineLayout+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreatePipelineLayout+-- > ( VkDevice device+-- > , const VkPipelineLayoutCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkPipelineLayout* pPipelineLayout+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreatePipelineLayout.html vkCreatePipelineLayout registry at www.khronos.org>+foreign import ccall safe "vkCreatePipelineLayout"+ vkCreatePipelineLayoutSafe ::+ VkDevice -- ^ device+ ->+ Ptr VkPipelineLayoutCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkPipelineLayout -- ^ pPipelineLayout+ -> IO VkResult++-- | > () vkDestroyPipelineLayout+-- > ( VkDevice device+-- > , VkPipelineLayout pipelineLayout+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyPipelineLayout.html vkDestroyPipelineLayout registry at www.khronos.org>+foreign import ccall unsafe "vkDestroyPipelineLayout"+ vkDestroyPipelineLayout ::+ VkDevice -- ^ device+ -> VkPipelineLayout -- ^ pipelineLayout+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | > () vkDestroyPipelineLayout+-- > ( VkDevice device+-- > , VkPipelineLayout pipelineLayout+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyPipelineLayout.html vkDestroyPipelineLayout registry at www.khronos.org>+foreign import ccall safe "vkDestroyPipelineLayout"+ vkDestroyPipelineLayoutSafe ::+ VkDevice -- ^ device+ -> VkPipelineLayout -- ^ pipelineLayout+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_TOO_MANY_OBJECTS'.+--+-- > VkResult vkCreateSampler+-- > ( VkDevice device+-- > , const VkSamplerCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkSampler* pSampler+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateSampler.html vkCreateSampler registry at www.khronos.org>+foreign import ccall unsafe "vkCreateSampler" vkCreateSampler ::+ VkDevice -- ^ device+ ->+ Ptr VkSamplerCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkSampler -- ^ pSampler+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_TOO_MANY_OBJECTS'.+--+-- > VkResult vkCreateSampler+-- > ( VkDevice device+-- > , const VkSamplerCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkSampler* pSampler+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateSampler.html vkCreateSampler registry at www.khronos.org>+foreign import ccall safe "vkCreateSampler" vkCreateSamplerSafe ::+ VkDevice -- ^ device+ ->+ Ptr VkSamplerCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkSampler -- ^ pSampler+ -> IO VkResult++-- | > () vkDestroySampler+-- > ( VkDevice device+-- > , VkSampler sampler+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroySampler.html vkDestroySampler registry at www.khronos.org>+foreign import ccall unsafe "vkDestroySampler" vkDestroySampler ::+ VkDevice -- ^ device+ -> VkSampler -- ^ sampler+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | > () vkDestroySampler+-- > ( VkDevice device+-- > , VkSampler sampler+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroySampler.html vkDestroySampler registry at www.khronos.org>+foreign import ccall safe "vkDestroySampler" vkDestroySamplerSafe+ :: VkDevice -- ^ device+ -> VkSampler -- ^ sampler+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreateDescriptorSetLayout+-- > ( VkDevice device+-- > , const VkDescriptorSetLayoutCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkDescriptorSetLayout* pSetLayout+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateDescriptorSetLayout.html vkCreateDescriptorSetLayout registry at www.khronos.org>+foreign import ccall unsafe "vkCreateDescriptorSetLayout"+ vkCreateDescriptorSetLayout ::+ VkDevice -- ^ device+ ->+ Ptr VkDescriptorSetLayoutCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ ->+ Ptr VkDescriptorSetLayout -- ^ pSetLayout+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreateDescriptorSetLayout+-- > ( VkDevice device+-- > , const VkDescriptorSetLayoutCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkDescriptorSetLayout* pSetLayout+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateDescriptorSetLayout.html vkCreateDescriptorSetLayout registry at www.khronos.org>+foreign import ccall safe "vkCreateDescriptorSetLayout"+ vkCreateDescriptorSetLayoutSafe ::+ VkDevice -- ^ device+ ->+ Ptr VkDescriptorSetLayoutCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ ->+ Ptr VkDescriptorSetLayout -- ^ pSetLayout+ -> IO VkResult++-- | > () vkDestroyDescriptorSetLayout+-- > ( VkDevice device+-- > , VkDescriptorSetLayout descriptorSetLayout+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyDescriptorSetLayout.html vkDestroyDescriptorSetLayout registry at www.khronos.org>+foreign import ccall unsafe "vkDestroyDescriptorSetLayout"+ vkDestroyDescriptorSetLayout ::+ VkDevice -- ^ device+ ->+ VkDescriptorSetLayout -- ^ descriptorSetLayout+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | > () vkDestroyDescriptorSetLayout+-- > ( VkDevice device+-- > , VkDescriptorSetLayout descriptorSetLayout+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyDescriptorSetLayout.html vkDestroyDescriptorSetLayout registry at www.khronos.org>+foreign import ccall safe "vkDestroyDescriptorSetLayout"+ vkDestroyDescriptorSetLayoutSafe ::+ VkDevice -- ^ device+ ->+ VkDescriptorSetLayout -- ^ descriptorSetLayout+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreateDescriptorPool+-- > ( VkDevice device+-- > , const VkDescriptorPoolCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkDescriptorPool* pDescriptorPool+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateDescriptorPool.html vkCreateDescriptorPool registry at www.khronos.org>+foreign import ccall unsafe "vkCreateDescriptorPool"+ vkCreateDescriptorPool ::+ VkDevice -- ^ device+ ->+ Ptr VkDescriptorPoolCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkDescriptorPool -- ^ pDescriptorPool+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreateDescriptorPool+-- > ( VkDevice device+-- > , const VkDescriptorPoolCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkDescriptorPool* pDescriptorPool+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateDescriptorPool.html vkCreateDescriptorPool registry at www.khronos.org>+foreign import ccall safe "vkCreateDescriptorPool"+ vkCreateDescriptorPoolSafe ::+ VkDevice -- ^ device+ ->+ Ptr VkDescriptorPoolCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkDescriptorPool -- ^ pDescriptorPool+ -> IO VkResult++-- | > () vkDestroyDescriptorPool+-- > ( VkDevice device+-- > , VkDescriptorPool descriptorPool+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyDescriptorPool.html vkDestroyDescriptorPool registry at www.khronos.org>+foreign import ccall unsafe "vkDestroyDescriptorPool"+ vkDestroyDescriptorPool ::+ VkDevice -- ^ device+ -> VkDescriptorPool -- ^ descriptorPool+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | > () vkDestroyDescriptorPool+-- > ( VkDevice device+-- > , VkDescriptorPool descriptorPool+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyDescriptorPool.html vkDestroyDescriptorPool registry at www.khronos.org>+foreign import ccall safe "vkDestroyDescriptorPool"+ vkDestroyDescriptorPoolSafe ::+ VkDevice -- ^ device+ -> VkDescriptorPool -- ^ descriptorPool+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkResetDescriptorPool+-- > ( VkDevice device+-- > , VkDescriptorPool descriptorPool+-- > , VkDescriptorPoolResetFlags flags+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkResetDescriptorPool.html vkResetDescriptorPool registry at www.khronos.org>+foreign import ccall unsafe "vkResetDescriptorPool"+ vkResetDescriptorPool ::+ VkDevice -- ^ device+ ->+ VkDescriptorPool -- ^ descriptorPool+ -> VkDescriptorPoolResetFlags -- ^ flags+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkResetDescriptorPool+-- > ( VkDevice device+-- > , VkDescriptorPool descriptorPool+-- > , VkDescriptorPoolResetFlags flags+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkResetDescriptorPool.html vkResetDescriptorPool registry at www.khronos.org>+foreign import ccall safe "vkResetDescriptorPool"+ vkResetDescriptorPoolSafe ::+ VkDevice -- ^ device+ ->+ VkDescriptorPool -- ^ descriptorPool+ -> VkDescriptorPoolResetFlags -- ^ flags+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_FRAGMENTED_POOL', 'VK_ERROR_OUT_OF_POOL_MEMORY'.+--+-- > VkResult vkAllocateDescriptorSets+-- > ( VkDevice device+-- > , const VkDescriptorSetAllocateInfo* pAllocateInfo+-- > , VkDescriptorSet* pDescriptorSets+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkAllocateDescriptorSets.html vkAllocateDescriptorSets registry at www.khronos.org>+foreign import ccall unsafe "vkAllocateDescriptorSets"+ vkAllocateDescriptorSets ::+ VkDevice -- ^ device+ ->+ Ptr VkDescriptorSetAllocateInfo -- ^ pAllocateInfo+ ->+ Ptr VkDescriptorSet -- ^ pDescriptorSets+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_FRAGMENTED_POOL', 'VK_ERROR_OUT_OF_POOL_MEMORY'.+--+-- > VkResult vkAllocateDescriptorSets+-- > ( VkDevice device+-- > , const VkDescriptorSetAllocateInfo* pAllocateInfo+-- > , VkDescriptorSet* pDescriptorSets+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkAllocateDescriptorSets.html vkAllocateDescriptorSets registry at www.khronos.org>+foreign import ccall safe "vkAllocateDescriptorSets"+ vkAllocateDescriptorSetsSafe ::+ VkDevice -- ^ device+ ->+ Ptr VkDescriptorSetAllocateInfo -- ^ pAllocateInfo+ ->+ Ptr VkDescriptorSet -- ^ pDescriptorSets+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkFreeDescriptorSets+-- > ( VkDevice device+-- > , VkDescriptorPool descriptorPool+-- > , uint32_t descriptorSetCount+-- > , const VkDescriptorSet* pDescriptorSets+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkFreeDescriptorSets.html vkFreeDescriptorSets registry at www.khronos.org>+foreign import ccall unsafe "vkFreeDescriptorSets"+ vkFreeDescriptorSets ::+ VkDevice -- ^ device+ ->+ VkDescriptorPool -- ^ descriptorPool+ -> Word32 -- ^ descriptorSetCount+ -> Ptr VkDescriptorSet -- ^ pDescriptorSets+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkFreeDescriptorSets+-- > ( VkDevice device+-- > , VkDescriptorPool descriptorPool+-- > , uint32_t descriptorSetCount+-- > , const VkDescriptorSet* pDescriptorSets+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkFreeDescriptorSets.html vkFreeDescriptorSets registry at www.khronos.org>+foreign import ccall safe "vkFreeDescriptorSets"+ vkFreeDescriptorSetsSafe ::+ VkDevice -- ^ device+ ->+ VkDescriptorPool -- ^ descriptorPool+ -> Word32 -- ^ descriptorSetCount+ -> Ptr VkDescriptorSet -- ^ pDescriptorSets+ -> IO VkResult++-- | > () vkUpdateDescriptorSets+-- > ( VkDevice device+-- > , uint32_t descriptorWriteCount+-- > , const VkWriteDescriptorSet* pDescriptorWrites+-- > , uint32_t descriptorCopyCount+-- > , const VkCopyDescriptorSet* pDescriptorCopies+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkUpdateDescriptorSets.html vkUpdateDescriptorSets registry at www.khronos.org>+foreign import ccall unsafe "vkUpdateDescriptorSets"+ vkUpdateDescriptorSets ::+ VkDevice -- ^ device+ ->+ Word32 -- ^ descriptorWriteCount+ ->+ Ptr VkWriteDescriptorSet -- ^ pDescriptorWrites+ ->+ Word32 -- ^ descriptorCopyCount+ -> Ptr VkCopyDescriptorSet -- ^ pDescriptorCopies+ -> IO ()++-- | > () vkUpdateDescriptorSets+-- > ( VkDevice device+-- > , uint32_t descriptorWriteCount+-- > , const VkWriteDescriptorSet* pDescriptorWrites+-- > , uint32_t descriptorCopyCount+-- > , const VkCopyDescriptorSet* pDescriptorCopies+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkUpdateDescriptorSets.html vkUpdateDescriptorSets registry at www.khronos.org>+foreign import ccall safe "vkUpdateDescriptorSets"+ vkUpdateDescriptorSetsSafe ::+ VkDevice -- ^ device+ ->+ Word32 -- ^ descriptorWriteCount+ ->+ Ptr VkWriteDescriptorSet -- ^ pDescriptorWrites+ ->+ Word32 -- ^ descriptorCopyCount+ -> Ptr VkCopyDescriptorSet -- ^ pDescriptorCopies+ -> IO ()++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreateFramebuffer+-- > ( VkDevice device+-- > , const VkFramebufferCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkFramebuffer* pFramebuffer+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateFramebuffer.html vkCreateFramebuffer registry at www.khronos.org>+foreign import ccall unsafe "vkCreateFramebuffer"+ vkCreateFramebuffer ::+ VkDevice -- ^ device+ ->+ Ptr VkFramebufferCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkFramebuffer -- ^ pFramebuffer+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreateFramebuffer+-- > ( VkDevice device+-- > , const VkFramebufferCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkFramebuffer* pFramebuffer+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateFramebuffer.html vkCreateFramebuffer registry at www.khronos.org>+foreign import ccall safe "vkCreateFramebuffer"+ vkCreateFramebufferSafe ::+ VkDevice -- ^ device+ ->+ Ptr VkFramebufferCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkFramebuffer -- ^ pFramebuffer+ -> IO VkResult++-- | > () vkDestroyFramebuffer+-- > ( VkDevice device+-- > , VkFramebuffer framebuffer+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyFramebuffer.html vkDestroyFramebuffer registry at www.khronos.org>+foreign import ccall unsafe "vkDestroyFramebuffer"+ vkDestroyFramebuffer ::+ VkDevice -- ^ device+ -> VkFramebuffer -- ^ framebuffer+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | > () vkDestroyFramebuffer+-- > ( VkDevice device+-- > , VkFramebuffer framebuffer+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyFramebuffer.html vkDestroyFramebuffer registry at www.khronos.org>+foreign import ccall safe "vkDestroyFramebuffer"+ vkDestroyFramebufferSafe ::+ VkDevice -- ^ device+ -> VkFramebuffer -- ^ framebuffer+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreateRenderPass+-- > ( VkDevice device+-- > , const VkRenderPassCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkRenderPass* pRenderPass+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateRenderPass.html vkCreateRenderPass registry at www.khronos.org>+foreign import ccall unsafe "vkCreateRenderPass" vkCreateRenderPass+ ::+ VkDevice -- ^ device+ ->+ Ptr VkRenderPassCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkRenderPass -- ^ pRenderPass+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreateRenderPass+-- > ( VkDevice device+-- > , const VkRenderPassCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkRenderPass* pRenderPass+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateRenderPass.html vkCreateRenderPass registry at www.khronos.org>+foreign import ccall safe "vkCreateRenderPass"+ vkCreateRenderPassSafe ::+ VkDevice -- ^ device+ ->+ Ptr VkRenderPassCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkRenderPass -- ^ pRenderPass+ -> IO VkResult++-- | > () vkDestroyRenderPass+-- > ( VkDevice device+-- > , VkRenderPass renderPass+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyRenderPass.html vkDestroyRenderPass registry at www.khronos.org>+foreign import ccall unsafe "vkDestroyRenderPass"+ vkDestroyRenderPass ::+ VkDevice -- ^ device+ -> VkRenderPass -- ^ renderPass+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | > () vkDestroyRenderPass+-- > ( VkDevice device+-- > , VkRenderPass renderPass+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyRenderPass.html vkDestroyRenderPass registry at www.khronos.org>+foreign import ccall safe "vkDestroyRenderPass"+ vkDestroyRenderPassSafe ::+ VkDevice -- ^ device+ -> VkRenderPass -- ^ renderPass+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | > () vkGetRenderAreaGranularity+-- > ( VkDevice device+-- > , VkRenderPass renderPass+-- > , VkExtent2D* pGranularity+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetRenderAreaGranularity.html vkGetRenderAreaGranularity registry at www.khronos.org>+foreign import ccall unsafe "vkGetRenderAreaGranularity"+ vkGetRenderAreaGranularity ::+ VkDevice -- ^ device+ -> VkRenderPass -- ^ renderPass+ -> Ptr VkExtent2D -- ^ pGranularity+ -> IO ()++-- | > () vkGetRenderAreaGranularity+-- > ( VkDevice device+-- > , VkRenderPass renderPass+-- > , VkExtent2D* pGranularity+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetRenderAreaGranularity.html vkGetRenderAreaGranularity registry at www.khronos.org>+foreign import ccall safe "vkGetRenderAreaGranularity"+ vkGetRenderAreaGranularitySafe ::+ VkDevice -- ^ device+ -> VkRenderPass -- ^ renderPass+ -> Ptr VkExtent2D -- ^ pGranularity+ -> IO ()++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreateCommandPool+-- > ( VkDevice device+-- > , const VkCommandPoolCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkCommandPool* pCommandPool+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateCommandPool.html vkCreateCommandPool registry at www.khronos.org>+foreign import ccall unsafe "vkCreateCommandPool"+ vkCreateCommandPool ::+ VkDevice -- ^ device+ ->+ Ptr VkCommandPoolCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkCommandPool -- ^ pCommandPool+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreateCommandPool+-- > ( VkDevice device+-- > , const VkCommandPoolCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkCommandPool* pCommandPool+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateCommandPool.html vkCreateCommandPool registry at www.khronos.org>+foreign import ccall safe "vkCreateCommandPool"+ vkCreateCommandPoolSafe ::+ VkDevice -- ^ device+ ->+ Ptr VkCommandPoolCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkCommandPool -- ^ pCommandPool+ -> IO VkResult++-- | > () vkDestroyCommandPool+-- > ( VkDevice device+-- > , VkCommandPool commandPool+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyCommandPool.html vkDestroyCommandPool registry at www.khronos.org>+foreign import ccall unsafe "vkDestroyCommandPool"+ vkDestroyCommandPool ::+ VkDevice -- ^ device+ -> VkCommandPool -- ^ commandPool+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | > () vkDestroyCommandPool+-- > ( VkDevice device+-- > , VkCommandPool commandPool+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyCommandPool.html vkDestroyCommandPool registry at www.khronos.org>+foreign import ccall safe "vkDestroyCommandPool"+ vkDestroyCommandPoolSafe ::+ VkDevice -- ^ device+ -> VkCommandPool -- ^ commandPool+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkResetCommandPool+-- > ( VkDevice device+-- > , VkCommandPool commandPool+-- > , VkCommandPoolResetFlags flags+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkResetCommandPool.html vkResetCommandPool registry at www.khronos.org>+foreign import ccall unsafe "vkResetCommandPool" vkResetCommandPool+ ::+ VkDevice -- ^ device+ -> VkCommandPool -- ^ commandPool+ -> VkCommandPoolResetFlags -- ^ flags+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkResetCommandPool+-- > ( VkDevice device+-- > , VkCommandPool commandPool+-- > , VkCommandPoolResetFlags flags+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkResetCommandPool.html vkResetCommandPool registry at www.khronos.org>+foreign import ccall safe "vkResetCommandPool"+ vkResetCommandPoolSafe ::+ VkDevice -- ^ device+ -> VkCommandPool -- ^ commandPool+ -> VkCommandPoolResetFlags -- ^ flags+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkAllocateCommandBuffers+-- > ( VkDevice device+-- > , const VkCommandBufferAllocateInfo* pAllocateInfo+-- > , VkCommandBuffer* pCommandBuffers+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkAllocateCommandBuffers.html vkAllocateCommandBuffers registry at www.khronos.org>+foreign import ccall unsafe "vkAllocateCommandBuffers"+ vkAllocateCommandBuffers ::+ VkDevice -- ^ device+ ->+ Ptr VkCommandBufferAllocateInfo -- ^ pAllocateInfo+ ->+ Ptr VkCommandBuffer -- ^ pCommandBuffers+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkAllocateCommandBuffers+-- > ( VkDevice device+-- > , const VkCommandBufferAllocateInfo* pAllocateInfo+-- > , VkCommandBuffer* pCommandBuffers+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkAllocateCommandBuffers.html vkAllocateCommandBuffers registry at www.khronos.org>+foreign import ccall safe "vkAllocateCommandBuffers"+ vkAllocateCommandBuffersSafe ::+ VkDevice -- ^ device+ ->+ Ptr VkCommandBufferAllocateInfo -- ^ pAllocateInfo+ ->+ Ptr VkCommandBuffer -- ^ pCommandBuffers+ -> IO VkResult++-- | > () vkFreeCommandBuffers+-- > ( VkDevice device+-- > , VkCommandPool commandPool+-- > , uint32_t commandBufferCount+-- > , const VkCommandBuffer* pCommandBuffers+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkFreeCommandBuffers.html vkFreeCommandBuffers registry at www.khronos.org>+foreign import ccall unsafe "vkFreeCommandBuffers"+ vkFreeCommandBuffers ::+ VkDevice -- ^ device+ -> VkCommandPool -- ^ commandPool+ -> Word32 -- ^ commandBufferCount+ -> Ptr VkCommandBuffer -- ^ pCommandBuffers+ -> IO ()++-- | > () vkFreeCommandBuffers+-- > ( VkDevice device+-- > , VkCommandPool commandPool+-- > , uint32_t commandBufferCount+-- > , const VkCommandBuffer* pCommandBuffers+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkFreeCommandBuffers.html vkFreeCommandBuffers registry at www.khronos.org>+foreign import ccall safe "vkFreeCommandBuffers"+ vkFreeCommandBuffersSafe ::+ VkDevice -- ^ device+ -> VkCommandPool -- ^ commandPool+ -> Word32 -- ^ commandBufferCount+ -> Ptr VkCommandBuffer -- ^ pCommandBuffers+ -> IO ()++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkBeginCommandBuffer+-- > ( VkCommandBuffer commandBuffer+-- > , const VkCommandBufferBeginInfo* pBeginInfo+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkBeginCommandBuffer.html vkBeginCommandBuffer registry at www.khronos.org>+foreign import ccall unsafe "vkBeginCommandBuffer"+ vkBeginCommandBuffer ::+ VkCommandBuffer -- ^ commandBuffer+ -> Ptr VkCommandBufferBeginInfo -- ^ pBeginInfo+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkBeginCommandBuffer+-- > ( VkCommandBuffer commandBuffer+-- > , const VkCommandBufferBeginInfo* pBeginInfo+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkBeginCommandBuffer.html vkBeginCommandBuffer registry at www.khronos.org>+foreign import ccall safe "vkBeginCommandBuffer"+ vkBeginCommandBufferSafe ::+ VkCommandBuffer -- ^ commandBuffer+ -> Ptr VkCommandBufferBeginInfo -- ^ pBeginInfo+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkEndCommandBuffer+-- > ( VkCommandBuffer commandBuffer+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkEndCommandBuffer.html vkEndCommandBuffer registry at www.khronos.org>+foreign import ccall unsafe "vkEndCommandBuffer" vkEndCommandBuffer+ :: VkCommandBuffer -- ^ commandBuffer+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkEndCommandBuffer+-- > ( VkCommandBuffer commandBuffer+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkEndCommandBuffer.html vkEndCommandBuffer registry at www.khronos.org>+foreign import ccall safe "vkEndCommandBuffer"+ vkEndCommandBufferSafe :: VkCommandBuffer -- ^ commandBuffer+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkResetCommandBuffer+-- > ( VkCommandBuffer commandBuffer+-- > , VkCommandBufferResetFlags flags+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkResetCommandBuffer.html vkResetCommandBuffer registry at www.khronos.org>+foreign import ccall unsafe "vkResetCommandBuffer"+ vkResetCommandBuffer ::+ VkCommandBuffer -- ^ commandBuffer+ -> VkCommandBufferResetFlags -- ^ flags+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkResetCommandBuffer+-- > ( VkCommandBuffer commandBuffer+-- > , VkCommandBufferResetFlags flags+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkResetCommandBuffer.html vkResetCommandBuffer registry at www.khronos.org>+foreign import ccall safe "vkResetCommandBuffer"+ vkResetCommandBufferSafe ::+ VkCommandBuffer -- ^ commandBuffer+ -> VkCommandBufferResetFlags -- ^ flags+ -> IO VkResult++-- | queues: 'graphics', 'compute'.+--+-- renderpass: @both@+--+-- > () vkCmdBindPipeline+-- > ( VkCommandBuffer commandBuffer+-- > , VkPipelineBindPoint pipelineBindPoint+-- > , VkPipeline pipeline+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdBindPipeline.html vkCmdBindPipeline registry at www.khronos.org>+foreign import ccall unsafe "vkCmdBindPipeline" vkCmdBindPipeline+ :: VkCommandBuffer -- ^ commandBuffer+ -> VkPipelineBindPoint -- ^ pipelineBindPoint+ -> VkPipeline -- ^ pipeline+ -> IO ()++-- | queues: 'graphics', 'compute'.+--+-- renderpass: @both@+--+-- > () vkCmdBindPipeline+-- > ( VkCommandBuffer commandBuffer+-- > , VkPipelineBindPoint pipelineBindPoint+-- > , VkPipeline pipeline+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdBindPipeline.html vkCmdBindPipeline registry at www.khronos.org>+foreign import ccall safe "vkCmdBindPipeline" vkCmdBindPipelineSafe+ :: VkCommandBuffer -- ^ commandBuffer+ -> VkPipelineBindPoint -- ^ pipelineBindPoint+ -> VkPipeline -- ^ pipeline+ -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @both@+--+-- > () vkCmdSetViewport+-- > ( VkCommandBuffer commandBuffer+-- > , uint32_t firstViewport+-- > , uint32_t viewportCount+-- > , const VkViewport* pViewports+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdSetViewport.html vkCmdSetViewport registry at www.khronos.org>+foreign import ccall unsafe "vkCmdSetViewport" vkCmdSetViewport ::+ VkCommandBuffer -- ^ commandBuffer+ -> Word32 -- ^ firstViewport+ -> Word32 -- ^ viewportCount+ -> Ptr VkViewport -- ^ pViewports+ -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @both@+--+-- > () vkCmdSetViewport+-- > ( VkCommandBuffer commandBuffer+-- > , uint32_t firstViewport+-- > , uint32_t viewportCount+-- > , const VkViewport* pViewports+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdSetViewport.html vkCmdSetViewport registry at www.khronos.org>+foreign import ccall safe "vkCmdSetViewport" vkCmdSetViewportSafe+ :: VkCommandBuffer -- ^ commandBuffer+ -> Word32 -- ^ firstViewport+ -> Word32 -- ^ viewportCount+ -> Ptr VkViewport -- ^ pViewports+ -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @both@+--+-- > () vkCmdSetScissor+-- > ( VkCommandBuffer commandBuffer+-- > , uint32_t firstScissor+-- > , uint32_t scissorCount+-- > , const VkRect2D* pScissors+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdSetScissor.html vkCmdSetScissor registry at www.khronos.org>+foreign import ccall unsafe "vkCmdSetScissor" vkCmdSetScissor ::+ VkCommandBuffer -- ^ commandBuffer+ -> Word32 -- ^ firstScissor+ -> Word32 -- ^ scissorCount+ -> Ptr VkRect2D -- ^ pScissors+ -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @both@+--+-- > () vkCmdSetScissor+-- > ( VkCommandBuffer commandBuffer+-- > , uint32_t firstScissor+-- > , uint32_t scissorCount+-- > , const VkRect2D* pScissors+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdSetScissor.html vkCmdSetScissor registry at www.khronos.org>+foreign import ccall safe "vkCmdSetScissor" vkCmdSetScissorSafe ::+ VkCommandBuffer -- ^ commandBuffer+ -> Word32 -- ^ firstScissor+ -> Word32 -- ^ scissorCount+ -> Ptr VkRect2D -- ^ pScissors+ -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @both@+--+-- > () vkCmdSetLineWidth+-- > ( VkCommandBuffer commandBuffer+-- > , float lineWidth+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdSetLineWidth.html vkCmdSetLineWidth registry at www.khronos.org>+foreign import ccall unsafe "vkCmdSetLineWidth" vkCmdSetLineWidth+ :: VkCommandBuffer -- ^ commandBuffer+ -> #{type float} -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @both@+--+-- > () vkCmdSetLineWidth+-- > ( VkCommandBuffer commandBuffer+-- > , float lineWidth+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdSetLineWidth.html vkCmdSetLineWidth registry at www.khronos.org>+foreign import ccall safe "vkCmdSetLineWidth" vkCmdSetLineWidthSafe+ :: VkCommandBuffer -- ^ commandBuffer+ -> #{type float} -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @both@+--+-- > () vkCmdSetDepthBias+-- > ( VkCommandBuffer commandBuffer+-- > , float depthBiasConstantFactor+-- > , float depthBiasClamp+-- > , float depthBiasSlopeFactor+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdSetDepthBias.html vkCmdSetDepthBias registry at www.khronos.org>+foreign import ccall unsafe "vkCmdSetDepthBias" vkCmdSetDepthBias+ ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ #{type float} ->+ #{type float} -> #{type float} -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @both@+--+-- > () vkCmdSetDepthBias+-- > ( VkCommandBuffer commandBuffer+-- > , float depthBiasConstantFactor+-- > , float depthBiasClamp+-- > , float depthBiasSlopeFactor+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdSetDepthBias.html vkCmdSetDepthBias registry at www.khronos.org>+foreign import ccall safe "vkCmdSetDepthBias" vkCmdSetDepthBiasSafe+ ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ #{type float} ->+ #{type float} -> #{type float} -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @both@+--+-- > () vkCmdSetBlendConstants+-- > ( VkCommandBuffer commandBuffer+-- > , const float blendConstants[4]+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdSetBlendConstants.html vkCmdSetBlendConstants registry at www.khronos.org>+foreign import ccall unsafe "vkCmdSetBlendConstants"+ vkCmdSetBlendConstants ::+ VkCommandBuffer -- ^ commandBuffer+ -> Ptr #{type float} -- ^ blendConstants+ -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @both@+--+-- > () vkCmdSetBlendConstants+-- > ( VkCommandBuffer commandBuffer+-- > , const float blendConstants[4]+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdSetBlendConstants.html vkCmdSetBlendConstants registry at www.khronos.org>+foreign import ccall safe "vkCmdSetBlendConstants"+ vkCmdSetBlendConstantsSafe ::+ VkCommandBuffer -- ^ commandBuffer+ -> Ptr #{type float} -- ^ blendConstants+ -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @both@+--+-- > () vkCmdSetDepthBounds+-- > ( VkCommandBuffer commandBuffer+-- > , float minDepthBounds+-- > , float maxDepthBounds+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdSetDepthBounds.html vkCmdSetDepthBounds registry at www.khronos.org>+foreign import ccall unsafe "vkCmdSetDepthBounds"+ vkCmdSetDepthBounds ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ #{type float} -> #{type float} -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @both@+--+-- > () vkCmdSetDepthBounds+-- > ( VkCommandBuffer commandBuffer+-- > , float minDepthBounds+-- > , float maxDepthBounds+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdSetDepthBounds.html vkCmdSetDepthBounds registry at www.khronos.org>+foreign import ccall safe "vkCmdSetDepthBounds"+ vkCmdSetDepthBoundsSafe ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ #{type float} -> #{type float} -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @both@+--+-- > () vkCmdSetStencilCompareMask+-- > ( VkCommandBuffer commandBuffer+-- > , VkStencilFaceFlags faceMask+-- > , uint32_t compareMask+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdSetStencilCompareMask.html vkCmdSetStencilCompareMask registry at www.khronos.org>+foreign import ccall unsafe "vkCmdSetStencilCompareMask"+ vkCmdSetStencilCompareMask ::+ VkCommandBuffer -- ^ commandBuffer+ -> VkStencilFaceFlags -- ^ faceMask+ -> Word32 -- ^ compareMask+ -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @both@+--+-- > () vkCmdSetStencilCompareMask+-- > ( VkCommandBuffer commandBuffer+-- > , VkStencilFaceFlags faceMask+-- > , uint32_t compareMask+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdSetStencilCompareMask.html vkCmdSetStencilCompareMask registry at www.khronos.org>+foreign import ccall safe "vkCmdSetStencilCompareMask"+ vkCmdSetStencilCompareMaskSafe ::+ VkCommandBuffer -- ^ commandBuffer+ -> VkStencilFaceFlags -- ^ faceMask+ -> Word32 -- ^ compareMask+ -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @both@+--+-- > () vkCmdSetStencilWriteMask+-- > ( VkCommandBuffer commandBuffer+-- > , VkStencilFaceFlags faceMask+-- > , uint32_t writeMask+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdSetStencilWriteMask.html vkCmdSetStencilWriteMask registry at www.khronos.org>+foreign import ccall unsafe "vkCmdSetStencilWriteMask"+ vkCmdSetStencilWriteMask ::+ VkCommandBuffer -- ^ commandBuffer+ -> VkStencilFaceFlags -- ^ faceMask+ -> Word32 -- ^ writeMask+ -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @both@+--+-- > () vkCmdSetStencilWriteMask+-- > ( VkCommandBuffer commandBuffer+-- > , VkStencilFaceFlags faceMask+-- > , uint32_t writeMask+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdSetStencilWriteMask.html vkCmdSetStencilWriteMask registry at www.khronos.org>+foreign import ccall safe "vkCmdSetStencilWriteMask"+ vkCmdSetStencilWriteMaskSafe ::+ VkCommandBuffer -- ^ commandBuffer+ -> VkStencilFaceFlags -- ^ faceMask+ -> Word32 -- ^ writeMask+ -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @both@+--+-- > () vkCmdSetStencilReference+-- > ( VkCommandBuffer commandBuffer+-- > , VkStencilFaceFlags faceMask+-- > , uint32_t reference+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdSetStencilReference.html vkCmdSetStencilReference registry at www.khronos.org>+foreign import ccall unsafe "vkCmdSetStencilReference"+ vkCmdSetStencilReference ::+ VkCommandBuffer -- ^ commandBuffer+ -> VkStencilFaceFlags -- ^ faceMask+ -> Word32 -- ^ reference+ -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @both@+--+-- > () vkCmdSetStencilReference+-- > ( VkCommandBuffer commandBuffer+-- > , VkStencilFaceFlags faceMask+-- > , uint32_t reference+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdSetStencilReference.html vkCmdSetStencilReference registry at www.khronos.org>+foreign import ccall safe "vkCmdSetStencilReference"+ vkCmdSetStencilReferenceSafe ::+ VkCommandBuffer -- ^ commandBuffer+ -> VkStencilFaceFlags -- ^ faceMask+ -> Word32 -- ^ reference+ -> IO ()++-- | queues: 'graphics', 'compute'.+--+-- renderpass: @both@+--+-- > () vkCmdBindDescriptorSets+-- > ( VkCommandBuffer commandBuffer+-- > , VkPipelineBindPoint pipelineBindPoint+-- > , VkPipelineLayout layout+-- > , uint32_t firstSet+-- > , uint32_t descriptorSetCount+-- > , const VkDescriptorSet* pDescriptorSets+-- > , uint32_t dynamicOffsetCount+-- > , const uint32_t* pDynamicOffsets+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdBindDescriptorSets.html vkCmdBindDescriptorSets registry at www.khronos.org>+foreign import ccall unsafe "vkCmdBindDescriptorSets"+ vkCmdBindDescriptorSets ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkPipelineBindPoint -- ^ pipelineBindPoint+ ->+ VkPipelineLayout -- ^ layout+ ->+ Word32 -- ^ firstSet+ ->+ Word32 -- ^ descriptorSetCount+ -> Ptr VkDescriptorSet -- ^ pDescriptorSets+ -> Word32 -- ^ dynamicOffsetCount+ -> Ptr Word32 -- ^ pDynamicOffsets+ -> IO ()++-- | queues: 'graphics', 'compute'.+--+-- renderpass: @both@+--+-- > () vkCmdBindDescriptorSets+-- > ( VkCommandBuffer commandBuffer+-- > , VkPipelineBindPoint pipelineBindPoint+-- > , VkPipelineLayout layout+-- > , uint32_t firstSet+-- > , uint32_t descriptorSetCount+-- > , const VkDescriptorSet* pDescriptorSets+-- > , uint32_t dynamicOffsetCount+-- > , const uint32_t* pDynamicOffsets+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdBindDescriptorSets.html vkCmdBindDescriptorSets registry at www.khronos.org>+foreign import ccall safe "vkCmdBindDescriptorSets"+ vkCmdBindDescriptorSetsSafe ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkPipelineBindPoint -- ^ pipelineBindPoint+ ->+ VkPipelineLayout -- ^ layout+ ->+ Word32 -- ^ firstSet+ ->+ Word32 -- ^ descriptorSetCount+ -> Ptr VkDescriptorSet -- ^ pDescriptorSets+ -> Word32 -- ^ dynamicOffsetCount+ -> Ptr Word32 -- ^ pDynamicOffsets+ -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @both@+--+-- > () vkCmdBindIndexBuffer+-- > ( VkCommandBuffer commandBuffer+-- > , VkBuffer buffer+-- > , VkDeviceSize offset+-- > , VkIndexType indexType+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdBindIndexBuffer.html vkCmdBindIndexBuffer registry at www.khronos.org>+foreign import ccall unsafe "vkCmdBindIndexBuffer"+ vkCmdBindIndexBuffer ::+ VkCommandBuffer -- ^ commandBuffer+ -> VkBuffer -- ^ buffer+ -> VkDeviceSize -- ^ offset+ -> VkIndexType -- ^ indexType+ -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @both@+--+-- > () vkCmdBindIndexBuffer+-- > ( VkCommandBuffer commandBuffer+-- > , VkBuffer buffer+-- > , VkDeviceSize offset+-- > , VkIndexType indexType+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdBindIndexBuffer.html vkCmdBindIndexBuffer registry at www.khronos.org>+foreign import ccall safe "vkCmdBindIndexBuffer"+ vkCmdBindIndexBufferSafe ::+ VkCommandBuffer -- ^ commandBuffer+ -> VkBuffer -- ^ buffer+ -> VkDeviceSize -- ^ offset+ -> VkIndexType -- ^ indexType+ -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @both@+--+-- > () vkCmdBindVertexBuffers+-- > ( VkCommandBuffer commandBuffer+-- > , uint32_t firstBinding+-- > , uint32_t bindingCount+-- > , const VkBuffer* pBuffers+-- > , const VkDeviceSize* pOffsets+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdBindVertexBuffers.html vkCmdBindVertexBuffers registry at www.khronos.org>+foreign import ccall unsafe "vkCmdBindVertexBuffers"+ vkCmdBindVertexBuffers ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ Word32 -- ^ firstBinding+ -> Word32 -- ^ bindingCount+ -> Ptr VkBuffer -- ^ pBuffers+ -> Ptr VkDeviceSize -- ^ pOffsets+ -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @both@+--+-- > () vkCmdBindVertexBuffers+-- > ( VkCommandBuffer commandBuffer+-- > , uint32_t firstBinding+-- > , uint32_t bindingCount+-- > , const VkBuffer* pBuffers+-- > , const VkDeviceSize* pOffsets+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdBindVertexBuffers.html vkCmdBindVertexBuffers registry at www.khronos.org>+foreign import ccall safe "vkCmdBindVertexBuffers"+ vkCmdBindVertexBuffersSafe ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ Word32 -- ^ firstBinding+ -> Word32 -- ^ bindingCount+ -> Ptr VkBuffer -- ^ pBuffers+ -> Ptr VkDeviceSize -- ^ pOffsets+ -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @inside@+--+-- pipeline: @graphics@+--+-- > () vkCmdDraw+-- > ( VkCommandBuffer commandBuffer+-- > , uint32_t vertexCount+-- > , uint32_t instanceCount+-- > , uint32_t firstVertex+-- > , uint32_t firstInstance+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdDraw.html vkCmdDraw registry at www.khronos.org>+foreign import ccall unsafe "vkCmdDraw" vkCmdDraw ::+ VkCommandBuffer -- ^ commandBuffer+ -> Word32 -- ^ vertexCount+ -> Word32 -- ^ instanceCount+ -> Word32 -- ^ firstVertex+ -> Word32 -- ^ firstInstance+ -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @inside@+--+-- pipeline: @graphics@+--+-- > () vkCmdDraw+-- > ( VkCommandBuffer commandBuffer+-- > , uint32_t vertexCount+-- > , uint32_t instanceCount+-- > , uint32_t firstVertex+-- > , uint32_t firstInstance+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdDraw.html vkCmdDraw registry at www.khronos.org>+foreign import ccall safe "vkCmdDraw" vkCmdDrawSafe ::+ VkCommandBuffer -- ^ commandBuffer+ -> Word32 -- ^ vertexCount+ -> Word32 -- ^ instanceCount+ -> Word32 -- ^ firstVertex+ -> Word32 -- ^ firstInstance+ -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @inside@+--+-- pipeline: @graphics@+--+-- > () vkCmdDrawIndexed+-- > ( VkCommandBuffer commandBuffer+-- > , uint32_t indexCount+-- > , uint32_t instanceCount+-- > , uint32_t firstIndex+-- > , int32_t vertexOffset+-- > , uint32_t firstInstance+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdDrawIndexed.html vkCmdDrawIndexed registry at www.khronos.org>+foreign import ccall unsafe "vkCmdDrawIndexed" vkCmdDrawIndexed ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ Word32 -- ^ indexCount+ -> Word32 -- ^ instanceCount+ -> Word32 -- ^ firstIndex+ -> Int32 -- ^ vertexOffset+ -> Word32 -- ^ firstInstance+ -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @inside@+--+-- pipeline: @graphics@+--+-- > () vkCmdDrawIndexed+-- > ( VkCommandBuffer commandBuffer+-- > , uint32_t indexCount+-- > , uint32_t instanceCount+-- > , uint32_t firstIndex+-- > , int32_t vertexOffset+-- > , uint32_t firstInstance+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdDrawIndexed.html vkCmdDrawIndexed registry at www.khronos.org>+foreign import ccall safe "vkCmdDrawIndexed" vkCmdDrawIndexedSafe+ ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ Word32 -- ^ indexCount+ -> Word32 -- ^ instanceCount+ -> Word32 -- ^ firstIndex+ -> Int32 -- ^ vertexOffset+ -> Word32 -- ^ firstInstance+ -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @inside@+--+-- pipeline: @graphics@+--+-- > () vkCmdDrawIndirect+-- > ( VkCommandBuffer commandBuffer+-- > , VkBuffer buffer+-- > , VkDeviceSize offset+-- > , uint32_t drawCount+-- > , uint32_t stride+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdDrawIndirect.html vkCmdDrawIndirect registry at www.khronos.org>+foreign import ccall unsafe "vkCmdDrawIndirect" vkCmdDrawIndirect+ ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkBuffer -- ^ buffer+ -> VkDeviceSize -- ^ offset+ -> Word32 -- ^ drawCount+ -> Word32 -- ^ stride+ -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @inside@+--+-- pipeline: @graphics@+--+-- > () vkCmdDrawIndirect+-- > ( VkCommandBuffer commandBuffer+-- > , VkBuffer buffer+-- > , VkDeviceSize offset+-- > , uint32_t drawCount+-- > , uint32_t stride+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdDrawIndirect.html vkCmdDrawIndirect registry at www.khronos.org>+foreign import ccall safe "vkCmdDrawIndirect" vkCmdDrawIndirectSafe+ ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkBuffer -- ^ buffer+ -> VkDeviceSize -- ^ offset+ -> Word32 -- ^ drawCount+ -> Word32 -- ^ stride+ -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @inside@+--+-- pipeline: @graphics@+--+-- > () vkCmdDrawIndexedIndirect+-- > ( VkCommandBuffer commandBuffer+-- > , VkBuffer buffer+-- > , VkDeviceSize offset+-- > , uint32_t drawCount+-- > , uint32_t stride+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdDrawIndexedIndirect.html vkCmdDrawIndexedIndirect registry at www.khronos.org>+foreign import ccall unsafe "vkCmdDrawIndexedIndirect"+ vkCmdDrawIndexedIndirect ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkBuffer -- ^ buffer+ -> VkDeviceSize -- ^ offset+ -> Word32 -- ^ drawCount+ -> Word32 -- ^ stride+ -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @inside@+--+-- pipeline: @graphics@+--+-- > () vkCmdDrawIndexedIndirect+-- > ( VkCommandBuffer commandBuffer+-- > , VkBuffer buffer+-- > , VkDeviceSize offset+-- > , uint32_t drawCount+-- > , uint32_t stride+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdDrawIndexedIndirect.html vkCmdDrawIndexedIndirect registry at www.khronos.org>+foreign import ccall safe "vkCmdDrawIndexedIndirect"+ vkCmdDrawIndexedIndirectSafe ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkBuffer -- ^ buffer+ -> VkDeviceSize -- ^ offset+ -> Word32 -- ^ drawCount+ -> Word32 -- ^ stride+ -> IO ()++-- | queues: 'compute'.+--+-- renderpass: @outside@+--+-- pipeline: @compute@+--+-- > () vkCmdDispatch+-- > ( VkCommandBuffer commandBuffer+-- > , uint32_t groupCountX+-- > , uint32_t groupCountY+-- > , uint32_t groupCountZ+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdDispatch.html vkCmdDispatch registry at www.khronos.org>+foreign import ccall unsafe "vkCmdDispatch" vkCmdDispatch ::+ VkCommandBuffer -- ^ commandBuffer+ -> Word32 -- ^ groupCountX+ -> Word32 -- ^ groupCountY+ -> Word32 -- ^ groupCountZ+ -> IO ()++-- | queues: 'compute'.+--+-- renderpass: @outside@+--+-- pipeline: @compute@+--+-- > () vkCmdDispatch+-- > ( VkCommandBuffer commandBuffer+-- > , uint32_t groupCountX+-- > , uint32_t groupCountY+-- > , uint32_t groupCountZ+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdDispatch.html vkCmdDispatch registry at www.khronos.org>+foreign import ccall safe "vkCmdDispatch" vkCmdDispatchSafe ::+ VkCommandBuffer -- ^ commandBuffer+ -> Word32 -- ^ groupCountX+ -> Word32 -- ^ groupCountY+ -> Word32 -- ^ groupCountZ+ -> IO ()++-- | queues: 'compute'.+--+-- renderpass: @outside@+--+-- pipeline: @compute@+--+-- > () vkCmdDispatchIndirect+-- > ( VkCommandBuffer commandBuffer+-- > , VkBuffer buffer+-- > , VkDeviceSize offset+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdDispatchIndirect.html vkCmdDispatchIndirect registry at www.khronos.org>+foreign import ccall unsafe "vkCmdDispatchIndirect"+ vkCmdDispatchIndirect ::+ VkCommandBuffer -- ^ commandBuffer+ -> VkBuffer -- ^ buffer+ -> VkDeviceSize -- ^ offset+ -> IO ()++-- | queues: 'compute'.+--+-- renderpass: @outside@+--+-- pipeline: @compute@+--+-- > () vkCmdDispatchIndirect+-- > ( VkCommandBuffer commandBuffer+-- > , VkBuffer buffer+-- > , VkDeviceSize offset+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdDispatchIndirect.html vkCmdDispatchIndirect registry at www.khronos.org>+foreign import ccall safe "vkCmdDispatchIndirect"+ vkCmdDispatchIndirectSafe ::+ VkCommandBuffer -- ^ commandBuffer+ -> VkBuffer -- ^ buffer+ -> VkDeviceSize -- ^ offset+ -> IO ()++-- | queues: 'transfer', 'graphics', 'compute'.+--+-- renderpass: @outside@+--+-- pipeline: @transfer@+--+-- > () vkCmdCopyBuffer+-- > ( VkCommandBuffer commandBuffer+-- > , VkBuffer srcBuffer+-- > , VkBuffer dstBuffer+-- > , uint32_t regionCount+-- > , const VkBufferCopy* pRegions+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdCopyBuffer.html vkCmdCopyBuffer registry at www.khronos.org>+foreign import ccall unsafe "vkCmdCopyBuffer" vkCmdCopyBuffer ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkBuffer -- ^ srcBuffer+ -> VkBuffer -- ^ dstBuffer+ -> Word32 -- ^ regionCount+ -> Ptr VkBufferCopy -- ^ pRegions+ -> IO ()++-- | queues: 'transfer', 'graphics', 'compute'.+--+-- renderpass: @outside@+--+-- pipeline: @transfer@+--+-- > () vkCmdCopyBuffer+-- > ( VkCommandBuffer commandBuffer+-- > , VkBuffer srcBuffer+-- > , VkBuffer dstBuffer+-- > , uint32_t regionCount+-- > , const VkBufferCopy* pRegions+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdCopyBuffer.html vkCmdCopyBuffer registry at www.khronos.org>+foreign import ccall safe "vkCmdCopyBuffer" vkCmdCopyBufferSafe ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkBuffer -- ^ srcBuffer+ -> VkBuffer -- ^ dstBuffer+ -> Word32 -- ^ regionCount+ -> Ptr VkBufferCopy -- ^ pRegions+ -> IO ()++-- | queues: 'transfer', 'graphics', 'compute'.+--+-- renderpass: @outside@+--+-- pipeline: @transfer@+--+-- > () vkCmdCopyImage+-- > ( VkCommandBuffer commandBuffer+-- > , VkImage srcImage+-- > , VkImageLayout srcImageLayout+-- > , VkImage dstImage+-- > , VkImageLayout dstImageLayout+-- > , uint32_t regionCount+-- > , const VkImageCopy* pRegions+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdCopyImage.html vkCmdCopyImage registry at www.khronos.org>+foreign import ccall unsafe "vkCmdCopyImage" vkCmdCopyImage ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkImage -- ^ srcImage+ ->+ VkImageLayout -- ^ srcImageLayout+ ->+ VkImage -- ^ dstImage+ -> VkImageLayout -- ^ dstImageLayout+ -> Word32 -- ^ regionCount+ -> Ptr VkImageCopy -- ^ pRegions+ -> IO ()++-- | queues: 'transfer', 'graphics', 'compute'.+--+-- renderpass: @outside@+--+-- pipeline: @transfer@+--+-- > () vkCmdCopyImage+-- > ( VkCommandBuffer commandBuffer+-- > , VkImage srcImage+-- > , VkImageLayout srcImageLayout+-- > , VkImage dstImage+-- > , VkImageLayout dstImageLayout+-- > , uint32_t regionCount+-- > , const VkImageCopy* pRegions+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdCopyImage.html vkCmdCopyImage registry at www.khronos.org>+foreign import ccall safe "vkCmdCopyImage" vkCmdCopyImageSafe ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkImage -- ^ srcImage+ ->+ VkImageLayout -- ^ srcImageLayout+ ->+ VkImage -- ^ dstImage+ -> VkImageLayout -- ^ dstImageLayout+ -> Word32 -- ^ regionCount+ -> Ptr VkImageCopy -- ^ pRegions+ -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @outside@+--+-- pipeline: @transfer@+--+-- > () vkCmdBlitImage+-- > ( VkCommandBuffer commandBuffer+-- > , VkImage srcImage+-- > , VkImageLayout srcImageLayout+-- > , VkImage dstImage+-- > , VkImageLayout dstImageLayout+-- > , uint32_t regionCount+-- > , const VkImageBlit* pRegions+-- > , VkFilter filter+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdBlitImage.html vkCmdBlitImage registry at www.khronos.org>+foreign import ccall unsafe "vkCmdBlitImage" vkCmdBlitImage ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkImage -- ^ srcImage+ ->+ VkImageLayout -- ^ srcImageLayout+ ->+ VkImage -- ^ dstImage+ ->+ VkImageLayout -- ^ dstImageLayout+ -> Word32 -- ^ regionCount+ -> Ptr VkImageBlit -- ^ pRegions+ -> VkFilter -- ^ filter+ -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @outside@+--+-- pipeline: @transfer@+--+-- > () vkCmdBlitImage+-- > ( VkCommandBuffer commandBuffer+-- > , VkImage srcImage+-- > , VkImageLayout srcImageLayout+-- > , VkImage dstImage+-- > , VkImageLayout dstImageLayout+-- > , uint32_t regionCount+-- > , const VkImageBlit* pRegions+-- > , VkFilter filter+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdBlitImage.html vkCmdBlitImage registry at www.khronos.org>+foreign import ccall safe "vkCmdBlitImage" vkCmdBlitImageSafe ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkImage -- ^ srcImage+ ->+ VkImageLayout -- ^ srcImageLayout+ ->+ VkImage -- ^ dstImage+ ->+ VkImageLayout -- ^ dstImageLayout+ -> Word32 -- ^ regionCount+ -> Ptr VkImageBlit -- ^ pRegions+ -> VkFilter -- ^ filter+ -> IO ()++-- | queues: 'transfer', 'graphics', 'compute'.+--+-- renderpass: @outside@+--+-- pipeline: @transfer@+--+-- > () vkCmdCopyBufferToImage+-- > ( VkCommandBuffer commandBuffer+-- > , VkBuffer srcBuffer+-- > , VkImage dstImage+-- > , VkImageLayout dstImageLayout+-- > , uint32_t regionCount+-- > , const VkBufferImageCopy* pRegions+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdCopyBufferToImage.html vkCmdCopyBufferToImage registry at www.khronos.org>+foreign import ccall unsafe "vkCmdCopyBufferToImage"+ vkCmdCopyBufferToImage ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkBuffer -- ^ srcBuffer+ ->+ VkImage -- ^ dstImage+ ->+ VkImageLayout -- ^ dstImageLayout+ -> Word32 -- ^ regionCount+ -> Ptr VkBufferImageCopy -- ^ pRegions+ -> IO ()++-- | queues: 'transfer', 'graphics', 'compute'.+--+-- renderpass: @outside@+--+-- pipeline: @transfer@+--+-- > () vkCmdCopyBufferToImage+-- > ( VkCommandBuffer commandBuffer+-- > , VkBuffer srcBuffer+-- > , VkImage dstImage+-- > , VkImageLayout dstImageLayout+-- > , uint32_t regionCount+-- > , const VkBufferImageCopy* pRegions+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdCopyBufferToImage.html vkCmdCopyBufferToImage registry at www.khronos.org>+foreign import ccall safe "vkCmdCopyBufferToImage"+ vkCmdCopyBufferToImageSafe ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkBuffer -- ^ srcBuffer+ ->+ VkImage -- ^ dstImage+ ->+ VkImageLayout -- ^ dstImageLayout+ -> Word32 -- ^ regionCount+ -> Ptr VkBufferImageCopy -- ^ pRegions+ -> IO ()++-- | queues: 'transfer', 'graphics', 'compute'.+--+-- renderpass: @outside@+--+-- pipeline: @transfer@+--+-- > () vkCmdCopyImageToBuffer+-- > ( VkCommandBuffer commandBuffer+-- > , VkImage srcImage+-- > , VkImageLayout srcImageLayout+-- > , VkBuffer dstBuffer+-- > , uint32_t regionCount+-- > , const VkBufferImageCopy* pRegions+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdCopyImageToBuffer.html vkCmdCopyImageToBuffer registry at www.khronos.org>+foreign import ccall unsafe "vkCmdCopyImageToBuffer"+ vkCmdCopyImageToBuffer ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkImage -- ^ srcImage+ ->+ VkImageLayout -- ^ srcImageLayout+ ->+ VkBuffer -- ^ dstBuffer+ -> Word32 -- ^ regionCount+ -> Ptr VkBufferImageCopy -- ^ pRegions+ -> IO ()++-- | queues: 'transfer', 'graphics', 'compute'.+--+-- renderpass: @outside@+--+-- pipeline: @transfer@+--+-- > () vkCmdCopyImageToBuffer+-- > ( VkCommandBuffer commandBuffer+-- > , VkImage srcImage+-- > , VkImageLayout srcImageLayout+-- > , VkBuffer dstBuffer+-- > , uint32_t regionCount+-- > , const VkBufferImageCopy* pRegions+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdCopyImageToBuffer.html vkCmdCopyImageToBuffer registry at www.khronos.org>+foreign import ccall safe "vkCmdCopyImageToBuffer"+ vkCmdCopyImageToBufferSafe ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkImage -- ^ srcImage+ ->+ VkImageLayout -- ^ srcImageLayout+ ->+ VkBuffer -- ^ dstBuffer+ -> Word32 -- ^ regionCount+ -> Ptr VkBufferImageCopy -- ^ pRegions+ -> IO ()++-- | queues: 'transfer', 'graphics', 'compute'.+--+-- renderpass: @outside@+--+-- pipeline: @transfer@+--+-- > () vkCmdUpdateBuffer+-- > ( VkCommandBuffer commandBuffer+-- > , VkBuffer dstBuffer+-- > , VkDeviceSize dstOffset+-- > , VkDeviceSize dataSize+-- > , const void* pData+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdUpdateBuffer.html vkCmdUpdateBuffer registry at www.khronos.org>+foreign import ccall unsafe "vkCmdUpdateBuffer" vkCmdUpdateBuffer+ ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkBuffer -- ^ dstBuffer+ -> VkDeviceSize -- ^ dstOffset+ -> VkDeviceSize -- ^ dataSize+ -> Ptr Void -- ^ pData+ -> IO ()++-- | queues: 'transfer', 'graphics', 'compute'.+--+-- renderpass: @outside@+--+-- pipeline: @transfer@+--+-- > () vkCmdUpdateBuffer+-- > ( VkCommandBuffer commandBuffer+-- > , VkBuffer dstBuffer+-- > , VkDeviceSize dstOffset+-- > , VkDeviceSize dataSize+-- > , const void* pData+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdUpdateBuffer.html vkCmdUpdateBuffer registry at www.khronos.org>+foreign import ccall safe "vkCmdUpdateBuffer" vkCmdUpdateBufferSafe+ ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkBuffer -- ^ dstBuffer+ -> VkDeviceSize -- ^ dstOffset+ -> VkDeviceSize -- ^ dataSize+ -> Ptr Void -- ^ pData+ -> IO ()++-- | transfer support is only available when VK_KHR_maintenance1 is enabled, as documented in valid usage language in the specification+--+-- queues: 'transfer', 'graphics', 'compute'.+--+-- renderpass: @outside@+--+-- pipeline: @transfer@+--+-- > () vkCmdFillBuffer+-- > ( VkCommandBuffer commandBuffer+-- > , VkBuffer dstBuffer+-- > , VkDeviceSize dstOffset+-- > , VkDeviceSize size+-- > , uint32_t data+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdFillBuffer.html vkCmdFillBuffer registry at www.khronos.org>+foreign import ccall unsafe "vkCmdFillBuffer" vkCmdFillBuffer ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkBuffer -- ^ dstBuffer+ -> VkDeviceSize -- ^ dstOffset+ -> VkDeviceSize -- ^ size+ -> Word32 -- ^ data+ -> IO ()++-- | transfer support is only available when VK_KHR_maintenance1 is enabled, as documented in valid usage language in the specification+--+-- queues: 'transfer', 'graphics', 'compute'.+--+-- renderpass: @outside@+--+-- pipeline: @transfer@+--+-- > () vkCmdFillBuffer+-- > ( VkCommandBuffer commandBuffer+-- > , VkBuffer dstBuffer+-- > , VkDeviceSize dstOffset+-- > , VkDeviceSize size+-- > , uint32_t data+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdFillBuffer.html vkCmdFillBuffer registry at www.khronos.org>+foreign import ccall safe "vkCmdFillBuffer" vkCmdFillBufferSafe ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkBuffer -- ^ dstBuffer+ -> VkDeviceSize -- ^ dstOffset+ -> VkDeviceSize -- ^ size+ -> Word32 -- ^ data+ -> IO ()++-- | queues: 'graphics', 'compute'.+--+-- renderpass: @outside@+--+-- pipeline: @transfer@+--+-- > () vkCmdClearColorImage+-- > ( VkCommandBuffer commandBuffer+-- > , VkImage image+-- > , VkImageLayout imageLayout+-- > , const VkClearColorValue* pColor+-- > , uint32_t rangeCount+-- > , const VkImageSubresourceRange* pRanges+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdClearColorImage.html vkCmdClearColorImage registry at www.khronos.org>+foreign import ccall unsafe "vkCmdClearColorImage"+ vkCmdClearColorImage ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkImage -- ^ image+ ->+ VkImageLayout -- ^ imageLayout+ ->+ Ptr VkClearColorValue -- ^ pColor+ ->+ Word32 -- ^ rangeCount+ -> Ptr VkImageSubresourceRange -- ^ pRanges+ -> IO ()++-- | queues: 'graphics', 'compute'.+--+-- renderpass: @outside@+--+-- pipeline: @transfer@+--+-- > () vkCmdClearColorImage+-- > ( VkCommandBuffer commandBuffer+-- > , VkImage image+-- > , VkImageLayout imageLayout+-- > , const VkClearColorValue* pColor+-- > , uint32_t rangeCount+-- > , const VkImageSubresourceRange* pRanges+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdClearColorImage.html vkCmdClearColorImage registry at www.khronos.org>+foreign import ccall safe "vkCmdClearColorImage"+ vkCmdClearColorImageSafe ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkImage -- ^ image+ ->+ VkImageLayout -- ^ imageLayout+ ->+ Ptr VkClearColorValue -- ^ pColor+ ->+ Word32 -- ^ rangeCount+ -> Ptr VkImageSubresourceRange -- ^ pRanges+ -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @outside@+--+-- pipeline: @transfer@+--+-- > () vkCmdClearDepthStencilImage+-- > ( VkCommandBuffer commandBuffer+-- > , VkImage image+-- > , VkImageLayout imageLayout+-- > , const VkClearDepthStencilValue* pDepthStencil+-- > , uint32_t rangeCount+-- > , const VkImageSubresourceRange* pRanges+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdClearDepthStencilImage.html vkCmdClearDepthStencilImage registry at www.khronos.org>+foreign import ccall unsafe "vkCmdClearDepthStencilImage"+ vkCmdClearDepthStencilImage ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkImage -- ^ image+ ->+ VkImageLayout -- ^ imageLayout+ ->+ Ptr VkClearDepthStencilValue -- ^ pDepthStencil+ ->+ Word32 -- ^ rangeCount+ -> Ptr VkImageSubresourceRange -- ^ pRanges+ -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @outside@+--+-- pipeline: @transfer@+--+-- > () vkCmdClearDepthStencilImage+-- > ( VkCommandBuffer commandBuffer+-- > , VkImage image+-- > , VkImageLayout imageLayout+-- > , const VkClearDepthStencilValue* pDepthStencil+-- > , uint32_t rangeCount+-- > , const VkImageSubresourceRange* pRanges+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdClearDepthStencilImage.html vkCmdClearDepthStencilImage registry at www.khronos.org>+foreign import ccall safe "vkCmdClearDepthStencilImage"+ vkCmdClearDepthStencilImageSafe ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkImage -- ^ image+ ->+ VkImageLayout -- ^ imageLayout+ ->+ Ptr VkClearDepthStencilValue -- ^ pDepthStencil+ ->+ Word32 -- ^ rangeCount+ -> Ptr VkImageSubresourceRange -- ^ pRanges+ -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @inside@+--+-- pipeline: @graphics@+--+-- > () vkCmdClearAttachments+-- > ( VkCommandBuffer commandBuffer+-- > , uint32_t attachmentCount+-- > , const VkClearAttachment* pAttachments+-- > , uint32_t rectCount+-- > , const VkClearRect* pRects+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdClearAttachments.html vkCmdClearAttachments registry at www.khronos.org>+foreign import ccall unsafe "vkCmdClearAttachments"+ vkCmdClearAttachments ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ Word32 -- ^ attachmentCount+ ->+ Ptr VkClearAttachment -- ^ pAttachments+ -> Word32 -- ^ rectCount+ -> Ptr VkClearRect -- ^ pRects+ -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @inside@+--+-- pipeline: @graphics@+--+-- > () vkCmdClearAttachments+-- > ( VkCommandBuffer commandBuffer+-- > , uint32_t attachmentCount+-- > , const VkClearAttachment* pAttachments+-- > , uint32_t rectCount+-- > , const VkClearRect* pRects+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdClearAttachments.html vkCmdClearAttachments registry at www.khronos.org>+foreign import ccall safe "vkCmdClearAttachments"+ vkCmdClearAttachmentsSafe ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ Word32 -- ^ attachmentCount+ ->+ Ptr VkClearAttachment -- ^ pAttachments+ -> Word32 -- ^ rectCount+ -> Ptr VkClearRect -- ^ pRects+ -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @outside@+--+-- pipeline: @transfer@+--+-- > () vkCmdResolveImage+-- > ( VkCommandBuffer commandBuffer+-- > , VkImage srcImage+-- > , VkImageLayout srcImageLayout+-- > , VkImage dstImage+-- > , VkImageLayout dstImageLayout+-- > , uint32_t regionCount+-- > , const VkImageResolve* pRegions+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdResolveImage.html vkCmdResolveImage registry at www.khronos.org>+foreign import ccall unsafe "vkCmdResolveImage" vkCmdResolveImage+ ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkImage -- ^ srcImage+ ->+ VkImageLayout -- ^ srcImageLayout+ ->+ VkImage -- ^ dstImage+ -> VkImageLayout -- ^ dstImageLayout+ -> Word32 -- ^ regionCount+ -> Ptr VkImageResolve -- ^ pRegions+ -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @outside@+--+-- pipeline: @transfer@+--+-- > () vkCmdResolveImage+-- > ( VkCommandBuffer commandBuffer+-- > , VkImage srcImage+-- > , VkImageLayout srcImageLayout+-- > , VkImage dstImage+-- > , VkImageLayout dstImageLayout+-- > , uint32_t regionCount+-- > , const VkImageResolve* pRegions+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdResolveImage.html vkCmdResolveImage registry at www.khronos.org>+foreign import ccall safe "vkCmdResolveImage" vkCmdResolveImageSafe+ ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkImage -- ^ srcImage+ ->+ VkImageLayout -- ^ srcImageLayout+ ->+ VkImage -- ^ dstImage+ -> VkImageLayout -- ^ dstImageLayout+ -> Word32 -- ^ regionCount+ -> Ptr VkImageResolve -- ^ pRegions+ -> IO ()++-- | queues: 'graphics', 'compute'.+--+-- renderpass: @outside@+--+-- > () vkCmdSetEvent+-- > ( VkCommandBuffer commandBuffer+-- > , VkEvent event+-- > , VkPipelineStageFlags stageMask+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdSetEvent.html vkCmdSetEvent registry at www.khronos.org>+foreign import ccall unsafe "vkCmdSetEvent" vkCmdSetEvent ::+ VkCommandBuffer -- ^ commandBuffer+ -> VkEvent -- ^ event+ -> VkPipelineStageFlags -- ^ stageMask+ -> IO ()++-- | queues: 'graphics', 'compute'.+--+-- renderpass: @outside@+--+-- > () vkCmdSetEvent+-- > ( VkCommandBuffer commandBuffer+-- > , VkEvent event+-- > , VkPipelineStageFlags stageMask+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdSetEvent.html vkCmdSetEvent registry at www.khronos.org>+foreign import ccall safe "vkCmdSetEvent" vkCmdSetEventSafe ::+ VkCommandBuffer -- ^ commandBuffer+ -> VkEvent -- ^ event+ -> VkPipelineStageFlags -- ^ stageMask+ -> IO ()++-- | queues: 'graphics', 'compute'.+--+-- renderpass: @outside@+--+-- > () vkCmdResetEvent+-- > ( VkCommandBuffer commandBuffer+-- > , VkEvent event+-- > , VkPipelineStageFlags stageMask+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdResetEvent.html vkCmdResetEvent registry at www.khronos.org>+foreign import ccall unsafe "vkCmdResetEvent" vkCmdResetEvent ::+ VkCommandBuffer -- ^ commandBuffer+ -> VkEvent -- ^ event+ -> VkPipelineStageFlags -- ^ stageMask+ -> IO ()++-- | queues: 'graphics', 'compute'.+--+-- renderpass: @outside@+--+-- > () vkCmdResetEvent+-- > ( VkCommandBuffer commandBuffer+-- > , VkEvent event+-- > , VkPipelineStageFlags stageMask+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdResetEvent.html vkCmdResetEvent registry at www.khronos.org>+foreign import ccall safe "vkCmdResetEvent" vkCmdResetEventSafe ::+ VkCommandBuffer -- ^ commandBuffer+ -> VkEvent -- ^ event+ -> VkPipelineStageFlags -- ^ stageMask+ -> IO ()++-- | queues: 'graphics', 'compute'.+--+-- renderpass: @both@+--+-- > () vkCmdWaitEvents+-- > ( VkCommandBuffer commandBuffer+-- > , uint32_t eventCount+-- > , const VkEvent* pEvents+-- > , VkPipelineStageFlags srcStageMask+-- > , VkPipelineStageFlags dstStageMask+-- > , uint32_t memoryBarrierCount+-- > , const VkMemoryBarrier* pMemoryBarriers+-- > , uint32_t bufferMemoryBarrierCount+-- > , const VkBufferMemoryBarrier* pBufferMemoryBarriers+-- > , uint32_t imageMemoryBarrierCount+-- > , const VkImageMemoryBarrier* pImageMemoryBarriers+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdWaitEvents.html vkCmdWaitEvents registry at www.khronos.org>+foreign import ccall unsafe "vkCmdWaitEvents" vkCmdWaitEvents ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ Word32 -- ^ eventCount+ ->+ Ptr VkEvent -- ^ pEvents+ ->+ VkPipelineStageFlags -- ^ srcStageMask+ ->+ VkPipelineStageFlags -- ^ dstStageMask+ ->+ Word32 -- ^ memoryBarrierCount+ ->+ Ptr VkMemoryBarrier -- ^ pMemoryBarriers+ ->+ Word32 -- ^ bufferMemoryBarrierCount+ ->+ Ptr VkBufferMemoryBarrier -- ^ pBufferMemoryBarriers+ ->+ Word32 -- ^ imageMemoryBarrierCount+ -> Ptr VkImageMemoryBarrier -- ^ pImageMemoryBarriers+ -> IO ()++-- | queues: 'graphics', 'compute'.+--+-- renderpass: @both@+--+-- > () vkCmdWaitEvents+-- > ( VkCommandBuffer commandBuffer+-- > , uint32_t eventCount+-- > , const VkEvent* pEvents+-- > , VkPipelineStageFlags srcStageMask+-- > , VkPipelineStageFlags dstStageMask+-- > , uint32_t memoryBarrierCount+-- > , const VkMemoryBarrier* pMemoryBarriers+-- > , uint32_t bufferMemoryBarrierCount+-- > , const VkBufferMemoryBarrier* pBufferMemoryBarriers+-- > , uint32_t imageMemoryBarrierCount+-- > , const VkImageMemoryBarrier* pImageMemoryBarriers+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdWaitEvents.html vkCmdWaitEvents registry at www.khronos.org>+foreign import ccall safe "vkCmdWaitEvents" vkCmdWaitEventsSafe ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ Word32 -- ^ eventCount+ ->+ Ptr VkEvent -- ^ pEvents+ ->+ VkPipelineStageFlags -- ^ srcStageMask+ ->+ VkPipelineStageFlags -- ^ dstStageMask+ ->+ Word32 -- ^ memoryBarrierCount+ ->+ Ptr VkMemoryBarrier -- ^ pMemoryBarriers+ ->+ Word32 -- ^ bufferMemoryBarrierCount+ ->+ Ptr VkBufferMemoryBarrier -- ^ pBufferMemoryBarriers+ ->+ Word32 -- ^ imageMemoryBarrierCount+ -> Ptr VkImageMemoryBarrier -- ^ pImageMemoryBarriers+ -> IO ()++-- | queues: 'transfer', 'graphics', 'compute'.+--+-- renderpass: @both@+--+-- > () vkCmdPipelineBarrier+-- > ( VkCommandBuffer commandBuffer+-- > , VkPipelineStageFlags srcStageMask+-- > , VkPipelineStageFlags dstStageMask+-- > , VkDependencyFlags dependencyFlags+-- > , uint32_t memoryBarrierCount+-- > , const VkMemoryBarrier* pMemoryBarriers+-- > , uint32_t bufferMemoryBarrierCount+-- > , const VkBufferMemoryBarrier* pBufferMemoryBarriers+-- > , uint32_t imageMemoryBarrierCount+-- > , const VkImageMemoryBarrier* pImageMemoryBarriers+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdPipelineBarrier.html vkCmdPipelineBarrier registry at www.khronos.org>+foreign import ccall unsafe "vkCmdPipelineBarrier"+ vkCmdPipelineBarrier ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkPipelineStageFlags -- ^ srcStageMask+ ->+ VkPipelineStageFlags -- ^ dstStageMask+ ->+ VkDependencyFlags -- ^ dependencyFlags+ ->+ Word32 -- ^ memoryBarrierCount+ ->+ Ptr VkMemoryBarrier -- ^ pMemoryBarriers+ ->+ Word32 -- ^ bufferMemoryBarrierCount+ ->+ Ptr VkBufferMemoryBarrier -- ^ pBufferMemoryBarriers+ ->+ Word32 -- ^ imageMemoryBarrierCount+ -> Ptr VkImageMemoryBarrier -- ^ pImageMemoryBarriers+ -> IO ()++-- | queues: 'transfer', 'graphics', 'compute'.+--+-- renderpass: @both@+--+-- > () vkCmdPipelineBarrier+-- > ( VkCommandBuffer commandBuffer+-- > , VkPipelineStageFlags srcStageMask+-- > , VkPipelineStageFlags dstStageMask+-- > , VkDependencyFlags dependencyFlags+-- > , uint32_t memoryBarrierCount+-- > , const VkMemoryBarrier* pMemoryBarriers+-- > , uint32_t bufferMemoryBarrierCount+-- > , const VkBufferMemoryBarrier* pBufferMemoryBarriers+-- > , uint32_t imageMemoryBarrierCount+-- > , const VkImageMemoryBarrier* pImageMemoryBarriers+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdPipelineBarrier.html vkCmdPipelineBarrier registry at www.khronos.org>+foreign import ccall safe "vkCmdPipelineBarrier"+ vkCmdPipelineBarrierSafe ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkPipelineStageFlags -- ^ srcStageMask+ ->+ VkPipelineStageFlags -- ^ dstStageMask+ ->+ VkDependencyFlags -- ^ dependencyFlags+ ->+ Word32 -- ^ memoryBarrierCount+ ->+ Ptr VkMemoryBarrier -- ^ pMemoryBarriers+ ->+ Word32 -- ^ bufferMemoryBarrierCount+ ->+ Ptr VkBufferMemoryBarrier -- ^ pBufferMemoryBarriers+ ->+ Word32 -- ^ imageMemoryBarrierCount+ -> Ptr VkImageMemoryBarrier -- ^ pImageMemoryBarriers+ -> IO ()++-- | queues: 'graphics', 'compute'.+--+-- renderpass: @both@+--+-- > () vkCmdBeginQuery+-- > ( VkCommandBuffer commandBuffer+-- > , VkQueryPool queryPool+-- > , uint32_t query+-- > , VkQueryControlFlags flags+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdBeginQuery.html vkCmdBeginQuery registry at www.khronos.org>+foreign import ccall unsafe "vkCmdBeginQuery" vkCmdBeginQuery ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkQueryPool -- ^ queryPool+ -> Word32 -- ^ query+ -> VkQueryControlFlags -- ^ flags+ -> IO ()++-- | queues: 'graphics', 'compute'.+--+-- renderpass: @both@+--+-- > () vkCmdBeginQuery+-- > ( VkCommandBuffer commandBuffer+-- > , VkQueryPool queryPool+-- > , uint32_t query+-- > , VkQueryControlFlags flags+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdBeginQuery.html vkCmdBeginQuery registry at www.khronos.org>+foreign import ccall safe "vkCmdBeginQuery" vkCmdBeginQuerySafe ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkQueryPool -- ^ queryPool+ -> Word32 -- ^ query+ -> VkQueryControlFlags -- ^ flags+ -> IO ()++-- | queues: 'graphics', 'compute'.+--+-- renderpass: @both@+--+-- > () vkCmdEndQuery+-- > ( VkCommandBuffer commandBuffer+-- > , VkQueryPool queryPool+-- > , uint32_t query+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdEndQuery.html vkCmdEndQuery registry at www.khronos.org>+foreign import ccall unsafe "vkCmdEndQuery" vkCmdEndQuery ::+ VkCommandBuffer -- ^ commandBuffer+ -> VkQueryPool -- ^ queryPool+ -> Word32 -- ^ query+ -> IO ()++-- | queues: 'graphics', 'compute'.+--+-- renderpass: @both@+--+-- > () vkCmdEndQuery+-- > ( VkCommandBuffer commandBuffer+-- > , VkQueryPool queryPool+-- > , uint32_t query+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdEndQuery.html vkCmdEndQuery registry at www.khronos.org>+foreign import ccall safe "vkCmdEndQuery" vkCmdEndQuerySafe ::+ VkCommandBuffer -- ^ commandBuffer+ -> VkQueryPool -- ^ queryPool+ -> Word32 -- ^ query+ -> IO ()++-- | queues: 'graphics', 'compute'.+--+-- renderpass: @outside@+--+-- > () vkCmdResetQueryPool+-- > ( VkCommandBuffer commandBuffer+-- > , VkQueryPool queryPool+-- > , uint32_t firstQuery+-- > , uint32_t queryCount+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdResetQueryPool.html vkCmdResetQueryPool registry at www.khronos.org>+foreign import ccall unsafe "vkCmdResetQueryPool"+ vkCmdResetQueryPool ::+ VkCommandBuffer -- ^ commandBuffer+ -> VkQueryPool -- ^ queryPool+ -> Word32 -- ^ firstQuery+ -> Word32 -- ^ queryCount+ -> IO ()++-- | queues: 'graphics', 'compute'.+--+-- renderpass: @outside@+--+-- > () vkCmdResetQueryPool+-- > ( VkCommandBuffer commandBuffer+-- > , VkQueryPool queryPool+-- > , uint32_t firstQuery+-- > , uint32_t queryCount+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdResetQueryPool.html vkCmdResetQueryPool registry at www.khronos.org>+foreign import ccall safe "vkCmdResetQueryPool"+ vkCmdResetQueryPoolSafe ::+ VkCommandBuffer -- ^ commandBuffer+ -> VkQueryPool -- ^ queryPool+ -> Word32 -- ^ firstQuery+ -> Word32 -- ^ queryCount+ -> IO ()++-- | queues: 'transfer', 'graphics', 'compute'.+--+-- renderpass: @both@+--+-- pipeline: @transfer@+--+-- > () vkCmdWriteTimestamp+-- > ( VkCommandBuffer commandBuffer+-- > , VkPipelineStageFlagBits pipelineStage+-- > , VkQueryPool queryPool+-- > , uint32_t query+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdWriteTimestamp.html vkCmdWriteTimestamp registry at www.khronos.org>+foreign import ccall unsafe "vkCmdWriteTimestamp"+ vkCmdWriteTimestamp ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkPipelineStageFlagBits -- ^ pipelineStage+ -> VkQueryPool -- ^ queryPool+ -> Word32 -- ^ query+ -> IO ()++-- | queues: 'transfer', 'graphics', 'compute'.+--+-- renderpass: @both@+--+-- pipeline: @transfer@+--+-- > () vkCmdWriteTimestamp+-- > ( VkCommandBuffer commandBuffer+-- > , VkPipelineStageFlagBits pipelineStage+-- > , VkQueryPool queryPool+-- > , uint32_t query+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdWriteTimestamp.html vkCmdWriteTimestamp registry at www.khronos.org>+foreign import ccall safe "vkCmdWriteTimestamp"+ vkCmdWriteTimestampSafe ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkPipelineStageFlagBits -- ^ pipelineStage+ -> VkQueryPool -- ^ queryPool+ -> Word32 -- ^ query+ -> IO ()++-- | queues: 'graphics', 'compute'.+--+-- renderpass: @outside@+--+-- pipeline: @transfer@+--+-- > () vkCmdCopyQueryPoolResults+-- > ( VkCommandBuffer commandBuffer+-- > , VkQueryPool queryPool+-- > , uint32_t firstQuery+-- > , uint32_t queryCount+-- > , VkBuffer dstBuffer+-- > , VkDeviceSize dstOffset+-- > , VkDeviceSize stride+-- > , VkQueryResultFlags flags+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdCopyQueryPoolResults.html vkCmdCopyQueryPoolResults registry at www.khronos.org>+foreign import ccall unsafe "vkCmdCopyQueryPoolResults"+ vkCmdCopyQueryPoolResults ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkQueryPool -- ^ queryPool+ ->+ Word32 -- ^ firstQuery+ ->+ Word32 -- ^ queryCount+ ->+ VkBuffer -- ^ dstBuffer+ ->+ VkDeviceSize -- ^ dstOffset+ -> VkDeviceSize -- ^ stride+ -> VkQueryResultFlags -- ^ flags+ -> IO ()++-- | queues: 'graphics', 'compute'.+--+-- renderpass: @outside@+--+-- pipeline: @transfer@+--+-- > () vkCmdCopyQueryPoolResults+-- > ( VkCommandBuffer commandBuffer+-- > , VkQueryPool queryPool+-- > , uint32_t firstQuery+-- > , uint32_t queryCount+-- > , VkBuffer dstBuffer+-- > , VkDeviceSize dstOffset+-- > , VkDeviceSize stride+-- > , VkQueryResultFlags flags+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdCopyQueryPoolResults.html vkCmdCopyQueryPoolResults registry at www.khronos.org>+foreign import ccall safe "vkCmdCopyQueryPoolResults"+ vkCmdCopyQueryPoolResultsSafe ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkQueryPool -- ^ queryPool+ ->+ Word32 -- ^ firstQuery+ ->+ Word32 -- ^ queryCount+ ->+ VkBuffer -- ^ dstBuffer+ ->+ VkDeviceSize -- ^ dstOffset+ -> VkDeviceSize -- ^ stride+ -> VkQueryResultFlags -- ^ flags+ -> IO ()++-- | queues: 'graphics', 'compute'.+--+-- renderpass: @both@+--+-- > () vkCmdPushConstants+-- > ( VkCommandBuffer commandBuffer+-- > , VkPipelineLayout layout+-- > , VkShaderStageFlags stageFlags+-- > , uint32_t offset+-- > , uint32_t size+-- > , const void* pValues+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdPushConstants.html vkCmdPushConstants registry at www.khronos.org>+foreign import ccall unsafe "vkCmdPushConstants" vkCmdPushConstants+ ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkPipelineLayout -- ^ layout+ ->+ VkShaderStageFlags -- ^ stageFlags+ -> Word32 -- ^ offset+ -> Word32 -- ^ size+ -> Ptr Void -- ^ pValues+ -> IO ()++-- | queues: 'graphics', 'compute'.+--+-- renderpass: @both@+--+-- > () vkCmdPushConstants+-- > ( VkCommandBuffer commandBuffer+-- > , VkPipelineLayout layout+-- > , VkShaderStageFlags stageFlags+-- > , uint32_t offset+-- > , uint32_t size+-- > , const void* pValues+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdPushConstants.html vkCmdPushConstants registry at www.khronos.org>+foreign import ccall safe "vkCmdPushConstants"+ vkCmdPushConstantsSafe ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkPipelineLayout -- ^ layout+ ->+ VkShaderStageFlags -- ^ stageFlags+ -> Word32 -- ^ offset+ -> Word32 -- ^ size+ -> Ptr Void -- ^ pValues+ -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @outside@+--+-- pipeline: @graphics@+--+-- > () vkCmdBeginRenderPass+-- > ( VkCommandBuffer commandBuffer+-- > , const VkRenderPassBeginInfo* pRenderPassBegin+-- > , VkSubpassContents contents+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdBeginRenderPass.html vkCmdBeginRenderPass registry at www.khronos.org>+foreign import ccall unsafe "vkCmdBeginRenderPass"+ vkCmdBeginRenderPass ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ Ptr VkRenderPassBeginInfo -- ^ pRenderPassBegin+ -> VkSubpassContents -- ^ contents+ -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @outside@+--+-- pipeline: @graphics@+--+-- > () vkCmdBeginRenderPass+-- > ( VkCommandBuffer commandBuffer+-- > , const VkRenderPassBeginInfo* pRenderPassBegin+-- > , VkSubpassContents contents+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdBeginRenderPass.html vkCmdBeginRenderPass registry at www.khronos.org>+foreign import ccall safe "vkCmdBeginRenderPass"+ vkCmdBeginRenderPassSafe ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ Ptr VkRenderPassBeginInfo -- ^ pRenderPassBegin+ -> VkSubpassContents -- ^ contents+ -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @inside@+--+-- pipeline: @graphics@+--+-- > () vkCmdNextSubpass+-- > ( VkCommandBuffer commandBuffer+-- > , VkSubpassContents contents+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdNextSubpass.html vkCmdNextSubpass registry at www.khronos.org>+foreign import ccall unsafe "vkCmdNextSubpass" vkCmdNextSubpass ::+ VkCommandBuffer -- ^ commandBuffer+ -> VkSubpassContents -- ^ contents+ -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @inside@+--+-- pipeline: @graphics@+--+-- > () vkCmdNextSubpass+-- > ( VkCommandBuffer commandBuffer+-- > , VkSubpassContents contents+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdNextSubpass.html vkCmdNextSubpass registry at www.khronos.org>+foreign import ccall safe "vkCmdNextSubpass" vkCmdNextSubpassSafe+ :: VkCommandBuffer -- ^ commandBuffer+ -> VkSubpassContents -- ^ contents+ -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @inside@+--+-- pipeline: @graphics@+--+-- > () vkCmdEndRenderPass+-- > ( VkCommandBuffer commandBuffer+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdEndRenderPass.html vkCmdEndRenderPass registry at www.khronos.org>+foreign import ccall unsafe "vkCmdEndRenderPass" vkCmdEndRenderPass+ :: VkCommandBuffer -- ^ commandBuffer+ -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @inside@+--+-- pipeline: @graphics@+--+-- > () vkCmdEndRenderPass+-- > ( VkCommandBuffer commandBuffer+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdEndRenderPass.html vkCmdEndRenderPass registry at www.khronos.org>+foreign import ccall safe "vkCmdEndRenderPass"+ vkCmdEndRenderPassSafe :: VkCommandBuffer -- ^ commandBuffer+ -> IO ()++-- | queues: 'transfer', 'graphics', 'compute'.+--+-- renderpass: @both@+--+-- > () vkCmdExecuteCommands+-- > ( VkCommandBuffer commandBuffer+-- > , uint32_t commandBufferCount+-- > , const VkCommandBuffer* pCommandBuffers+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdExecuteCommands.html vkCmdExecuteCommands registry at www.khronos.org>+foreign import ccall unsafe "vkCmdExecuteCommands"+ vkCmdExecuteCommands ::+ VkCommandBuffer -- ^ commandBuffer+ -> Word32 -- ^ commandBufferCount+ -> Ptr VkCommandBuffer -- ^ pCommandBuffers+ -> IO ()++-- | queues: 'transfer', 'graphics', 'compute'.+--+-- renderpass: @both@+--+-- > () vkCmdExecuteCommands+-- > ( VkCommandBuffer commandBuffer+-- > , uint32_t commandBufferCount+-- > , const VkCommandBuffer* pCommandBuffers+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdExecuteCommands.html vkCmdExecuteCommands registry at www.khronos.org>+foreign import ccall safe "vkCmdExecuteCommands"+ vkCmdExecuteCommandsSafe ::+ VkCommandBuffer -- ^ commandBuffer+ -> Word32 -- ^ commandBufferCount+ -> Ptr VkCommandBuffer -- ^ pCommandBuffers+ -> IO ()
@@ -0,0 +1,2374 @@+{-# OPTIONS_GHC -fno-warn-unused-imports#-}+{-# OPTIONS_HADDOCK not-home#-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE ForeignFunctionInterface #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Core_1_1+ (-- * Vulkan 1.1 core API interface definitions.+ -- |+ --+ -- @api = vulkan@+ --+ -- @name = VK_VERSION_1_1@+ --+ -- @number = 1.1@+ --++ -- ** Device Initialization+ vkEnumerateInstanceVersion, vkEnumerateInstanceVersionSafe,+ module Graphics.Vulkan.Types.Enum.VkResult,+ -- ** Promoted from VK_KHR_relaxed_block_layout, which has no API+ --++ -- ** Promoted from VK_KHR_storage_buffer_storage_class, which has no API+ --++ -- ** Originally based on VK_KHR_subgroup (extension 94), but the actual enum block used was, incorrectly, that of extension 95+ module Graphics.Vulkan.Marshal,+ module Graphics.Vulkan.Types.BaseTypes,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceLimits,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseProperties,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSubgroupProperties,+ module Graphics.Vulkan.Types.Enum.VkPhysicalDeviceType,+ module Graphics.Vulkan.Types.Enum.VkSampleCountFlags,+ module Graphics.Vulkan.Types.Enum.VkShaderStageFlags,+ module Graphics.Vulkan.Types.Enum.VkStructureType,+ module Graphics.Vulkan.Types.Enum.VkSubgroupFeatureFlags,+ -- > #include "vk_platform.h"+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES,+ -- ** Promoted from VK_KHR_bind_memory2+ module Graphics.Vulkan.Types.Struct.VkBindBufferMemoryInfo,+ module Graphics.Vulkan.Types.Struct.VkBindImageMemoryInfo,+ -- > #include "vk_platform.h"+ vkBindBufferMemory2, vkBindBufferMemory2Safe, vkBindImageMemory2,+ vkBindImageMemory2Safe, module Graphics.Vulkan.Types.Handles,+ pattern VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO,+ pattern VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO,+ pattern VK_IMAGE_CREATE_ALIAS_BIT,+ -- ** Promoted from VK_KHR_16bit_storage+ module Graphics.Vulkan.Types.Bitmasks,+ module Graphics.Vulkan.Types.Struct.VkDeviceCreateInfo,+ module Graphics.Vulkan.Types.Enum.VkDeviceQueueCreateFlags,+ module Graphics.Vulkan.Types.Struct.VkDeviceQueueCreateInfo,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDevice16BitStorageFeatures,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceFeatures,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceFeatures2,+ -- > #include "vk_platform.h"+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES,+ -- ** Promoted from VK_KHR_dedicated_allocation+ module Graphics.Vulkan.Types.Struct.VkMemoryAllocateInfo,+ module Graphics.Vulkan.Types.Struct.VkMemoryDedicatedAllocateInfo,+ module Graphics.Vulkan.Types.Struct.VkMemoryDedicatedRequirements,+ module Graphics.Vulkan.Types.Struct.VkMemoryRequirements,+ module Graphics.Vulkan.Types.Struct.VkMemoryRequirements2,+ -- > #include "vk_platform.h"+ pattern VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS,+ pattern VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO,+ -- ** Promoted from VK_KHR_device_group+ module Graphics.Vulkan.Types.Struct.VkBindSparseInfo,+ module Graphics.Vulkan.Types.Struct.VkClearColorValue,+ module Graphics.Vulkan.Types.Struct.VkClearDepthStencilValue,+ module Graphics.Vulkan.Types.Struct.VkClearValue,+ module Graphics.Vulkan.Types.Struct.VkCommandBufferBeginInfo,+ module Graphics.Vulkan.Types.Struct.VkCommandBufferInheritanceInfo,+ module Graphics.Vulkan.Types.Enum.VkCommandBufferUsageFlags,+ module Graphics.Vulkan.Types.Struct.VkDeviceGroupBindSparseInfo,+ module Graphics.Vulkan.Types.Struct.VkDeviceGroupCommandBufferBeginInfo,+ module Graphics.Vulkan.Types.Struct.VkDeviceGroupRenderPassBeginInfo,+ module Graphics.Vulkan.Types.Struct.VkDeviceGroupSubmitInfo,+ module Graphics.Vulkan.Types.Struct.VkExtent2D,+ module Graphics.Vulkan.Types.Struct.VkExtent3D,+ module Graphics.Vulkan.Types.Enum.VkImageAspectFlags,+ module Graphics.Vulkan.Types.Struct.VkImageSubresource,+ module Graphics.Vulkan.Types.Enum.VkMemoryAllocateFlags,+ module Graphics.Vulkan.Types.Struct.VkMemoryAllocateFlagsInfo,+ module Graphics.Vulkan.Types.Struct.VkOffset2D,+ module Graphics.Vulkan.Types.Struct.VkOffset3D,+ module Graphics.Vulkan.Types.Enum.VkPeerMemoryFeatureFlags,+ module Graphics.Vulkan.Types.Enum.VkPipelineStageFlags,+ module Graphics.Vulkan.Types.Enum.VkQueryControlFlags,+ module Graphics.Vulkan.Types.Enum.VkQueryPipelineStatisticFlags,+ module Graphics.Vulkan.Types.Struct.VkRect2D,+ module Graphics.Vulkan.Types.Struct.VkRenderPassBeginInfo,+ module Graphics.Vulkan.Types.Struct.VkSparseBufferMemoryBindInfo,+ module Graphics.Vulkan.Types.Struct.VkSparseImageMemoryBind,+ module Graphics.Vulkan.Types.Struct.VkSparseImageMemoryBindInfo,+ module Graphics.Vulkan.Types.Struct.VkSparseImageOpaqueMemoryBindInfo,+ module Graphics.Vulkan.Types.Struct.VkSparseMemoryBind,+ module Graphics.Vulkan.Types.Enum.VkSparseMemoryBindFlags,+ module Graphics.Vulkan.Types.Struct.VkSubmitInfo,+ -- > #include "vk_platform.h"+ vkGetDeviceGroupPeerMemoryFeatures,+ vkGetDeviceGroupPeerMemoryFeaturesSafe, vkCmdSetDeviceMask,+ vkCmdSetDeviceMaskSafe, vkCmdDispatchBase, vkCmdDispatchBaseSafe,+ pattern VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO,+ pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO,+ pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO,+ pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO,+ pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO,+ pattern VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT,+ pattern VK_PIPELINE_CREATE_DISPATCH_BASE,+ pattern VK_DEPENDENCY_DEVICE_GROUP_BIT,+ -- ** Promoted from VK_KHR_device_group + VK_KHR_bind_memory2+ module Graphics.Vulkan.Types.Struct.VkBindBufferMemoryDeviceGroupInfo,+ module Graphics.Vulkan.Types.Struct.VkBindImageMemoryDeviceGroupInfo,+ -- > #include "vk_platform.h"+ pattern VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO,+ pattern VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO,+ pattern VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT,+ -- ** Promoted from VK_KHR_device_group_creation+ module Graphics.Vulkan.Types.Struct.VkDeviceGroupDeviceCreateInfo,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceGroupProperties,+ -- > #include "vk_platform.h"+ vkEnumeratePhysicalDeviceGroups,+ vkEnumeratePhysicalDeviceGroupsSafe,+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES,+ pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO,+ pattern VK_MAX_DEVICE_GROUP_SIZE,+ pattern VK_MEMORY_HEAP_MULTI_INSTANCE_BIT,+ -- ** Promoted from VK_KHR_get_memory_requirements2+ module Graphics.Vulkan.Types.Struct.VkBufferMemoryRequirementsInfo2,+ module Graphics.Vulkan.Types.Struct.VkImageMemoryRequirementsInfo2,+ module Graphics.Vulkan.Types.Struct.VkImageSparseMemoryRequirementsInfo2,+ module Graphics.Vulkan.Types.Enum.VkSparseImageFormatFlags,+ module Graphics.Vulkan.Types.Struct.VkSparseImageFormatProperties,+ module Graphics.Vulkan.Types.Struct.VkSparseImageMemoryRequirements,+ module Graphics.Vulkan.Types.Struct.VkSparseImageMemoryRequirements2,+ -- > #include "vk_platform.h"+ vkGetImageMemoryRequirements2, vkGetImageMemoryRequirements2Safe,+ vkGetBufferMemoryRequirements2, vkGetBufferMemoryRequirements2Safe,+ vkGetImageSparseMemoryRequirements2,+ vkGetImageSparseMemoryRequirements2Safe,+ pattern VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2,+ pattern VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2,+ pattern VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2,+ pattern VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2,+ pattern VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2,+ -- ** Promoted from VK_KHR_get_physical_device_properties2+ module Graphics.Vulkan.Types.Enum.VkFormat,+ module Graphics.Vulkan.Types.Enum.VkFormatFeatureFlags,+ module Graphics.Vulkan.Types.Struct.VkFormatProperties,+ module Graphics.Vulkan.Types.Struct.VkFormatProperties2,+ module Graphics.Vulkan.Types.Enum.VkImageCreateFlags,+ module Graphics.Vulkan.Types.Struct.VkImageFormatProperties,+ module Graphics.Vulkan.Types.Struct.VkImageFormatProperties2,+ module Graphics.Vulkan.Types.Enum.VkImageTiling,+ module Graphics.Vulkan.Types.Enum.VkImageType,+ module Graphics.Vulkan.Types.Enum.VkImageUsageFlags,+ module Graphics.Vulkan.Types.Struct.VkMemoryHeap,+ module Graphics.Vulkan.Types.Enum.VkMemoryHeapFlags,+ module Graphics.Vulkan.Types.Enum.VkMemoryPropertyFlags,+ module Graphics.Vulkan.Types.Struct.VkMemoryType,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceImageFormatInfo2,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceMemoryProperties,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceMemoryProperties2,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseImageFormatInfo2,+ module Graphics.Vulkan.Types.Struct.VkQueueFamilyProperties,+ module Graphics.Vulkan.Types.Struct.VkQueueFamilyProperties2,+ module Graphics.Vulkan.Types.Enum.VkQueueFlags,+ module Graphics.Vulkan.Types.Struct.VkSparseImageFormatProperties2,+ -- > #include "vk_platform.h"+ vkGetPhysicalDeviceFeatures2, vkGetPhysicalDeviceFeatures2Safe,+ vkGetPhysicalDeviceProperties2, vkGetPhysicalDeviceProperties2Safe,+ vkGetPhysicalDeviceFormatProperties2,+ vkGetPhysicalDeviceFormatProperties2Safe,+ vkGetPhysicalDeviceImageFormatProperties2,+ vkGetPhysicalDeviceImageFormatProperties2Safe,+ vkGetPhysicalDeviceQueueFamilyProperties2,+ vkGetPhysicalDeviceQueueFamilyProperties2Safe,+ vkGetPhysicalDeviceMemoryProperties2,+ vkGetPhysicalDeviceMemoryProperties2Safe,+ vkGetPhysicalDeviceSparseImageFormatProperties2,+ vkGetPhysicalDeviceSparseImageFormatProperties2Safe,+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2,+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2,+ pattern VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2,+ pattern VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2,+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2,+ pattern VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2,+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2,+ pattern VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2,+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2,+ -- ** Promoted from VK_KHR_maintenance1+ --+ -- |+ -- > #include "vk_platform.h"+ vkTrimCommandPool, vkTrimCommandPoolSafe,+ pattern VK_ERROR_OUT_OF_POOL_MEMORY,+ pattern VK_FORMAT_FEATURE_TRANSFER_SRC_BIT,+ pattern VK_FORMAT_FEATURE_TRANSFER_DST_BIT,+ pattern VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT,+ -- ** Promoted from VK_KHR_maintenance2+ module Graphics.Vulkan.Types.Enum.VkAccessFlags,+ module Graphics.Vulkan.Types.Struct.VkAttachmentDescription,+ module Graphics.Vulkan.Types.Enum.VkAttachmentDescriptionFlags,+ module Graphics.Vulkan.Types.Enum.VkAttachmentLoadOp,+ module Graphics.Vulkan.Types.Struct.VkAttachmentReference,+ module Graphics.Vulkan.Types.Enum.VkAttachmentStoreOp,+ module Graphics.Vulkan.Types.Struct.VkComponentMapping,+ module Graphics.Vulkan.Types.Enum.VkComponentSwizzle,+ module Graphics.Vulkan.Types.Enum.VkDependencyFlags,+ module Graphics.Vulkan.Types.Enum.VkImageLayout,+ module Graphics.Vulkan.Types.Struct.VkImageSubresourceRange,+ module Graphics.Vulkan.Types.Struct.VkImageViewCreateInfo,+ module Graphics.Vulkan.Types.Enum.VkImageViewType,+ module Graphics.Vulkan.Types.Struct.VkImageViewUsageCreateInfo,+ module Graphics.Vulkan.Types.Struct.VkInputAttachmentAspectReference,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDevicePointClippingProperties,+ module Graphics.Vulkan.Types.Enum.VkPipelineBindPoint,+ module Graphics.Vulkan.Types.Struct.VkPipelineTessellationDomainOriginStateCreateInfo,+ module Graphics.Vulkan.Types.Struct.VkPipelineTessellationStateCreateInfo,+ module Graphics.Vulkan.Types.Enum.VkPointClippingBehavior,+ module Graphics.Vulkan.Types.Struct.VkRenderPassCreateInfo,+ module Graphics.Vulkan.Types.Struct.VkRenderPassInputAttachmentAspectCreateInfo,+ module Graphics.Vulkan.Types.Struct.VkSubpassDependency,+ module Graphics.Vulkan.Types.Struct.VkSubpassDescription,+ module Graphics.Vulkan.Types.Enum.VkSubpassDescriptionFlags,+ module Graphics.Vulkan.Types.Enum.VkTessellationDomainOrigin,+ -- > #include "vk_platform.h"+ pattern VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT,+ pattern VK_IMAGE_CREATE_EXTENDED_USAGE_BIT,+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES,+ pattern VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO,+ pattern VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO,+ pattern VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO,+ pattern VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL,+ pattern VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL,+ -- ** Promoted from VK_KHR_multiview+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceMultiviewFeatures,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceMultiviewProperties,+ module Graphics.Vulkan.Types.Struct.VkRenderPassMultiviewCreateInfo,+ -- > #include "vk_platform.h"+ pattern VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO,+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES,+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES,+ pattern VK_DEPENDENCY_VIEW_LOCAL_BIT,+ -- ** Promoted from VK_KHR_variable_pointers+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceVariablePointerFeatures,+ -- > #include "vk_platform.h"+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES,+ -- ** Originally based on VK_KHR_protected_memory (extension 146), which was never published; thus the mystifying large value= numbers below. These are not aliased since they weren't actually promoted from an extension.+ module Graphics.Vulkan.Types.Struct.VkDeviceQueueInfo2,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProtectedMemoryFeatures,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProtectedMemoryProperties,+ module Graphics.Vulkan.Types.Struct.VkProtectedSubmitInfo,+ -- > #include "vk_platform.h"+ vkGetDeviceQueue2, vkGetDeviceQueue2Safe,+ pattern VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO,+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES,+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES,+ pattern VK_STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2,+ pattern VK_QUEUE_PROTECTED_BIT,+ pattern VK_DEVICE_QUEUE_CREATE_PROTECTED_BIT,+ pattern VK_MEMORY_PROPERTY_PROTECTED_BIT,+ pattern VK_BUFFER_CREATE_PROTECTED_BIT,+ pattern VK_IMAGE_CREATE_PROTECTED_BIT,+ pattern VK_COMMAND_POOL_CREATE_PROTECTED_BIT,+ -- ** Promoted from VK_KHR_sampler_ycbcr_conversion+ module Graphics.Vulkan.Types.Struct.VkBindImagePlaneMemoryInfo,+ module Graphics.Vulkan.Types.Enum.VkBorderColor,+ module Graphics.Vulkan.Types.Enum.VkChromaLocation,+ module Graphics.Vulkan.Types.Enum.VkCompareOp,+ module Graphics.Vulkan.Types.Enum.VkFilter,+ module Graphics.Vulkan.Types.Struct.VkImagePlaneMemoryRequirementsInfo,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSamplerYcbcrConversionFeatures,+ module Graphics.Vulkan.Types.Enum.VkSamplerAddressMode,+ module Graphics.Vulkan.Types.Struct.VkSamplerCreateInfo,+ module Graphics.Vulkan.Types.Enum.VkSamplerMipmapMode,+ module Graphics.Vulkan.Types.Struct.VkSamplerYcbcrConversionCreateInfo,+ module Graphics.Vulkan.Types.Struct.VkSamplerYcbcrConversionImageFormatProperties,+ module Graphics.Vulkan.Types.Struct.VkSamplerYcbcrConversionInfo,+ module Graphics.Vulkan.Types.Enum.VkSamplerYcbcrModelConversion,+ module Graphics.Vulkan.Types.Enum.VkSamplerYcbcrRange,+ -- > #include "vk_platform.h"+ vkCreateSamplerYcbcrConversion, vkCreateSamplerYcbcrConversionSafe,+ vkDestroySamplerYcbcrConversion,+ vkDestroySamplerYcbcrConversionSafe,+ module Graphics.Vulkan.Types.Enum.VkInternalAllocationType,+ module Graphics.Vulkan.Types.Enum.VkSystemAllocationScope,+ module Graphics.Vulkan.Types.Funcpointers,+ module Graphics.Vulkan.Types.Struct.VkAllocationCallbacks,+ pattern VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO,+ pattern VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO,+ pattern VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO,+ pattern VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO,+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES,+ pattern VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES,+ pattern VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION,+ pattern VK_FORMAT_G8B8G8R8_422_UNORM,+ pattern VK_FORMAT_B8G8R8G8_422_UNORM,+ pattern VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM,+ pattern VK_FORMAT_G8_B8R8_2PLANE_420_UNORM,+ pattern VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM,+ pattern VK_FORMAT_G8_B8R8_2PLANE_422_UNORM,+ pattern VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM,+ pattern VK_FORMAT_R10X6_UNORM_PACK16,+ pattern VK_FORMAT_R10X6G10X6_UNORM_2PACK16,+ pattern VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16,+ pattern VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16,+ pattern VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16,+ pattern VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16,+ pattern VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16,+ pattern VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16,+ pattern VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16,+ pattern VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16,+ pattern VK_FORMAT_R12X4_UNORM_PACK16,+ pattern VK_FORMAT_R12X4G12X4_UNORM_2PACK16,+ pattern VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16,+ pattern VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16,+ pattern VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16,+ pattern VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16,+ pattern VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16,+ pattern VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16,+ pattern VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16,+ pattern VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16,+ pattern VK_FORMAT_G16B16G16R16_422_UNORM,+ pattern VK_FORMAT_B16G16R16G16_422_UNORM,+ pattern VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM,+ pattern VK_FORMAT_G16_B16R16_2PLANE_420_UNORM,+ pattern VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM,+ pattern VK_FORMAT_G16_B16R16_2PLANE_422_UNORM,+ pattern VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM,+ pattern VK_IMAGE_ASPECT_PLANE_0_BIT,+ pattern VK_IMAGE_ASPECT_PLANE_1_BIT,+ pattern VK_IMAGE_ASPECT_PLANE_2_BIT,+ pattern VK_IMAGE_CREATE_DISJOINT_BIT,+ pattern VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT,+ pattern VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT,+ pattern VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT,+ pattern VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT,+ pattern VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT,+ pattern VK_FORMAT_FEATURE_DISJOINT_BIT,+ pattern VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT,+ -- ** Promoted from VK_KHR_descriptor_update_template+ module Graphics.Vulkan.Types.Enum.VkDescriptorType,+ module Graphics.Vulkan.Types.Struct.VkDescriptorUpdateTemplateCreateInfo,+ module Graphics.Vulkan.Types.Struct.VkDescriptorUpdateTemplateEntry,+ module Graphics.Vulkan.Types.Enum.VkDescriptorUpdateTemplateType,+ -- > #include "vk_platform.h"+ vkCreateDescriptorUpdateTemplate,+ vkCreateDescriptorUpdateTemplateSafe,+ vkDestroyDescriptorUpdateTemplate,+ vkDestroyDescriptorUpdateTemplateSafe,+ vkUpdateDescriptorSetWithTemplate,+ vkUpdateDescriptorSetWithTemplateSafe,+ pattern VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO,+ pattern VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE,+ -- ** Promoted from VK_KHR_external_memory_capabilities+ module Graphics.Vulkan.Types.Enum.VkBufferCreateFlags,+ module Graphics.Vulkan.Types.Enum.VkBufferUsageFlags,+ module Graphics.Vulkan.Types.Struct.VkExternalBufferProperties,+ module Graphics.Vulkan.Types.Struct.VkExternalImageFormatProperties,+ module Graphics.Vulkan.Types.Enum.VkExternalMemoryFeatureFlags,+ module Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlags,+ module Graphics.Vulkan.Types.Struct.VkExternalMemoryProperties,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceExternalBufferInfo,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceExternalImageFormatInfo,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceIDProperties,+ -- > #include "vk_platform.h"+ vkGetPhysicalDeviceExternalBufferProperties,+ vkGetPhysicalDeviceExternalBufferPropertiesSafe,+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO,+ pattern VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES,+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO,+ pattern VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES,+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES,+ pattern VK_LUID_SIZE,+ -- ** Promoted from VK_KHR_external_memory+ module Graphics.Vulkan.Types.Struct.VkBufferCreateInfo,+ module Graphics.Vulkan.Types.Struct.VkExportMemoryAllocateInfo,+ module Graphics.Vulkan.Types.Struct.VkExternalMemoryBufferCreateInfo,+ module Graphics.Vulkan.Types.Struct.VkExternalMemoryImageCreateInfo,+ module Graphics.Vulkan.Types.Struct.VkImageCreateInfo,+ module Graphics.Vulkan.Types.Enum.VkSharingMode,+ -- > #include "vk_platform.h"+ pattern VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO,+ pattern VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO,+ pattern VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO,+ pattern VK_ERROR_INVALID_EXTERNAL_HANDLE,+ pattern VK_QUEUE_FAMILY_EXTERNAL,+ -- ** Promoted from VK_KHR_external_fence_capabilities+ module Graphics.Vulkan.Types.Enum.VkExternalFenceFeatureFlags,+ module Graphics.Vulkan.Types.Enum.VkExternalFenceHandleTypeFlags,+ module Graphics.Vulkan.Types.Struct.VkExternalFenceProperties,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceExternalFenceInfo,+ -- > #include "vk_platform.h"+ vkGetPhysicalDeviceExternalFenceProperties,+ vkGetPhysicalDeviceExternalFencePropertiesSafe,+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO,+ pattern VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES,+ -- ** Promoted from VK_KHR_external_fence+ module Graphics.Vulkan.Types.Struct.VkExportFenceCreateInfo,+ module Graphics.Vulkan.Types.Enum.VkFenceCreateFlags,+ module Graphics.Vulkan.Types.Struct.VkFenceCreateInfo,+ module Graphics.Vulkan.Types.Enum.VkFenceImportFlags,+ -- > #include "vk_platform.h"+ pattern VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO,+ -- ** Promoted from VK_KHR_external_semaphore+ module Graphics.Vulkan.Types.Struct.VkExportSemaphoreCreateInfo,+ module Graphics.Vulkan.Types.Enum.VkExternalSemaphoreHandleTypeFlags,+ module Graphics.Vulkan.Types.Struct.VkSemaphoreCreateInfo,+ module Graphics.Vulkan.Types.Enum.VkSemaphoreImportFlags,+ -- > #include "vk_platform.h"+ pattern VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO,+ -- ** Promoted from VK_KHR_external_semaphore_capabilities+ module Graphics.Vulkan.Types.Enum.VkExternalSemaphoreFeatureFlags,+ module Graphics.Vulkan.Types.Struct.VkExternalSemaphoreProperties,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceExternalSemaphoreInfo,+ -- > #include "vk_platform.h"+ vkGetPhysicalDeviceExternalSemaphoreProperties,+ vkGetPhysicalDeviceExternalSemaphorePropertiesSafe,+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO,+ pattern VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES,+ -- ** Promoted from VK_KHR_maintenance3+ module Graphics.Vulkan.Types.Struct.VkDescriptorSetLayoutSupport,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceMaintenance3Properties,+ -- > #include "vk_platform.h"+ vkGetDescriptorSetLayoutSupport,+ vkGetDescriptorSetLayoutSupportSafe,+ module Graphics.Vulkan.Types.Enum.VkDescriptorSetLayoutCreateFlags,+ module Graphics.Vulkan.Types.Struct.VkDescriptorSetLayoutBinding,+ module Graphics.Vulkan.Types.Struct.VkDescriptorSetLayoutCreateInfo,+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES,+ pattern VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT,+ -- ** Promoted from VK_KHR_shader_draw_parameters, with a feature support query added+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceShaderDrawParameterFeatures,+ -- > #include "vk_platform.h"+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURES)+ where+import Graphics.Vulkan.Constants+ (pattern VK_LUID_SIZE,+ pattern VK_MAX_DEVICE_GROUP_SIZE,+ pattern VK_QUEUE_FAMILY_EXTERNAL)+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Types.BaseTypes+import Graphics.Vulkan.Types.Bitmasks+import Graphics.Vulkan.Types.Enum.VkAccessFlags+import Graphics.Vulkan.Types.Enum.VkAttachmentDescriptionFlags+import Graphics.Vulkan.Types.Enum.VkAttachmentLoadOp+import Graphics.Vulkan.Types.Enum.VkAttachmentStoreOp+import Graphics.Vulkan.Types.Enum.VkBorderColor+import Graphics.Vulkan.Types.Enum.VkBufferCreateFlags+import Graphics.Vulkan.Types.Enum.VkBufferUsageFlags+import Graphics.Vulkan.Types.Enum.VkChromaLocation+import Graphics.Vulkan.Types.Enum.VkCommandBufferUsageFlags+import Graphics.Vulkan.Types.Enum.VkCommandPoolCreateFlags+ (VkCommandPoolCreateBitmask (..),+ VkCommandPoolCreateFlagBits)+import Graphics.Vulkan.Types.Enum.VkCompareOp+import Graphics.Vulkan.Types.Enum.VkComponentSwizzle+import Graphics.Vulkan.Types.Enum.VkDependencyFlags+import Graphics.Vulkan.Types.Enum.VkDescriptorSetLayoutCreateFlags+import Graphics.Vulkan.Types.Enum.VkDescriptorType+import Graphics.Vulkan.Types.Enum.VkDescriptorUpdateTemplateType+import Graphics.Vulkan.Types.Enum.VkDeviceQueueCreateFlags+import Graphics.Vulkan.Types.Enum.VkExternalFenceFeatureFlags+import Graphics.Vulkan.Types.Enum.VkExternalFenceHandleTypeFlags+import Graphics.Vulkan.Types.Enum.VkExternalMemoryFeatureFlags+import Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlags+import Graphics.Vulkan.Types.Enum.VkExternalSemaphoreFeatureFlags+import Graphics.Vulkan.Types.Enum.VkExternalSemaphoreHandleTypeFlags+import Graphics.Vulkan.Types.Enum.VkFenceCreateFlags+import Graphics.Vulkan.Types.Enum.VkFenceImportFlags+import Graphics.Vulkan.Types.Enum.VkFilter+import Graphics.Vulkan.Types.Enum.VkFormat+import Graphics.Vulkan.Types.Enum.VkFormatFeatureFlags+import Graphics.Vulkan.Types.Enum.VkImageAspectFlags+import Graphics.Vulkan.Types.Enum.VkImageCreateFlags+import Graphics.Vulkan.Types.Enum.VkImageLayout+import Graphics.Vulkan.Types.Enum.VkImageTiling+import Graphics.Vulkan.Types.Enum.VkImageType+import Graphics.Vulkan.Types.Enum.VkImageUsageFlags+import Graphics.Vulkan.Types.Enum.VkImageViewType+import Graphics.Vulkan.Types.Enum.VkInternalAllocationType+import Graphics.Vulkan.Types.Enum.VkMemoryAllocateFlags+import Graphics.Vulkan.Types.Enum.VkMemoryHeapFlags+import Graphics.Vulkan.Types.Enum.VkMemoryPropertyFlags+import Graphics.Vulkan.Types.Enum.VkObjectType+ (VkObjectType (..))+import Graphics.Vulkan.Types.Enum.VkPeerMemoryFeatureFlags+import Graphics.Vulkan.Types.Enum.VkPhysicalDeviceType+import Graphics.Vulkan.Types.Enum.VkPipelineBindPoint+import Graphics.Vulkan.Types.Enum.VkPipelineCreateFlags+ (VkPipelineCreateBitmask (..),+ VkPipelineCreateFlagBits)+import Graphics.Vulkan.Types.Enum.VkPipelineStageFlags+import Graphics.Vulkan.Types.Enum.VkPointClippingBehavior+import Graphics.Vulkan.Types.Enum.VkQueryControlFlags+import Graphics.Vulkan.Types.Enum.VkQueryPipelineStatisticFlags+import Graphics.Vulkan.Types.Enum.VkQueueFlags+import Graphics.Vulkan.Types.Enum.VkResult+import Graphics.Vulkan.Types.Enum.VkSampleCountFlags+import Graphics.Vulkan.Types.Enum.VkSamplerAddressMode+import Graphics.Vulkan.Types.Enum.VkSamplerMipmapMode+import Graphics.Vulkan.Types.Enum.VkSamplerYcbcrModelConversion+import Graphics.Vulkan.Types.Enum.VkSamplerYcbcrRange+import Graphics.Vulkan.Types.Enum.VkSemaphoreImportFlags+import Graphics.Vulkan.Types.Enum.VkShaderStageFlags+import Graphics.Vulkan.Types.Enum.VkSharingMode+import Graphics.Vulkan.Types.Enum.VkSparseImageFormatFlags+import Graphics.Vulkan.Types.Enum.VkSparseMemoryBindFlags+import Graphics.Vulkan.Types.Enum.VkStructureType+import Graphics.Vulkan.Types.Enum.VkSubgroupFeatureFlags+import Graphics.Vulkan.Types.Enum.VkSubpassDescriptionFlags+import Graphics.Vulkan.Types.Enum.VkSystemAllocationScope+import Graphics.Vulkan.Types.Enum.VkTessellationDomainOrigin+import Graphics.Vulkan.Types.Funcpointers+import Graphics.Vulkan.Types.Handles+import Graphics.Vulkan.Types.Struct.VkAllocationCallbacks+import Graphics.Vulkan.Types.Struct.VkAttachmentDescription+import Graphics.Vulkan.Types.Struct.VkAttachmentReference+import Graphics.Vulkan.Types.Struct.VkBindBufferMemoryDeviceGroupInfo+import Graphics.Vulkan.Types.Struct.VkBindBufferMemoryInfo+import Graphics.Vulkan.Types.Struct.VkBindImageMemoryDeviceGroupInfo+import Graphics.Vulkan.Types.Struct.VkBindImageMemoryInfo+import Graphics.Vulkan.Types.Struct.VkBindImagePlaneMemoryInfo+import Graphics.Vulkan.Types.Struct.VkBindSparseInfo+import Graphics.Vulkan.Types.Struct.VkBufferCreateInfo+import Graphics.Vulkan.Types.Struct.VkBufferMemoryRequirementsInfo2+import Graphics.Vulkan.Types.Struct.VkClearColorValue+import Graphics.Vulkan.Types.Struct.VkClearDepthStencilValue+import Graphics.Vulkan.Types.Struct.VkClearValue+import Graphics.Vulkan.Types.Struct.VkCommandBufferBeginInfo+import Graphics.Vulkan.Types.Struct.VkCommandBufferInheritanceInfo+import Graphics.Vulkan.Types.Struct.VkComponentMapping+import Graphics.Vulkan.Types.Struct.VkDescriptorSetLayoutBinding+import Graphics.Vulkan.Types.Struct.VkDescriptorSetLayoutCreateInfo+import Graphics.Vulkan.Types.Struct.VkDescriptorSetLayoutSupport+import Graphics.Vulkan.Types.Struct.VkDescriptorUpdateTemplateCreateInfo+import Graphics.Vulkan.Types.Struct.VkDescriptorUpdateTemplateEntry+import Graphics.Vulkan.Types.Struct.VkDeviceCreateInfo+import Graphics.Vulkan.Types.Struct.VkDeviceGroupBindSparseInfo+import Graphics.Vulkan.Types.Struct.VkDeviceGroupCommandBufferBeginInfo+import Graphics.Vulkan.Types.Struct.VkDeviceGroupDeviceCreateInfo+import Graphics.Vulkan.Types.Struct.VkDeviceGroupRenderPassBeginInfo+import Graphics.Vulkan.Types.Struct.VkDeviceGroupSubmitInfo+import Graphics.Vulkan.Types.Struct.VkDeviceQueueCreateInfo+import Graphics.Vulkan.Types.Struct.VkDeviceQueueInfo2+import Graphics.Vulkan.Types.Struct.VkExportFenceCreateInfo+import Graphics.Vulkan.Types.Struct.VkExportMemoryAllocateInfo+import Graphics.Vulkan.Types.Struct.VkExportSemaphoreCreateInfo+import Graphics.Vulkan.Types.Struct.VkExtent2D+import Graphics.Vulkan.Types.Struct.VkExtent3D+import Graphics.Vulkan.Types.Struct.VkExternalBufferProperties+import Graphics.Vulkan.Types.Struct.VkExternalFenceProperties+import Graphics.Vulkan.Types.Struct.VkExternalImageFormatProperties+import Graphics.Vulkan.Types.Struct.VkExternalMemoryBufferCreateInfo+import Graphics.Vulkan.Types.Struct.VkExternalMemoryImageCreateInfo+import Graphics.Vulkan.Types.Struct.VkExternalMemoryProperties+import Graphics.Vulkan.Types.Struct.VkExternalSemaphoreProperties+import Graphics.Vulkan.Types.Struct.VkFenceCreateInfo+import Graphics.Vulkan.Types.Struct.VkFormatProperties+import Graphics.Vulkan.Types.Struct.VkFormatProperties2+import Graphics.Vulkan.Types.Struct.VkImageCreateInfo+import Graphics.Vulkan.Types.Struct.VkImageFormatProperties+import Graphics.Vulkan.Types.Struct.VkImageFormatProperties2+import Graphics.Vulkan.Types.Struct.VkImageMemoryRequirementsInfo2+import Graphics.Vulkan.Types.Struct.VkImagePlaneMemoryRequirementsInfo+import Graphics.Vulkan.Types.Struct.VkImageSparseMemoryRequirementsInfo2+import Graphics.Vulkan.Types.Struct.VkImageSubresource+import Graphics.Vulkan.Types.Struct.VkImageSubresourceRange+import Graphics.Vulkan.Types.Struct.VkImageViewCreateInfo+import Graphics.Vulkan.Types.Struct.VkImageViewUsageCreateInfo+import Graphics.Vulkan.Types.Struct.VkInputAttachmentAspectReference+import Graphics.Vulkan.Types.Struct.VkMemoryAllocateFlagsInfo+import Graphics.Vulkan.Types.Struct.VkMemoryAllocateInfo+import Graphics.Vulkan.Types.Struct.VkMemoryDedicatedAllocateInfo+import Graphics.Vulkan.Types.Struct.VkMemoryDedicatedRequirements+import Graphics.Vulkan.Types.Struct.VkMemoryHeap+import Graphics.Vulkan.Types.Struct.VkMemoryRequirements+import Graphics.Vulkan.Types.Struct.VkMemoryRequirements2+import Graphics.Vulkan.Types.Struct.VkMemoryType+import Graphics.Vulkan.Types.Struct.VkOffset2D+import Graphics.Vulkan.Types.Struct.VkOffset3D+import Graphics.Vulkan.Types.Struct.VkPhysicalDevice16BitStorageFeatures+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceExternalBufferInfo+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceExternalFenceInfo+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceExternalImageFormatInfo+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceExternalSemaphoreInfo+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceFeatures+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceFeatures2+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceGroupProperties+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceIDProperties+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceImageFormatInfo2+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceLimits+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceMaintenance3Properties+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceMemoryProperties+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceMemoryProperties2+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceMultiviewFeatures+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceMultiviewProperties+import Graphics.Vulkan.Types.Struct.VkPhysicalDevicePointClippingProperties+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProtectedMemoryFeatures+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProtectedMemoryProperties+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSamplerYcbcrConversionFeatures+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceShaderDrawParameterFeatures+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseImageFormatInfo2+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseProperties+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSubgroupProperties+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceVariablePointerFeatures+import Graphics.Vulkan.Types.Struct.VkPipelineTessellationDomainOriginStateCreateInfo+import Graphics.Vulkan.Types.Struct.VkPipelineTessellationStateCreateInfo+import Graphics.Vulkan.Types.Struct.VkProtectedSubmitInfo+import Graphics.Vulkan.Types.Struct.VkQueueFamilyProperties+import Graphics.Vulkan.Types.Struct.VkQueueFamilyProperties2+import Graphics.Vulkan.Types.Struct.VkRect2D+import Graphics.Vulkan.Types.Struct.VkRenderPassBeginInfo+import Graphics.Vulkan.Types.Struct.VkRenderPassCreateInfo+import Graphics.Vulkan.Types.Struct.VkRenderPassInputAttachmentAspectCreateInfo+import Graphics.Vulkan.Types.Struct.VkRenderPassMultiviewCreateInfo+import Graphics.Vulkan.Types.Struct.VkSamplerCreateInfo+import Graphics.Vulkan.Types.Struct.VkSamplerYcbcrConversionCreateInfo+import Graphics.Vulkan.Types.Struct.VkSamplerYcbcrConversionImageFormatProperties+import Graphics.Vulkan.Types.Struct.VkSamplerYcbcrConversionInfo+import Graphics.Vulkan.Types.Struct.VkSemaphoreCreateInfo+import Graphics.Vulkan.Types.Struct.VkSparseBufferMemoryBindInfo+import Graphics.Vulkan.Types.Struct.VkSparseImageFormatProperties+import Graphics.Vulkan.Types.Struct.VkSparseImageFormatProperties2+import Graphics.Vulkan.Types.Struct.VkSparseImageMemoryBind+import Graphics.Vulkan.Types.Struct.VkSparseImageMemoryBindInfo+import Graphics.Vulkan.Types.Struct.VkSparseImageMemoryRequirements+import Graphics.Vulkan.Types.Struct.VkSparseImageMemoryRequirements2+import Graphics.Vulkan.Types.Struct.VkSparseImageOpaqueMemoryBindInfo+import Graphics.Vulkan.Types.Struct.VkSparseMemoryBind+import Graphics.Vulkan.Types.Struct.VkSubmitInfo+import Graphics.Vulkan.Types.Struct.VkSubpassDependency+import Graphics.Vulkan.Types.Struct.VkSubpassDescription++-- | Success codes: 'VK_SUCCESS'.+--+-- > VkResult vkEnumerateInstanceVersion+-- > ( uint32_t* pApiVersion+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkEnumerateInstanceVersion.html vkEnumerateInstanceVersion registry at www.khronos.org>+foreign import ccall unsafe "vkEnumerateInstanceVersion"+ vkEnumerateInstanceVersion :: Ptr Word32 -- ^ pApiVersion+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- > VkResult vkEnumerateInstanceVersion+-- > ( uint32_t* pApiVersion+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkEnumerateInstanceVersion.html vkEnumerateInstanceVersion registry at www.khronos.org>+foreign import ccall safe "vkEnumerateInstanceVersion"+ vkEnumerateInstanceVersionSafe :: Ptr Word32 -- ^ pApiVersion+ -> IO VkResult++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES =+ VkStructureType 1000094000++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkBindBufferMemory2+-- > ( VkDevice device+-- > , uint32_t bindInfoCount+-- > , const VkBindBufferMemoryInfo* pBindInfos+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkBindBufferMemory2.html vkBindBufferMemory2 registry at www.khronos.org>+foreign import ccall unsafe "vkBindBufferMemory2"+ vkBindBufferMemory2 ::+ VkDevice -- ^ device+ -> Word32 -- ^ bindInfoCount+ -> Ptr VkBindBufferMemoryInfo -- ^ pBindInfos+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkBindBufferMemory2+-- > ( VkDevice device+-- > , uint32_t bindInfoCount+-- > , const VkBindBufferMemoryInfo* pBindInfos+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkBindBufferMemory2.html vkBindBufferMemory2 registry at www.khronos.org>+foreign import ccall safe "vkBindBufferMemory2"+ vkBindBufferMemory2Safe ::+ VkDevice -- ^ device+ -> Word32 -- ^ bindInfoCount+ -> Ptr VkBindBufferMemoryInfo -- ^ pBindInfos+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkBindImageMemory2+-- > ( VkDevice device+-- > , uint32_t bindInfoCount+-- > , const VkBindImageMemoryInfo* pBindInfos+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkBindImageMemory2.html vkBindImageMemory2 registry at www.khronos.org>+foreign import ccall unsafe "vkBindImageMemory2" vkBindImageMemory2+ :: VkDevice -- ^ device+ -> Word32 -- ^ bindInfoCount+ -> Ptr VkBindImageMemoryInfo -- ^ pBindInfos+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkBindImageMemory2+-- > ( VkDevice device+-- > , uint32_t bindInfoCount+-- > , const VkBindImageMemoryInfo* pBindInfos+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkBindImageMemory2.html vkBindImageMemory2 registry at www.khronos.org>+foreign import ccall safe "vkBindImageMemory2"+ vkBindImageMemory2Safe ::+ VkDevice -- ^ device+ -> Word32 -- ^ bindInfoCount+ -> Ptr VkBindImageMemoryInfo -- ^ pBindInfos+ -> IO VkResult++pattern VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO =+ VkStructureType 1000157000++pattern VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: VkStructureType++pattern VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO =+ VkStructureType 1000157001++-- | bitpos = @10@+pattern VK_IMAGE_CREATE_ALIAS_BIT :: VkImageCreateFlagBits++pattern VK_IMAGE_CREATE_ALIAS_BIT = VkImageCreateFlagBits 1024++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES =+ VkStructureType 1000083000++pattern VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS =+ VkStructureType 1000127000++pattern VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO =+ VkStructureType 1000127001++-- | > () vkGetDeviceGroupPeerMemoryFeatures+-- > ( VkDevice device+-- > , uint32_t heapIndex+-- > , uint32_t localDeviceIndex+-- > , uint32_t remoteDeviceIndex+-- > , VkPeerMemoryFeatureFlags* pPeerMemoryFeatures+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetDeviceGroupPeerMemoryFeatures.html vkGetDeviceGroupPeerMemoryFeatures registry at www.khronos.org>+foreign import ccall unsafe "vkGetDeviceGroupPeerMemoryFeatures"+ vkGetDeviceGroupPeerMemoryFeatures ::+ VkDevice -- ^ device+ ->+ Word32 -- ^ heapIndex+ -> Word32 -- ^ localDeviceIndex+ -> Word32 -- ^ remoteDeviceIndex+ -> Ptr VkPeerMemoryFeatureFlags -- ^ pPeerMemoryFeatures+ -> IO ()++-- | > () vkGetDeviceGroupPeerMemoryFeatures+-- > ( VkDevice device+-- > , uint32_t heapIndex+-- > , uint32_t localDeviceIndex+-- > , uint32_t remoteDeviceIndex+-- > , VkPeerMemoryFeatureFlags* pPeerMemoryFeatures+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetDeviceGroupPeerMemoryFeatures.html vkGetDeviceGroupPeerMemoryFeatures registry at www.khronos.org>+foreign import ccall safe "vkGetDeviceGroupPeerMemoryFeatures"+ vkGetDeviceGroupPeerMemoryFeaturesSafe ::+ VkDevice -- ^ device+ ->+ Word32 -- ^ heapIndex+ -> Word32 -- ^ localDeviceIndex+ -> Word32 -- ^ remoteDeviceIndex+ -> Ptr VkPeerMemoryFeatureFlags -- ^ pPeerMemoryFeatures+ -> IO ()++-- | queues: 'graphics', 'compute', 'transfer'.+--+-- renderpass: @both@+--+-- > () vkCmdSetDeviceMask+-- > ( VkCommandBuffer commandBuffer+-- > , uint32_t deviceMask+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdSetDeviceMask.html vkCmdSetDeviceMask registry at www.khronos.org>+foreign import ccall unsafe "vkCmdSetDeviceMask" vkCmdSetDeviceMask+ :: VkCommandBuffer -- ^ commandBuffer+ -> Word32 -- ^ deviceMask+ -> IO ()++-- | queues: 'graphics', 'compute', 'transfer'.+--+-- renderpass: @both@+--+-- > () vkCmdSetDeviceMask+-- > ( VkCommandBuffer commandBuffer+-- > , uint32_t deviceMask+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdSetDeviceMask.html vkCmdSetDeviceMask registry at www.khronos.org>+foreign import ccall safe "vkCmdSetDeviceMask"+ vkCmdSetDeviceMaskSafe :: VkCommandBuffer -- ^ commandBuffer+ -> Word32 -- ^ deviceMask+ -> IO ()++-- | queues: 'compute'.+--+-- renderpass: @outside@+--+-- > () vkCmdDispatchBase+-- > ( VkCommandBuffer commandBuffer+-- > , uint32_t baseGroupX+-- > , uint32_t baseGroupY+-- > , uint32_t baseGroupZ+-- > , uint32_t groupCountX+-- > , uint32_t groupCountY+-- > , uint32_t groupCountZ+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdDispatchBase.html vkCmdDispatchBase registry at www.khronos.org>+foreign import ccall unsafe "vkCmdDispatchBase" vkCmdDispatchBase+ ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ Word32 -- ^ baseGroupX+ -> Word32 -- ^ baseGroupY+ -> Word32 -- ^ baseGroupZ+ -> Word32 -- ^ groupCountX+ -> Word32 -- ^ groupCountY+ -> Word32 -- ^ groupCountZ+ -> IO ()++-- | queues: 'compute'.+--+-- renderpass: @outside@+--+-- > () vkCmdDispatchBase+-- > ( VkCommandBuffer commandBuffer+-- > , uint32_t baseGroupX+-- > , uint32_t baseGroupY+-- > , uint32_t baseGroupZ+-- > , uint32_t groupCountX+-- > , uint32_t groupCountY+-- > , uint32_t groupCountZ+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdDispatchBase.html vkCmdDispatchBase registry at www.khronos.org>+foreign import ccall safe "vkCmdDispatchBase" vkCmdDispatchBaseSafe+ ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ Word32 -- ^ baseGroupX+ -> Word32 -- ^ baseGroupY+ -> Word32 -- ^ baseGroupZ+ -> Word32 -- ^ groupCountX+ -> Word32 -- ^ groupCountY+ -> Word32 -- ^ groupCountZ+ -> IO ()++pattern VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO =+ VkStructureType 1000060000++pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO =+ VkStructureType 1000060003++pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO =+ VkStructureType 1000060004++pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO =+ VkStructureType 1000060005++pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO =+ VkStructureType 1000060006++-- | bitpos = @3@+pattern VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT ::+ VkPipelineCreateFlagBits++pattern VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT =+ VkPipelineCreateFlagBits 8++-- | bitpos = @4@+pattern VK_PIPELINE_CREATE_DISPATCH_BASE ::+ VkPipelineCreateFlagBits++pattern VK_PIPELINE_CREATE_DISPATCH_BASE =+ VkPipelineCreateFlagBits 16++-- | Dependency is across devices+--+-- bitpos = @2@+pattern VK_DEPENDENCY_DEVICE_GROUP_BIT :: VkDependencyFlagBits++pattern VK_DEPENDENCY_DEVICE_GROUP_BIT = VkDependencyFlagBits 4++pattern VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO =+ VkStructureType 1000060013++pattern VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO =+ VkStructureType 1000060014++-- | Allows using VkBindImageMemoryDeviceGroupInfo::pSplitInstanceBindRegions when binding memory to the image+--+-- bitpos = @6@+pattern VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT ::+ VkImageCreateFlagBits++pattern VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT =+ VkImageCreateFlagBits 64++-- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_INITIALIZATION_FAILED'.+--+-- > VkResult vkEnumeratePhysicalDeviceGroups+-- > ( VkInstance instance+-- > , uint32_t* pPhysicalDeviceGroupCount+-- > , VkPhysicalDeviceGroupProperties* pPhysicalDeviceGroupProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkEnumeratePhysicalDeviceGroups.html vkEnumeratePhysicalDeviceGroups registry at www.khronos.org>+foreign import ccall unsafe "vkEnumeratePhysicalDeviceGroups"+ vkEnumeratePhysicalDeviceGroups ::+ VkInstance -- ^ instance+ ->+ Ptr Word32 -- ^ pPhysicalDeviceGroupCount+ -> Ptr VkPhysicalDeviceGroupProperties -- ^ pPhysicalDeviceGroupProperties+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_INITIALIZATION_FAILED'.+--+-- > VkResult vkEnumeratePhysicalDeviceGroups+-- > ( VkInstance instance+-- > , uint32_t* pPhysicalDeviceGroupCount+-- > , VkPhysicalDeviceGroupProperties* pPhysicalDeviceGroupProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkEnumeratePhysicalDeviceGroups.html vkEnumeratePhysicalDeviceGroups registry at www.khronos.org>+foreign import ccall safe "vkEnumeratePhysicalDeviceGroups"+ vkEnumeratePhysicalDeviceGroupsSafe ::+ VkInstance -- ^ instance+ ->+ Ptr Word32 -- ^ pPhysicalDeviceGroupCount+ -> Ptr VkPhysicalDeviceGroupProperties -- ^ pPhysicalDeviceGroupProperties+ -> IO VkResult++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES =+ VkStructureType 1000070000++pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO =+ VkStructureType 1000070001++-- | If set, heap allocations allocate multiple instances by default+--+-- bitpos = @1@+pattern VK_MEMORY_HEAP_MULTI_INSTANCE_BIT :: VkMemoryHeapFlagBits++pattern VK_MEMORY_HEAP_MULTI_INSTANCE_BIT = VkMemoryHeapFlagBits 2++-- | > () vkGetImageMemoryRequirements2+-- > ( VkDevice device+-- > , const VkImageMemoryRequirementsInfo2* pInfo+-- > , VkMemoryRequirements2* pMemoryRequirements+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetImageMemoryRequirements2.html vkGetImageMemoryRequirements2 registry at www.khronos.org>+foreign import ccall unsafe "vkGetImageMemoryRequirements2"+ vkGetImageMemoryRequirements2 ::+ VkDevice -- ^ device+ ->+ Ptr VkImageMemoryRequirementsInfo2 -- ^ pInfo+ ->+ Ptr VkMemoryRequirements2 -- ^ pMemoryRequirements+ -> IO ()++-- | > () vkGetImageMemoryRequirements2+-- > ( VkDevice device+-- > , const VkImageMemoryRequirementsInfo2* pInfo+-- > , VkMemoryRequirements2* pMemoryRequirements+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetImageMemoryRequirements2.html vkGetImageMemoryRequirements2 registry at www.khronos.org>+foreign import ccall safe "vkGetImageMemoryRequirements2"+ vkGetImageMemoryRequirements2Safe ::+ VkDevice -- ^ device+ ->+ Ptr VkImageMemoryRequirementsInfo2 -- ^ pInfo+ ->+ Ptr VkMemoryRequirements2 -- ^ pMemoryRequirements+ -> IO ()++-- | > () vkGetBufferMemoryRequirements2+-- > ( VkDevice device+-- > , const VkBufferMemoryRequirementsInfo2* pInfo+-- > , VkMemoryRequirements2* pMemoryRequirements+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetBufferMemoryRequirements2.html vkGetBufferMemoryRequirements2 registry at www.khronos.org>+foreign import ccall unsafe "vkGetBufferMemoryRequirements2"+ vkGetBufferMemoryRequirements2 ::+ VkDevice -- ^ device+ ->+ Ptr VkBufferMemoryRequirementsInfo2 -- ^ pInfo+ ->+ Ptr VkMemoryRequirements2 -- ^ pMemoryRequirements+ -> IO ()++-- | > () vkGetBufferMemoryRequirements2+-- > ( VkDevice device+-- > , const VkBufferMemoryRequirementsInfo2* pInfo+-- > , VkMemoryRequirements2* pMemoryRequirements+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetBufferMemoryRequirements2.html vkGetBufferMemoryRequirements2 registry at www.khronos.org>+foreign import ccall safe "vkGetBufferMemoryRequirements2"+ vkGetBufferMemoryRequirements2Safe ::+ VkDevice -- ^ device+ ->+ Ptr VkBufferMemoryRequirementsInfo2 -- ^ pInfo+ ->+ Ptr VkMemoryRequirements2 -- ^ pMemoryRequirements+ -> IO ()++-- | > () vkGetImageSparseMemoryRequirements2+-- > ( VkDevice device+-- > , const VkImageSparseMemoryRequirementsInfo2* pInfo+-- > , uint32_t* pSparseMemoryRequirementCount+-- > , VkSparseImageMemoryRequirements2* pSparseMemoryRequirements+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetImageSparseMemoryRequirements2.html vkGetImageSparseMemoryRequirements2 registry at www.khronos.org>+foreign import ccall unsafe "vkGetImageSparseMemoryRequirements2"+ vkGetImageSparseMemoryRequirements2 ::+ VkDevice -- ^ device+ ->+ Ptr VkImageSparseMemoryRequirementsInfo2 -- ^ pInfo+ ->+ Ptr Word32 -- ^ pSparseMemoryRequirementCount+ -> Ptr VkSparseImageMemoryRequirements2 -- ^ pSparseMemoryRequirements+ -> IO ()++-- | > () vkGetImageSparseMemoryRequirements2+-- > ( VkDevice device+-- > , const VkImageSparseMemoryRequirementsInfo2* pInfo+-- > , uint32_t* pSparseMemoryRequirementCount+-- > , VkSparseImageMemoryRequirements2* pSparseMemoryRequirements+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetImageSparseMemoryRequirements2.html vkGetImageSparseMemoryRequirements2 registry at www.khronos.org>+foreign import ccall safe "vkGetImageSparseMemoryRequirements2"+ vkGetImageSparseMemoryRequirements2Safe ::+ VkDevice -- ^ device+ ->+ Ptr VkImageSparseMemoryRequirementsInfo2 -- ^ pInfo+ ->+ Ptr Word32 -- ^ pSparseMemoryRequirementCount+ -> Ptr VkSparseImageMemoryRequirements2 -- ^ pSparseMemoryRequirements+ -> IO ()++pattern VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 =+ VkStructureType 1000146000++pattern VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 =+ VkStructureType 1000146001++pattern VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2+ :: VkStructureType++pattern VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 =+ VkStructureType 1000146002++pattern VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: VkStructureType++pattern VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 =+ VkStructureType 1000146003++pattern VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 =+ VkStructureType 1000146004++-- | > () vkGetPhysicalDeviceFeatures2+-- > ( VkPhysicalDevice physicalDevice+-- > , VkPhysicalDeviceFeatures2* pFeatures+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceFeatures2.html vkGetPhysicalDeviceFeatures2 registry at www.khronos.org>+foreign import ccall unsafe "vkGetPhysicalDeviceFeatures2"+ vkGetPhysicalDeviceFeatures2 ::+ VkPhysicalDevice -- ^ physicalDevice+ -> Ptr VkPhysicalDeviceFeatures2 -- ^ pFeatures+ -> IO ()++-- | > () vkGetPhysicalDeviceFeatures2+-- > ( VkPhysicalDevice physicalDevice+-- > , VkPhysicalDeviceFeatures2* pFeatures+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceFeatures2.html vkGetPhysicalDeviceFeatures2 registry at www.khronos.org>+foreign import ccall safe "vkGetPhysicalDeviceFeatures2"+ vkGetPhysicalDeviceFeatures2Safe ::+ VkPhysicalDevice -- ^ physicalDevice+ -> Ptr VkPhysicalDeviceFeatures2 -- ^ pFeatures+ -> IO ()++-- | > () vkGetPhysicalDeviceProperties2+-- > ( VkPhysicalDevice physicalDevice+-- > , VkPhysicalDeviceProperties2* pProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceProperties2.html vkGetPhysicalDeviceProperties2 registry at www.khronos.org>+foreign import ccall unsafe "vkGetPhysicalDeviceProperties2"+ vkGetPhysicalDeviceProperties2 ::+ VkPhysicalDevice -- ^ physicalDevice+ -> Ptr VkPhysicalDeviceProperties2 -- ^ pProperties+ -> IO ()++-- | > () vkGetPhysicalDeviceProperties2+-- > ( VkPhysicalDevice physicalDevice+-- > , VkPhysicalDeviceProperties2* pProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceProperties2.html vkGetPhysicalDeviceProperties2 registry at www.khronos.org>+foreign import ccall safe "vkGetPhysicalDeviceProperties2"+ vkGetPhysicalDeviceProperties2Safe ::+ VkPhysicalDevice -- ^ physicalDevice+ -> Ptr VkPhysicalDeviceProperties2 -- ^ pProperties+ -> IO ()++-- | > () vkGetPhysicalDeviceFormatProperties2+-- > ( VkPhysicalDevice physicalDevice+-- > , VkFormat format+-- > , VkFormatProperties2* pFormatProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceFormatProperties2.html vkGetPhysicalDeviceFormatProperties2 registry at www.khronos.org>+foreign import ccall unsafe "vkGetPhysicalDeviceFormatProperties2"+ vkGetPhysicalDeviceFormatProperties2 ::+ VkPhysicalDevice -- ^ physicalDevice+ -> VkFormat -- ^ format+ -> Ptr VkFormatProperties2 -- ^ pFormatProperties+ -> IO ()++-- | > () vkGetPhysicalDeviceFormatProperties2+-- > ( VkPhysicalDevice physicalDevice+-- > , VkFormat format+-- > , VkFormatProperties2* pFormatProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceFormatProperties2.html vkGetPhysicalDeviceFormatProperties2 registry at www.khronos.org>+foreign import ccall safe "vkGetPhysicalDeviceFormatProperties2"+ vkGetPhysicalDeviceFormatProperties2Safe ::+ VkPhysicalDevice -- ^ physicalDevice+ -> VkFormat -- ^ format+ -> Ptr VkFormatProperties2 -- ^ pFormatProperties+ -> IO ()++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_FORMAT_NOT_SUPPORTED'.+--+-- > VkResult vkGetPhysicalDeviceImageFormatProperties2+-- > ( VkPhysicalDevice physicalDevice+-- > , const VkPhysicalDeviceImageFormatInfo2* pImageFormatInfo+-- > , VkImageFormatProperties2* pImageFormatProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceImageFormatProperties2.html vkGetPhysicalDeviceImageFormatProperties2 registry at www.khronos.org>+foreign import ccall unsafe+ "vkGetPhysicalDeviceImageFormatProperties2"+ vkGetPhysicalDeviceImageFormatProperties2 ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ Ptr VkPhysicalDeviceImageFormatInfo2 -- ^ pImageFormatInfo+ ->+ Ptr VkImageFormatProperties2 -- ^ pImageFormatProperties+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_FORMAT_NOT_SUPPORTED'.+--+-- > VkResult vkGetPhysicalDeviceImageFormatProperties2+-- > ( VkPhysicalDevice physicalDevice+-- > , const VkPhysicalDeviceImageFormatInfo2* pImageFormatInfo+-- > , VkImageFormatProperties2* pImageFormatProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceImageFormatProperties2.html vkGetPhysicalDeviceImageFormatProperties2 registry at www.khronos.org>+foreign import ccall safe+ "vkGetPhysicalDeviceImageFormatProperties2"+ vkGetPhysicalDeviceImageFormatProperties2Safe ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ Ptr VkPhysicalDeviceImageFormatInfo2 -- ^ pImageFormatInfo+ ->+ Ptr VkImageFormatProperties2 -- ^ pImageFormatProperties+ -> IO VkResult++-- | > () vkGetPhysicalDeviceQueueFamilyProperties2+-- > ( VkPhysicalDevice physicalDevice+-- > , uint32_t* pQueueFamilyPropertyCount+-- > , VkQueueFamilyProperties2* pQueueFamilyProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceQueueFamilyProperties2.html vkGetPhysicalDeviceQueueFamilyProperties2 registry at www.khronos.org>+foreign import ccall unsafe+ "vkGetPhysicalDeviceQueueFamilyProperties2"+ vkGetPhysicalDeviceQueueFamilyProperties2 ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ Ptr Word32 -- ^ pQueueFamilyPropertyCount+ -> Ptr VkQueueFamilyProperties2 -- ^ pQueueFamilyProperties+ -> IO ()++-- | > () vkGetPhysicalDeviceQueueFamilyProperties2+-- > ( VkPhysicalDevice physicalDevice+-- > , uint32_t* pQueueFamilyPropertyCount+-- > , VkQueueFamilyProperties2* pQueueFamilyProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceQueueFamilyProperties2.html vkGetPhysicalDeviceQueueFamilyProperties2 registry at www.khronos.org>+foreign import ccall safe+ "vkGetPhysicalDeviceQueueFamilyProperties2"+ vkGetPhysicalDeviceQueueFamilyProperties2Safe ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ Ptr Word32 -- ^ pQueueFamilyPropertyCount+ -> Ptr VkQueueFamilyProperties2 -- ^ pQueueFamilyProperties+ -> IO ()++-- | > () vkGetPhysicalDeviceMemoryProperties2+-- > ( VkPhysicalDevice physicalDevice+-- > , VkPhysicalDeviceMemoryProperties2* pMemoryProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceMemoryProperties2.html vkGetPhysicalDeviceMemoryProperties2 registry at www.khronos.org>+foreign import ccall unsafe "vkGetPhysicalDeviceMemoryProperties2"+ vkGetPhysicalDeviceMemoryProperties2 ::+ VkPhysicalDevice -- ^ physicalDevice+ -> Ptr VkPhysicalDeviceMemoryProperties2 -- ^ pMemoryProperties+ -> IO ()++-- | > () vkGetPhysicalDeviceMemoryProperties2+-- > ( VkPhysicalDevice physicalDevice+-- > , VkPhysicalDeviceMemoryProperties2* pMemoryProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceMemoryProperties2.html vkGetPhysicalDeviceMemoryProperties2 registry at www.khronos.org>+foreign import ccall safe "vkGetPhysicalDeviceMemoryProperties2"+ vkGetPhysicalDeviceMemoryProperties2Safe ::+ VkPhysicalDevice -- ^ physicalDevice+ -> Ptr VkPhysicalDeviceMemoryProperties2 -- ^ pMemoryProperties+ -> IO ()++-- | > () vkGetPhysicalDeviceSparseImageFormatProperties2+-- > ( VkPhysicalDevice physicalDevice+-- > , const VkPhysicalDeviceSparseImageFormatInfo2* pFormatInfo+-- > , uint32_t* pPropertyCount+-- > , VkSparseImageFormatProperties2* pProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceSparseImageFormatProperties2.html vkGetPhysicalDeviceSparseImageFormatProperties2 registry at www.khronos.org>+foreign import ccall unsafe+ "vkGetPhysicalDeviceSparseImageFormatProperties2"+ vkGetPhysicalDeviceSparseImageFormatProperties2 ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ Ptr VkPhysicalDeviceSparseImageFormatInfo2 -- ^ pFormatInfo+ ->+ Ptr Word32 -- ^ pPropertyCount+ -> Ptr VkSparseImageFormatProperties2 -- ^ pProperties+ -> IO ()++-- | > () vkGetPhysicalDeviceSparseImageFormatProperties2+-- > ( VkPhysicalDevice physicalDevice+-- > , const VkPhysicalDeviceSparseImageFormatInfo2* pFormatInfo+-- > , uint32_t* pPropertyCount+-- > , VkSparseImageFormatProperties2* pProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceSparseImageFormatProperties2.html vkGetPhysicalDeviceSparseImageFormatProperties2 registry at www.khronos.org>+foreign import ccall safe+ "vkGetPhysicalDeviceSparseImageFormatProperties2"+ vkGetPhysicalDeviceSparseImageFormatProperties2Safe ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ Ptr VkPhysicalDeviceSparseImageFormatInfo2 -- ^ pFormatInfo+ ->+ Ptr Word32 -- ^ pPropertyCount+ -> Ptr VkSparseImageFormatProperties2 -- ^ pProperties+ -> IO ()++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 =+ VkStructureType 1000059000++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 =+ VkStructureType 1000059001++pattern VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: VkStructureType++pattern VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2 =+ VkStructureType 1000059002++pattern VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 =+ VkStructureType 1000059003++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 =+ VkStructureType 1000059004++pattern VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 =+ VkStructureType 1000059005++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 =+ VkStructureType 1000059006++pattern VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 =+ VkStructureType 1000059007++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2+ :: VkStructureType++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2+ = VkStructureType 1000059008++-- | > () vkTrimCommandPool+-- > ( VkDevice device+-- > , VkCommandPool commandPool+-- > , VkCommandPoolTrimFlags flags+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkTrimCommandPool.html vkTrimCommandPool registry at www.khronos.org>+foreign import ccall unsafe "vkTrimCommandPool" vkTrimCommandPool+ :: VkDevice -- ^ device+ -> VkCommandPool -- ^ commandPool+ -> VkCommandPoolTrimFlags -- ^ flags+ -> IO ()++-- | > () vkTrimCommandPool+-- > ( VkDevice device+-- > , VkCommandPool commandPool+-- > , VkCommandPoolTrimFlags flags+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkTrimCommandPool.html vkTrimCommandPool registry at www.khronos.org>+foreign import ccall safe "vkTrimCommandPool" vkTrimCommandPoolSafe+ :: VkDevice -- ^ device+ -> VkCommandPool -- ^ commandPool+ -> VkCommandPoolTrimFlags -- ^ flags+ -> IO ()++pattern VK_ERROR_OUT_OF_POOL_MEMORY :: VkResult++pattern VK_ERROR_OUT_OF_POOL_MEMORY = VkResult (-1000069000)++-- | Format can be used as the source image of image transfer commands+--+-- bitpos = @14@+pattern VK_FORMAT_FEATURE_TRANSFER_SRC_BIT ::+ VkFormatFeatureFlagBits++pattern VK_FORMAT_FEATURE_TRANSFER_SRC_BIT =+ VkFormatFeatureFlagBits 16384++-- | Format can be used as the destination image of image transfer commands+--+-- bitpos = @15@+pattern VK_FORMAT_FEATURE_TRANSFER_DST_BIT ::+ VkFormatFeatureFlagBits++pattern VK_FORMAT_FEATURE_TRANSFER_DST_BIT =+ VkFormatFeatureFlagBits 32768++-- | The 3D image can be viewed as a 2D or 2D array image+--+-- bitpos = @5@+pattern VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT ::+ VkImageCreateFlagBits++pattern VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT =+ VkImageCreateFlagBits 32++-- | bitpos = @7@+pattern VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT ::+ VkImageCreateFlagBits++pattern VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT =+ VkImageCreateFlagBits 128++-- | bitpos = @8@+pattern VK_IMAGE_CREATE_EXTENDED_USAGE_BIT :: VkImageCreateFlagBits++pattern VK_IMAGE_CREATE_EXTENDED_USAGE_BIT =+ VkImageCreateFlagBits 256++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES+ :: VkStructureType++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES+ = VkStructureType 1000117000++pattern VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO+ :: VkStructureType++pattern VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO+ = VkStructureType 1000117001++pattern VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO =+ VkStructureType 1000117002++pattern VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO+ :: VkStructureType++pattern VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO+ = VkStructureType 1000117003++pattern VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL+ :: VkImageLayout++pattern VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL+ = VkImageLayout 1000117000++pattern VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL+ :: VkImageLayout++pattern VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL+ = VkImageLayout 1000117001++pattern VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO =+ VkStructureType 1000053000++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES =+ VkStructureType 1000053001++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES =+ VkStructureType 1000053002++-- | bitpos = @1@+pattern VK_DEPENDENCY_VIEW_LOCAL_BIT :: VkDependencyFlagBits++pattern VK_DEPENDENCY_VIEW_LOCAL_BIT = VkDependencyFlagBits 2++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES+ :: VkStructureType++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES+ = VkStructureType 1000120000++-- | > () vkGetDeviceQueue2+-- > ( VkDevice device+-- > , const VkDeviceQueueInfo2* pQueueInfo+-- > , VkQueue* pQueue+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetDeviceQueue2.html vkGetDeviceQueue2 registry at www.khronos.org>+foreign import ccall unsafe "vkGetDeviceQueue2" vkGetDeviceQueue2+ :: VkDevice -- ^ device+ -> Ptr VkDeviceQueueInfo2 -- ^ pQueueInfo+ -> Ptr VkQueue -- ^ pQueue+ -> IO ()++-- | > () vkGetDeviceQueue2+-- > ( VkDevice device+-- > , const VkDeviceQueueInfo2* pQueueInfo+-- > , VkQueue* pQueue+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetDeviceQueue2.html vkGetDeviceQueue2 registry at www.khronos.org>+foreign import ccall safe "vkGetDeviceQueue2" vkGetDeviceQueue2Safe+ :: VkDevice -- ^ device+ -> Ptr VkDeviceQueueInfo2 -- ^ pQueueInfo+ -> Ptr VkQueue -- ^ pQueue+ -> IO ()++pattern VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: VkStructureType++pattern VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO =+ VkStructureType 1000145000++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES+ :: VkStructureType++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES+ = VkStructureType 1000145001++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES+ :: VkStructureType++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES+ = VkStructureType 1000145002++pattern VK_STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: VkStructureType++pattern VK_STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 =+ VkStructureType 1000145003++-- | Queues may support protected operations+--+-- bitpos = @4@+pattern VK_QUEUE_PROTECTED_BIT :: VkQueueFlagBits++pattern VK_QUEUE_PROTECTED_BIT = VkQueueFlagBits 16++-- | Queue is a protected-capable device queue+--+-- bitpos = @0@+pattern VK_DEVICE_QUEUE_CREATE_PROTECTED_BIT ::+ VkDeviceQueueCreateFlagBits++pattern VK_DEVICE_QUEUE_CREATE_PROTECTED_BIT =+ VkDeviceQueueCreateFlagBits 1++-- | Memory is protected+--+-- bitpos = @5@+pattern VK_MEMORY_PROPERTY_PROTECTED_BIT ::+ VkMemoryPropertyFlagBits++pattern VK_MEMORY_PROPERTY_PROTECTED_BIT =+ VkMemoryPropertyFlagBits 32++-- | Buffer requires protected memory+--+-- bitpos = @3@+pattern VK_BUFFER_CREATE_PROTECTED_BIT :: VkBufferCreateFlagBits++pattern VK_BUFFER_CREATE_PROTECTED_BIT = VkBufferCreateFlagBits 8++-- | Image requires protected memory+--+-- bitpos = @11@+pattern VK_IMAGE_CREATE_PROTECTED_BIT :: VkImageCreateFlagBits++pattern VK_IMAGE_CREATE_PROTECTED_BIT = VkImageCreateFlagBits 2048++-- | Command buffers allocated from pool are protected command buffers+--+-- bitpos = @2@+pattern VK_COMMAND_POOL_CREATE_PROTECTED_BIT ::+ VkCommandPoolCreateFlagBits++pattern VK_COMMAND_POOL_CREATE_PROTECTED_BIT =+ VkCommandPoolCreateFlagBits 4++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreateSamplerYcbcrConversion+-- > ( VkDevice device+-- > , const VkSamplerYcbcrConversionCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkSamplerYcbcrConversion* pYcbcrConversion+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateSamplerYcbcrConversion.html vkCreateSamplerYcbcrConversion registry at www.khronos.org>+foreign import ccall unsafe "vkCreateSamplerYcbcrConversion"+ vkCreateSamplerYcbcrConversion ::+ VkDevice -- ^ device+ ->+ Ptr VkSamplerYcbcrConversionCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ ->+ Ptr VkSamplerYcbcrConversion -- ^ pYcbcrConversion+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreateSamplerYcbcrConversion+-- > ( VkDevice device+-- > , const VkSamplerYcbcrConversionCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkSamplerYcbcrConversion* pYcbcrConversion+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateSamplerYcbcrConversion.html vkCreateSamplerYcbcrConversion registry at www.khronos.org>+foreign import ccall safe "vkCreateSamplerYcbcrConversion"+ vkCreateSamplerYcbcrConversionSafe ::+ VkDevice -- ^ device+ ->+ Ptr VkSamplerYcbcrConversionCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ ->+ Ptr VkSamplerYcbcrConversion -- ^ pYcbcrConversion+ -> IO VkResult++-- | > () vkDestroySamplerYcbcrConversion+-- > ( VkDevice device+-- > , VkSamplerYcbcrConversion ycbcrConversion+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroySamplerYcbcrConversion.html vkDestroySamplerYcbcrConversion registry at www.khronos.org>+foreign import ccall unsafe "vkDestroySamplerYcbcrConversion"+ vkDestroySamplerYcbcrConversion ::+ VkDevice -- ^ device+ ->+ VkSamplerYcbcrConversion -- ^ ycbcrConversion+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | > () vkDestroySamplerYcbcrConversion+-- > ( VkDevice device+-- > , VkSamplerYcbcrConversion ycbcrConversion+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroySamplerYcbcrConversion.html vkDestroySamplerYcbcrConversion registry at www.khronos.org>+foreign import ccall safe "vkDestroySamplerYcbcrConversion"+ vkDestroySamplerYcbcrConversionSafe ::+ VkDevice -- ^ device+ ->+ VkSamplerYcbcrConversion -- ^ ycbcrConversion+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++pattern VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO =+ VkStructureType 1000156000++pattern VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO =+ VkStructureType 1000156001++pattern VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO =+ VkStructureType 1000156002++pattern VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO =+ VkStructureType 1000156003++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES+ :: VkStructureType++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES+ = VkStructureType 1000156004++pattern VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES+ :: VkStructureType++pattern VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES+ = VkStructureType 1000156005++pattern VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION :: VkObjectType++pattern VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION =+ VkObjectType 1000156000++pattern VK_FORMAT_G8B8G8R8_422_UNORM :: VkFormat++pattern VK_FORMAT_G8B8G8R8_422_UNORM = VkFormat 1000156000++pattern VK_FORMAT_B8G8R8G8_422_UNORM :: VkFormat++pattern VK_FORMAT_B8G8R8G8_422_UNORM = VkFormat 1000156001++pattern VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM :: VkFormat++pattern VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM = VkFormat 1000156002++pattern VK_FORMAT_G8_B8R8_2PLANE_420_UNORM :: VkFormat++pattern VK_FORMAT_G8_B8R8_2PLANE_420_UNORM = VkFormat 1000156003++pattern VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM :: VkFormat++pattern VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM = VkFormat 1000156004++pattern VK_FORMAT_G8_B8R8_2PLANE_422_UNORM :: VkFormat++pattern VK_FORMAT_G8_B8R8_2PLANE_422_UNORM = VkFormat 1000156005++pattern VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM :: VkFormat++pattern VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM = VkFormat 1000156006++pattern VK_FORMAT_R10X6_UNORM_PACK16 :: VkFormat++pattern VK_FORMAT_R10X6_UNORM_PACK16 = VkFormat 1000156007++pattern VK_FORMAT_R10X6G10X6_UNORM_2PACK16 :: VkFormat++pattern VK_FORMAT_R10X6G10X6_UNORM_2PACK16 = VkFormat 1000156008++pattern VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16 :: VkFormat++pattern VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16 =+ VkFormat 1000156009++pattern VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16 ::+ VkFormat++pattern VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16 =+ VkFormat 1000156010++pattern VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16 ::+ VkFormat++pattern VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16 =+ VkFormat 1000156011++pattern VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16 ::+ VkFormat++pattern VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16 =+ VkFormat 1000156012++pattern VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16 ::+ VkFormat++pattern VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16 =+ VkFormat 1000156013++pattern VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16 ::+ VkFormat++pattern VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16 =+ VkFormat 1000156014++pattern VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16 ::+ VkFormat++pattern VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16 =+ VkFormat 1000156015++pattern VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16 ::+ VkFormat++pattern VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16 =+ VkFormat 1000156016++pattern VK_FORMAT_R12X4_UNORM_PACK16 :: VkFormat++pattern VK_FORMAT_R12X4_UNORM_PACK16 = VkFormat 1000156017++pattern VK_FORMAT_R12X4G12X4_UNORM_2PACK16 :: VkFormat++pattern VK_FORMAT_R12X4G12X4_UNORM_2PACK16 = VkFormat 1000156018++pattern VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16 :: VkFormat++pattern VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16 =+ VkFormat 1000156019++pattern VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16 ::+ VkFormat++pattern VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16 =+ VkFormat 1000156020++pattern VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16 ::+ VkFormat++pattern VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16 =+ VkFormat 1000156021++pattern VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16 ::+ VkFormat++pattern VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16 =+ VkFormat 1000156022++pattern VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16 ::+ VkFormat++pattern VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16 =+ VkFormat 1000156023++pattern VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16 ::+ VkFormat++pattern VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16 =+ VkFormat 1000156024++pattern VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16 ::+ VkFormat++pattern VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16 =+ VkFormat 1000156025++pattern VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16 ::+ VkFormat++pattern VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16 =+ VkFormat 1000156026++pattern VK_FORMAT_G16B16G16R16_422_UNORM :: VkFormat++pattern VK_FORMAT_G16B16G16R16_422_UNORM = VkFormat 1000156027++pattern VK_FORMAT_B16G16R16G16_422_UNORM :: VkFormat++pattern VK_FORMAT_B16G16R16G16_422_UNORM = VkFormat 1000156028++pattern VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM :: VkFormat++pattern VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM =+ VkFormat 1000156029++pattern VK_FORMAT_G16_B16R16_2PLANE_420_UNORM :: VkFormat++pattern VK_FORMAT_G16_B16R16_2PLANE_420_UNORM = VkFormat 1000156030++pattern VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM :: VkFormat++pattern VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM =+ VkFormat 1000156031++pattern VK_FORMAT_G16_B16R16_2PLANE_422_UNORM :: VkFormat++pattern VK_FORMAT_G16_B16R16_2PLANE_422_UNORM = VkFormat 1000156032++pattern VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM :: VkFormat++pattern VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM =+ VkFormat 1000156033++-- | bitpos = @4@+pattern VK_IMAGE_ASPECT_PLANE_0_BIT :: VkImageAspectFlagBits++pattern VK_IMAGE_ASPECT_PLANE_0_BIT = VkImageAspectFlagBits 16++-- | bitpos = @5@+pattern VK_IMAGE_ASPECT_PLANE_1_BIT :: VkImageAspectFlagBits++pattern VK_IMAGE_ASPECT_PLANE_1_BIT = VkImageAspectFlagBits 32++-- | bitpos = @6@+pattern VK_IMAGE_ASPECT_PLANE_2_BIT :: VkImageAspectFlagBits++pattern VK_IMAGE_ASPECT_PLANE_2_BIT = VkImageAspectFlagBits 64++-- | bitpos = @9@+pattern VK_IMAGE_CREATE_DISJOINT_BIT :: VkImageCreateFlagBits++pattern VK_IMAGE_CREATE_DISJOINT_BIT = VkImageCreateFlagBits 512++-- | Format can have midpoint rather than cosited chroma samples+--+-- bitpos = @17@+pattern VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT ::+ VkFormatFeatureFlagBits++pattern VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT =+ VkFormatFeatureFlagBits 131072++-- | Format can be used with linear filtering whilst color conversion is enabled+--+-- bitpos = @18@+pattern VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT+ :: VkFormatFeatureFlagBits++pattern VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT+ = VkFormatFeatureFlagBits 262144++-- | Format can have different chroma, min and mag filters+--+-- bitpos = @19@+pattern VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT+ :: VkFormatFeatureFlagBits++pattern VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT+ = VkFormatFeatureFlagBits 524288++-- | bitpos = @20@+pattern VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT+ :: VkFormatFeatureFlagBits++pattern VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT+ = VkFormatFeatureFlagBits 1048576++-- | bitpos = @21@+pattern VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT+ :: VkFormatFeatureFlagBits++pattern VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT+ = VkFormatFeatureFlagBits 2097152++-- | Format supports disjoint planes+--+-- bitpos = @22@+pattern VK_FORMAT_FEATURE_DISJOINT_BIT :: VkFormatFeatureFlagBits++pattern VK_FORMAT_FEATURE_DISJOINT_BIT =+ VkFormatFeatureFlagBits 4194304++-- | Format can have cosited rather than midpoint chroma samples+--+-- bitpos = @23@+pattern VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT ::+ VkFormatFeatureFlagBits++pattern VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT =+ VkFormatFeatureFlagBits 8388608++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreateDescriptorUpdateTemplate+-- > ( VkDevice device+-- > , const VkDescriptorUpdateTemplateCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkDescriptorUpdateTemplate* pDescriptorUpdateTemplate+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateDescriptorUpdateTemplate.html vkCreateDescriptorUpdateTemplate registry at www.khronos.org>+foreign import ccall unsafe "vkCreateDescriptorUpdateTemplate"+ vkCreateDescriptorUpdateTemplate ::+ VkDevice -- ^ device+ ->+ Ptr VkDescriptorUpdateTemplateCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ ->+ Ptr VkDescriptorUpdateTemplate -- ^ pDescriptorUpdateTemplate+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreateDescriptorUpdateTemplate+-- > ( VkDevice device+-- > , const VkDescriptorUpdateTemplateCreateInfo* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkDescriptorUpdateTemplate* pDescriptorUpdateTemplate+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateDescriptorUpdateTemplate.html vkCreateDescriptorUpdateTemplate registry at www.khronos.org>+foreign import ccall safe "vkCreateDescriptorUpdateTemplate"+ vkCreateDescriptorUpdateTemplateSafe ::+ VkDevice -- ^ device+ ->+ Ptr VkDescriptorUpdateTemplateCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ ->+ Ptr VkDescriptorUpdateTemplate -- ^ pDescriptorUpdateTemplate+ -> IO VkResult++-- | > () vkDestroyDescriptorUpdateTemplate+-- > ( VkDevice device+-- > , VkDescriptorUpdateTemplate descriptorUpdateTemplate+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyDescriptorUpdateTemplate.html vkDestroyDescriptorUpdateTemplate registry at www.khronos.org>+foreign import ccall unsafe "vkDestroyDescriptorUpdateTemplate"+ vkDestroyDescriptorUpdateTemplate ::+ VkDevice -- ^ device+ ->+ VkDescriptorUpdateTemplate -- ^ descriptorUpdateTemplate+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | > () vkDestroyDescriptorUpdateTemplate+-- > ( VkDevice device+-- > , VkDescriptorUpdateTemplate descriptorUpdateTemplate+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyDescriptorUpdateTemplate.html vkDestroyDescriptorUpdateTemplate registry at www.khronos.org>+foreign import ccall safe "vkDestroyDescriptorUpdateTemplate"+ vkDestroyDescriptorUpdateTemplateSafe ::+ VkDevice -- ^ device+ ->+ VkDescriptorUpdateTemplate -- ^ descriptorUpdateTemplate+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | > () vkUpdateDescriptorSetWithTemplate+-- > ( VkDevice device+-- > , VkDescriptorSet descriptorSet+-- > , VkDescriptorUpdateTemplate descriptorUpdateTemplate+-- > , const void* pData+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkUpdateDescriptorSetWithTemplate.html vkUpdateDescriptorSetWithTemplate registry at www.khronos.org>+foreign import ccall unsafe "vkUpdateDescriptorSetWithTemplate"+ vkUpdateDescriptorSetWithTemplate ::+ VkDevice -- ^ device+ ->+ VkDescriptorSet -- ^ descriptorSet+ -> VkDescriptorUpdateTemplate -- ^ descriptorUpdateTemplate+ -> Ptr Void -- ^ pData+ -> IO ()++-- | > () vkUpdateDescriptorSetWithTemplate+-- > ( VkDevice device+-- > , VkDescriptorSet descriptorSet+-- > , VkDescriptorUpdateTemplate descriptorUpdateTemplate+-- > , const void* pData+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkUpdateDescriptorSetWithTemplate.html vkUpdateDescriptorSetWithTemplate registry at www.khronos.org>+foreign import ccall safe "vkUpdateDescriptorSetWithTemplate"+ vkUpdateDescriptorSetWithTemplateSafe ::+ VkDevice -- ^ device+ ->+ VkDescriptorSet -- ^ descriptorSet+ -> VkDescriptorUpdateTemplate -- ^ descriptorUpdateTemplate+ -> Ptr Void -- ^ pData+ -> IO ()++pattern VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO =+ VkStructureType 1000085000++pattern VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE :: VkObjectType++pattern VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE =+ VkObjectType 1000085000++-- | > () vkGetPhysicalDeviceExternalBufferProperties+-- > ( VkPhysicalDevice physicalDevice+-- > , const VkPhysicalDeviceExternalBufferInfo* pExternalBufferInfo+-- > , VkExternalBufferProperties* pExternalBufferProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceExternalBufferProperties.html vkGetPhysicalDeviceExternalBufferProperties registry at www.khronos.org>+foreign import ccall unsafe+ "vkGetPhysicalDeviceExternalBufferProperties"+ vkGetPhysicalDeviceExternalBufferProperties ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ Ptr VkPhysicalDeviceExternalBufferInfo -- ^ pExternalBufferInfo+ ->+ Ptr VkExternalBufferProperties -- ^ pExternalBufferProperties+ -> IO ()++-- | > () vkGetPhysicalDeviceExternalBufferProperties+-- > ( VkPhysicalDevice physicalDevice+-- > , const VkPhysicalDeviceExternalBufferInfo* pExternalBufferInfo+-- > , VkExternalBufferProperties* pExternalBufferProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceExternalBufferProperties.html vkGetPhysicalDeviceExternalBufferProperties registry at www.khronos.org>+foreign import ccall safe+ "vkGetPhysicalDeviceExternalBufferProperties"+ vkGetPhysicalDeviceExternalBufferPropertiesSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ Ptr VkPhysicalDeviceExternalBufferInfo -- ^ pExternalBufferInfo+ ->+ Ptr VkExternalBufferProperties -- ^ pExternalBufferProperties+ -> IO ()++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO+ :: VkStructureType++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO+ = VkStructureType 1000071000++pattern VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES =+ VkStructureType 1000071001++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO =+ VkStructureType 1000071002++pattern VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES =+ VkStructureType 1000071003++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES =+ VkStructureType 1000071004++pattern VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO =+ VkStructureType 1000072000++pattern VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO =+ VkStructureType 1000072001++pattern VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO =+ VkStructureType 1000072002++pattern VK_ERROR_INVALID_EXTERNAL_HANDLE :: VkResult++pattern VK_ERROR_INVALID_EXTERNAL_HANDLE = VkResult (-1000072003)++-- | > () vkGetPhysicalDeviceExternalFenceProperties+-- > ( VkPhysicalDevice physicalDevice+-- > , const VkPhysicalDeviceExternalFenceInfo* pExternalFenceInfo+-- > , VkExternalFenceProperties* pExternalFenceProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceExternalFenceProperties.html vkGetPhysicalDeviceExternalFenceProperties registry at www.khronos.org>+foreign import ccall unsafe+ "vkGetPhysicalDeviceExternalFenceProperties"+ vkGetPhysicalDeviceExternalFenceProperties ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ Ptr VkPhysicalDeviceExternalFenceInfo -- ^ pExternalFenceInfo+ ->+ Ptr VkExternalFenceProperties -- ^ pExternalFenceProperties+ -> IO ()++-- | > () vkGetPhysicalDeviceExternalFenceProperties+-- > ( VkPhysicalDevice physicalDevice+-- > , const VkPhysicalDeviceExternalFenceInfo* pExternalFenceInfo+-- > , VkExternalFenceProperties* pExternalFenceProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceExternalFenceProperties.html vkGetPhysicalDeviceExternalFenceProperties registry at www.khronos.org>+foreign import ccall safe+ "vkGetPhysicalDeviceExternalFenceProperties"+ vkGetPhysicalDeviceExternalFencePropertiesSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ Ptr VkPhysicalDeviceExternalFenceInfo -- ^ pExternalFenceInfo+ ->+ Ptr VkExternalFenceProperties -- ^ pExternalFenceProperties+ -> IO ()++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO =+ VkStructureType 1000112000++pattern VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES =+ VkStructureType 1000112001++pattern VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO =+ VkStructureType 1000113000++pattern VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO =+ VkStructureType 1000077000++-- | > () vkGetPhysicalDeviceExternalSemaphoreProperties+-- > ( VkPhysicalDevice physicalDevice+-- > , const VkPhysicalDeviceExternalSemaphoreInfo* pExternalSemaphoreInfo+-- > , VkExternalSemaphoreProperties* pExternalSemaphoreProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceExternalSemaphoreProperties.html vkGetPhysicalDeviceExternalSemaphoreProperties registry at www.khronos.org>+foreign import ccall unsafe+ "vkGetPhysicalDeviceExternalSemaphoreProperties"+ vkGetPhysicalDeviceExternalSemaphoreProperties ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ Ptr VkPhysicalDeviceExternalSemaphoreInfo -- ^ pExternalSemaphoreInfo+ ->+ Ptr VkExternalSemaphoreProperties -- ^ pExternalSemaphoreProperties+ -> IO ()++-- | > () vkGetPhysicalDeviceExternalSemaphoreProperties+-- > ( VkPhysicalDevice physicalDevice+-- > , const VkPhysicalDeviceExternalSemaphoreInfo* pExternalSemaphoreInfo+-- > , VkExternalSemaphoreProperties* pExternalSemaphoreProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceExternalSemaphoreProperties.html vkGetPhysicalDeviceExternalSemaphoreProperties registry at www.khronos.org>+foreign import ccall safe+ "vkGetPhysicalDeviceExternalSemaphoreProperties"+ vkGetPhysicalDeviceExternalSemaphorePropertiesSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ Ptr VkPhysicalDeviceExternalSemaphoreInfo -- ^ pExternalSemaphoreInfo+ ->+ Ptr VkExternalSemaphoreProperties -- ^ pExternalSemaphoreProperties+ -> IO ()++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO+ :: VkStructureType++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO =+ VkStructureType 1000076000++pattern VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES =+ VkStructureType 1000076001++-- | > () vkGetDescriptorSetLayoutSupport+-- > ( VkDevice device+-- > , const VkDescriptorSetLayoutCreateInfo* pCreateInfo+-- > , VkDescriptorSetLayoutSupport* pSupport+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetDescriptorSetLayoutSupport.html vkGetDescriptorSetLayoutSupport registry at www.khronos.org>+foreign import ccall unsafe "vkGetDescriptorSetLayoutSupport"+ vkGetDescriptorSetLayoutSupport ::+ VkDevice -- ^ device+ ->+ Ptr VkDescriptorSetLayoutCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkDescriptorSetLayoutSupport -- ^ pSupport+ -> IO ()++-- | > () vkGetDescriptorSetLayoutSupport+-- > ( VkDevice device+-- > , const VkDescriptorSetLayoutCreateInfo* pCreateInfo+-- > , VkDescriptorSetLayoutSupport* pSupport+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetDescriptorSetLayoutSupport.html vkGetDescriptorSetLayoutSupport registry at www.khronos.org>+foreign import ccall safe "vkGetDescriptorSetLayoutSupport"+ vkGetDescriptorSetLayoutSupportSafe ::+ VkDevice -- ^ device+ ->+ Ptr VkDescriptorSetLayoutCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkDescriptorSetLayoutSupport -- ^ pSupport+ -> IO ()++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES+ :: VkStructureType++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES+ = VkStructureType 1000168000++pattern VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT =+ VkStructureType 1000168001++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURES+ :: VkStructureType++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURES+ = VkStructureType 1000063000
@@ -47,7 +47,7 @@ , module Graphics.Vulkan.Ext.VK_AMD_texture_gather_bias_lod , module Graphics.Vulkan.Ext.VK_AMD_shader_info , module Graphics.Vulkan.Ext.VK_AMD_shader_image_load_store_lod- , module Graphics.Vulkan.Ext.VK_KHX_multiview+ , module Graphics.Vulkan.Ext.VK_KHR_multiview , module Graphics.Vulkan.Ext.VK_IMG_format_pvrtc , module Graphics.Vulkan.Ext.VK_NV_external_memory_capabilities , module Graphics.Vulkan.Ext.VK_NV_external_memory@@ -60,7 +60,7 @@ #endif , module Graphics.Vulkan.Ext.VK_KHR_get_physical_device_properties2- , module Graphics.Vulkan.Ext.VK_KHX_device_group+ , module Graphics.Vulkan.Ext.VK_KHR_device_group , module Graphics.Vulkan.Ext.VK_EXT_validation_flags #ifdef VK_USE_PLATFORM_VI_NN , module Graphics.Vulkan.Ext.VK_NN_vi_surface@@ -70,7 +70,7 @@ , module Graphics.Vulkan.Ext.VK_EXT_shader_subgroup_ballot , module Graphics.Vulkan.Ext.VK_EXT_shader_subgroup_vote , module Graphics.Vulkan.Ext.VK_KHR_maintenance1- , module Graphics.Vulkan.Ext.VK_KHX_device_group_creation+ , module Graphics.Vulkan.Ext.VK_KHR_device_group_creation , module Graphics.Vulkan.Ext.VK_KHR_external_memory_capabilities , module Graphics.Vulkan.Ext.VK_KHR_external_memory #ifdef VK_USE_PLATFORM_WIN32_KHR@@ -134,6 +134,11 @@ , module Graphics.Vulkan.Ext.VK_EXT_external_memory_dma_buf , module Graphics.Vulkan.Ext.VK_EXT_queue_family_foreign , module Graphics.Vulkan.Ext.VK_KHR_dedicated_allocation+ , module Graphics.Vulkan.Ext.VK_EXT_debug_utils+#ifdef VK_USE_PLATFORM_ANDROID_KHR+ , module Graphics.Vulkan.Ext.VK_ANDROID_external_memory_android_hardware_buffer+#endif+ , module Graphics.Vulkan.Ext.VK_EXT_sampler_filter_minmax , module Graphics.Vulkan.Ext.VK_KHR_storage_buffer_storage_class , module Graphics.Vulkan.Ext.VK_AMD_gpu_shader_int16@@ -153,9 +158,11 @@ , module Graphics.Vulkan.Ext.VK_KHR_bind_memory2 , module Graphics.Vulkan.Ext.VK_EXT_validation_cache , module Graphics.Vulkan.Ext.VK_EXT_shader_viewport_index_layer+ , module Graphics.Vulkan.Ext.VK_KHR_maintenance3 , module Graphics.Vulkan.Ext.VK_EXT_global_priority , module Graphics.Vulkan.Ext.VK_EXT_external_memory_host , module Graphics.Vulkan.Ext.VK_AMD_buffer_marker+ , module Graphics.Vulkan.Ext.VK_EXT_vertex_attribute_divisor ) where import Graphics.Vulkan.Ext.VK_KHR_surface@@ -204,7 +211,7 @@ import Graphics.Vulkan.Ext.VK_AMD_texture_gather_bias_lod import Graphics.Vulkan.Ext.VK_AMD_shader_info import Graphics.Vulkan.Ext.VK_AMD_shader_image_load_store_lod-import Graphics.Vulkan.Ext.VK_KHX_multiview+import Graphics.Vulkan.Ext.VK_KHR_multiview import Graphics.Vulkan.Ext.VK_IMG_format_pvrtc import Graphics.Vulkan.Ext.VK_NV_external_memory_capabilities import Graphics.Vulkan.Ext.VK_NV_external_memory@@ -217,7 +224,7 @@ #endif import Graphics.Vulkan.Ext.VK_KHR_get_physical_device_properties2-import Graphics.Vulkan.Ext.VK_KHX_device_group+import Graphics.Vulkan.Ext.VK_KHR_device_group import Graphics.Vulkan.Ext.VK_EXT_validation_flags #ifdef VK_USE_PLATFORM_VI_NN import Graphics.Vulkan.Ext.VK_NN_vi_surface@@ -227,7 +234,7 @@ import Graphics.Vulkan.Ext.VK_EXT_shader_subgroup_ballot import Graphics.Vulkan.Ext.VK_EXT_shader_subgroup_vote import Graphics.Vulkan.Ext.VK_KHR_maintenance1-import Graphics.Vulkan.Ext.VK_KHX_device_group_creation+import Graphics.Vulkan.Ext.VK_KHR_device_group_creation import Graphics.Vulkan.Ext.VK_KHR_external_memory_capabilities import Graphics.Vulkan.Ext.VK_KHR_external_memory #ifdef VK_USE_PLATFORM_WIN32_KHR@@ -291,6 +298,11 @@ import Graphics.Vulkan.Ext.VK_EXT_external_memory_dma_buf import Graphics.Vulkan.Ext.VK_EXT_queue_family_foreign import Graphics.Vulkan.Ext.VK_KHR_dedicated_allocation+import Graphics.Vulkan.Ext.VK_EXT_debug_utils+#ifdef VK_USE_PLATFORM_ANDROID_KHR+import Graphics.Vulkan.Ext.VK_ANDROID_external_memory_android_hardware_buffer+#endif+ import Graphics.Vulkan.Ext.VK_EXT_sampler_filter_minmax import Graphics.Vulkan.Ext.VK_KHR_storage_buffer_storage_class import Graphics.Vulkan.Ext.VK_AMD_gpu_shader_int16@@ -310,6 +322,8 @@ import Graphics.Vulkan.Ext.VK_KHR_bind_memory2 import Graphics.Vulkan.Ext.VK_EXT_validation_cache import Graphics.Vulkan.Ext.VK_EXT_shader_viewport_index_layer+import Graphics.Vulkan.Ext.VK_KHR_maintenance3 import Graphics.Vulkan.Ext.VK_EXT_global_priority import Graphics.Vulkan.Ext.VK_EXT_external_memory_host import Graphics.Vulkan.Ext.VK_AMD_buffer_marker+import Graphics.Vulkan.Ext.VK_EXT_vertex_attribute_divisor
@@ -19,7 +19,8 @@ -- type: @device@ -- -- Extension number: @180@- vkCmdWriteBufferMarkerAMD, module Graphics.Vulkan.Marshal,+ vkCmdWriteBufferMarkerAMD, vkCmdWriteBufferMarkerAMDSafe,+ module Graphics.Vulkan.Marshal, module Graphics.Vulkan.Types.BaseTypes, module Graphics.Vulkan.Types.Enum.VkPipelineStageFlags, module Graphics.Vulkan.Types.Handles,@@ -48,7 +49,7 @@ -- > , uint32_t marker -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdWriteBufferMarkerAMD.html vkCmdWriteBufferMarkerAMD registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdWriteBufferMarkerAMD.html vkCmdWriteBufferMarkerAMD registry at www.khronos.org> foreign import ccall unsafe "vkCmdWriteBufferMarkerAMD" vkCmdWriteBufferMarkerAMD :: VkCommandBuffer -- ^ commandBuffer@@ -60,6 +61,32 @@ -> Word32 -- ^ marker -> IO () +-- | queues: 'transfer', 'graphics', 'compute'.+--+-- renderpass: @both@+--+-- pipeline: @transfer@+--+-- > () vkCmdWriteBufferMarkerAMD+-- > ( VkCommandBuffer commandBuffer+-- > , VkPipelineStageFlagBits pipelineStage+-- > , VkBuffer dstBuffer+-- > , VkDeviceSize dstOffset+-- > , uint32_t marker+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdWriteBufferMarkerAMD.html vkCmdWriteBufferMarkerAMD registry at www.khronos.org>+foreign import ccall safe "vkCmdWriteBufferMarkerAMD"+ vkCmdWriteBufferMarkerAMDSafe ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkPipelineStageFlagBits -- ^ pipelineStage+ ->+ VkBuffer -- ^ dstBuffer+ -> VkDeviceSize -- ^ dstOffset+ -> Word32 -- ^ marker+ -> IO ()+ pattern VK_AMD_BUFFER_MARKER_SPEC_VERSION :: (Num a, Eq a) => a pattern VK_AMD_BUFFER_MARKER_SPEC_VERSION = 1@@ -83,6 +110,6 @@ is_VK_AMD_BUFFER_MARKER_EXTENSION_NAME :: CString -> Bool is_VK_AMD_BUFFER_MARKER_EXTENSION_NAME- = eqCStrings _VK_AMD_BUFFER_MARKER_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_AMD_BUFFER_MARKER_EXTENSION_NAME type VK_AMD_BUFFER_MARKER_EXTENSION_NAME = "VK_AMD_buffer_marker"
@@ -18,7 +18,9 @@ -- type: @device@ -- -- Extension number: @34@- vkCmdDrawIndirectCountAMD, vkCmdDrawIndexedIndirectCountAMD,+ vkCmdDrawIndirectCountAMD, vkCmdDrawIndirectCountAMDSafe,+ vkCmdDrawIndexedIndirectCountAMD,+ vkCmdDrawIndexedIndirectCountAMDSafe, module Graphics.Vulkan.Marshal, module Graphics.Vulkan.Types.BaseTypes, module Graphics.Vulkan.Types.Handles,@@ -48,7 +50,7 @@ -- > , uint32_t stride -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdDrawIndirectCountAMD.html vkCmdDrawIndirectCountAMD registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdDrawIndirectCountAMD.html vkCmdDrawIndirectCountAMD registry at www.khronos.org> foreign import ccall unsafe "vkCmdDrawIndirectCountAMD" vkCmdDrawIndirectCountAMD :: VkCommandBuffer -- ^ commandBuffer@@ -69,6 +71,37 @@ -- -- pipeline: @graphics@ --+-- > () vkCmdDrawIndirectCountAMD+-- > ( VkCommandBuffer commandBuffer+-- > , VkBuffer buffer+-- > , VkDeviceSize offset+-- > , VkBuffer countBuffer+-- > , VkDeviceSize countBufferOffset+-- > , uint32_t maxDrawCount+-- > , uint32_t stride+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdDrawIndirectCountAMD.html vkCmdDrawIndirectCountAMD registry at www.khronos.org>+foreign import ccall safe "vkCmdDrawIndirectCountAMD"+ vkCmdDrawIndirectCountAMDSafe ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkBuffer -- ^ buffer+ ->+ VkDeviceSize -- ^ offset+ ->+ VkBuffer -- ^ countBuffer+ -> VkDeviceSize -- ^ countBufferOffset+ -> Word32 -- ^ maxDrawCount+ -> Word32 -- ^ stride+ -> IO ()++-- | queues: 'graphics'.+--+-- renderpass: @inside@+--+-- pipeline: @graphics@+-- -- > () vkCmdDrawIndexedIndirectCountAMD -- > ( VkCommandBuffer commandBuffer -- > , VkBuffer buffer@@ -79,7 +112,7 @@ -- > , uint32_t stride -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdDrawIndexedIndirectCountAMD.html vkCmdDrawIndexedIndirectCountAMD registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdDrawIndexedIndirectCountAMD.html vkCmdDrawIndexedIndirectCountAMD registry at www.khronos.org> foreign import ccall unsafe "vkCmdDrawIndexedIndirectCountAMD" vkCmdDrawIndexedIndirectCountAMD :: VkCommandBuffer -- ^ commandBuffer@@ -94,6 +127,37 @@ -> Word32 -- ^ stride -> IO () +-- | queues: 'graphics'.+--+-- renderpass: @inside@+--+-- pipeline: @graphics@+--+-- > () vkCmdDrawIndexedIndirectCountAMD+-- > ( VkCommandBuffer commandBuffer+-- > , VkBuffer buffer+-- > , VkDeviceSize offset+-- > , VkBuffer countBuffer+-- > , VkDeviceSize countBufferOffset+-- > , uint32_t maxDrawCount+-- > , uint32_t stride+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdDrawIndexedIndirectCountAMD.html vkCmdDrawIndexedIndirectCountAMD registry at www.khronos.org>+foreign import ccall safe "vkCmdDrawIndexedIndirectCountAMD"+ vkCmdDrawIndexedIndirectCountAMDSafe ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkBuffer -- ^ buffer+ ->+ VkDeviceSize -- ^ offset+ ->+ VkBuffer -- ^ countBuffer+ -> VkDeviceSize -- ^ countBufferOffset+ -> Word32 -- ^ maxDrawCount+ -> Word32 -- ^ stride+ -> IO ()+ pattern VK_AMD_DRAW_INDIRECT_COUNT_SPEC_VERSION :: (Num a, Eq a) => a @@ -118,7 +182,7 @@ is_VK_AMD_DRAW_INDIRECT_COUNT_EXTENSION_NAME :: CString -> Bool is_VK_AMD_DRAW_INDIRECT_COUNT_EXTENSION_NAME- = eqCStrings _VK_AMD_DRAW_INDIRECT_COUNT_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_AMD_DRAW_INDIRECT_COUNT_EXTENSION_NAME type VK_AMD_DRAW_INDIRECT_COUNT_EXTENSION_NAME = "VK_AMD_draw_indirect_count"
@@ -47,6 +47,6 @@ is_VK_AMD_GCN_SHADER_EXTENSION_NAME :: CString -> Bool is_VK_AMD_GCN_SHADER_EXTENSION_NAME- = eqCStrings _VK_AMD_GCN_SHADER_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_AMD_GCN_SHADER_EXTENSION_NAME type VK_AMD_GCN_SHADER_EXTENSION_NAME = "VK_AMD_gcn_shader"
@@ -49,7 +49,8 @@ is_VK_AMD_GPU_SHADER_HALF_FLOAT_EXTENSION_NAME :: CString -> Bool is_VK_AMD_GPU_SHADER_HALF_FLOAT_EXTENSION_NAME- = eqCStrings _VK_AMD_GPU_SHADER_HALF_FLOAT_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_AMD_GPU_SHADER_HALF_FLOAT_EXTENSION_NAME type VK_AMD_GPU_SHADER_HALF_FLOAT_EXTENSION_NAME = "VK_AMD_gpu_shader_half_float"
@@ -48,7 +48,7 @@ is_VK_AMD_GPU_SHADER_INT16_EXTENSION_NAME :: CString -> Bool is_VK_AMD_GPU_SHADER_INT16_EXTENSION_NAME- = eqCStrings _VK_AMD_GPU_SHADER_INT16_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_AMD_GPU_SHADER_INT16_EXTENSION_NAME type VK_AMD_GPU_SHADER_INT16_EXTENSION_NAME = "VK_AMD_gpu_shader_int16"
@@ -50,7 +50,8 @@ is_VK_AMD_MIXED_ATTACHMENT_SAMPLES_EXTENSION_NAME :: CString -> Bool is_VK_AMD_MIXED_ATTACHMENT_SAMPLES_EXTENSION_NAME- = eqCStrings _VK_AMD_MIXED_ATTACHMENT_SAMPLES_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_AMD_MIXED_ATTACHMENT_SAMPLES_EXTENSION_NAME type VK_AMD_MIXED_ATTACHMENT_SAMPLES_EXTENSION_NAME = "VK_AMD_mixed_attachment_samples"
@@ -50,7 +50,8 @@ is_VK_AMD_NEGATIVE_VIEWPORT_HEIGHT_EXTENSION_NAME :: CString -> Bool is_VK_AMD_NEGATIVE_VIEWPORT_HEIGHT_EXTENSION_NAME- = eqCStrings _VK_AMD_NEGATIVE_VIEWPORT_HEIGHT_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_AMD_NEGATIVE_VIEWPORT_HEIGHT_EXTENSION_NAME type VK_AMD_NEGATIVE_VIEWPORT_HEIGHT_EXTENSION_NAME = "VK_AMD_negative_viewport_height"
@@ -70,7 +70,7 @@ is_VK_AMD_RASTERIZATION_ORDER_EXTENSION_NAME :: CString -> Bool is_VK_AMD_RASTERIZATION_ORDER_EXTENSION_NAME- = eqCStrings _VK_AMD_RASTERIZATION_ORDER_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_AMD_RASTERIZATION_ORDER_EXTENSION_NAME type VK_AMD_RASTERIZATION_ORDER_EXTENSION_NAME = "VK_AMD_rasterization_order"
@@ -48,6 +48,6 @@ is_VK_AMD_SHADER_BALLOT_EXTENSION_NAME :: CString -> Bool is_VK_AMD_SHADER_BALLOT_EXTENSION_NAME- = eqCStrings _VK_AMD_SHADER_BALLOT_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_AMD_SHADER_BALLOT_EXTENSION_NAME type VK_AMD_SHADER_BALLOT_EXTENSION_NAME = "VK_AMD_shader_ballot"
@@ -53,8 +53,8 @@ is_VK_AMD_SHADER_EXPLICIT_VERTEX_PARAMETER_EXTENSION_NAME :: CString -> Bool is_VK_AMD_SHADER_EXPLICIT_VERTEX_PARAMETER_EXTENSION_NAME- = eqCStrings- _VK_AMD_SHADER_EXPLICIT_VERTEX_PARAMETER_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_AMD_SHADER_EXPLICIT_VERTEX_PARAMETER_EXTENSION_NAME type VK_AMD_SHADER_EXPLICIT_VERTEX_PARAMETER_EXTENSION_NAME = "VK_AMD_shader_explicit_vertex_parameter"
@@ -49,7 +49,7 @@ is_VK_AMD_SHADER_FRAGMENT_MASK_EXTENSION_NAME :: CString -> Bool is_VK_AMD_SHADER_FRAGMENT_MASK_EXTENSION_NAME- = eqCStrings _VK_AMD_SHADER_FRAGMENT_MASK_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_AMD_SHADER_FRAGMENT_MASK_EXTENSION_NAME type VK_AMD_SHADER_FRAGMENT_MASK_EXTENSION_NAME = "VK_AMD_shader_fragment_mask"
@@ -51,7 +51,8 @@ is_VK_AMD_SHADER_IMAGE_LOAD_STORE_LOD_EXTENSION_NAME :: CString -> Bool is_VK_AMD_SHADER_IMAGE_LOAD_STORE_LOD_EXTENSION_NAME- = eqCStrings _VK_AMD_SHADER_IMAGE_LOAD_STORE_LOD_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_AMD_SHADER_IMAGE_LOAD_STORE_LOD_EXTENSION_NAME type VK_AMD_SHADER_IMAGE_LOAD_STORE_LOD_EXTENSION_NAME = "VK_AMD_shader_image_load_store_lod"
@@ -26,7 +26,8 @@ module Graphics.Vulkan.Types.Enum.VkShaderStageFlags, module Graphics.Vulkan.Types.Struct.VkShaderStatisticsInfoAMD, -- > #include "vk_platform.h"- vkGetShaderInfoAMD, module Graphics.Vulkan.Types.Enum.VkResult,+ vkGetShaderInfoAMD, vkGetShaderInfoAMDSafe,+ module Graphics.Vulkan.Types.Enum.VkResult, module Graphics.Vulkan.Types.Handles, VK_AMD_SHADER_INFO_SPEC_VERSION, pattern VK_AMD_SHADER_INFO_SPEC_VERSION,@@ -56,7 +57,7 @@ -- > , void* pInfo -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetShaderInfoAMD.html vkGetShaderInfoAMD registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetShaderInfoAMD.html vkGetShaderInfoAMD registry at www.khronos.org> foreign import ccall unsafe "vkGetShaderInfoAMD" vkGetShaderInfoAMD :: VkDevice -- ^ device@@ -70,6 +71,33 @@ -> Ptr Void -- ^ pInfo -> IO VkResult +-- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'.+--+-- Error codes: 'VK_ERROR_FEATURE_NOT_PRESENT', 'VK_ERROR_OUT_OF_HOST_MEMORY'.+--+-- > VkResult vkGetShaderInfoAMD+-- > ( VkDevice device+-- > , VkPipeline pipeline+-- > , VkShaderStageFlagBits shaderStage+-- > , VkShaderInfoTypeAMD infoType+-- > , size_t* pInfoSize+-- > , void* pInfo+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetShaderInfoAMD.html vkGetShaderInfoAMD registry at www.khronos.org>+foreign import ccall safe "vkGetShaderInfoAMD"+ vkGetShaderInfoAMDSafe ::+ VkDevice -- ^ device+ ->+ VkPipeline -- ^ pipeline+ ->+ VkShaderStageFlagBits -- ^ shaderStage+ ->+ VkShaderInfoTypeAMD -- ^ infoType+ -> Ptr CSize -- ^ pInfoSize+ -> Ptr Void -- ^ pInfo+ -> IO VkResult+ pattern VK_AMD_SHADER_INFO_SPEC_VERSION :: (Num a, Eq a) => a pattern VK_AMD_SHADER_INFO_SPEC_VERSION = 1@@ -92,6 +120,6 @@ is_VK_AMD_SHADER_INFO_EXTENSION_NAME :: CString -> Bool is_VK_AMD_SHADER_INFO_EXTENSION_NAME- = eqCStrings _VK_AMD_SHADER_INFO_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_AMD_SHADER_INFO_EXTENSION_NAME type VK_AMD_SHADER_INFO_EXTENSION_NAME = "VK_AMD_shader_info"
@@ -49,7 +49,8 @@ is_VK_AMD_SHADER_TRINARY_MINMAX_EXTENSION_NAME :: CString -> Bool is_VK_AMD_SHADER_TRINARY_MINMAX_EXTENSION_NAME- = eqCStrings _VK_AMD_SHADER_TRINARY_MINMAX_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_AMD_SHADER_TRINARY_MINMAX_EXTENSION_NAME type VK_AMD_SHADER_TRINARY_MINMAX_EXTENSION_NAME = "VK_AMD_shader_trinary_minmax"
@@ -25,7 +25,7 @@ module Graphics.Vulkan.Types.BaseTypes, module Graphics.Vulkan.Types.Struct.VkExtent3D, module Graphics.Vulkan.Types.Struct.VkImageFormatProperties,- module Graphics.Vulkan.Types.Struct.VkImageFormatProperties2KHR,+ module Graphics.Vulkan.Types.Struct.VkImageFormatProperties2, module Graphics.Vulkan.Types.Enum.VkSampleCountFlags, module Graphics.Vulkan.Types.Enum.VkStructureType, module Graphics.Vulkan.Types.Struct.VkTextureLODGatherFormatPropertiesAMD,@@ -44,7 +44,7 @@ import Graphics.Vulkan.Types.Enum.VkStructureType import Graphics.Vulkan.Types.Struct.VkExtent3D import Graphics.Vulkan.Types.Struct.VkImageFormatProperties-import Graphics.Vulkan.Types.Struct.VkImageFormatProperties2KHR+import Graphics.Vulkan.Types.Struct.VkImageFormatProperties2 import Graphics.Vulkan.Types.Struct.VkTextureLODGatherFormatPropertiesAMD pattern VK_AMD_TEXTURE_GATHER_BIAS_LOD_SPEC_VERSION ::@@ -71,7 +71,8 @@ is_VK_AMD_TEXTURE_GATHER_BIAS_LOD_EXTENSION_NAME :: CString -> Bool is_VK_AMD_TEXTURE_GATHER_BIAS_LOD_EXTENSION_NAME- = eqCStrings _VK_AMD_TEXTURE_GATHER_BIAS_LOD_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_AMD_TEXTURE_GATHER_BIAS_LOD_EXTENSION_NAME type VK_AMD_TEXTURE_GATHER_BIAS_LOD_EXTENSION_NAME = "VK_AMD_texture_gather_bias_lod"
@@ -0,0 +1,281 @@+{-# OPTIONS_HADDOCK not-home#-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE ForeignFunctionInterface #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE ViewPatterns #-}+module Graphics.Vulkan.Ext.VK_ANDROID_external_memory_android_hardware_buffer+ (-- * Vulkan extension: @VK_ANDROID_external_memory_android_hardware_buffer@+ -- |+ --+ -- supported: @vulkan@+ --+ -- contact: @Jesse Hall @jessehall@+ --+ -- author: @ANDROID@+ --+ -- type: @device@+ --+ -- platform: @android@+ --+ -- Extension number: @130@+ --+ -- Required extensions: 'VK_KHR_sampler_ycbcr_conversion', 'VK_KHR_external_memory'.+ --++ -- ** Required extensions: 'VK_KHR_sampler_ycbcr_conversion', 'VK_KHR_external_memory'.+ module Graphics.Vulkan.Types.Struct.VkAndroidHardwareBufferFormatPropertiesANDROID,+ module Graphics.Vulkan.Types.Struct.VkAndroidHardwareBufferPropertiesANDROID,+ module Graphics.Vulkan.Types.Struct.VkAndroidHardwareBufferUsageANDROID,+ module Graphics.Vulkan.Types.BaseTypes,+ module Graphics.Vulkan.Types.Enum.VkChromaLocation,+ module Graphics.Vulkan.Types.Struct.VkComponentMapping,+ module Graphics.Vulkan.Types.Enum.VkComponentSwizzle,+ module Graphics.Vulkan.Types.Struct.VkExtent3D,+ module Graphics.Vulkan.Types.Struct.VkExternalFormatANDROID,+ module Graphics.Vulkan.Types.Enum.VkFilter,+ module Graphics.Vulkan.Types.Enum.VkFormat,+ module Graphics.Vulkan.Types.Enum.VkFormatFeatureFlags,+ module Graphics.Vulkan.Types.Enum.VkImageCreateFlags,+ module Graphics.Vulkan.Types.Struct.VkImageCreateInfo,+ module Graphics.Vulkan.Types.Struct.VkImageFormatProperties,+ module Graphics.Vulkan.Types.Struct.VkImageFormatProperties2,+ module Graphics.Vulkan.Types.Enum.VkImageLayout,+ module Graphics.Vulkan.Types.Enum.VkImageTiling,+ module Graphics.Vulkan.Types.Enum.VkImageType,+ module Graphics.Vulkan.Types.Enum.VkImageUsageFlags,+ module Graphics.Vulkan.Types.Struct.VkImportAndroidHardwareBufferInfoANDROID,+ module Graphics.Vulkan.Types.Struct.VkMemoryAllocateInfo,+ module Graphics.Vulkan.Types.Struct.VkMemoryGetAndroidHardwareBufferInfoANDROID,+ module Graphics.Vulkan.Types.Enum.VkSampleCountFlags,+ module Graphics.Vulkan.Types.Struct.VkSamplerYcbcrConversionCreateInfo,+ module Graphics.Vulkan.Types.Enum.VkSamplerYcbcrModelConversion,+ module Graphics.Vulkan.Types.Enum.VkSamplerYcbcrRange,+ module Graphics.Vulkan.Types.Enum.VkSharingMode,+ module Graphics.Vulkan.Types.Enum.VkStructureType,+ -- > #include "vk_platform.h"+ vkGetAndroidHardwareBufferPropertiesANDROID,+ vkGetAndroidHardwareBufferPropertiesANDROIDSafe,+ vkGetMemoryAndroidHardwareBufferANDROID,+ vkGetMemoryAndroidHardwareBufferANDROIDSafe,+ module Graphics.Vulkan.Marshal,+ module Graphics.Vulkan.Types.Enum.VkResult,+ module Graphics.Vulkan.Types.Handles,+ VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_SPEC_VERSION,+ pattern VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_SPEC_VERSION,+ VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_EXTENSION_NAME,+ pattern VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_EXTENSION_NAME,+ pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID,+ pattern VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID,+ pattern VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID,+ pattern VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID,+ pattern VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID,+ pattern VK_STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID,+ pattern VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID)+ where+import GHC.Ptr+ (Ptr (..))+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Types.BaseTypes+import Graphics.Vulkan.Types.Defines+ (AHardwareBuffer)+import Graphics.Vulkan.Types.Enum.VkChromaLocation+import Graphics.Vulkan.Types.Enum.VkComponentSwizzle+import Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlags+ (VkExternalMemoryHandleTypeBitmask (..),+ VkExternalMemoryHandleTypeFlagBits)+import Graphics.Vulkan.Types.Enum.VkFilter+import Graphics.Vulkan.Types.Enum.VkFormat+import Graphics.Vulkan.Types.Enum.VkFormatFeatureFlags+import Graphics.Vulkan.Types.Enum.VkImageCreateFlags+import Graphics.Vulkan.Types.Enum.VkImageLayout+import Graphics.Vulkan.Types.Enum.VkImageTiling+import Graphics.Vulkan.Types.Enum.VkImageType+import Graphics.Vulkan.Types.Enum.VkImageUsageFlags+import Graphics.Vulkan.Types.Enum.VkResult+import Graphics.Vulkan.Types.Enum.VkSampleCountFlags+import Graphics.Vulkan.Types.Enum.VkSamplerYcbcrModelConversion+import Graphics.Vulkan.Types.Enum.VkSamplerYcbcrRange+import Graphics.Vulkan.Types.Enum.VkSharingMode+import Graphics.Vulkan.Types.Enum.VkStructureType+import Graphics.Vulkan.Types.Handles+import Graphics.Vulkan.Types.Struct.VkAndroidHardwareBufferFormatPropertiesANDROID+import Graphics.Vulkan.Types.Struct.VkAndroidHardwareBufferPropertiesANDROID+import Graphics.Vulkan.Types.Struct.VkAndroidHardwareBufferUsageANDROID+import Graphics.Vulkan.Types.Struct.VkComponentMapping+import Graphics.Vulkan.Types.Struct.VkExtent3D+import Graphics.Vulkan.Types.Struct.VkExternalFormatANDROID+import Graphics.Vulkan.Types.Struct.VkImageCreateInfo+import Graphics.Vulkan.Types.Struct.VkImageFormatProperties+import Graphics.Vulkan.Types.Struct.VkImageFormatProperties2+import Graphics.Vulkan.Types.Struct.VkImportAndroidHardwareBufferInfoANDROID+import Graphics.Vulkan.Types.Struct.VkMemoryAllocateInfo+import Graphics.Vulkan.Types.Struct.VkMemoryGetAndroidHardwareBufferInfoANDROID+import Graphics.Vulkan.Types.Struct.VkSamplerYcbcrConversionCreateInfo++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR'.+--+-- > VkResult vkGetAndroidHardwareBufferPropertiesANDROID+-- > ( VkDevice device+-- > , const struct AHardwareBuffer* buffer+-- > , VkAndroidHardwareBufferPropertiesANDROID* pProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetAndroidHardwareBufferPropertiesANDROID.html vkGetAndroidHardwareBufferPropertiesANDROID registry at www.khronos.org>+foreign import ccall unsafe+ "vkGetAndroidHardwareBufferPropertiesANDROID"+ vkGetAndroidHardwareBufferPropertiesANDROID ::+ VkDevice -- ^ device+ ->+ Ptr AHardwareBuffer -- ^ buffer+ ->+ Ptr VkAndroidHardwareBufferPropertiesANDROID -- ^ pProperties+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR'.+--+-- > VkResult vkGetAndroidHardwareBufferPropertiesANDROID+-- > ( VkDevice device+-- > , const struct AHardwareBuffer* buffer+-- > , VkAndroidHardwareBufferPropertiesANDROID* pProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetAndroidHardwareBufferPropertiesANDROID.html vkGetAndroidHardwareBufferPropertiesANDROID registry at www.khronos.org>+foreign import ccall safe+ "vkGetAndroidHardwareBufferPropertiesANDROID"+ vkGetAndroidHardwareBufferPropertiesANDROIDSafe ::+ VkDevice -- ^ device+ ->+ Ptr AHardwareBuffer -- ^ buffer+ ->+ Ptr VkAndroidHardwareBufferPropertiesANDROID -- ^ pProperties+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_TOO_MANY_OBJECTS', 'VK_ERROR_OUT_OF_HOST_MEMORY'.+--+-- > VkResult vkGetMemoryAndroidHardwareBufferANDROID+-- > ( VkDevice device+-- > , const VkMemoryGetAndroidHardwareBufferInfoANDROID* pInfo+-- > , struct AHardwareBuffer** pBuffer+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetMemoryAndroidHardwareBufferANDROID.html vkGetMemoryAndroidHardwareBufferANDROID registry at www.khronos.org>+foreign import ccall unsafe+ "vkGetMemoryAndroidHardwareBufferANDROID"+ vkGetMemoryAndroidHardwareBufferANDROID ::+ VkDevice -- ^ device+ ->+ Ptr VkMemoryGetAndroidHardwareBufferInfoANDROID -- ^ pInfo+ ->+ Ptr (Ptr AHardwareBuffer) -- ^ pBuffer+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_TOO_MANY_OBJECTS', 'VK_ERROR_OUT_OF_HOST_MEMORY'.+--+-- > VkResult vkGetMemoryAndroidHardwareBufferANDROID+-- > ( VkDevice device+-- > , const VkMemoryGetAndroidHardwareBufferInfoANDROID* pInfo+-- > , struct AHardwareBuffer** pBuffer+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetMemoryAndroidHardwareBufferANDROID.html vkGetMemoryAndroidHardwareBufferANDROID registry at www.khronos.org>+foreign import ccall safe "vkGetMemoryAndroidHardwareBufferANDROID"+ vkGetMemoryAndroidHardwareBufferANDROIDSafe ::+ VkDevice -- ^ device+ ->+ Ptr VkMemoryGetAndroidHardwareBufferInfoANDROID -- ^ pInfo+ ->+ Ptr (Ptr AHardwareBuffer) -- ^ pBuffer+ -> IO VkResult++pattern VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_SPEC_VERSION+ :: (Num a, Eq a) => a++pattern VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_SPEC_VERSION+ = 3++type VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_SPEC_VERSION+ = 3++pattern VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_EXTENSION_NAME+ :: CString++pattern VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_EXTENSION_NAME+ <-+ (is_VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_EXTENSION_NAME+ -> True)+ where VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_EXTENSION_NAME+ = _VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_EXTENSION_NAME++{-# INLINE _VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_EXTENSION_NAME+ #-}++_VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_EXTENSION_NAME ::+ CString+_VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_EXTENSION_NAME+ = Ptr "VK_ANDROID_external_memory_android_hardware_buffer\NUL"#++{-# INLINE is_VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_EXTENSION_NAME+ #-}++is_VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_EXTENSION_NAME ::+ CString -> Bool+is_VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings+ _VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_EXTENSION_NAME++type VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_EXTENSION_NAME+ = "VK_ANDROID_external_memory_android_hardware_buffer"++-- | bitpos = @10@+pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID+ :: VkExternalMemoryHandleTypeFlagBits++pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID+ = VkExternalMemoryHandleTypeFlagBits 1024++pattern VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID =+ VkStructureType 1000129000++pattern VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID+ :: VkStructureType++pattern VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID+ = VkStructureType 1000129001++pattern VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID+ :: VkStructureType++pattern VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID+ = VkStructureType 1000129002++pattern VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID+ :: VkStructureType++pattern VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID+ = VkStructureType 1000129003++pattern VK_STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID+ :: VkStructureType++pattern VK_STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID+ = VkStructureType 1000129004++pattern VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID =+ VkStructureType 1000129005
@@ -17,15 +17,16 @@ -- -- type: @instance@ --+ -- platform: @xlib_xrandr@+ -- -- Extension number: @90@ -- -- Required extensions: 'VK_EXT_direct_mode_display'. --- -- Protected by CPP ifdef: @VK_USE_PLATFORM_XLIB_XRANDR_EXT@- -- -- ** Required extensions: 'VK_EXT_direct_mode_display'.- vkAcquireXlibDisplayEXT, vkGetRandROutputDisplayEXT,+ vkAcquireXlibDisplayEXT, vkAcquireXlibDisplayEXTSafe,+ vkGetRandROutputDisplayEXT, vkGetRandROutputDisplayEXTSafe, module Graphics.Vulkan.Types.Enum.VkResult, module Graphics.Vulkan.Types.Handles, VK_EXT_ACQUIRE_XLIB_DISPLAY_SPEC_VERSION,@@ -49,7 +50,7 @@ -- > , VkDisplayKHR display -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkAcquireXlibDisplayEXT.html vkAcquireXlibDisplayEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkAcquireXlibDisplayEXT.html vkAcquireXlibDisplayEXT registry at www.khronos.org> foreign import ccall unsafe "vkAcquireXlibDisplayEXT" vkAcquireXlibDisplayEXT :: VkPhysicalDevice -- ^ physicalDevice@@ -59,6 +60,24 @@ -- | Success codes: 'VK_SUCCESS'. --+-- Error codes: 'VK_ERROR_INITIALIZATION_FAILED'.+--+-- > VkResult vkAcquireXlibDisplayEXT+-- > ( VkPhysicalDevice physicalDevice+-- > , Display* dpy+-- > , VkDisplayKHR display+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkAcquireXlibDisplayEXT.html vkAcquireXlibDisplayEXT registry at www.khronos.org>+foreign import ccall safe "vkAcquireXlibDisplayEXT"+ vkAcquireXlibDisplayEXTSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ -> Ptr Display -- ^ dpy+ -> VkDisplayKHR -- ^ display+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+-- -- > VkResult vkGetRandROutputDisplayEXT -- > ( VkPhysicalDevice physicalDevice -- > , Display* dpy@@ -66,7 +85,7 @@ -- > , VkDisplayKHR* pDisplay -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetRandROutputDisplayEXT.html vkGetRandROutputDisplayEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetRandROutputDisplayEXT.html vkGetRandROutputDisplayEXT registry at www.khronos.org> foreign import ccall unsafe "vkGetRandROutputDisplayEXT" vkGetRandROutputDisplayEXT :: VkPhysicalDevice -- ^ physicalDevice@@ -76,6 +95,25 @@ -> Ptr VkDisplayKHR -- ^ pDisplay -> IO VkResult +-- | Success codes: 'VK_SUCCESS'.+--+-- > VkResult vkGetRandROutputDisplayEXT+-- > ( VkPhysicalDevice physicalDevice+-- > , Display* dpy+-- > , RROutput rrOutput+-- > , VkDisplayKHR* pDisplay+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetRandROutputDisplayEXT.html vkGetRandROutputDisplayEXT registry at www.khronos.org>+foreign import ccall safe "vkGetRandROutputDisplayEXT"+ vkGetRandROutputDisplayEXTSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ Ptr Display -- ^ dpy+ -> RROutput -- ^ rrOutput+ -> Ptr VkDisplayKHR -- ^ pDisplay+ -> IO VkResult+ pattern VK_EXT_ACQUIRE_XLIB_DISPLAY_SPEC_VERSION :: (Num a, Eq a) => a @@ -100,7 +138,7 @@ is_VK_EXT_ACQUIRE_XLIB_DISPLAY_EXTENSION_NAME :: CString -> Bool is_VK_EXT_ACQUIRE_XLIB_DISPLAY_EXTENSION_NAME- = eqCStrings _VK_EXT_ACQUIRE_XLIB_DISPLAY_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_EXT_ACQUIRE_XLIB_DISPLAY_EXTENSION_NAME type VK_EXT_ACQUIRE_XLIB_DISPLAY_EXTENSION_NAME = "VK_EXT_acquire_xlib_display"
@@ -25,15 +25,16 @@ module Graphics.Vulkan.Types.Enum.VkColorComponentFlags, module Graphics.Vulkan.Types.Bitmasks, module Graphics.Vulkan.Types.Struct.VkDeviceCreateInfo,+ module Graphics.Vulkan.Types.Enum.VkDeviceQueueCreateFlags, module Graphics.Vulkan.Types.Struct.VkDeviceQueueCreateInfo, module Graphics.Vulkan.Types.Enum.VkLogicOp, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceFeatures,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceFeatures2KHR,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceFeatures2, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceLimits, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2KHR,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseProperties, module Graphics.Vulkan.Types.Enum.VkPhysicalDeviceType, module Graphics.Vulkan.Types.Struct.VkPipelineColorBlendAdvancedStateCreateInfoEXT,@@ -95,6 +96,7 @@ import Graphics.Vulkan.Types.Enum.VkBlendOp import Graphics.Vulkan.Types.Enum.VkBlendOverlapEXT import Graphics.Vulkan.Types.Enum.VkColorComponentFlags+import Graphics.Vulkan.Types.Enum.VkDeviceQueueCreateFlags import Graphics.Vulkan.Types.Enum.VkLogicOp import Graphics.Vulkan.Types.Enum.VkPhysicalDeviceType import Graphics.Vulkan.Types.Enum.VkSampleCountFlags@@ -104,10 +106,10 @@ import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceFeatures-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceFeatures2KHR+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceFeatures2 import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceLimits import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2KHR+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2 import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseProperties import Graphics.Vulkan.Types.Struct.VkPipelineColorBlendAdvancedStateCreateInfoEXT import Graphics.Vulkan.Types.Struct.VkPipelineColorBlendAttachmentState@@ -138,7 +140,8 @@ is_VK_EXT_BLEND_OPERATION_ADVANCED_EXTENSION_NAME :: CString -> Bool is_VK_EXT_BLEND_OPERATION_ADVANCED_EXTENSION_NAME- = eqCStrings _VK_EXT_BLEND_OPERATION_ADVANCED_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_EXT_BLEND_OPERATION_ADVANCED_EXTENSION_NAME type VK_EXT_BLEND_OPERATION_ADVANCED_EXTENSION_NAME = "VK_EXT_blend_operation_advanced"
@@ -30,7 +30,7 @@ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceConservativeRasterizationPropertiesEXT, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceLimits, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2KHR,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseProperties, module Graphics.Vulkan.Types.Enum.VkPhysicalDeviceType, module Graphics.Vulkan.Types.Bitmasks,@@ -62,7 +62,7 @@ import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceConservativeRasterizationPropertiesEXT import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceLimits import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2KHR+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2 import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseProperties import Graphics.Vulkan.Types.Struct.VkPipelineRasterizationConservativeStateCreateInfoEXT import Graphics.Vulkan.Types.Struct.VkPipelineRasterizationStateCreateInfo@@ -92,7 +92,8 @@ is_VK_EXT_CONSERVATIVE_RASTERIZATION_EXTENSION_NAME :: CString -> Bool is_VK_EXT_CONSERVATIVE_RASTERIZATION_EXTENSION_NAME- = eqCStrings _VK_EXT_CONSERVATIVE_RASTERIZATION_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_EXT_CONSERVATIVE_RASTERIZATION_EXTENSION_NAME type VK_EXT_CONSERVATIVE_RASTERIZATION_EXTENSION_NAME = "VK_EXT_conservative_rasterization"
@@ -30,9 +30,11 @@ module Graphics.Vulkan.Types.Enum.VkDebugReportObjectTypeEXT, module Graphics.Vulkan.Types.Enum.VkStructureType, -- > #include "vk_platform.h"- vkDebugMarkerSetObjectTagEXT, vkDebugMarkerSetObjectNameEXT,- vkCmdDebugMarkerBeginEXT, vkCmdDebugMarkerEndEXT,- vkCmdDebugMarkerInsertEXT,+ vkDebugMarkerSetObjectTagEXT, vkDebugMarkerSetObjectTagEXTSafe,+ vkDebugMarkerSetObjectNameEXT, vkDebugMarkerSetObjectNameEXTSafe,+ vkCmdDebugMarkerBeginEXT, vkCmdDebugMarkerBeginEXTSafe,+ vkCmdDebugMarkerEndEXT, vkCmdDebugMarkerEndEXTSafe,+ vkCmdDebugMarkerInsertEXT, vkCmdDebugMarkerInsertEXTSafe, module Graphics.Vulkan.Types.Enum.VkResult, module Graphics.Vulkan.Types.Handles, VK_EXT_DEBUG_MARKER_SPEC_VERSION,@@ -62,7 +64,7 @@ -- > , const VkDebugMarkerObjectTagInfoEXT* pTagInfo -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkDebugMarkerSetObjectTagEXT.html vkDebugMarkerSetObjectTagEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDebugMarkerSetObjectTagEXT.html vkDebugMarkerSetObjectTagEXT registry at www.khronos.org> foreign import ccall unsafe "vkDebugMarkerSetObjectTagEXT" vkDebugMarkerSetObjectTagEXT :: VkDevice -- ^ device@@ -73,18 +75,50 @@ -- -- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'. --+-- > VkResult vkDebugMarkerSetObjectTagEXT+-- > ( VkDevice device+-- > , const VkDebugMarkerObjectTagInfoEXT* pTagInfo+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDebugMarkerSetObjectTagEXT.html vkDebugMarkerSetObjectTagEXT registry at www.khronos.org>+foreign import ccall safe "vkDebugMarkerSetObjectTagEXT"+ vkDebugMarkerSetObjectTagEXTSafe ::+ VkDevice -- ^ device+ -> Ptr VkDebugMarkerObjectTagInfoEXT -- ^ pTagInfo+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+-- -- > VkResult vkDebugMarkerSetObjectNameEXT -- > ( VkDevice device -- > , const VkDebugMarkerObjectNameInfoEXT* pNameInfo -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkDebugMarkerSetObjectNameEXT.html vkDebugMarkerSetObjectNameEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDebugMarkerSetObjectNameEXT.html vkDebugMarkerSetObjectNameEXT registry at www.khronos.org> foreign import ccall unsafe "vkDebugMarkerSetObjectNameEXT" vkDebugMarkerSetObjectNameEXT :: VkDevice -- ^ device -> Ptr VkDebugMarkerObjectNameInfoEXT -- ^ pNameInfo -> IO VkResult +-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkDebugMarkerSetObjectNameEXT+-- > ( VkDevice device+-- > , const VkDebugMarkerObjectNameInfoEXT* pNameInfo+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDebugMarkerSetObjectNameEXT.html vkDebugMarkerSetObjectNameEXT registry at www.khronos.org>+foreign import ccall safe "vkDebugMarkerSetObjectNameEXT"+ vkDebugMarkerSetObjectNameEXTSafe ::+ VkDevice -- ^ device+ -> Ptr VkDebugMarkerObjectNameInfoEXT -- ^ pNameInfo+ -> IO VkResult+ -- | queues: 'graphics', 'compute'. -- -- renderpass: @both@@@ -94,7 +128,7 @@ -- > , const VkDebugMarkerMarkerInfoEXT* pMarkerInfo -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdDebugMarkerBeginEXT.html vkCmdDebugMarkerBeginEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdDebugMarkerBeginEXT.html vkCmdDebugMarkerBeginEXT registry at www.khronos.org> foreign import ccall unsafe "vkCmdDebugMarkerBeginEXT" vkCmdDebugMarkerBeginEXT :: VkCommandBuffer -- ^ commandBuffer@@ -105,11 +139,27 @@ -- -- renderpass: @both@ --+-- > () vkCmdDebugMarkerBeginEXT+-- > ( VkCommandBuffer commandBuffer+-- > , const VkDebugMarkerMarkerInfoEXT* pMarkerInfo+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdDebugMarkerBeginEXT.html vkCmdDebugMarkerBeginEXT registry at www.khronos.org>+foreign import ccall safe "vkCmdDebugMarkerBeginEXT"+ vkCmdDebugMarkerBeginEXTSafe ::+ VkCommandBuffer -- ^ commandBuffer+ -> Ptr VkDebugMarkerMarkerInfoEXT -- ^ pMarkerInfo+ -> IO ()++-- | queues: 'graphics', 'compute'.+--+-- renderpass: @both@+-- -- > () vkCmdDebugMarkerEndEXT -- > ( VkCommandBuffer commandBuffer -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdDebugMarkerEndEXT.html vkCmdDebugMarkerEndEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdDebugMarkerEndEXT.html vkCmdDebugMarkerEndEXT registry at www.khronos.org> foreign import ccall unsafe "vkCmdDebugMarkerEndEXT" vkCmdDebugMarkerEndEXT :: VkCommandBuffer -- ^ commandBuffer -> IO ()@@ -118,18 +168,47 @@ -- -- renderpass: @both@ --+-- > () vkCmdDebugMarkerEndEXT+-- > ( VkCommandBuffer commandBuffer+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdDebugMarkerEndEXT.html vkCmdDebugMarkerEndEXT registry at www.khronos.org>+foreign import ccall safe "vkCmdDebugMarkerEndEXT"+ vkCmdDebugMarkerEndEXTSafe :: VkCommandBuffer -- ^ commandBuffer+ -> IO ()++-- | queues: 'graphics', 'compute'.+--+-- renderpass: @both@+-- -- > () vkCmdDebugMarkerInsertEXT -- > ( VkCommandBuffer commandBuffer -- > , const VkDebugMarkerMarkerInfoEXT* pMarkerInfo -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdDebugMarkerInsertEXT.html vkCmdDebugMarkerInsertEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdDebugMarkerInsertEXT.html vkCmdDebugMarkerInsertEXT registry at www.khronos.org> foreign import ccall unsafe "vkCmdDebugMarkerInsertEXT" vkCmdDebugMarkerInsertEXT :: VkCommandBuffer -- ^ commandBuffer -> Ptr VkDebugMarkerMarkerInfoEXT -- ^ pMarkerInfo -> IO () +-- | queues: 'graphics', 'compute'.+--+-- renderpass: @both@+--+-- > () vkCmdDebugMarkerInsertEXT+-- > ( VkCommandBuffer commandBuffer+-- > , const VkDebugMarkerMarkerInfoEXT* pMarkerInfo+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdDebugMarkerInsertEXT.html vkCmdDebugMarkerInsertEXT registry at www.khronos.org>+foreign import ccall safe "vkCmdDebugMarkerInsertEXT"+ vkCmdDebugMarkerInsertEXTSafe ::+ VkCommandBuffer -- ^ commandBuffer+ -> Ptr VkDebugMarkerMarkerInfoEXT -- ^ pMarkerInfo+ -> IO ()+ pattern VK_EXT_DEBUG_MARKER_SPEC_VERSION :: (Num a, Eq a) => a pattern VK_EXT_DEBUG_MARKER_SPEC_VERSION = 4@@ -153,7 +232,7 @@ is_VK_EXT_DEBUG_MARKER_EXTENSION_NAME :: CString -> Bool is_VK_EXT_DEBUG_MARKER_EXTENSION_NAME- = eqCStrings _VK_EXT_DEBUG_MARKER_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_EXT_DEBUG_MARKER_EXTENSION_NAME type VK_EXT_DEBUG_MARKER_EXTENSION_NAME = "VK_EXT_debug_marker"
@@ -30,8 +30,10 @@ module Graphics.Vulkan.Types.Struct.VkInstanceCreateInfo, module Graphics.Vulkan.Types.Enum.VkStructureType, -- > #include "vk_platform.h"- vkCreateDebugReportCallbackEXT, vkDestroyDebugReportCallbackEXT,- vkDebugReportMessageEXT,+ vkCreateDebugReportCallbackEXT, vkCreateDebugReportCallbackEXTSafe,+ vkDestroyDebugReportCallbackEXT,+ vkDestroyDebugReportCallbackEXTSafe, vkDebugReportMessageEXT,+ vkDebugReportMessageEXTSafe, module Graphics.Vulkan.Types.Enum.VkInternalAllocationType, module Graphics.Vulkan.Types.Enum.VkResult, module Graphics.Vulkan.Types.Enum.VkSystemAllocationScope,@@ -46,7 +48,9 @@ pattern VK_ERROR_VALIDATION_FAILED_EXT, pattern VK_STRUCTURE_TYPE_DEBUG_REPORT_CREATE_INFO_EXT, pattern VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT,- pattern VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT)+ pattern VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT,+ pattern VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT,+ pattern VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT) where import GHC.Ptr (Ptr (..)) import Graphics.Vulkan.Marshal@@ -77,7 +81,7 @@ -- > , VkDebugReportCallbackEXT* pCallback -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCreateDebugReportCallbackEXT.html vkCreateDebugReportCallbackEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateDebugReportCallbackEXT.html vkCreateDebugReportCallbackEXT registry at www.khronos.org> foreign import ccall unsafe "vkCreateDebugReportCallbackEXT" vkCreateDebugReportCallbackEXT :: VkInstance -- ^ instance@@ -89,13 +93,36 @@ Ptr VkDebugReportCallbackEXT -- ^ pCallback -> IO VkResult +-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY'.+--+-- > VkResult vkCreateDebugReportCallbackEXT+-- > ( VkInstance instance+-- > , const VkDebugReportCallbackCreateInfoEXT* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkDebugReportCallbackEXT* pCallback+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateDebugReportCallbackEXT.html vkCreateDebugReportCallbackEXT registry at www.khronos.org>+foreign import ccall safe "vkCreateDebugReportCallbackEXT"+ vkCreateDebugReportCallbackEXTSafe ::+ VkInstance -- ^ instance+ ->+ Ptr VkDebugReportCallbackCreateInfoEXT -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ ->+ Ptr VkDebugReportCallbackEXT -- ^ pCallback+ -> IO VkResult+ -- | > () vkDestroyDebugReportCallbackEXT -- > ( VkInstance instance -- > , VkDebugReportCallbackEXT callback -- > , const VkAllocationCallbacks* pAllocator -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkDestroyDebugReportCallbackEXT.html vkDestroyDebugReportCallbackEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyDebugReportCallbackEXT.html vkDestroyDebugReportCallbackEXT registry at www.khronos.org> foreign import ccall unsafe "vkDestroyDebugReportCallbackEXT" vkDestroyDebugReportCallbackEXT :: VkInstance -- ^ instance@@ -104,6 +131,21 @@ -> Ptr VkAllocationCallbacks -- ^ pAllocator -> IO () +-- | > () vkDestroyDebugReportCallbackEXT+-- > ( VkInstance instance+-- > , VkDebugReportCallbackEXT callback+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyDebugReportCallbackEXT.html vkDestroyDebugReportCallbackEXT registry at www.khronos.org>+foreign import ccall safe "vkDestroyDebugReportCallbackEXT"+ vkDestroyDebugReportCallbackEXTSafe ::+ VkInstance -- ^ instance+ ->+ VkDebugReportCallbackEXT -- ^ callback+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()+ -- | > () vkDebugReportMessageEXT -- > ( VkInstance instance -- > , VkDebugReportFlagsEXT flags@@ -115,7 +157,7 @@ -- > , const char* pMessage -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkDebugReportMessageEXT.html vkDebugReportMessageEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDebugReportMessageEXT.html vkDebugReportMessageEXT registry at www.khronos.org> foreign import ccall unsafe "vkDebugReportMessageEXT" vkDebugReportMessageEXT :: VkInstance -- ^ instance@@ -131,6 +173,33 @@ -> CString -- ^ pMessage -> IO () +-- | > () vkDebugReportMessageEXT+-- > ( VkInstance instance+-- > , VkDebugReportFlagsEXT flags+-- > , VkDebugReportObjectTypeEXT objectType+-- > , uint64_t object+-- > , size_t location+-- > , int32_t messageCode+-- > , const char* pLayerPrefix+-- > , const char* pMessage+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDebugReportMessageEXT.html vkDebugReportMessageEXT registry at www.khronos.org>+foreign import ccall safe "vkDebugReportMessageEXT"+ vkDebugReportMessageEXTSafe ::+ VkInstance -- ^ instance+ ->+ VkDebugReportFlagsEXT -- ^ flags+ ->+ VkDebugReportObjectTypeEXT -- ^ objectType+ ->+ Word64 -- ^ object+ -> CSize -- ^ location+ -> Int32 -- ^ messageCode+ -> CString -- ^ pLayerPrefix+ -> CString -- ^ pMessage+ -> IO ()+ pattern VK_EXT_DEBUG_REPORT_SPEC_VERSION :: (Num a, Eq a) => a pattern VK_EXT_DEBUG_REPORT_SPEC_VERSION = 9@@ -154,7 +223,7 @@ is_VK_EXT_DEBUG_REPORT_EXTENSION_NAME :: CString -> Bool is_VK_EXT_DEBUG_REPORT_EXTENSION_NAME- = eqCStrings _VK_EXT_DEBUG_REPORT_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_EXT_DEBUG_REPORT_EXTENSION_NAME type VK_EXT_DEBUG_REPORT_EXTENSION_NAME = "VK_EXT_debug_report" @@ -179,3 +248,15 @@ pattern VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT++pattern VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT ::+ VkDebugReportObjectTypeEXT++pattern VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT =+ VkDebugReportObjectTypeEXT 1000156000++pattern VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT+ :: VkDebugReportObjectTypeEXT++pattern VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT+ = VkDebugReportObjectTypeEXT 1000085000
@@ -0,0 +1,483 @@+{-# OPTIONS_GHC -fno-warn-unused-imports#-}+{-# OPTIONS_HADDOCK not-home#-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE ForeignFunctionInterface #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE ViewPatterns #-}+module Graphics.Vulkan.Ext.VK_EXT_debug_utils+ (-- * Vulkan extension: @VK_EXT_debug_utils@+ -- |+ --+ -- supported: @vulkan@+ --+ -- contact: @Mark Young @MarkY_LunarG@+ --+ -- author: @EXT@+ --+ -- type: @instance@+ --+ -- Extension number: @129@+ module Graphics.Vulkan.Marshal,+ module Graphics.Vulkan.Types.Struct.VkApplicationInfo,+ module Graphics.Vulkan.Types.BaseTypes,+ module Graphics.Vulkan.Types.Struct.VkDebugUtilsLabelEXT,+ module Graphics.Vulkan.Types.Enum.VkDebugUtilsMessageSeverityFlagsEXT,+ module Graphics.Vulkan.Types.Enum.VkDebugUtilsMessageTypeFlagsEXT,+ module Graphics.Vulkan.Types.Struct.VkDebugUtilsMessengerCallbackDataEXT,+ module Graphics.Vulkan.Types.Bitmasks,+ module Graphics.Vulkan.Types.Struct.VkDebugUtilsMessengerCreateInfoEXT,+ module Graphics.Vulkan.Types.Struct.VkDebugUtilsObjectNameInfoEXT,+ module Graphics.Vulkan.Types.Struct.VkDebugUtilsObjectTagInfoEXT,+ module Graphics.Vulkan.Types.Struct.VkInstanceCreateInfo,+ module Graphics.Vulkan.Types.Enum.VkObjectType,+ module Graphics.Vulkan.Types.Enum.VkStructureType,+ -- > #include "vk_platform.h"+ vkSetDebugUtilsObjectNameEXT, vkSetDebugUtilsObjectNameEXTSafe,+ vkSetDebugUtilsObjectTagEXT, vkSetDebugUtilsObjectTagEXTSafe,+ vkQueueBeginDebugUtilsLabelEXT, vkQueueBeginDebugUtilsLabelEXTSafe,+ vkQueueEndDebugUtilsLabelEXT, vkQueueEndDebugUtilsLabelEXTSafe,+ vkQueueInsertDebugUtilsLabelEXT,+ vkQueueInsertDebugUtilsLabelEXTSafe, vkCmdBeginDebugUtilsLabelEXT,+ vkCmdBeginDebugUtilsLabelEXTSafe, vkCmdEndDebugUtilsLabelEXT,+ vkCmdEndDebugUtilsLabelEXTSafe, vkCmdInsertDebugUtilsLabelEXT,+ vkCmdInsertDebugUtilsLabelEXTSafe, vkCreateDebugUtilsMessengerEXT,+ vkCreateDebugUtilsMessengerEXTSafe,+ vkDestroyDebugUtilsMessengerEXT,+ vkDestroyDebugUtilsMessengerEXTSafe, vkSubmitDebugUtilsMessageEXT,+ vkSubmitDebugUtilsMessageEXTSafe,+ module Graphics.Vulkan.Types.Enum.VkInternalAllocationType,+ module Graphics.Vulkan.Types.Enum.VkResult,+ module Graphics.Vulkan.Types.Enum.VkSystemAllocationScope,+ module Graphics.Vulkan.Types.Funcpointers,+ module Graphics.Vulkan.Types.Handles,+ module Graphics.Vulkan.Types.Struct.VkAllocationCallbacks,+ VK_EXT_DEBUG_UTILS_SPEC_VERSION,+ pattern VK_EXT_DEBUG_UTILS_SPEC_VERSION,+ VK_EXT_DEBUG_UTILS_EXTENSION_NAME,+ pattern VK_EXT_DEBUG_UTILS_EXTENSION_NAME,+ pattern VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT,+ pattern VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT,+ pattern VK_STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT,+ pattern VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT,+ pattern VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT,+ pattern VK_OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT)+ where+import GHC.Ptr+ (Ptr (..))+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Types.BaseTypes+import Graphics.Vulkan.Types.Bitmasks+import Graphics.Vulkan.Types.Enum.VkDebugUtilsMessageSeverityFlagsEXT+import Graphics.Vulkan.Types.Enum.VkDebugUtilsMessageTypeFlagsEXT+import Graphics.Vulkan.Types.Enum.VkInternalAllocationType+import Graphics.Vulkan.Types.Enum.VkObjectType+import Graphics.Vulkan.Types.Enum.VkResult+import Graphics.Vulkan.Types.Enum.VkStructureType+import Graphics.Vulkan.Types.Enum.VkSystemAllocationScope+import Graphics.Vulkan.Types.Funcpointers+import Graphics.Vulkan.Types.Handles+import Graphics.Vulkan.Types.Struct.VkAllocationCallbacks+import Graphics.Vulkan.Types.Struct.VkApplicationInfo+import Graphics.Vulkan.Types.Struct.VkDebugUtilsLabelEXT+import Graphics.Vulkan.Types.Struct.VkDebugUtilsMessengerCallbackDataEXT+import Graphics.Vulkan.Types.Struct.VkDebugUtilsMessengerCreateInfoEXT+import Graphics.Vulkan.Types.Struct.VkDebugUtilsObjectNameInfoEXT+import Graphics.Vulkan.Types.Struct.VkDebugUtilsObjectTagInfoEXT+import Graphics.Vulkan.Types.Struct.VkInstanceCreateInfo++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkSetDebugUtilsObjectNameEXT+-- > ( VkDevice device+-- > , const VkDebugUtilsObjectNameInfoEXT* pNameInfo+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkSetDebugUtilsObjectNameEXT.html vkSetDebugUtilsObjectNameEXT registry at www.khronos.org>+foreign import ccall unsafe "vkSetDebugUtilsObjectNameEXT"+ vkSetDebugUtilsObjectNameEXT ::+ VkDevice -- ^ device+ -> Ptr VkDebugUtilsObjectNameInfoEXT -- ^ pNameInfo+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkSetDebugUtilsObjectNameEXT+-- > ( VkDevice device+-- > , const VkDebugUtilsObjectNameInfoEXT* pNameInfo+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkSetDebugUtilsObjectNameEXT.html vkSetDebugUtilsObjectNameEXT registry at www.khronos.org>+foreign import ccall safe "vkSetDebugUtilsObjectNameEXT"+ vkSetDebugUtilsObjectNameEXTSafe ::+ VkDevice -- ^ device+ -> Ptr VkDebugUtilsObjectNameInfoEXT -- ^ pNameInfo+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkSetDebugUtilsObjectTagEXT+-- > ( VkDevice device+-- > , const VkDebugUtilsObjectTagInfoEXT* pTagInfo+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkSetDebugUtilsObjectTagEXT.html vkSetDebugUtilsObjectTagEXT registry at www.khronos.org>+foreign import ccall unsafe "vkSetDebugUtilsObjectTagEXT"+ vkSetDebugUtilsObjectTagEXT ::+ VkDevice -- ^ device+ -> Ptr VkDebugUtilsObjectTagInfoEXT -- ^ pTagInfo+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkSetDebugUtilsObjectTagEXT+-- > ( VkDevice device+-- > , const VkDebugUtilsObjectTagInfoEXT* pTagInfo+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkSetDebugUtilsObjectTagEXT.html vkSetDebugUtilsObjectTagEXT registry at www.khronos.org>+foreign import ccall safe "vkSetDebugUtilsObjectTagEXT"+ vkSetDebugUtilsObjectTagEXTSafe ::+ VkDevice -- ^ device+ -> Ptr VkDebugUtilsObjectTagInfoEXT -- ^ pTagInfo+ -> IO VkResult++-- | > () vkQueueBeginDebugUtilsLabelEXT+-- > ( VkQueue queue+-- > , const VkDebugUtilsLabelEXT* pLabelInfo+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkQueueBeginDebugUtilsLabelEXT.html vkQueueBeginDebugUtilsLabelEXT registry at www.khronos.org>+foreign import ccall unsafe "vkQueueBeginDebugUtilsLabelEXT"+ vkQueueBeginDebugUtilsLabelEXT ::+ VkQueue -- ^ queue+ -> Ptr VkDebugUtilsLabelEXT -- ^ pLabelInfo+ -> IO ()++-- | > () vkQueueBeginDebugUtilsLabelEXT+-- > ( VkQueue queue+-- > , const VkDebugUtilsLabelEXT* pLabelInfo+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkQueueBeginDebugUtilsLabelEXT.html vkQueueBeginDebugUtilsLabelEXT registry at www.khronos.org>+foreign import ccall safe "vkQueueBeginDebugUtilsLabelEXT"+ vkQueueBeginDebugUtilsLabelEXTSafe ::+ VkQueue -- ^ queue+ -> Ptr VkDebugUtilsLabelEXT -- ^ pLabelInfo+ -> IO ()++-- | > () vkQueueEndDebugUtilsLabelEXT+-- > ( VkQueue queue+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkQueueEndDebugUtilsLabelEXT.html vkQueueEndDebugUtilsLabelEXT registry at www.khronos.org>+foreign import ccall unsafe "vkQueueEndDebugUtilsLabelEXT"+ vkQueueEndDebugUtilsLabelEXT :: VkQueue -- ^ queue+ -> IO ()++-- | > () vkQueueEndDebugUtilsLabelEXT+-- > ( VkQueue queue+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkQueueEndDebugUtilsLabelEXT.html vkQueueEndDebugUtilsLabelEXT registry at www.khronos.org>+foreign import ccall safe "vkQueueEndDebugUtilsLabelEXT"+ vkQueueEndDebugUtilsLabelEXTSafe :: VkQueue -- ^ queue+ -> IO ()++-- | > () vkQueueInsertDebugUtilsLabelEXT+-- > ( VkQueue queue+-- > , const VkDebugUtilsLabelEXT* pLabelInfo+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkQueueInsertDebugUtilsLabelEXT.html vkQueueInsertDebugUtilsLabelEXT registry at www.khronos.org>+foreign import ccall unsafe "vkQueueInsertDebugUtilsLabelEXT"+ vkQueueInsertDebugUtilsLabelEXT ::+ VkQueue -- ^ queue+ -> Ptr VkDebugUtilsLabelEXT -- ^ pLabelInfo+ -> IO ()++-- | > () vkQueueInsertDebugUtilsLabelEXT+-- > ( VkQueue queue+-- > , const VkDebugUtilsLabelEXT* pLabelInfo+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkQueueInsertDebugUtilsLabelEXT.html vkQueueInsertDebugUtilsLabelEXT registry at www.khronos.org>+foreign import ccall safe "vkQueueInsertDebugUtilsLabelEXT"+ vkQueueInsertDebugUtilsLabelEXTSafe ::+ VkQueue -- ^ queue+ -> Ptr VkDebugUtilsLabelEXT -- ^ pLabelInfo+ -> IO ()++-- | queues: 'graphics', 'compute'.+--+-- renderpass: @both@+--+-- > () vkCmdBeginDebugUtilsLabelEXT+-- > ( VkCommandBuffer commandBuffer+-- > , const VkDebugUtilsLabelEXT* pLabelInfo+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdBeginDebugUtilsLabelEXT.html vkCmdBeginDebugUtilsLabelEXT registry at www.khronos.org>+foreign import ccall unsafe "vkCmdBeginDebugUtilsLabelEXT"+ vkCmdBeginDebugUtilsLabelEXT ::+ VkCommandBuffer -- ^ commandBuffer+ -> Ptr VkDebugUtilsLabelEXT -- ^ pLabelInfo+ -> IO ()++-- | queues: 'graphics', 'compute'.+--+-- renderpass: @both@+--+-- > () vkCmdBeginDebugUtilsLabelEXT+-- > ( VkCommandBuffer commandBuffer+-- > , const VkDebugUtilsLabelEXT* pLabelInfo+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdBeginDebugUtilsLabelEXT.html vkCmdBeginDebugUtilsLabelEXT registry at www.khronos.org>+foreign import ccall safe "vkCmdBeginDebugUtilsLabelEXT"+ vkCmdBeginDebugUtilsLabelEXTSafe ::+ VkCommandBuffer -- ^ commandBuffer+ -> Ptr VkDebugUtilsLabelEXT -- ^ pLabelInfo+ -> IO ()++-- | queues: 'graphics', 'compute'.+--+-- renderpass: @both@+--+-- > () vkCmdEndDebugUtilsLabelEXT+-- > ( VkCommandBuffer commandBuffer+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdEndDebugUtilsLabelEXT.html vkCmdEndDebugUtilsLabelEXT registry at www.khronos.org>+foreign import ccall unsafe "vkCmdEndDebugUtilsLabelEXT"+ vkCmdEndDebugUtilsLabelEXT :: VkCommandBuffer -- ^ commandBuffer+ -> IO ()++-- | queues: 'graphics', 'compute'.+--+-- renderpass: @both@+--+-- > () vkCmdEndDebugUtilsLabelEXT+-- > ( VkCommandBuffer commandBuffer+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdEndDebugUtilsLabelEXT.html vkCmdEndDebugUtilsLabelEXT registry at www.khronos.org>+foreign import ccall safe "vkCmdEndDebugUtilsLabelEXT"+ vkCmdEndDebugUtilsLabelEXTSafe :: VkCommandBuffer -- ^ commandBuffer+ -> IO ()++-- | queues: 'graphics', 'compute'.+--+-- renderpass: @both@+--+-- > () vkCmdInsertDebugUtilsLabelEXT+-- > ( VkCommandBuffer commandBuffer+-- > , const VkDebugUtilsLabelEXT* pLabelInfo+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdInsertDebugUtilsLabelEXT.html vkCmdInsertDebugUtilsLabelEXT registry at www.khronos.org>+foreign import ccall unsafe "vkCmdInsertDebugUtilsLabelEXT"+ vkCmdInsertDebugUtilsLabelEXT ::+ VkCommandBuffer -- ^ commandBuffer+ -> Ptr VkDebugUtilsLabelEXT -- ^ pLabelInfo+ -> IO ()++-- | queues: 'graphics', 'compute'.+--+-- renderpass: @both@+--+-- > () vkCmdInsertDebugUtilsLabelEXT+-- > ( VkCommandBuffer commandBuffer+-- > , const VkDebugUtilsLabelEXT* pLabelInfo+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdInsertDebugUtilsLabelEXT.html vkCmdInsertDebugUtilsLabelEXT registry at www.khronos.org>+foreign import ccall safe "vkCmdInsertDebugUtilsLabelEXT"+ vkCmdInsertDebugUtilsLabelEXTSafe ::+ VkCommandBuffer -- ^ commandBuffer+ -> Ptr VkDebugUtilsLabelEXT -- ^ pLabelInfo+ -> IO ()++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY'.+--+-- > VkResult vkCreateDebugUtilsMessengerEXT+-- > ( VkInstance instance+-- > , const VkDebugUtilsMessengerCreateInfoEXT* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkDebugUtilsMessengerEXT* pMessenger+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateDebugUtilsMessengerEXT.html vkCreateDebugUtilsMessengerEXT registry at www.khronos.org>+foreign import ccall unsafe "vkCreateDebugUtilsMessengerEXT"+ vkCreateDebugUtilsMessengerEXT ::+ VkInstance -- ^ instance+ ->+ Ptr VkDebugUtilsMessengerCreateInfoEXT -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ ->+ Ptr VkDebugUtilsMessengerEXT -- ^ pMessenger+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY'.+--+-- > VkResult vkCreateDebugUtilsMessengerEXT+-- > ( VkInstance instance+-- > , const VkDebugUtilsMessengerCreateInfoEXT* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkDebugUtilsMessengerEXT* pMessenger+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateDebugUtilsMessengerEXT.html vkCreateDebugUtilsMessengerEXT registry at www.khronos.org>+foreign import ccall safe "vkCreateDebugUtilsMessengerEXT"+ vkCreateDebugUtilsMessengerEXTSafe ::+ VkInstance -- ^ instance+ ->+ Ptr VkDebugUtilsMessengerCreateInfoEXT -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ ->+ Ptr VkDebugUtilsMessengerEXT -- ^ pMessenger+ -> IO VkResult++-- | > () vkDestroyDebugUtilsMessengerEXT+-- > ( VkInstance instance+-- > , VkDebugUtilsMessengerEXT messenger+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyDebugUtilsMessengerEXT.html vkDestroyDebugUtilsMessengerEXT registry at www.khronos.org>+foreign import ccall unsafe "vkDestroyDebugUtilsMessengerEXT"+ vkDestroyDebugUtilsMessengerEXT ::+ VkInstance -- ^ instance+ ->+ VkDebugUtilsMessengerEXT -- ^ messenger+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | > () vkDestroyDebugUtilsMessengerEXT+-- > ( VkInstance instance+-- > , VkDebugUtilsMessengerEXT messenger+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyDebugUtilsMessengerEXT.html vkDestroyDebugUtilsMessengerEXT registry at www.khronos.org>+foreign import ccall safe "vkDestroyDebugUtilsMessengerEXT"+ vkDestroyDebugUtilsMessengerEXTSafe ::+ VkInstance -- ^ instance+ ->+ VkDebugUtilsMessengerEXT -- ^ messenger+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | > () vkSubmitDebugUtilsMessageEXT+-- > ( VkInstance instance+-- > , VkDebugUtilsMessageSeverityFlagBitsEXT messageSeverity+-- > , VkDebugUtilsMessageTypeFlagsEXT messageTypes+-- > , const VkDebugUtilsMessengerCallbackDataEXT* pCallbackData+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkSubmitDebugUtilsMessageEXT.html vkSubmitDebugUtilsMessageEXT registry at www.khronos.org>+foreign import ccall unsafe "vkSubmitDebugUtilsMessageEXT"+ vkSubmitDebugUtilsMessageEXT ::+ VkInstance -- ^ instance+ ->+ VkDebugUtilsMessageSeverityFlagBitsEXT -- ^ messageSeverity+ ->+ VkDebugUtilsMessageTypeFlagsEXT -- ^ messageTypes+ ->+ Ptr VkDebugUtilsMessengerCallbackDataEXT -- ^ pCallbackData+ -> IO ()++-- | > () vkSubmitDebugUtilsMessageEXT+-- > ( VkInstance instance+-- > , VkDebugUtilsMessageSeverityFlagBitsEXT messageSeverity+-- > , VkDebugUtilsMessageTypeFlagsEXT messageTypes+-- > , const VkDebugUtilsMessengerCallbackDataEXT* pCallbackData+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkSubmitDebugUtilsMessageEXT.html vkSubmitDebugUtilsMessageEXT registry at www.khronos.org>+foreign import ccall safe "vkSubmitDebugUtilsMessageEXT"+ vkSubmitDebugUtilsMessageEXTSafe ::+ VkInstance -- ^ instance+ ->+ VkDebugUtilsMessageSeverityFlagBitsEXT -- ^ messageSeverity+ ->+ VkDebugUtilsMessageTypeFlagsEXT -- ^ messageTypes+ ->+ Ptr VkDebugUtilsMessengerCallbackDataEXT -- ^ pCallbackData+ -> IO ()++pattern VK_EXT_DEBUG_UTILS_SPEC_VERSION :: (Num a, Eq a) => a++pattern VK_EXT_DEBUG_UTILS_SPEC_VERSION = 1++type VK_EXT_DEBUG_UTILS_SPEC_VERSION = 1++pattern VK_EXT_DEBUG_UTILS_EXTENSION_NAME :: CString++pattern VK_EXT_DEBUG_UTILS_EXTENSION_NAME <-+ (is_VK_EXT_DEBUG_UTILS_EXTENSION_NAME -> True)+ where VK_EXT_DEBUG_UTILS_EXTENSION_NAME+ = _VK_EXT_DEBUG_UTILS_EXTENSION_NAME++{-# INLINE _VK_EXT_DEBUG_UTILS_EXTENSION_NAME #-}++_VK_EXT_DEBUG_UTILS_EXTENSION_NAME :: CString+_VK_EXT_DEBUG_UTILS_EXTENSION_NAME = Ptr "VK_EXT_debug_utils\NUL"#++{-# INLINE is_VK_EXT_DEBUG_UTILS_EXTENSION_NAME #-}++is_VK_EXT_DEBUG_UTILS_EXTENSION_NAME :: CString -> Bool+is_VK_EXT_DEBUG_UTILS_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_EXT_DEBUG_UTILS_EXTENSION_NAME++type VK_EXT_DEBUG_UTILS_EXTENSION_NAME = "VK_EXT_debug_utils"++pattern VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT =+ VkStructureType 1000128000++pattern VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT =+ VkStructureType 1000128001++pattern VK_STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: VkStructureType++pattern VK_STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT =+ VkStructureType 1000128002++pattern VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT+ :: VkStructureType++pattern VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT =+ VkStructureType 1000128003++pattern VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT =+ VkStructureType 1000128004++-- | VkDebugUtilsMessengerEXT+pattern VK_OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT :: VkObjectType++pattern VK_OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT =+ VkObjectType 1000128000
@@ -50,7 +50,8 @@ is_VK_EXT_DEPTH_RANGE_UNRESTRICTED_EXTENSION_NAME :: CString -> Bool is_VK_EXT_DEPTH_RANGE_UNRESTRICTED_EXTENSION_NAME- = eqCStrings _VK_EXT_DEPTH_RANGE_UNRESTRICTED_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_EXT_DEPTH_RANGE_UNRESTRICTED_EXTENSION_NAME type VK_EXT_DEPTH_RANGE_UNRESTRICTED_EXTENSION_NAME = "VK_EXT_depth_range_unrestricted"
@@ -23,7 +23,8 @@ -- -- ** Required extensions: 'VK_KHR_display'.- vkReleaseDisplayEXT, module Graphics.Vulkan.Types.Enum.VkResult,+ vkReleaseDisplayEXT, vkReleaseDisplayEXTSafe,+ module Graphics.Vulkan.Types.Enum.VkResult, module Graphics.Vulkan.Types.Handles, VK_EXT_DIRECT_MODE_DISPLAY_SPEC_VERSION, pattern VK_EXT_DIRECT_MODE_DISPLAY_SPEC_VERSION,@@ -42,13 +43,27 @@ -- > , VkDisplayKHR display -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkReleaseDisplayEXT.html vkReleaseDisplayEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkReleaseDisplayEXT.html vkReleaseDisplayEXT registry at www.khronos.org> foreign import ccall unsafe "vkReleaseDisplayEXT" vkReleaseDisplayEXT :: VkPhysicalDevice -- ^ physicalDevice -> VkDisplayKHR -- ^ display -> IO VkResult +-- | Success codes: 'VK_SUCCESS'.+--+-- > VkResult vkReleaseDisplayEXT+-- > ( VkPhysicalDevice physicalDevice+-- > , VkDisplayKHR display+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkReleaseDisplayEXT.html vkReleaseDisplayEXT registry at www.khronos.org>+foreign import ccall safe "vkReleaseDisplayEXT"+ vkReleaseDisplayEXTSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ -> VkDisplayKHR -- ^ display+ -> IO VkResult+ pattern VK_EXT_DIRECT_MODE_DISPLAY_SPEC_VERSION :: (Num a, Eq a) => a @@ -73,7 +88,7 @@ is_VK_EXT_DIRECT_MODE_DISPLAY_EXTENSION_NAME :: CString -> Bool is_VK_EXT_DIRECT_MODE_DISPLAY_EXTENSION_NAME- = eqCStrings _VK_EXT_DIRECT_MODE_DISPLAY_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_EXT_DIRECT_MODE_DISPLAY_EXTENSION_NAME type VK_EXT_DIRECT_MODE_DISPLAY_EXTENSION_NAME = "VK_EXT_direct_mode_display"
@@ -41,7 +41,7 @@ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceDiscardRectanglePropertiesEXT, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceLimits, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2KHR,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseProperties, module Graphics.Vulkan.Types.Enum.VkPhysicalDeviceType, module Graphics.Vulkan.Types.Struct.VkPipelineColorBlendAttachmentState,@@ -73,7 +73,8 @@ module Graphics.Vulkan.Types.Enum.VkVertexInputRate, module Graphics.Vulkan.Types.Struct.VkViewport, -- > #include "vk_platform.h"- vkCmdSetDiscardRectangleEXT, module Graphics.Vulkan.Types.Handles,+ vkCmdSetDiscardRectangleEXT, vkCmdSetDiscardRectangleEXTSafe,+ module Graphics.Vulkan.Types.Handles, VK_EXT_DISCARD_RECTANGLES_SPEC_VERSION, pattern VK_EXT_DISCARD_RECTANGLES_SPEC_VERSION, VK_EXT_DISCARD_RECTANGLES_EXTENSION_NAME,@@ -113,7 +114,7 @@ import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceDiscardRectanglePropertiesEXT import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceLimits import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2KHR+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2 import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseProperties import Graphics.Vulkan.Types.Struct.VkPipelineColorBlendAttachmentState import Graphics.Vulkan.Types.Struct.VkPipelineColorBlendStateCreateInfo@@ -146,7 +147,7 @@ -- > , const VkRect2D* pDiscardRectangles -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdSetDiscardRectangleEXT.html vkCmdSetDiscardRectangleEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdSetDiscardRectangleEXT.html vkCmdSetDiscardRectangleEXT registry at www.khronos.org> foreign import ccall unsafe "vkCmdSetDiscardRectangleEXT" vkCmdSetDiscardRectangleEXT :: VkCommandBuffer -- ^ commandBuffer@@ -155,6 +156,26 @@ -> Ptr VkRect2D -- ^ pDiscardRectangles -> IO () +-- | queues: 'graphics'.+--+-- renderpass: @both@+--+-- > () vkCmdSetDiscardRectangleEXT+-- > ( VkCommandBuffer commandBuffer+-- > , uint32_t firstDiscardRectangle+-- > , uint32_t discardRectangleCount+-- > , const VkRect2D* pDiscardRectangles+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdSetDiscardRectangleEXT.html vkCmdSetDiscardRectangleEXT registry at www.khronos.org>+foreign import ccall safe "vkCmdSetDiscardRectangleEXT"+ vkCmdSetDiscardRectangleEXTSafe ::+ VkCommandBuffer -- ^ commandBuffer+ -> Word32 -- ^ firstDiscardRectangle+ -> Word32 -- ^ discardRectangleCount+ -> Ptr VkRect2D -- ^ pDiscardRectangles+ -> IO ()+ pattern VK_EXT_DISCARD_RECTANGLES_SPEC_VERSION :: (Num a, Eq a) => a @@ -179,7 +200,7 @@ is_VK_EXT_DISCARD_RECTANGLES_EXTENSION_NAME :: CString -> Bool is_VK_EXT_DISCARD_RECTANGLES_EXTENSION_NAME- = eqCStrings _VK_EXT_DISCARD_RECTANGLES_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_EXT_DISCARD_RECTANGLES_EXTENSION_NAME type VK_EXT_DISCARD_RECTANGLES_EXTENSION_NAME = "VK_EXT_discard_rectangles"
@@ -45,8 +45,10 @@ module Graphics.Vulkan.Types.Enum.VkSwapchainCreateFlagsKHR, module Graphics.Vulkan.Types.Struct.VkSwapchainCreateInfoKHR, -- > #include "vk_platform.h"- vkDisplayPowerControlEXT, vkRegisterDeviceEventEXT,- vkRegisterDisplayEventEXT, vkGetSwapchainCounterEXT,+ vkDisplayPowerControlEXT, vkDisplayPowerControlEXTSafe,+ vkRegisterDeviceEventEXT, vkRegisterDeviceEventEXTSafe,+ vkRegisterDisplayEventEXT, vkRegisterDisplayEventEXTSafe,+ vkGetSwapchainCounterEXT, vkGetSwapchainCounterEXTSafe, module Graphics.Vulkan.Marshal, module Graphics.Vulkan.Types.Enum.VkInternalAllocationType, module Graphics.Vulkan.Types.Enum.VkResult,@@ -100,7 +102,7 @@ -- > , const VkDisplayPowerInfoEXT* pDisplayPowerInfo -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkDisplayPowerControlEXT.html vkDisplayPowerControlEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDisplayPowerControlEXT.html vkDisplayPowerControlEXT registry at www.khronos.org> foreign import ccall unsafe "vkDisplayPowerControlEXT" vkDisplayPowerControlEXT :: VkDevice -- ^ device@@ -111,6 +113,23 @@ -- | Success codes: 'VK_SUCCESS'. --+-- > VkResult vkDisplayPowerControlEXT+-- > ( VkDevice device+-- > , VkDisplayKHR display+-- > , const VkDisplayPowerInfoEXT* pDisplayPowerInfo+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDisplayPowerControlEXT.html vkDisplayPowerControlEXT registry at www.khronos.org>+foreign import ccall safe "vkDisplayPowerControlEXT"+ vkDisplayPowerControlEXTSafe ::+ VkDevice -- ^ device+ ->+ VkDisplayKHR -- ^ display+ -> Ptr VkDisplayPowerInfoEXT -- ^ pDisplayPowerInfo+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+-- -- > VkResult vkRegisterDeviceEventEXT -- > ( VkDevice device -- > , const VkDeviceEventInfoEXT* pDeviceEventInfo@@ -118,7 +137,7 @@ -- > , VkFence* pFence -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkRegisterDeviceEventEXT.html vkRegisterDeviceEventEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkRegisterDeviceEventEXT.html vkRegisterDeviceEventEXT registry at www.khronos.org> foreign import ccall unsafe "vkRegisterDeviceEventEXT" vkRegisterDeviceEventEXT :: VkDevice -- ^ device@@ -131,6 +150,26 @@ -- | Success codes: 'VK_SUCCESS'. --+-- > VkResult vkRegisterDeviceEventEXT+-- > ( VkDevice device+-- > , const VkDeviceEventInfoEXT* pDeviceEventInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkFence* pFence+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkRegisterDeviceEventEXT.html vkRegisterDeviceEventEXT registry at www.khronos.org>+foreign import ccall safe "vkRegisterDeviceEventEXT"+ vkRegisterDeviceEventEXTSafe ::+ VkDevice -- ^ device+ ->+ Ptr VkDeviceEventInfoEXT -- ^ pDeviceEventInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkFence -- ^ pFence+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+-- -- > VkResult vkRegisterDisplayEventEXT -- > ( VkDevice device -- > , VkDisplayKHR display@@ -139,7 +178,7 @@ -- > , VkFence* pFence -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkRegisterDisplayEventEXT.html vkRegisterDisplayEventEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkRegisterDisplayEventEXT.html vkRegisterDisplayEventEXT registry at www.khronos.org> foreign import ccall unsafe "vkRegisterDisplayEventEXT" vkRegisterDisplayEventEXT :: VkDevice -- ^ device@@ -152,8 +191,33 @@ -> Ptr VkFence -- ^ pFence -> IO VkResult --- | Success codes: 'VK_SUCCESS', 'VK_ERROR_DEVICE_LOST', 'VK_ERROR_OUT_OF_DATE_KHR'.+-- | Success codes: 'VK_SUCCESS'. --+-- > VkResult vkRegisterDisplayEventEXT+-- > ( VkDevice device+-- > , VkDisplayKHR display+-- > , const VkDisplayEventInfoEXT* pDisplayEventInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkFence* pFence+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkRegisterDisplayEventEXT.html vkRegisterDisplayEventEXT registry at www.khronos.org>+foreign import ccall safe "vkRegisterDisplayEventEXT"+ vkRegisterDisplayEventEXTSafe ::+ VkDevice -- ^ device+ ->+ VkDisplayKHR -- ^ display+ ->+ Ptr VkDisplayEventInfoEXT -- ^ pDisplayEventInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkFence -- ^ pFence+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_DEVICE_LOST', 'VK_ERROR_OUT_OF_DATE_KHR'.+-- -- > VkResult vkGetSwapchainCounterEXT -- > ( VkDevice device -- > , VkSwapchainKHR swapchain@@ -161,7 +225,7 @@ -- > , uint64_t* pCounterValue -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetSwapchainCounterEXT.html vkGetSwapchainCounterEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetSwapchainCounterEXT.html vkGetSwapchainCounterEXT registry at www.khronos.org> foreign import ccall unsafe "vkGetSwapchainCounterEXT" vkGetSwapchainCounterEXT :: VkDevice -- ^ device@@ -172,6 +236,28 @@ -> Ptr Word64 -- ^ pCounterValue -> IO VkResult +-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_DEVICE_LOST', 'VK_ERROR_OUT_OF_DATE_KHR'.+--+-- > VkResult vkGetSwapchainCounterEXT+-- > ( VkDevice device+-- > , VkSwapchainKHR swapchain+-- > , VkSurfaceCounterFlagBitsEXT counter+-- > , uint64_t* pCounterValue+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetSwapchainCounterEXT.html vkGetSwapchainCounterEXT registry at www.khronos.org>+foreign import ccall safe "vkGetSwapchainCounterEXT"+ vkGetSwapchainCounterEXTSafe ::+ VkDevice -- ^ device+ ->+ VkSwapchainKHR -- ^ swapchain+ ->+ VkSurfaceCounterFlagBitsEXT -- ^ counter+ -> Ptr Word64 -- ^ pCounterValue+ -> IO VkResult+ pattern VK_EXT_DISPLAY_CONTROL_SPEC_VERSION :: (Num a, Eq a) => a pattern VK_EXT_DISPLAY_CONTROL_SPEC_VERSION = 1@@ -195,7 +281,7 @@ is_VK_EXT_DISPLAY_CONTROL_EXTENSION_NAME :: CString -> Bool is_VK_EXT_DISPLAY_CONTROL_EXTENSION_NAME- = eqCStrings _VK_EXT_DISPLAY_CONTROL_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_EXT_DISPLAY_CONTROL_EXTENSION_NAME type VK_EXT_DISPLAY_CONTROL_EXTENSION_NAME = "VK_EXT_display_control"
@@ -34,6 +34,7 @@ module Graphics.Vulkan.Types.Enum.VkSurfaceTransformFlagsKHR, -- > #include "vk_platform.h" vkGetPhysicalDeviceSurfaceCapabilities2EXT,+ vkGetPhysicalDeviceSurfaceCapabilities2EXTSafe, module Graphics.Vulkan.Marshal, module Graphics.Vulkan.Types.Enum.VkResult, module Graphics.Vulkan.Types.Handles,@@ -67,7 +68,7 @@ -- > , VkSurfaceCapabilities2EXT* pSurfaceCapabilities -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetPhysicalDeviceSurfaceCapabilities2EXT.html vkGetPhysicalDeviceSurfaceCapabilities2EXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceSurfaceCapabilities2EXT.html vkGetPhysicalDeviceSurfaceCapabilities2EXT registry at www.khronos.org> foreign import ccall unsafe "vkGetPhysicalDeviceSurfaceCapabilities2EXT" vkGetPhysicalDeviceSurfaceCapabilities2EXT ::@@ -77,6 +78,26 @@ -> Ptr VkSurfaceCapabilities2EXT -- ^ pSurfaceCapabilities -> IO VkResult +-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_SURFACE_LOST_KHR'.+--+-- > VkResult vkGetPhysicalDeviceSurfaceCapabilities2EXT+-- > ( VkPhysicalDevice physicalDevice+-- > , VkSurfaceKHR surface+-- > , VkSurfaceCapabilities2EXT* pSurfaceCapabilities+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceSurfaceCapabilities2EXT.html vkGetPhysicalDeviceSurfaceCapabilities2EXT registry at www.khronos.org>+foreign import ccall safe+ "vkGetPhysicalDeviceSurfaceCapabilities2EXT"+ vkGetPhysicalDeviceSurfaceCapabilities2EXTSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ VkSurfaceKHR -- ^ surface+ -> Ptr VkSurfaceCapabilities2EXT -- ^ pSurfaceCapabilities+ -> IO VkResult+ pattern VK_EXT_DISPLAY_SURFACE_COUNTER_SPEC_VERSION :: (Num a, Eq a) => a @@ -101,7 +122,8 @@ is_VK_EXT_DISPLAY_SURFACE_COUNTER_EXTENSION_NAME :: CString -> Bool is_VK_EXT_DISPLAY_SURFACE_COUNTER_EXTENSION_NAME- = eqCStrings _VK_EXT_DISPLAY_SURFACE_COUNTER_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_EXT_DISPLAY_SURFACE_COUNTER_EXTENSION_NAME type VK_EXT_DISPLAY_SURFACE_COUNTER_EXTENSION_NAME = "VK_EXT_display_surface_counter"
@@ -28,10 +28,10 @@ pattern VK_EXT_EXTERNAL_MEMORY_DMA_BUF_EXTENSION_NAME, pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT) where-import GHC.Ptr (Ptr (..))+import GHC.Ptr (Ptr (..)) import Graphics.Vulkan.Marshal-import Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlagsKHR (VkExternalMemoryHandleTypeBitmaskKHR (..),- VkExternalMemoryHandleTypeFlagBitsKHR)+import Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlags (VkExternalMemoryHandleTypeBitmask (..),+ VkExternalMemoryHandleTypeFlagBits) pattern VK_EXT_EXTERNAL_MEMORY_DMA_BUF_SPEC_VERSION :: (Num a, Eq a) => a@@ -57,14 +57,15 @@ is_VK_EXT_EXTERNAL_MEMORY_DMA_BUF_EXTENSION_NAME :: CString -> Bool is_VK_EXT_EXTERNAL_MEMORY_DMA_BUF_EXTENSION_NAME- = eqCStrings _VK_EXT_EXTERNAL_MEMORY_DMA_BUF_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_EXT_EXTERNAL_MEMORY_DMA_BUF_EXTENSION_NAME type VK_EXT_EXTERNAL_MEMORY_DMA_BUF_EXTENSION_NAME = "VK_EXT_external_memory_dma_buf" -- | bitpos = @9@ pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT ::- VkExternalMemoryHandleTypeFlagBitsKHR+ VkExternalMemoryHandleTypeFlagBits pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT =- VkExternalMemoryHandleTypeFlagBitsKHR 512+ VkExternalMemoryHandleTypeFlagBits 512
@@ -26,20 +26,23 @@ -- ** Required extensions: 'VK_KHR_external_memory'. module Graphics.Vulkan.Marshal, module Graphics.Vulkan.Types.BaseTypes,- module Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlagsKHR,+ module Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlags,+ module Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlagBitsKHR,+ module Graphics.Vulkan.Types.Bitmasks, module Graphics.Vulkan.Types.Struct.VkImportMemoryHostPointerInfoEXT, module Graphics.Vulkan.Types.Struct.VkMemoryAllocateInfo, module Graphics.Vulkan.Types.Struct.VkMemoryHostPointerPropertiesEXT, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceExternalMemoryHostPropertiesEXT, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceLimits, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2KHR,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseProperties, module Graphics.Vulkan.Types.Enum.VkPhysicalDeviceType, module Graphics.Vulkan.Types.Enum.VkSampleCountFlags, module Graphics.Vulkan.Types.Enum.VkStructureType, -- > #include "vk_platform.h" vkGetMemoryHostPointerPropertiesEXT,+ vkGetMemoryHostPointerPropertiesEXTSafe, module Graphics.Vulkan.Types.Enum.VkResult, module Graphics.Vulkan.Types.Handles, VK_EXT_EXTERNAL_MEMORY_HOST_SPEC_VERSION,@@ -56,7 +59,9 @@ (Ptr (..)) import Graphics.Vulkan.Marshal import Graphics.Vulkan.Types.BaseTypes-import Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlagsKHR+import Graphics.Vulkan.Types.Bitmasks+import Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlagBitsKHR+import Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlags import Graphics.Vulkan.Types.Enum.VkPhysicalDeviceType import Graphics.Vulkan.Types.Enum.VkResult import Graphics.Vulkan.Types.Enum.VkSampleCountFlags@@ -68,31 +73,53 @@ import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceExternalMemoryHostPropertiesEXT import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceLimits import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2KHR+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2 import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseProperties -- | Success codes: 'VK_SUCCESS'. ----- Error codes: 'VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR'.+-- Error codes: 'VK_ERROR_INVALID_EXTERNAL_HANDLE'. -- -- > VkResult vkGetMemoryHostPointerPropertiesEXT -- > ( VkDevice device--- > , VkExternalMemoryHandleTypeFlagBitsKHR handleType+-- > , VkExternalMemoryHandleTypeFlagBits handleType -- > , const void* pHostPointer -- > , VkMemoryHostPointerPropertiesEXT* pMemoryHostPointerProperties -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetMemoryHostPointerPropertiesEXT.html vkGetMemoryHostPointerPropertiesEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetMemoryHostPointerPropertiesEXT.html vkGetMemoryHostPointerPropertiesEXT registry at www.khronos.org> foreign import ccall unsafe "vkGetMemoryHostPointerPropertiesEXT" vkGetMemoryHostPointerPropertiesEXT :: VkDevice -- ^ device ->- VkExternalMemoryHandleTypeFlagBitsKHR -- ^ handleType- ->+ VkExternalMemoryHandleTypeFlagBits -- ^ handleType+ -> Ptr Void -- ^ pHostPointer -> Ptr VkMemoryHostPointerPropertiesEXT -- ^ pMemoryHostPointerProperties -> IO VkResult +-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_INVALID_EXTERNAL_HANDLE'.+--+-- > VkResult vkGetMemoryHostPointerPropertiesEXT+-- > ( VkDevice device+-- > , VkExternalMemoryHandleTypeFlagBits handleType+-- > , const void* pHostPointer+-- > , VkMemoryHostPointerPropertiesEXT* pMemoryHostPointerProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetMemoryHostPointerPropertiesEXT.html vkGetMemoryHostPointerPropertiesEXT registry at www.khronos.org>+foreign import ccall safe "vkGetMemoryHostPointerPropertiesEXT"+ vkGetMemoryHostPointerPropertiesEXTSafe ::+ VkDevice -- ^ device+ ->+ VkExternalMemoryHandleTypeFlagBits -- ^ handleType+ ->+ Ptr Void -- ^ pHostPointer+ -> Ptr VkMemoryHostPointerPropertiesEXT -- ^ pMemoryHostPointerProperties+ -> IO VkResult+ pattern VK_EXT_EXTERNAL_MEMORY_HOST_SPEC_VERSION :: (Num a, Eq a) => a @@ -117,7 +144,7 @@ is_VK_EXT_EXTERNAL_MEMORY_HOST_EXTENSION_NAME :: CString -> Bool is_VK_EXT_EXTERNAL_MEMORY_HOST_EXTENSION_NAME- = eqCStrings _VK_EXT_EXTERNAL_MEMORY_HOST_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_EXT_EXTERNAL_MEMORY_HOST_EXTENSION_NAME type VK_EXT_EXTERNAL_MEMORY_HOST_EXTENSION_NAME = "VK_EXT_external_memory_host"@@ -142,14 +169,14 @@ -- | bitpos = @7@ pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT ::- VkExternalMemoryHandleTypeFlagBitsKHR+ VkExternalMemoryHandleTypeFlagBits pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT =- VkExternalMemoryHandleTypeFlagBitsKHR 128+ VkExternalMemoryHandleTypeFlagBits 128 -- | bitpos = @8@ pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT- :: VkExternalMemoryHandleTypeFlagBitsKHR+ :: VkExternalMemoryHandleTypeFlagBits pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT- = VkExternalMemoryHandleTypeFlagBitsKHR 256+ = VkExternalMemoryHandleTypeFlagBits 256
@@ -17,7 +17,7 @@ -- type: @device@ -- -- Extension number: @175@- module Graphics.Vulkan.Types.Bitmasks,+ module Graphics.Vulkan.Types.Enum.VkDeviceQueueCreateFlags, module Graphics.Vulkan.Types.Struct.VkDeviceQueueCreateInfo, module Graphics.Vulkan.Types.Struct.VkDeviceQueueGlobalPriorityCreateInfoEXT, module Graphics.Vulkan.Types.BaseTypes,@@ -35,7 +35,7 @@ (Ptr (..)) import Graphics.Vulkan.Marshal import Graphics.Vulkan.Types.BaseTypes-import Graphics.Vulkan.Types.Bitmasks+import Graphics.Vulkan.Types.Enum.VkDeviceQueueCreateFlags import Graphics.Vulkan.Types.Enum.VkQueueGlobalPriorityEXT import Graphics.Vulkan.Types.Enum.VkResult (VkResult (..))@@ -66,7 +66,7 @@ is_VK_EXT_GLOBAL_PRIORITY_EXTENSION_NAME :: CString -> Bool is_VK_EXT_GLOBAL_PRIORITY_EXTENSION_NAME- = eqCStrings _VK_EXT_GLOBAL_PRIORITY_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_EXT_GLOBAL_PRIORITY_EXTENSION_NAME type VK_EXT_GLOBAL_PRIORITY_EXTENSION_NAME = "VK_EXT_global_priority"
@@ -27,7 +27,8 @@ module Graphics.Vulkan.Types.Enum.VkStructureType, module Graphics.Vulkan.Types.Struct.VkXYColorEXT, -- > #include "vk_platform.h"- vkSetHdrMetadataEXT, module Graphics.Vulkan.Types.Handles,+ vkSetHdrMetadataEXT, vkSetHdrMetadataEXTSafe,+ module Graphics.Vulkan.Types.Handles, VK_EXT_HDR_METADATA_SPEC_VERSION, pattern VK_EXT_HDR_METADATA_SPEC_VERSION, VK_EXT_HDR_METADATA_EXTENSION_NAME,@@ -48,7 +49,7 @@ -- > , const VkHdrMetadataEXT* pMetadata -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkSetHdrMetadataEXT.html vkSetHdrMetadataEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkSetHdrMetadataEXT.html vkSetHdrMetadataEXT registry at www.khronos.org> foreign import ccall unsafe "vkSetHdrMetadataEXT" vkSetHdrMetadataEXT :: VkDevice -- ^ device@@ -58,6 +59,23 @@ -> Ptr VkHdrMetadataEXT -- ^ pMetadata -> IO () +-- | > () vkSetHdrMetadataEXT+-- > ( VkDevice device+-- > , uint32_t swapchainCount+-- > , const VkSwapchainKHR* pSwapchains+-- > , const VkHdrMetadataEXT* pMetadata+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkSetHdrMetadataEXT.html vkSetHdrMetadataEXT registry at www.khronos.org>+foreign import ccall safe "vkSetHdrMetadataEXT"+ vkSetHdrMetadataEXTSafe ::+ VkDevice -- ^ device+ ->+ Word32 -- ^ swapchainCount+ -> Ptr VkSwapchainKHR -- ^ pSwapchains+ -> Ptr VkHdrMetadataEXT -- ^ pMetadata+ -> IO ()+ pattern VK_EXT_HDR_METADATA_SPEC_VERSION :: (Num a, Eq a) => a pattern VK_EXT_HDR_METADATA_SPEC_VERSION = 1@@ -81,7 +99,7 @@ is_VK_EXT_HDR_METADATA_EXTENSION_NAME :: CString -> Bool is_VK_EXT_HDR_METADATA_EXTENSION_NAME- = eqCStrings _VK_EXT_HDR_METADATA_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_EXT_HDR_METADATA_EXTENSION_NAME type VK_EXT_HDR_METADATA_EXTENSION_NAME = "VK_EXT_hdr_metadata"
@@ -49,7 +49,7 @@ is_VK_EXT_POST_DEPTH_COVERAGE_EXTENSION_NAME :: CString -> Bool is_VK_EXT_POST_DEPTH_COVERAGE_EXTENSION_NAME- = eqCStrings _VK_EXT_POST_DEPTH_COVERAGE_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_EXT_POST_DEPTH_COVERAGE_EXTENSION_NAME type VK_EXT_POST_DEPTH_COVERAGE_EXTENSION_NAME = "VK_EXT_post_depth_coverage"
@@ -26,11 +26,10 @@ pattern VK_EXT_QUEUE_FAMILY_FOREIGN_SPEC_VERSION, VK_EXT_QUEUE_FAMILY_FOREIGN_EXTENSION_NAME, pattern VK_EXT_QUEUE_FAMILY_FOREIGN_EXTENSION_NAME,- pattern VK_QUEUE_FAMILY_FOREIGN_EXT, VK_QUEUE_FAMILY_FOREIGN_EXT)+ pattern VK_QUEUE_FAMILY_FOREIGN_EXT) where import GHC.Ptr (Ptr (..))-import Graphics.Vulkan.Constants (VK_QUEUE_FAMILY_FOREIGN_EXT,- pattern VK_QUEUE_FAMILY_FOREIGN_EXT)+import Graphics.Vulkan.Constants (pattern VK_QUEUE_FAMILY_FOREIGN_EXT) import Graphics.Vulkan.Marshal pattern VK_EXT_QUEUE_FAMILY_FOREIGN_SPEC_VERSION ::@@ -57,7 +56,7 @@ is_VK_EXT_QUEUE_FAMILY_FOREIGN_EXTENSION_NAME :: CString -> Bool is_VK_EXT_QUEUE_FAMILY_FOREIGN_EXTENSION_NAME- = eqCStrings _VK_EXT_QUEUE_FAMILY_FOREIGN_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_EXT_QUEUE_FAMILY_FOREIGN_EXTENSION_NAME type VK_EXT_QUEUE_FAMILY_FOREIGN_EXTENSION_NAME = "VK_EXT_queue_family_foreign"
@@ -35,7 +35,7 @@ module Graphics.Vulkan.Types.Struct.VkOffset2D, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceLimits, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2KHR,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSampleLocationsPropertiesEXT, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseProperties, module Graphics.Vulkan.Types.Enum.VkPhysicalDeviceType,@@ -51,8 +51,9 @@ module Graphics.Vulkan.Types.Enum.VkStructureType, module Graphics.Vulkan.Types.Struct.VkSubpassSampleLocationsEXT, -- > #include "vk_platform.h"- vkCmdSetSampleLocationsEXT,+ vkCmdSetSampleLocationsEXT, vkCmdSetSampleLocationsEXTSafe, vkGetPhysicalDeviceMultisamplePropertiesEXT,+ vkGetPhysicalDeviceMultisamplePropertiesEXTSafe, module Graphics.Vulkan.Types.Handles, VK_EXT_SAMPLE_LOCATIONS_SPEC_VERSION, pattern VK_EXT_SAMPLE_LOCATIONS_SPEC_VERSION,@@ -94,7 +95,7 @@ import Graphics.Vulkan.Types.Struct.VkOffset2D import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceLimits import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2KHR+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2 import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSampleLocationsPropertiesEXT import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseProperties import Graphics.Vulkan.Types.Struct.VkPipelineMultisampleStateCreateInfo@@ -115,20 +116,36 @@ -- > , const VkSampleLocationsInfoEXT* pSampleLocationsInfo -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdSetSampleLocationsEXT.html vkCmdSetSampleLocationsEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdSetSampleLocationsEXT.html vkCmdSetSampleLocationsEXT registry at www.khronos.org> foreign import ccall unsafe "vkCmdSetSampleLocationsEXT" vkCmdSetSampleLocationsEXT :: VkCommandBuffer -- ^ commandBuffer -> Ptr VkSampleLocationsInfoEXT -- ^ pSampleLocationsInfo -> IO () +-- | queues: 'graphics'.+--+-- renderpass: @both@+--+-- > () vkCmdSetSampleLocationsEXT+-- > ( VkCommandBuffer commandBuffer+-- > , const VkSampleLocationsInfoEXT* pSampleLocationsInfo+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdSetSampleLocationsEXT.html vkCmdSetSampleLocationsEXT registry at www.khronos.org>+foreign import ccall safe "vkCmdSetSampleLocationsEXT"+ vkCmdSetSampleLocationsEXTSafe ::+ VkCommandBuffer -- ^ commandBuffer+ -> Ptr VkSampleLocationsInfoEXT -- ^ pSampleLocationsInfo+ -> IO ()+ -- | > () vkGetPhysicalDeviceMultisamplePropertiesEXT -- > ( VkPhysicalDevice physicalDevice -- > , VkSampleCountFlagBits samples -- > , VkMultisamplePropertiesEXT* pMultisampleProperties -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetPhysicalDeviceMultisamplePropertiesEXT.html vkGetPhysicalDeviceMultisamplePropertiesEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceMultisamplePropertiesEXT.html vkGetPhysicalDeviceMultisamplePropertiesEXT registry at www.khronos.org> foreign import ccall unsafe "vkGetPhysicalDeviceMultisamplePropertiesEXT" vkGetPhysicalDeviceMultisamplePropertiesEXT ::@@ -138,6 +155,22 @@ -> Ptr VkMultisamplePropertiesEXT -- ^ pMultisampleProperties -> IO () +-- | > () vkGetPhysicalDeviceMultisamplePropertiesEXT+-- > ( VkPhysicalDevice physicalDevice+-- > , VkSampleCountFlagBits samples+-- > , VkMultisamplePropertiesEXT* pMultisampleProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceMultisamplePropertiesEXT.html vkGetPhysicalDeviceMultisamplePropertiesEXT registry at www.khronos.org>+foreign import ccall safe+ "vkGetPhysicalDeviceMultisamplePropertiesEXT"+ vkGetPhysicalDeviceMultisamplePropertiesEXTSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ VkSampleCountFlagBits -- ^ samples+ -> Ptr VkMultisamplePropertiesEXT -- ^ pMultisampleProperties+ -> IO ()+ pattern VK_EXT_SAMPLE_LOCATIONS_SPEC_VERSION :: (Num a, Eq a) => a pattern VK_EXT_SAMPLE_LOCATIONS_SPEC_VERSION = 1@@ -161,7 +194,7 @@ is_VK_EXT_SAMPLE_LOCATIONS_EXTENSION_NAME :: CString -> Bool is_VK_EXT_SAMPLE_LOCATIONS_EXTENSION_NAME- = eqCStrings _VK_EXT_SAMPLE_LOCATIONS_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_EXT_SAMPLE_LOCATIONS_EXTENSION_NAME type VK_EXT_SAMPLE_LOCATIONS_EXTENSION_NAME = "VK_EXT_sample_locations"
@@ -29,7 +29,7 @@ module Graphics.Vulkan.Types.Enum.VkFilter, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceLimits, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2KHR,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseProperties, module Graphics.Vulkan.Types.Enum.VkPhysicalDeviceType,@@ -69,7 +69,7 @@ import Graphics.Vulkan.Types.Enum.VkStructureType import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceLimits import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2KHR+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2 import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseProperties import Graphics.Vulkan.Types.Struct.VkSamplerCreateInfo@@ -99,7 +99,8 @@ is_VK_EXT_SAMPLER_FILTER_MINMAX_EXTENSION_NAME :: CString -> Bool is_VK_EXT_SAMPLER_FILTER_MINMAX_EXTENSION_NAME- = eqCStrings _VK_EXT_SAMPLER_FILTER_MINMAX_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_EXT_SAMPLER_FILTER_MINMAX_EXTENSION_NAME type VK_EXT_SAMPLER_FILTER_MINMAX_EXTENSION_NAME = "VK_EXT_sampler_filter_minmax"
@@ -49,7 +49,8 @@ is_VK_EXT_SHADER_STENCIL_EXPORT_EXTENSION_NAME :: CString -> Bool is_VK_EXT_SHADER_STENCIL_EXPORT_EXTENSION_NAME- = eqCStrings _VK_EXT_SHADER_STENCIL_EXPORT_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_EXT_SHADER_STENCIL_EXPORT_EXTENSION_NAME type VK_EXT_SHADER_STENCIL_EXPORT_EXTENSION_NAME = "VK_EXT_shader_stencil_export"
@@ -49,7 +49,8 @@ is_VK_EXT_SHADER_SUBGROUP_BALLOT_EXTENSION_NAME :: CString -> Bool is_VK_EXT_SHADER_SUBGROUP_BALLOT_EXTENSION_NAME- = eqCStrings _VK_EXT_SHADER_SUBGROUP_BALLOT_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_EXT_SHADER_SUBGROUP_BALLOT_EXTENSION_NAME type VK_EXT_SHADER_SUBGROUP_BALLOT_EXTENSION_NAME = "VK_EXT_shader_subgroup_ballot"
@@ -49,7 +49,7 @@ is_VK_EXT_SHADER_SUBGROUP_VOTE_EXTENSION_NAME :: CString -> Bool is_VK_EXT_SHADER_SUBGROUP_VOTE_EXTENSION_NAME- = eqCStrings _VK_EXT_SHADER_SUBGROUP_VOTE_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_EXT_SHADER_SUBGROUP_VOTE_EXTENSION_NAME type VK_EXT_SHADER_SUBGROUP_VOTE_EXTENSION_NAME = "VK_EXT_shader_subgroup_vote"
@@ -51,7 +51,8 @@ is_VK_EXT_SHADER_VIEWPORT_INDEX_LAYER_EXTENSION_NAME :: CString -> Bool is_VK_EXT_SHADER_VIEWPORT_INDEX_LAYER_EXTENSION_NAME- = eqCStrings _VK_EXT_SHADER_VIEWPORT_INDEX_LAYER_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_EXT_SHADER_VIEWPORT_INDEX_LAYER_EXTENSION_NAME type VK_EXT_SHADER_VIEWPORT_INDEX_LAYER_EXTENSION_NAME = "VK_EXT_shader_viewport_index_layer"
@@ -69,7 +69,8 @@ is_VK_EXT_SWAPCHAIN_COLOR_SPACE_EXTENSION_NAME :: CString -> Bool is_VK_EXT_SWAPCHAIN_COLOR_SPACE_EXTENSION_NAME- = eqCStrings _VK_EXT_SWAPCHAIN_COLOR_SPACE_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_EXT_SWAPCHAIN_COLOR_SPACE_EXTENSION_NAME type VK_EXT_SWAPCHAIN_COLOR_SPACE_EXTENSION_NAME = "VK_EXT_swapchain_colorspace"
@@ -28,8 +28,10 @@ module Graphics.Vulkan.Types.Struct.VkValidationCacheCreateInfoEXT, module Graphics.Vulkan.Types.Enum.VkValidationCacheHeaderVersionEXT, -- > #include "vk_platform.h"- vkCreateValidationCacheEXT, vkDestroyValidationCacheEXT,- vkMergeValidationCachesEXT, vkGetValidationCacheDataEXT,+ vkCreateValidationCacheEXT, vkCreateValidationCacheEXTSafe,+ vkDestroyValidationCacheEXT, vkDestroyValidationCacheEXTSafe,+ vkMergeValidationCachesEXT, vkMergeValidationCachesEXTSafe,+ vkGetValidationCacheDataEXT, vkGetValidationCacheDataEXTSafe, module Graphics.Vulkan.Types.Enum.VkInternalAllocationType, module Graphics.Vulkan.Types.Enum.VkResult, module Graphics.Vulkan.Types.Enum.VkSystemAllocationScope,@@ -77,7 +79,7 @@ -- > , VkValidationCacheEXT* pValidationCache -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCreateValidationCacheEXT.html vkCreateValidationCacheEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateValidationCacheEXT.html vkCreateValidationCacheEXT registry at www.khronos.org> foreign import ccall unsafe "vkCreateValidationCacheEXT" vkCreateValidationCacheEXT :: VkDevice -- ^ device@@ -89,13 +91,36 @@ Ptr VkValidationCacheEXT -- ^ pValidationCache -> IO VkResult +-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY'.+--+-- > VkResult vkCreateValidationCacheEXT+-- > ( VkDevice device+-- > , const VkValidationCacheCreateInfoEXT* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkValidationCacheEXT* pValidationCache+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateValidationCacheEXT.html vkCreateValidationCacheEXT registry at www.khronos.org>+foreign import ccall safe "vkCreateValidationCacheEXT"+ vkCreateValidationCacheEXTSafe ::+ VkDevice -- ^ device+ ->+ Ptr VkValidationCacheCreateInfoEXT -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ ->+ Ptr VkValidationCacheEXT -- ^ pValidationCache+ -> IO VkResult+ -- | > () vkDestroyValidationCacheEXT -- > ( VkDevice device -- > , VkValidationCacheEXT validationCache -- > , const VkAllocationCallbacks* pAllocator -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkDestroyValidationCacheEXT.html vkDestroyValidationCacheEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyValidationCacheEXT.html vkDestroyValidationCacheEXT registry at www.khronos.org> foreign import ccall unsafe "vkDestroyValidationCacheEXT" vkDestroyValidationCacheEXT :: VkDevice -- ^ device@@ -104,6 +129,21 @@ -> Ptr VkAllocationCallbacks -- ^ pAllocator -> IO () +-- | > () vkDestroyValidationCacheEXT+-- > ( VkDevice device+-- > , VkValidationCacheEXT validationCache+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyValidationCacheEXT.html vkDestroyValidationCacheEXT registry at www.khronos.org>+foreign import ccall safe "vkDestroyValidationCacheEXT"+ vkDestroyValidationCacheEXTSafe ::+ VkDevice -- ^ device+ ->+ VkValidationCacheEXT -- ^ validationCache+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()+ -- | Success codes: 'VK_SUCCESS'. -- -- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.@@ -115,7 +155,7 @@ -- > , const VkValidationCacheEXT* pSrcCaches -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkMergeValidationCachesEXT.html vkMergeValidationCachesEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkMergeValidationCachesEXT.html vkMergeValidationCachesEXT registry at www.khronos.org> foreign import ccall unsafe "vkMergeValidationCachesEXT" vkMergeValidationCachesEXT :: VkDevice -- ^ device@@ -126,6 +166,28 @@ -> Ptr VkValidationCacheEXT -- ^ pSrcCaches -> IO VkResult +-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkMergeValidationCachesEXT+-- > ( VkDevice device+-- > , VkValidationCacheEXT dstCache+-- > , uint32_t srcCacheCount+-- > , const VkValidationCacheEXT* pSrcCaches+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkMergeValidationCachesEXT.html vkMergeValidationCachesEXT registry at www.khronos.org>+foreign import ccall safe "vkMergeValidationCachesEXT"+ vkMergeValidationCachesEXTSafe ::+ VkDevice -- ^ device+ ->+ VkValidationCacheEXT -- ^ dstCache+ ->+ Word32 -- ^ srcCacheCount+ -> Ptr VkValidationCacheEXT -- ^ pSrcCaches+ -> IO VkResult+ -- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'. -- -- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.@@ -137,7 +199,7 @@ -- > , void* pData -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetValidationCacheDataEXT.html vkGetValidationCacheDataEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetValidationCacheDataEXT.html vkGetValidationCacheDataEXT registry at www.khronos.org> foreign import ccall unsafe "vkGetValidationCacheDataEXT" vkGetValidationCacheDataEXT :: VkDevice -- ^ device@@ -147,6 +209,27 @@ -> Ptr Void -- ^ pData -> IO VkResult +-- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkGetValidationCacheDataEXT+-- > ( VkDevice device+-- > , VkValidationCacheEXT validationCache+-- > , size_t* pDataSize+-- > , void* pData+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetValidationCacheDataEXT.html vkGetValidationCacheDataEXT registry at www.khronos.org>+foreign import ccall safe "vkGetValidationCacheDataEXT"+ vkGetValidationCacheDataEXTSafe ::+ VkDevice -- ^ device+ ->+ VkValidationCacheEXT -- ^ validationCache+ -> Ptr CSize -- ^ pDataSize+ -> Ptr Void -- ^ pData+ -> IO VkResult+ pattern VK_EXT_VALIDATION_CACHE_SPEC_VERSION :: (Num a, Eq a) => a pattern VK_EXT_VALIDATION_CACHE_SPEC_VERSION = 1@@ -170,7 +253,7 @@ is_VK_EXT_VALIDATION_CACHE_EXTENSION_NAME :: CString -> Bool is_VK_EXT_VALIDATION_CACHE_EXTENSION_NAME- = eqCStrings _VK_EXT_VALIDATION_CACHE_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_EXT_VALIDATION_CACHE_EXTENSION_NAME type VK_EXT_VALIDATION_CACHE_EXTENSION_NAME = "VK_EXT_validation_cache"
@@ -65,7 +65,7 @@ is_VK_EXT_VALIDATION_FLAGS_EXTENSION_NAME :: CString -> Bool is_VK_EXT_VALIDATION_FLAGS_EXTENSION_NAME- = eqCStrings _VK_EXT_VALIDATION_FLAGS_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_EXT_VALIDATION_FLAGS_EXTENSION_NAME type VK_EXT_VALIDATION_FLAGS_EXTENSION_NAME = "VK_EXT_validation_flags"
@@ -0,0 +1,113 @@+{-# OPTIONS_HADDOCK not-home#-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE ViewPatterns #-}+module Graphics.Vulkan.Ext.VK_EXT_vertex_attribute_divisor+ (-- * Vulkan extension: @VK_EXT_vertex_attribute_divisor@+ -- |+ --+ -- supported: @vulkan@+ --+ -- contact: @Vikram Kushwaha @vkushwaha@+ --+ -- author: @NV@+ --+ -- type: @device@+ --+ -- Extension number: @191@+ --+ -- Required extensions: 'VK_KHR_get_physical_device_properties2'.+ --++ -- ** Required extensions: 'VK_KHR_get_physical_device_properties2'.+ module Graphics.Vulkan.Marshal,+ module Graphics.Vulkan.Types.BaseTypes,+ module Graphics.Vulkan.Types.Enum.VkFormat,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceLimits,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseProperties,+ module Graphics.Vulkan.Types.Enum.VkPhysicalDeviceType,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT,+ module Graphics.Vulkan.Types.Struct.VkPipelineVertexInputDivisorStateCreateInfoEXT,+ module Graphics.Vulkan.Types.Bitmasks,+ module Graphics.Vulkan.Types.Struct.VkPipelineVertexInputStateCreateInfo,+ module Graphics.Vulkan.Types.Enum.VkSampleCountFlags,+ module Graphics.Vulkan.Types.Enum.VkStructureType,+ module Graphics.Vulkan.Types.Struct.VkVertexInputAttributeDescription,+ module Graphics.Vulkan.Types.Struct.VkVertexInputBindingDescription,+ module Graphics.Vulkan.Types.Struct.VkVertexInputBindingDivisorDescriptionEXT,+ module Graphics.Vulkan.Types.Enum.VkVertexInputRate,+ -- > #include "vk_platform.h"+ VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_SPEC_VERSION,+ pattern VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_SPEC_VERSION,+ VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_EXTENSION_NAME,+ pattern VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_EXTENSION_NAME,+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT,+ pattern VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT)+ where+import GHC.Ptr+ (Ptr (..))+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Types.BaseTypes+import Graphics.Vulkan.Types.Bitmasks+import Graphics.Vulkan.Types.Enum.VkFormat+import Graphics.Vulkan.Types.Enum.VkPhysicalDeviceType+import Graphics.Vulkan.Types.Enum.VkSampleCountFlags+import Graphics.Vulkan.Types.Enum.VkStructureType+import Graphics.Vulkan.Types.Enum.VkVertexInputRate+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceLimits+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseProperties+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT+import Graphics.Vulkan.Types.Struct.VkPipelineVertexInputDivisorStateCreateInfoEXT+import Graphics.Vulkan.Types.Struct.VkPipelineVertexInputStateCreateInfo+import Graphics.Vulkan.Types.Struct.VkVertexInputAttributeDescription+import Graphics.Vulkan.Types.Struct.VkVertexInputBindingDescription+import Graphics.Vulkan.Types.Struct.VkVertexInputBindingDivisorDescriptionEXT++pattern VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_SPEC_VERSION ::+ (Num a, Eq a) => a++pattern VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_SPEC_VERSION = 1++type VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_SPEC_VERSION = 1++pattern VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_EXTENSION_NAME :: CString++pattern VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_EXTENSION_NAME <-+ (is_VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_EXTENSION_NAME -> True)+ where VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_EXTENSION_NAME+ = _VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_EXTENSION_NAME++{-# INLINE _VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_EXTENSION_NAME #-}++_VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_EXTENSION_NAME :: CString+_VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_EXTENSION_NAME+ = Ptr "VK_EXT_vertex_attribute_divisor\NUL"#++{-# INLINE is_VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_EXTENSION_NAME #-}++is_VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_EXTENSION_NAME ::+ CString -> Bool+is_VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_EXTENSION_NAME++type VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_EXTENSION_NAME =+ "VK_EXT_vertex_attribute_divisor"++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT+ :: VkStructureType++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT+ = VkStructureType 1000190000++pattern VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT+ :: VkStructureType++pattern VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT+ = VkStructureType 1000190001
@@ -31,7 +31,10 @@ module Graphics.Vulkan.Types.Enum.VkResult, module Graphics.Vulkan.Types.Enum.VkStructureType, -- > #include "vk_platform.h"- vkGetRefreshCycleDurationGOOGLE, vkGetPastPresentationTimingGOOGLE,+ vkGetRefreshCycleDurationGOOGLE,+ vkGetRefreshCycleDurationGOOGLESafe,+ vkGetPastPresentationTimingGOOGLE,+ vkGetPastPresentationTimingGOOGLESafe, module Graphics.Vulkan.Marshal, module Graphics.Vulkan.Types.Handles, VK_GOOGLE_DISPLAY_TIMING_SPEC_VERSION,@@ -61,7 +64,7 @@ -- > , VkRefreshCycleDurationGOOGLE* pDisplayTimingProperties -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetRefreshCycleDurationGOOGLE.html vkGetRefreshCycleDurationGOOGLE registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetRefreshCycleDurationGOOGLE.html vkGetRefreshCycleDurationGOOGLE registry at www.khronos.org> foreign import ccall unsafe "vkGetRefreshCycleDurationGOOGLE" vkGetRefreshCycleDurationGOOGLE :: VkDevice -- ^ device@@ -70,6 +73,25 @@ -> Ptr VkRefreshCycleDurationGOOGLE -- ^ pDisplayTimingProperties -> IO VkResult +-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_DEVICE_LOST', 'VK_ERROR_SURFACE_LOST_KHR'.+--+-- > VkResult vkGetRefreshCycleDurationGOOGLE+-- > ( VkDevice device+-- > , VkSwapchainKHR swapchain+-- > , VkRefreshCycleDurationGOOGLE* pDisplayTimingProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetRefreshCycleDurationGOOGLE.html vkGetRefreshCycleDurationGOOGLE registry at www.khronos.org>+foreign import ccall safe "vkGetRefreshCycleDurationGOOGLE"+ vkGetRefreshCycleDurationGOOGLESafe ::+ VkDevice -- ^ device+ ->+ VkSwapchainKHR -- ^ swapchain+ -> Ptr VkRefreshCycleDurationGOOGLE -- ^ pDisplayTimingProperties+ -> IO VkResult+ -- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'. -- -- Error codes: 'VK_ERROR_DEVICE_LOST', 'VK_ERROR_OUT_OF_DATE_KHR', 'VK_ERROR_SURFACE_LOST_KHR'.@@ -81,7 +103,7 @@ -- > , VkPastPresentationTimingGOOGLE* pPresentationTimings -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetPastPresentationTimingGOOGLE.html vkGetPastPresentationTimingGOOGLE registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPastPresentationTimingGOOGLE.html vkGetPastPresentationTimingGOOGLE registry at www.khronos.org> foreign import ccall unsafe "vkGetPastPresentationTimingGOOGLE" vkGetPastPresentationTimingGOOGLE :: VkDevice -- ^ device@@ -92,6 +114,28 @@ -> Ptr VkPastPresentationTimingGOOGLE -- ^ pPresentationTimings -> IO VkResult +-- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'.+--+-- Error codes: 'VK_ERROR_DEVICE_LOST', 'VK_ERROR_OUT_OF_DATE_KHR', 'VK_ERROR_SURFACE_LOST_KHR'.+--+-- > VkResult vkGetPastPresentationTimingGOOGLE+-- > ( VkDevice device+-- > , VkSwapchainKHR swapchain+-- > , uint32_t* pPresentationTimingCount+-- > , VkPastPresentationTimingGOOGLE* pPresentationTimings+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPastPresentationTimingGOOGLE.html vkGetPastPresentationTimingGOOGLE registry at www.khronos.org>+foreign import ccall safe "vkGetPastPresentationTimingGOOGLE"+ vkGetPastPresentationTimingGOOGLESafe ::+ VkDevice -- ^ device+ ->+ VkSwapchainKHR -- ^ swapchain+ ->+ Ptr Word32 -- ^ pPresentationTimingCount+ -> Ptr VkPastPresentationTimingGOOGLE -- ^ pPresentationTimings+ -> IO VkResult+ pattern VK_GOOGLE_DISPLAY_TIMING_SPEC_VERSION :: (Num a, Eq a) => a pattern VK_GOOGLE_DISPLAY_TIMING_SPEC_VERSION = 1@@ -115,7 +159,7 @@ is_VK_GOOGLE_DISPLAY_TIMING_EXTENSION_NAME :: CString -> Bool is_VK_GOOGLE_DISPLAY_TIMING_EXTENSION_NAME- = eqCStrings _VK_GOOGLE_DISPLAY_TIMING_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_GOOGLE_DISPLAY_TIMING_EXTENSION_NAME type VK_GOOGLE_DISPLAY_TIMING_EXTENSION_NAME = "VK_GOOGLE_display_timing"
@@ -53,7 +53,7 @@ is_VK_IMG_FILTER_CUBIC_EXTENSION_NAME :: CString -> Bool is_VK_IMG_FILTER_CUBIC_EXTENSION_NAME- = eqCStrings _VK_IMG_FILTER_CUBIC_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_IMG_FILTER_CUBIC_EXTENSION_NAME type VK_IMG_FILTER_CUBIC_EXTENSION_NAME = "VK_IMG_filter_cubic"
@@ -57,7 +57,7 @@ is_VK_IMG_FORMAT_PVRTC_EXTENSION_NAME :: CString -> Bool is_VK_IMG_FORMAT_PVRTC_EXTENSION_NAME- = eqCStrings _VK_IMG_FORMAT_PVRTC_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_IMG_FORMAT_PVRTC_EXTENSION_NAME type VK_IMG_FORMAT_PVRTC_EXTENSION_NAME = "VK_IMG_format_pvrtc"
@@ -1,3 +1,4 @@+{-# OPTIONS_GHC -fno-warn-missing-pattern-synonym-signatures#-} {-# OPTIONS_HADDOCK not-home#-} {-# LANGUAGE DataKinds #-} {-# LANGUAGE MagicHash #-}@@ -22,16 +23,7 @@ -- -- ** Required extensions: 'VK_KHR_get_physical_device_properties2', 'VK_KHR_storage_buffer_storage_class'.- module Graphics.Vulkan.Marshal,- module Graphics.Vulkan.Types.BaseTypes,- module Graphics.Vulkan.Types.Bitmasks,- module Graphics.Vulkan.Types.Struct.VkDeviceCreateInfo,- module Graphics.Vulkan.Types.Struct.VkDeviceQueueCreateInfo, module Graphics.Vulkan.Types.Struct.VkPhysicalDevice16BitStorageFeaturesKHR,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceFeatures,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceFeatures2KHR,- module Graphics.Vulkan.Types.Enum.VkStructureType,- -- > #include "vk_platform.h" VK_KHR_16BIT_STORAGE_SPEC_VERSION, pattern VK_KHR_16BIT_STORAGE_SPEC_VERSION, VK_KHR_16BIT_STORAGE_EXTENSION_NAME,@@ -40,15 +32,10 @@ where import GHC.Ptr (Ptr (..))+import Graphics.Vulkan.Core_1_1+ (pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES) import Graphics.Vulkan.Marshal-import Graphics.Vulkan.Types.BaseTypes-import Graphics.Vulkan.Types.Bitmasks-import Graphics.Vulkan.Types.Enum.VkStructureType-import Graphics.Vulkan.Types.Struct.VkDeviceCreateInfo-import Graphics.Vulkan.Types.Struct.VkDeviceQueueCreateInfo import Graphics.Vulkan.Types.Struct.VkPhysicalDevice16BitStorageFeaturesKHR-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceFeatures-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceFeatures2KHR pattern VK_KHR_16BIT_STORAGE_SPEC_VERSION :: (Num a, Eq a) => a @@ -73,12 +60,9 @@ is_VK_KHR_16BIT_STORAGE_EXTENSION_NAME :: CString -> Bool is_VK_KHR_16BIT_STORAGE_EXTENSION_NAME- = eqCStrings _VK_KHR_16BIT_STORAGE_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_KHR_16BIT_STORAGE_EXTENSION_NAME type VK_KHR_16BIT_STORAGE_EXTENSION_NAME = "VK_KHR_16bit_storage" pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES_KHR- :: VkStructureType--pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES_KHR- = VkStructureType 1000083000+ = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES
@@ -17,12 +17,12 @@ -- -- type: @instance@ --+ -- platform: @android@+ -- -- Extension number: @9@ -- -- Required extensions: 'VK_KHR_surface'. --- -- Protected by CPP ifdef: @VK_USE_PLATFORM_ANDROID_KHR@- -- -- ** Required extensions: 'VK_KHR_surface'. module Graphics.Vulkan.Types.Bitmasks,@@ -30,15 +30,14 @@ module Graphics.Vulkan.Types.BaseTypes, module Graphics.Vulkan.Types.Enum.VkStructureType, -- > #include "vk_platform.h"- --- -- > #include <android/native_window.h>- vkCreateAndroidSurfaceKHR, module Graphics.Vulkan.Marshal,+ vkCreateAndroidSurfaceKHR, vkCreateAndroidSurfaceKHRSafe,+ module Graphics.Vulkan.Marshal,+ module Graphics.Vulkan.Types.Defines, module Graphics.Vulkan.Types.Enum.VkInternalAllocationType, module Graphics.Vulkan.Types.Enum.VkResult, module Graphics.Vulkan.Types.Enum.VkSystemAllocationScope, module Graphics.Vulkan.Types.Funcpointers, module Graphics.Vulkan.Types.Handles,- module Graphics.Vulkan.Types.Include, module Graphics.Vulkan.Types.Struct.VkAllocationCallbacks, VK_KHR_ANDROID_SURFACE_SPEC_VERSION, pattern VK_KHR_ANDROID_SURFACE_SPEC_VERSION,@@ -50,13 +49,13 @@ import Graphics.Vulkan.Marshal import Graphics.Vulkan.Types.BaseTypes import Graphics.Vulkan.Types.Bitmasks+import Graphics.Vulkan.Types.Defines import Graphics.Vulkan.Types.Enum.VkInternalAllocationType import Graphics.Vulkan.Types.Enum.VkResult import Graphics.Vulkan.Types.Enum.VkStructureType import Graphics.Vulkan.Types.Enum.VkSystemAllocationScope import Graphics.Vulkan.Types.Funcpointers import Graphics.Vulkan.Types.Handles-import Graphics.Vulkan.Types.Include import Graphics.Vulkan.Types.Struct.VkAllocationCallbacks import Graphics.Vulkan.Types.Struct.VkAndroidSurfaceCreateInfoKHR @@ -71,7 +70,7 @@ -- > , VkSurfaceKHR* pSurface -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCreateAndroidSurfaceKHR.html vkCreateAndroidSurfaceKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateAndroidSurfaceKHR.html vkCreateAndroidSurfaceKHR registry at www.khronos.org> foreign import ccall unsafe "vkCreateAndroidSurfaceKHR" vkCreateAndroidSurfaceKHR :: VkInstance -- ^ instance@@ -82,6 +81,28 @@ -> Ptr VkSurfaceKHR -- ^ pSurface -> IO VkResult +-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_NATIVE_WINDOW_IN_USE_KHR'.+--+-- > VkResult vkCreateAndroidSurfaceKHR+-- > ( VkInstance instance+-- > , const VkAndroidSurfaceCreateInfoKHR* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkSurfaceKHR* pSurface+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateAndroidSurfaceKHR.html vkCreateAndroidSurfaceKHR registry at www.khronos.org>+foreign import ccall safe "vkCreateAndroidSurfaceKHR"+ vkCreateAndroidSurfaceKHRSafe ::+ VkInstance -- ^ instance+ ->+ Ptr VkAndroidSurfaceCreateInfoKHR -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkSurfaceKHR -- ^ pSurface+ -> IO VkResult+ pattern VK_KHR_ANDROID_SURFACE_SPEC_VERSION :: (Num a, Eq a) => a pattern VK_KHR_ANDROID_SURFACE_SPEC_VERSION = 6@@ -105,7 +126,7 @@ is_VK_KHR_ANDROID_SURFACE_EXTENSION_NAME :: CString -> Bool is_VK_KHR_ANDROID_SURFACE_EXTENSION_NAME- = eqCStrings _VK_KHR_ANDROID_SURFACE_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_KHR_ANDROID_SURFACE_EXTENSION_NAME type VK_KHR_ANDROID_SURFACE_EXTENSION_NAME = "VK_KHR_android_surface"
@@ -1,3 +1,4 @@+{-# OPTIONS_GHC -fno-warn-missing-pattern-synonym-signatures#-} {-# OPTIONS_HADDOCK not-home#-} {-# LANGUAGE DataKinds #-} {-# LANGUAGE ForeignFunctionInterface #-}@@ -20,13 +21,15 @@ -- Extension number: @158@ module Graphics.Vulkan.Types.Struct.VkBindBufferMemoryInfoKHR, module Graphics.Vulkan.Types.Struct.VkBindImageMemoryInfoKHR,- module Graphics.Vulkan.Types.BaseTypes,- module Graphics.Vulkan.Types.Enum.VkStructureType,- -- > #include "vk_platform.h"- vkBindBufferMemory2KHR, vkBindImageMemory2KHR,+ vkBindBufferMemory2KHR, vkBindBufferMemory2KHRSafe,+ vkBindImageMemory2KHR, vkBindImageMemory2KHRSafe, module Graphics.Vulkan.Marshal,+ module Graphics.Vulkan.Types.BaseTypes, module Graphics.Vulkan.Types.Enum.VkResult,+ module Graphics.Vulkan.Types.Enum.VkStructureType, module Graphics.Vulkan.Types.Handles,+ module Graphics.Vulkan.Types.Struct.VkBindBufferMemoryInfo,+ module Graphics.Vulkan.Types.Struct.VkBindImageMemoryInfo, VK_KHR_BIND_MEMORY_2_SPEC_VERSION, pattern VK_KHR_BIND_MEMORY_2_SPEC_VERSION, VK_KHR_BIND_MEMORY_2_EXTENSION_NAME,@@ -36,52 +39,99 @@ pattern VK_IMAGE_CREATE_ALIAS_BIT_KHR) where import GHC.Ptr (Ptr (..))+import Graphics.Vulkan.Core_1_1 (pattern VK_IMAGE_CREATE_ALIAS_BIT,+ pattern VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO,+ pattern VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO) import Graphics.Vulkan.Marshal import Graphics.Vulkan.Types.BaseTypes-import Graphics.Vulkan.Types.Enum.VkImageCreateFlags (VkImageCreateBitmask (..),- VkImageCreateFlagBits) import Graphics.Vulkan.Types.Enum.VkResult import Graphics.Vulkan.Types.Enum.VkStructureType import Graphics.Vulkan.Types.Handles+import Graphics.Vulkan.Types.Struct.VkBindBufferMemoryInfo import Graphics.Vulkan.Types.Struct.VkBindBufferMemoryInfoKHR+import Graphics.Vulkan.Types.Struct.VkBindImageMemoryInfo import Graphics.Vulkan.Types.Struct.VkBindImageMemoryInfoKHR --- | Success codes: 'VK_SUCCESS'.+-- | This is an alias for `vkBindBufferMemory2`. --+-- Success codes: 'VK_SUCCESS'.+-- -- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'. -- -- > VkResult vkBindBufferMemory2KHR -- > ( VkDevice device -- > , uint32_t bindInfoCount--- > , const VkBindBufferMemoryInfoKHR* pBindInfos+-- > , const VkBindBufferMemoryInfo* pBindInfos -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkBindBufferMemory2KHR.html vkBindBufferMemory2KHR registry at www.khronos.org>-foreign import ccall unsafe "vkBindBufferMemory2KHR"+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkBindBufferMemory2KHR.html vkBindBufferMemory2KHR registry at www.khronos.org>+foreign import ccall unsafe "vkBindBufferMemory2" vkBindBufferMemory2KHR :: VkDevice -- ^ device -> Word32 -- ^ bindInfoCount- -> Ptr VkBindBufferMemoryInfoKHR -- ^ pBindInfos- -> IO VkResult+ -> Ptr VkBindBufferMemoryInfo -- ^ pBindInfos+ -> IO VkResult --- | Success codes: 'VK_SUCCESS'.+-- | This is an alias for `vkBindBufferMemory2`. --+-- Success codes: 'VK_SUCCESS'.+-- -- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'. --+-- > VkResult vkBindBufferMemory2KHR+-- > ( VkDevice device+-- > , uint32_t bindInfoCount+-- > , const VkBindBufferMemoryInfo* pBindInfos+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkBindBufferMemory2KHR.html vkBindBufferMemory2KHR registry at www.khronos.org>+foreign import ccall safe "vkBindBufferMemory2"+ vkBindBufferMemory2KHRSafe ::+ VkDevice -- ^ device+ -> Word32 -- ^ bindInfoCount+ -> Ptr VkBindBufferMemoryInfo -- ^ pBindInfos+ -> IO VkResult++-- | This is an alias for `vkBindImageMemory2`.+--+-- Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+-- -- > VkResult vkBindImageMemory2KHR -- > ( VkDevice device -- > , uint32_t bindInfoCount--- > , const VkBindImageMemoryInfoKHR* pBindInfos+-- > , const VkBindImageMemoryInfo* pBindInfos -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkBindImageMemory2KHR.html vkBindImageMemory2KHR registry at www.khronos.org>-foreign import ccall unsafe "vkBindImageMemory2KHR"+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkBindImageMemory2KHR.html vkBindImageMemory2KHR registry at www.khronos.org>+foreign import ccall unsafe "vkBindImageMemory2" vkBindImageMemory2KHR :: VkDevice -- ^ device -> Word32 -- ^ bindInfoCount- -> Ptr VkBindImageMemoryInfoKHR -- ^ pBindInfos- -> IO VkResult+ -> Ptr VkBindImageMemoryInfo -- ^ pBindInfos+ -> IO VkResult +-- | This is an alias for `vkBindImageMemory2`.+--+-- Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkBindImageMemory2KHR+-- > ( VkDevice device+-- > , uint32_t bindInfoCount+-- > , const VkBindImageMemoryInfo* pBindInfos+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkBindImageMemory2KHR.html vkBindImageMemory2KHR registry at www.khronos.org>+foreign import ccall safe "vkBindImageMemory2"+ vkBindImageMemory2KHRSafe ::+ VkDevice -- ^ device+ -> Word32 -- ^ bindInfoCount+ -> Ptr VkBindImageMemoryInfo -- ^ pBindInfos+ -> IO VkResult+ pattern VK_KHR_BIND_MEMORY_2_SPEC_VERSION :: (Num a, Eq a) => a pattern VK_KHR_BIND_MEMORY_2_SPEC_VERSION = 1@@ -105,23 +155,14 @@ is_VK_KHR_BIND_MEMORY_2_EXTENSION_NAME :: CString -> Bool is_VK_KHR_BIND_MEMORY_2_EXTENSION_NAME- = eqCStrings _VK_KHR_BIND_MEMORY_2_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_KHR_BIND_MEMORY_2_EXTENSION_NAME type VK_KHR_BIND_MEMORY_2_EXTENSION_NAME = "VK_KHR_bind_memory2" -pattern VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO_KHR ::- VkStructureType- pattern VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO_KHR =- VkStructureType 1000157000--pattern VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO_KHR ::- VkStructureType+ VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO pattern VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO_KHR =- VkStructureType 1000157001---- | bitpos = @10@-pattern VK_IMAGE_CREATE_ALIAS_BIT_KHR :: VkImageCreateFlagBits+ VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO -pattern VK_IMAGE_CREATE_ALIAS_BIT_KHR = VkImageCreateFlagBits 1024+pattern VK_IMAGE_CREATE_ALIAS_BIT_KHR = VK_IMAGE_CREATE_ALIAS_BIT
@@ -1,3 +1,4 @@+{-# OPTIONS_GHC -fno-warn-missing-pattern-synonym-signatures#-} {-# OPTIONS_HADDOCK not-home#-} {-# LANGUAGE DataKinds #-} {-# LANGUAGE MagicHash #-}@@ -22,14 +23,8 @@ -- -- ** Required extensions: 'VK_KHR_get_memory_requirements2'.- module Graphics.Vulkan.Types.BaseTypes,- module Graphics.Vulkan.Types.Struct.VkMemoryAllocateInfo, module Graphics.Vulkan.Types.Struct.VkMemoryDedicatedAllocateInfoKHR, module Graphics.Vulkan.Types.Struct.VkMemoryDedicatedRequirementsKHR,- module Graphics.Vulkan.Types.Struct.VkMemoryRequirements,- module Graphics.Vulkan.Types.Struct.VkMemoryRequirements2KHR,- module Graphics.Vulkan.Types.Enum.VkStructureType,- -- > #include "vk_platform.h" VK_KHR_DEDICATED_ALLOCATION_SPEC_VERSION, pattern VK_KHR_DEDICATED_ALLOCATION_SPEC_VERSION, VK_KHR_DEDICATED_ALLOCATION_EXTENSION_NAME,@@ -38,14 +33,11 @@ pattern VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO_KHR) where import GHC.Ptr (Ptr (..))+import Graphics.Vulkan.Core_1_1 (pattern VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO,+ pattern VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS) import Graphics.Vulkan.Marshal-import Graphics.Vulkan.Types.BaseTypes-import Graphics.Vulkan.Types.Enum.VkStructureType-import Graphics.Vulkan.Types.Struct.VkMemoryAllocateInfo import Graphics.Vulkan.Types.Struct.VkMemoryDedicatedAllocateInfoKHR import Graphics.Vulkan.Types.Struct.VkMemoryDedicatedRequirementsKHR-import Graphics.Vulkan.Types.Struct.VkMemoryRequirements-import Graphics.Vulkan.Types.Struct.VkMemoryRequirements2KHR pattern VK_KHR_DEDICATED_ALLOCATION_SPEC_VERSION :: (Num a, Eq a) => a@@ -71,19 +63,13 @@ is_VK_KHR_DEDICATED_ALLOCATION_EXTENSION_NAME :: CString -> Bool is_VK_KHR_DEDICATED_ALLOCATION_EXTENSION_NAME- = eqCStrings _VK_KHR_DEDICATED_ALLOCATION_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_KHR_DEDICATED_ALLOCATION_EXTENSION_NAME type VK_KHR_DEDICATED_ALLOCATION_EXTENSION_NAME = "VK_KHR_dedicated_allocation" -pattern VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS_KHR ::- VkStructureType- pattern VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS_KHR =- VkStructureType 1000127000--pattern VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO_KHR ::- VkStructureType+ VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS pattern VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO_KHR =- VkStructureType 1000127001+ VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO
@@ -1,3 +1,4 @@+{-# OPTIONS_GHC -fno-warn-missing-pattern-synonym-signatures#-} {-# OPTIONS_HADDOCK not-home#-} {-# LANGUAGE DataKinds #-} {-# LANGUAGE ForeignFunctionInterface #-}@@ -18,46 +19,62 @@ -- type: @device@ -- -- Extension number: @86@- module Graphics.Vulkan.Marshal,- module Graphics.Vulkan.Types.Enum.VkDescriptorType, module Graphics.Vulkan.Types.Bitmasks, module Graphics.Vulkan.Types.Struct.VkDescriptorUpdateTemplateCreateInfoKHR, module Graphics.Vulkan.Types.Struct.VkDescriptorUpdateTemplateEntryKHR, module Graphics.Vulkan.Types.Enum.VkDescriptorUpdateTemplateTypeKHR,- module Graphics.Vulkan.Types.BaseTypes,- module Graphics.Vulkan.Types.Enum.VkPipelineBindPoint,- module Graphics.Vulkan.Types.Enum.VkStructureType,- -- > #include "vk_platform.h" vkCreateDescriptorUpdateTemplateKHR,+ vkCreateDescriptorUpdateTemplateKHRSafe, vkDestroyDescriptorUpdateTemplateKHR,+ vkDestroyDescriptorUpdateTemplateKHRSafe, vkUpdateDescriptorSetWithTemplateKHR,- vkCmdPushDescriptorSetWithTemplateKHR,+ vkUpdateDescriptorSetWithTemplateKHRSafe,+ module Graphics.Vulkan.Marshal,+ module Graphics.Vulkan.Types.BaseTypes,+ module Graphics.Vulkan.Types.Enum.VkDescriptorType,+ module Graphics.Vulkan.Types.Enum.VkDescriptorUpdateTemplateType, module Graphics.Vulkan.Types.Enum.VkInternalAllocationType,+ module Graphics.Vulkan.Types.Enum.VkPipelineBindPoint, module Graphics.Vulkan.Types.Enum.VkResult,+ module Graphics.Vulkan.Types.Enum.VkStructureType, module Graphics.Vulkan.Types.Enum.VkSystemAllocationScope, module Graphics.Vulkan.Types.Funcpointers, module Graphics.Vulkan.Types.Handles, module Graphics.Vulkan.Types.Struct.VkAllocationCallbacks,+ module Graphics.Vulkan.Types.Struct.VkDescriptorUpdateTemplateCreateInfo,+ module Graphics.Vulkan.Types.Struct.VkDescriptorUpdateTemplateEntry, VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_SPEC_VERSION, pattern VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_SPEC_VERSION, VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME, pattern VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME, pattern VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO_KHR,- pattern VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT,- pattern VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR)+ pattern VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR,+ pattern VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR,+ -- ** Required extensions: 'VK_KHR_push_descriptor'.+ vkCmdPushDescriptorSetWithTemplateKHR,+ vkCmdPushDescriptorSetWithTemplateKHRSafe,+ pattern VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR,+ -- ** Required extensions: 'VK_EXT_debug_report'.+ pattern VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT) where import GHC.Ptr (Ptr (..))+import Graphics.Vulkan.Core_1_1+ (pattern VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE,+ pattern VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO)+import Graphics.Vulkan.Ext.VK_EXT_debug_report+ (pattern VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT)+import Graphics.Vulkan.Ext.VK_KHR_push_descriptor+ (pattern VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR,+ vkCmdPushDescriptorSetWithTemplateKHR,+ vkCmdPushDescriptorSetWithTemplateKHRSafe) import Graphics.Vulkan.Marshal import Graphics.Vulkan.Types.BaseTypes import Graphics.Vulkan.Types.Bitmasks-import Graphics.Vulkan.Types.Enum.VkDebugReportObjectTypeEXT- (VkDebugReportObjectTypeEXT (..)) import Graphics.Vulkan.Types.Enum.VkDescriptorType+import Graphics.Vulkan.Types.Enum.VkDescriptorUpdateTemplateType import Graphics.Vulkan.Types.Enum.VkDescriptorUpdateTemplateTypeKHR import Graphics.Vulkan.Types.Enum.VkInternalAllocationType-import Graphics.Vulkan.Types.Enum.VkObjectType- (VkObjectType (..)) import Graphics.Vulkan.Types.Enum.VkPipelineBindPoint import Graphics.Vulkan.Types.Enum.VkResult import Graphics.Vulkan.Types.Enum.VkStructureType@@ -65,88 +82,132 @@ import Graphics.Vulkan.Types.Funcpointers import Graphics.Vulkan.Types.Handles import Graphics.Vulkan.Types.Struct.VkAllocationCallbacks+import Graphics.Vulkan.Types.Struct.VkDescriptorUpdateTemplateCreateInfo import Graphics.Vulkan.Types.Struct.VkDescriptorUpdateTemplateCreateInfoKHR+import Graphics.Vulkan.Types.Struct.VkDescriptorUpdateTemplateEntry import Graphics.Vulkan.Types.Struct.VkDescriptorUpdateTemplateEntryKHR --- | Success codes: 'VK_SUCCESS'.+-- | This is an alias for `vkCreateDescriptorUpdateTemplate`. --+-- Success codes: 'VK_SUCCESS'.+-- -- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'. -- -- > VkResult vkCreateDescriptorUpdateTemplateKHR -- > ( VkDevice device--- > , const VkDescriptorUpdateTemplateCreateInfoKHR* pCreateInfo+-- > , const VkDescriptorUpdateTemplateCreateInfo* pCreateInfo -- > , const VkAllocationCallbacks* pAllocator--- > , VkDescriptorUpdateTemplateKHR* pDescriptorUpdateTemplate+-- > , VkDescriptorUpdateTemplate* pDescriptorUpdateTemplate -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCreateDescriptorUpdateTemplateKHR.html vkCreateDescriptorUpdateTemplateKHR registry at www.khronos.org>-foreign import ccall unsafe "vkCreateDescriptorUpdateTemplateKHR"+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateDescriptorUpdateTemplateKHR.html vkCreateDescriptorUpdateTemplateKHR registry at www.khronos.org>+foreign import ccall unsafe "vkCreateDescriptorUpdateTemplate" vkCreateDescriptorUpdateTemplateKHR :: VkDevice -- ^ device ->- Ptr VkDescriptorUpdateTemplateCreateInfoKHR -- ^ pCreateInfo- ->+ Ptr VkDescriptorUpdateTemplateCreateInfo -- ^ pCreateInfo+ -> Ptr VkAllocationCallbacks -- ^ pAllocator ->- Ptr VkDescriptorUpdateTemplateKHR -- ^ pDescriptorUpdateTemplate- -> IO VkResult+ Ptr VkDescriptorUpdateTemplate -- ^ pDescriptorUpdateTemplate+ -> IO VkResult --- | > () vkDestroyDescriptorUpdateTemplateKHR+-- | This is an alias for `vkCreateDescriptorUpdateTemplate`.+--+-- Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreateDescriptorUpdateTemplateKHR -- > ( VkDevice device--- > , VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate+-- > , const VkDescriptorUpdateTemplateCreateInfo* pCreateInfo -- > , const VkAllocationCallbacks* pAllocator+-- > , VkDescriptorUpdateTemplate* pDescriptorUpdateTemplate -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkDestroyDescriptorUpdateTemplateKHR.html vkDestroyDescriptorUpdateTemplateKHR registry at www.khronos.org>-foreign import ccall unsafe "vkDestroyDescriptorUpdateTemplateKHR"+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateDescriptorUpdateTemplateKHR.html vkCreateDescriptorUpdateTemplateKHR registry at www.khronos.org>+foreign import ccall safe "vkCreateDescriptorUpdateTemplate"+ vkCreateDescriptorUpdateTemplateKHRSafe ::+ VkDevice -- ^ device+ ->+ Ptr VkDescriptorUpdateTemplateCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ ->+ Ptr VkDescriptorUpdateTemplate -- ^ pDescriptorUpdateTemplate+ -> IO VkResult++-- | This is an alias for `vkDestroyDescriptorUpdateTemplate`.+--+-- > () vkDestroyDescriptorUpdateTemplateKHR+-- > ( VkDevice device+-- > , VkDescriptorUpdateTemplate descriptorUpdateTemplate+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyDescriptorUpdateTemplateKHR.html vkDestroyDescriptorUpdateTemplateKHR registry at www.khronos.org>+foreign import ccall unsafe "vkDestroyDescriptorUpdateTemplate" vkDestroyDescriptorUpdateTemplateKHR :: VkDevice -- ^ device ->- VkDescriptorUpdateTemplateKHR -- ^ descriptorUpdateTemplate- -> Ptr VkAllocationCallbacks -- ^ pAllocator- -> IO ()+ VkDescriptorUpdateTemplate -- ^ descriptorUpdateTemplate+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO () --- | > () vkUpdateDescriptorSetWithTemplateKHR+-- | This is an alias for `vkDestroyDescriptorUpdateTemplate`.+--+-- > () vkDestroyDescriptorUpdateTemplateKHR -- > ( VkDevice device+-- > , VkDescriptorUpdateTemplate descriptorUpdateTemplate+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyDescriptorUpdateTemplateKHR.html vkDestroyDescriptorUpdateTemplateKHR registry at www.khronos.org>+foreign import ccall safe "vkDestroyDescriptorUpdateTemplate"+ vkDestroyDescriptorUpdateTemplateKHRSafe ::+ VkDevice -- ^ device+ ->+ VkDescriptorUpdateTemplate -- ^ descriptorUpdateTemplate+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()++-- | This is an alias for `vkUpdateDescriptorSetWithTemplate`.+--+-- > () vkUpdateDescriptorSetWithTemplateKHR+-- > ( VkDevice device -- > , VkDescriptorSet descriptorSet--- > , VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate+-- > , VkDescriptorUpdateTemplate descriptorUpdateTemplate -- > , const void* pData -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkUpdateDescriptorSetWithTemplateKHR.html vkUpdateDescriptorSetWithTemplateKHR registry at www.khronos.org>-foreign import ccall unsafe "vkUpdateDescriptorSetWithTemplateKHR"+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkUpdateDescriptorSetWithTemplateKHR.html vkUpdateDescriptorSetWithTemplateKHR registry at www.khronos.org>+foreign import ccall unsafe "vkUpdateDescriptorSetWithTemplate" vkUpdateDescriptorSetWithTemplateKHR :: VkDevice -- ^ device -> VkDescriptorSet -- ^ descriptorSet- ->- VkDescriptorUpdateTemplateKHR -- ^ descriptorUpdateTemplate- -> Ptr Void -- ^ pData- -> IO ()+ -> VkDescriptorUpdateTemplate -- ^ descriptorUpdateTemplate+ -> Ptr Void -- ^ pData+ -> IO () --- | queues: 'graphics', 'compute'.------ renderpass: @both@+-- | This is an alias for `vkUpdateDescriptorSetWithTemplate`. ----- > () vkCmdPushDescriptorSetWithTemplateKHR--- > ( VkCommandBuffer commandBuffer--- > , VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate--- > , VkPipelineLayout layout--- > , uint32_t set+-- > () vkUpdateDescriptorSetWithTemplateKHR+-- > ( VkDevice device+-- > , VkDescriptorSet descriptorSet+-- > , VkDescriptorUpdateTemplate descriptorUpdateTemplate -- > , const void* pData -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdPushDescriptorSetWithTemplateKHR.html vkCmdPushDescriptorSetWithTemplateKHR registry at www.khronos.org>-foreign import ccall unsafe "vkCmdPushDescriptorSetWithTemplateKHR"- vkCmdPushDescriptorSetWithTemplateKHR ::- VkCommandBuffer -- ^ commandBuffer- ->- VkDescriptorUpdateTemplateKHR -- ^ descriptorUpdateTemplate- ->- VkPipelineLayout -- ^ layout- -> Word32 -- ^ set- -> Ptr Void -- ^ pData- -> IO ()+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkUpdateDescriptorSetWithTemplateKHR.html vkUpdateDescriptorSetWithTemplateKHR registry at www.khronos.org>+foreign import ccall safe "vkUpdateDescriptorSetWithTemplate"+ vkUpdateDescriptorSetWithTemplateKHRSafe ::+ VkDevice -- ^ device+ ->+ VkDescriptorSet -- ^ descriptorSet+ -> VkDescriptorUpdateTemplate -- ^ descriptorUpdateTemplate+ -> Ptr Void -- ^ pData+ -> IO () pattern VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_SPEC_VERSION :: (Num a, Eq a) => a@@ -173,26 +234,20 @@ is_VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME :: CString -> Bool is_VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME- = eqCStrings _VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME type VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME = "VK_KHR_descriptor_update_template" pattern VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO_KHR- :: VkStructureType+ = VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO -pattern VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO_KHR- = VkStructureType 1000085000+pattern VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR =+ VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE -pattern VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT- :: VkDebugReportObjectTypeEXT+pattern VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR =+ VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET pattern VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT- = VkDebugReportObjectTypeEXT 1000085000---- | VkDescriptorUpdateTemplateKHR-pattern VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR ::- VkObjectType--pattern VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR =- VkObjectType 1000085000+ = VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT
@@ -0,0 +1,395 @@+{-# OPTIONS_GHC -fno-warn-missing-pattern-synonym-signatures#-}+{-# OPTIONS_GHC -fno-warn-unused-imports#-}+{-# OPTIONS_HADDOCK not-home#-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE ForeignFunctionInterface #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE ViewPatterns #-}+module Graphics.Vulkan.Ext.VK_KHR_device_group+ (-- * Vulkan extension: @VK_KHR_device_group@+ -- |+ --+ -- supported: @vulkan@+ --+ -- contact: @Jeff Bolz @jbolz@+ --+ -- author: @KHR@+ --+ -- type: @device@+ --+ -- Extension number: @61@+ --+ -- Required extensions: 'VK_KHR_device_group_creation'.+ --++ -- ** Required extensions: 'VK_KHR_device_group_creation'.+ module Graphics.Vulkan.Types.Struct.VkDeviceGroupBindSparseInfoKHR,+ module Graphics.Vulkan.Types.Struct.VkDeviceGroupCommandBufferBeginInfoKHR,+ module Graphics.Vulkan.Types.Struct.VkDeviceGroupRenderPassBeginInfoKHR,+ module Graphics.Vulkan.Types.Struct.VkDeviceGroupSubmitInfoKHR,+ module Graphics.Vulkan.Types.Enum.VkMemoryAllocateFlagBitsKHR,+ module Graphics.Vulkan.Types.Struct.VkMemoryAllocateFlagsInfoKHR,+ module Graphics.Vulkan.Types.Bitmasks,+ module Graphics.Vulkan.Types.Enum.VkPeerMemoryFeatureFlagBitsKHR,+ vkGetDeviceGroupPeerMemoryFeaturesKHR,+ vkGetDeviceGroupPeerMemoryFeaturesKHRSafe, vkCmdSetDeviceMaskKHR,+ vkCmdSetDeviceMaskKHRSafe, vkCmdDispatchBaseKHR,+ vkCmdDispatchBaseKHRSafe, module Graphics.Vulkan.Marshal,+ module Graphics.Vulkan.Types.BaseTypes,+ module Graphics.Vulkan.Types.Enum.VkPeerMemoryFeatureFlags,+ module Graphics.Vulkan.Types.Handles,+ VK_KHR_DEVICE_GROUP_SPEC_VERSION,+ pattern VK_KHR_DEVICE_GROUP_SPEC_VERSION,+ VK_KHR_DEVICE_GROUP_EXTENSION_NAME,+ pattern VK_KHR_DEVICE_GROUP_EXTENSION_NAME,+ pattern VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO_KHR,+ pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO_KHR,+ pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO_KHR,+ pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO_KHR,+ pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO_KHR,+ pattern VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT_KHR,+ pattern VK_PEER_MEMORY_FEATURE_COPY_DST_BIT_KHR,+ pattern VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT_KHR,+ pattern VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT_KHR,+ pattern VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT_KHR,+ pattern VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHR,+ pattern VK_PIPELINE_CREATE_DISPATCH_BASE_KHR,+ pattern VK_DEPENDENCY_DEVICE_GROUP_BIT_KHR,+ -- ** Required extensions: 'VK_KHR_bind_memory2', 'VK_KHR_device_group_creation'.+ module Graphics.Vulkan.Types.Struct.VkBindBufferMemoryDeviceGroupInfoKHR,+ module Graphics.Vulkan.Types.Struct.VkBindImageMemoryDeviceGroupInfoKHR,+ pattern VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO_KHR,+ pattern VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO_KHR,+ pattern VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR,+ -- ** Required extensions: 'VK_KHR_surface', 'VK_KHR_device_group_creation'.+ module Graphics.Vulkan.Types.Struct.VkDeviceGroupPresentCapabilitiesKHR,+ module Graphics.Vulkan.Types.Enum.VkDeviceGroupPresentModeFlagsKHR,+ module Graphics.Vulkan.Types.Enum.VkStructureType,+ -- > #include "vk_platform.h"+ vkGetDeviceGroupPresentCapabilitiesKHR,+ vkGetDeviceGroupPresentCapabilitiesKHRSafe,+ vkGetDeviceGroupSurfacePresentModesKHR,+ vkGetDeviceGroupSurfacePresentModesKHRSafe,+ vkGetPhysicalDevicePresentRectanglesKHR,+ vkGetPhysicalDevicePresentRectanglesKHRSafe,+ pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR,+ -- ** Required extensions: 'VK_KHR_swapchain', 'VK_KHR_device_group_creation'.+ module Graphics.Vulkan.Types.Struct.VkAcquireNextImageInfoKHR,+ module Graphics.Vulkan.Types.Struct.VkBindImageMemoryInfo,+ module Graphics.Vulkan.Types.Struct.VkBindImageMemorySwapchainInfoKHR,+ module Graphics.Vulkan.Types.Enum.VkColorSpaceKHR,+ module Graphics.Vulkan.Types.Enum.VkCompositeAlphaFlagsKHR,+ module Graphics.Vulkan.Types.Struct.VkDeviceGroupPresentInfoKHR,+ module Graphics.Vulkan.Types.Struct.VkDeviceGroupSwapchainCreateInfoKHR,+ module Graphics.Vulkan.Types.Struct.VkExtent2D,+ module Graphics.Vulkan.Types.Struct.VkExtent3D,+ module Graphics.Vulkan.Types.Enum.VkFormat,+ module Graphics.Vulkan.Types.Enum.VkImageCreateFlags,+ module Graphics.Vulkan.Types.Struct.VkImageCreateInfo,+ module Graphics.Vulkan.Types.Enum.VkImageLayout,+ module Graphics.Vulkan.Types.Struct.VkImageSwapchainCreateInfoKHR,+ module Graphics.Vulkan.Types.Enum.VkImageTiling,+ module Graphics.Vulkan.Types.Enum.VkImageType,+ module Graphics.Vulkan.Types.Enum.VkImageUsageFlags,+ module Graphics.Vulkan.Types.Struct.VkPresentInfoKHR,+ module Graphics.Vulkan.Types.Enum.VkPresentModeKHR,+ module Graphics.Vulkan.Types.Enum.VkResult,+ module Graphics.Vulkan.Types.Enum.VkSampleCountFlags,+ module Graphics.Vulkan.Types.Enum.VkSharingMode,+ module Graphics.Vulkan.Types.Enum.VkSurfaceTransformFlagsKHR,+ module Graphics.Vulkan.Types.Enum.VkSwapchainCreateFlagsKHR,+ module Graphics.Vulkan.Types.Struct.VkSwapchainCreateInfoKHR,+ -- > #include "vk_platform.h"+ vkAcquireNextImage2KHR, vkAcquireNextImage2KHRSafe,+ pattern VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR,+ pattern VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR,+ pattern VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR,+ pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR,+ pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR,+ pattern VK_SWAPCHAIN_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR)+ where+import GHC.Ptr+ (Ptr (..))+import Graphics.Vulkan.Core_1_1+ (pattern VK_DEPENDENCY_DEVICE_GROUP_BIT,+ pattern VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT,+ pattern VK_PIPELINE_CREATE_DISPATCH_BASE,+ pattern VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT,+ pattern VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO,+ pattern VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO,+ pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO,+ pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO,+ pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO,+ pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO,+ pattern VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO)+import Graphics.Vulkan.Ext.VK_KHR_swapchain+ (pattern VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR,+ pattern VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR,+ pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR,+ pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR,+ pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR,+ pattern VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR,+ pattern VK_SWAPCHAIN_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR,+ vkAcquireNextImage2KHR,+ vkAcquireNextImage2KHRSafe,+ vkGetDeviceGroupPresentCapabilitiesKHR,+ vkGetDeviceGroupPresentCapabilitiesKHRSafe,+ vkGetDeviceGroupSurfacePresentModesKHR,+ vkGetDeviceGroupSurfacePresentModesKHRSafe,+ vkGetPhysicalDevicePresentRectanglesKHR,+ vkGetPhysicalDevicePresentRectanglesKHRSafe)+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Types.BaseTypes+import Graphics.Vulkan.Types.Bitmasks+import Graphics.Vulkan.Types.Enum.VkColorSpaceKHR+import Graphics.Vulkan.Types.Enum.VkCompositeAlphaFlagsKHR+import Graphics.Vulkan.Types.Enum.VkDeviceGroupPresentModeFlagsKHR+import Graphics.Vulkan.Types.Enum.VkFormat+import Graphics.Vulkan.Types.Enum.VkImageCreateFlags+import Graphics.Vulkan.Types.Enum.VkImageLayout+import Graphics.Vulkan.Types.Enum.VkImageTiling+import Graphics.Vulkan.Types.Enum.VkImageType+import Graphics.Vulkan.Types.Enum.VkImageUsageFlags+import Graphics.Vulkan.Types.Enum.VkMemoryAllocateFlagBitsKHR+import Graphics.Vulkan.Types.Enum.VkMemoryAllocateFlags+ (VkMemoryAllocateBitmask (..))+import Graphics.Vulkan.Types.Enum.VkPeerMemoryFeatureFlagBitsKHR+import Graphics.Vulkan.Types.Enum.VkPeerMemoryFeatureFlags+import Graphics.Vulkan.Types.Enum.VkPresentModeKHR+import Graphics.Vulkan.Types.Enum.VkResult+import Graphics.Vulkan.Types.Enum.VkSampleCountFlags+import Graphics.Vulkan.Types.Enum.VkSharingMode+import Graphics.Vulkan.Types.Enum.VkStructureType+import Graphics.Vulkan.Types.Enum.VkSurfaceTransformFlagsKHR+import Graphics.Vulkan.Types.Enum.VkSwapchainCreateFlagsKHR+import Graphics.Vulkan.Types.Handles+import Graphics.Vulkan.Types.Struct.VkAcquireNextImageInfoKHR+import Graphics.Vulkan.Types.Struct.VkBindBufferMemoryDeviceGroupInfoKHR+import Graphics.Vulkan.Types.Struct.VkBindImageMemoryDeviceGroupInfoKHR+import Graphics.Vulkan.Types.Struct.VkBindImageMemoryInfo+import Graphics.Vulkan.Types.Struct.VkBindImageMemorySwapchainInfoKHR+import Graphics.Vulkan.Types.Struct.VkDeviceGroupBindSparseInfoKHR+import Graphics.Vulkan.Types.Struct.VkDeviceGroupCommandBufferBeginInfoKHR+import Graphics.Vulkan.Types.Struct.VkDeviceGroupPresentCapabilitiesKHR+import Graphics.Vulkan.Types.Struct.VkDeviceGroupPresentInfoKHR+import Graphics.Vulkan.Types.Struct.VkDeviceGroupRenderPassBeginInfoKHR+import Graphics.Vulkan.Types.Struct.VkDeviceGroupSubmitInfoKHR+import Graphics.Vulkan.Types.Struct.VkDeviceGroupSwapchainCreateInfoKHR+import Graphics.Vulkan.Types.Struct.VkExtent2D+import Graphics.Vulkan.Types.Struct.VkExtent3D+import Graphics.Vulkan.Types.Struct.VkImageCreateInfo+import Graphics.Vulkan.Types.Struct.VkImageSwapchainCreateInfoKHR+import Graphics.Vulkan.Types.Struct.VkMemoryAllocateFlagsInfoKHR+import Graphics.Vulkan.Types.Struct.VkPresentInfoKHR+import Graphics.Vulkan.Types.Struct.VkSwapchainCreateInfoKHR++-- | This is an alias for `vkGetDeviceGroupPeerMemoryFeatures`.+--+-- > () vkGetDeviceGroupPeerMemoryFeaturesKHR+-- > ( VkDevice device+-- > , uint32_t heapIndex+-- > , uint32_t localDeviceIndex+-- > , uint32_t remoteDeviceIndex+-- > , VkPeerMemoryFeatureFlags* pPeerMemoryFeatures+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetDeviceGroupPeerMemoryFeaturesKHR.html vkGetDeviceGroupPeerMemoryFeaturesKHR registry at www.khronos.org>+foreign import ccall unsafe "vkGetDeviceGroupPeerMemoryFeatures"+ vkGetDeviceGroupPeerMemoryFeaturesKHR ::+ VkDevice -- ^ device+ ->+ Word32 -- ^ heapIndex+ -> Word32 -- ^ localDeviceIndex+ -> Word32 -- ^ remoteDeviceIndex+ -> Ptr VkPeerMemoryFeatureFlags -- ^ pPeerMemoryFeatures+ -> IO ()++-- | This is an alias for `vkGetDeviceGroupPeerMemoryFeatures`.+--+-- > () vkGetDeviceGroupPeerMemoryFeaturesKHR+-- > ( VkDevice device+-- > , uint32_t heapIndex+-- > , uint32_t localDeviceIndex+-- > , uint32_t remoteDeviceIndex+-- > , VkPeerMemoryFeatureFlags* pPeerMemoryFeatures+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetDeviceGroupPeerMemoryFeaturesKHR.html vkGetDeviceGroupPeerMemoryFeaturesKHR registry at www.khronos.org>+foreign import ccall safe "vkGetDeviceGroupPeerMemoryFeatures"+ vkGetDeviceGroupPeerMemoryFeaturesKHRSafe ::+ VkDevice -- ^ device+ ->+ Word32 -- ^ heapIndex+ -> Word32 -- ^ localDeviceIndex+ -> Word32 -- ^ remoteDeviceIndex+ -> Ptr VkPeerMemoryFeatureFlags -- ^ pPeerMemoryFeatures+ -> IO ()++-- | This is an alias for `vkCmdSetDeviceMask`.+--+-- queues: 'graphics', 'compute', 'transfer'.+--+-- renderpass: @both@+--+-- > () vkCmdSetDeviceMaskKHR+-- > ( VkCommandBuffer commandBuffer+-- > , uint32_t deviceMask+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdSetDeviceMaskKHR.html vkCmdSetDeviceMaskKHR registry at www.khronos.org>+foreign import ccall unsafe "vkCmdSetDeviceMask"+ vkCmdSetDeviceMaskKHR :: VkCommandBuffer -- ^ commandBuffer+ -> Word32 -- ^ deviceMask+ -> IO ()++-- | This is an alias for `vkCmdSetDeviceMask`.+--+-- queues: 'graphics', 'compute', 'transfer'.+--+-- renderpass: @both@+--+-- > () vkCmdSetDeviceMaskKHR+-- > ( VkCommandBuffer commandBuffer+-- > , uint32_t deviceMask+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdSetDeviceMaskKHR.html vkCmdSetDeviceMaskKHR registry at www.khronos.org>+foreign import ccall safe "vkCmdSetDeviceMask"+ vkCmdSetDeviceMaskKHRSafe :: VkCommandBuffer -- ^ commandBuffer+ -> Word32 -- ^ deviceMask+ -> IO ()++-- | This is an alias for `vkCmdDispatchBase`.+--+-- queues: 'compute'.+--+-- renderpass: @outside@+--+-- > () vkCmdDispatchBaseKHR+-- > ( VkCommandBuffer commandBuffer+-- > , uint32_t baseGroupX+-- > , uint32_t baseGroupY+-- > , uint32_t baseGroupZ+-- > , uint32_t groupCountX+-- > , uint32_t groupCountY+-- > , uint32_t groupCountZ+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdDispatchBaseKHR.html vkCmdDispatchBaseKHR registry at www.khronos.org>+foreign import ccall unsafe "vkCmdDispatchBase"+ vkCmdDispatchBaseKHR ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ Word32 -- ^ baseGroupX+ -> Word32 -- ^ baseGroupY+ -> Word32 -- ^ baseGroupZ+ -> Word32 -- ^ groupCountX+ -> Word32 -- ^ groupCountY+ -> Word32 -- ^ groupCountZ+ -> IO ()++-- | This is an alias for `vkCmdDispatchBase`.+--+-- queues: 'compute'.+--+-- renderpass: @outside@+--+-- > () vkCmdDispatchBaseKHR+-- > ( VkCommandBuffer commandBuffer+-- > , uint32_t baseGroupX+-- > , uint32_t baseGroupY+-- > , uint32_t baseGroupZ+-- > , uint32_t groupCountX+-- > , uint32_t groupCountY+-- > , uint32_t groupCountZ+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdDispatchBaseKHR.html vkCmdDispatchBaseKHR registry at www.khronos.org>+foreign import ccall safe "vkCmdDispatchBase"+ vkCmdDispatchBaseKHRSafe ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ Word32 -- ^ baseGroupX+ -> Word32 -- ^ baseGroupY+ -> Word32 -- ^ baseGroupZ+ -> Word32 -- ^ groupCountX+ -> Word32 -- ^ groupCountY+ -> Word32 -- ^ groupCountZ+ -> IO ()++pattern VK_KHR_DEVICE_GROUP_SPEC_VERSION :: (Num a, Eq a) => a++pattern VK_KHR_DEVICE_GROUP_SPEC_VERSION = 3++type VK_KHR_DEVICE_GROUP_SPEC_VERSION = 3++pattern VK_KHR_DEVICE_GROUP_EXTENSION_NAME :: CString++pattern VK_KHR_DEVICE_GROUP_EXTENSION_NAME <-+ (is_VK_KHR_DEVICE_GROUP_EXTENSION_NAME -> True)+ where VK_KHR_DEVICE_GROUP_EXTENSION_NAME+ = _VK_KHR_DEVICE_GROUP_EXTENSION_NAME++{-# INLINE _VK_KHR_DEVICE_GROUP_EXTENSION_NAME #-}++_VK_KHR_DEVICE_GROUP_EXTENSION_NAME :: CString+_VK_KHR_DEVICE_GROUP_EXTENSION_NAME+ = Ptr "VK_KHR_device_group\NUL"#++{-# INLINE is_VK_KHR_DEVICE_GROUP_EXTENSION_NAME #-}++is_VK_KHR_DEVICE_GROUP_EXTENSION_NAME :: CString -> Bool+is_VK_KHR_DEVICE_GROUP_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_KHR_DEVICE_GROUP_EXTENSION_NAME++type VK_KHR_DEVICE_GROUP_EXTENSION_NAME = "VK_KHR_device_group"++pattern VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO_KHR =+ VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO++pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO_KHR =+ VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO++pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO_KHR+ = VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO++pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO_KHR =+ VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO++pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO_KHR =+ VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO++pattern VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT_KHR =+ VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT++pattern VK_PEER_MEMORY_FEATURE_COPY_DST_BIT_KHR =+ VK_PEER_MEMORY_FEATURE_COPY_DST_BIT++pattern VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT_KHR =+ VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT++pattern VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT_KHR =+ VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT++pattern VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT_KHR =+ VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT++pattern VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHR =+ VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT++pattern VK_PIPELINE_CREATE_DISPATCH_BASE_KHR =+ VK_PIPELINE_CREATE_DISPATCH_BASE++pattern VK_DEPENDENCY_DEVICE_GROUP_BIT_KHR =+ VK_DEPENDENCY_DEVICE_GROUP_BIT++pattern VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO_KHR+ = VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO++pattern VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO_KHR =+ VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO++pattern VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR =+ VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT
@@ -0,0 +1,134 @@+{-# OPTIONS_GHC -fno-warn-missing-pattern-synonym-signatures#-}+{-# OPTIONS_HADDOCK not-home#-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE ForeignFunctionInterface #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE ViewPatterns #-}+module Graphics.Vulkan.Ext.VK_KHR_device_group_creation+ (-- * Vulkan extension: @VK_KHR_device_group_creation@+ -- |+ --+ -- supported: @vulkan@+ --+ -- contact: @Jeff Bolz @jbolz@+ --+ -- author: @KHR@+ --+ -- type: @instance@+ --+ -- Extension number: @71@+ module Graphics.Vulkan.Types.Struct.VkDeviceGroupDeviceCreateInfoKHR,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceGroupPropertiesKHR,+ vkEnumeratePhysicalDeviceGroupsKHR,+ vkEnumeratePhysicalDeviceGroupsKHRSafe,+ module Graphics.Vulkan.Marshal,+ module Graphics.Vulkan.Types.BaseTypes,+ module Graphics.Vulkan.Types.Enum.VkResult,+ module Graphics.Vulkan.Types.Enum.VkStructureType,+ module Graphics.Vulkan.Types.Handles,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceGroupProperties,+ VK_KHR_DEVICE_GROUP_CREATION_SPEC_VERSION,+ pattern VK_KHR_DEVICE_GROUP_CREATION_SPEC_VERSION,+ VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME,+ pattern VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME,+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES_KHR,+ pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO_KHR,+ pattern VK_MAX_DEVICE_GROUP_SIZE_KHR,+ pattern VK_MEMORY_HEAP_MULTI_INSTANCE_BIT_KHR)+ where+import GHC.Ptr (Ptr (..))+import Graphics.Vulkan.Constants (pattern VK_MAX_DEVICE_GROUP_SIZE_KHR)+import Graphics.Vulkan.Core_1_1 (pattern VK_MEMORY_HEAP_MULTI_INSTANCE_BIT,+ pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO,+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES)+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Types.BaseTypes+import Graphics.Vulkan.Types.Enum.VkResult+import Graphics.Vulkan.Types.Enum.VkStructureType+import Graphics.Vulkan.Types.Handles+import Graphics.Vulkan.Types.Struct.VkDeviceGroupDeviceCreateInfoKHR+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceGroupProperties+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceGroupPropertiesKHR++-- | This is an alias for `vkEnumeratePhysicalDeviceGroups`.+--+-- Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_INITIALIZATION_FAILED'.+--+-- > VkResult vkEnumeratePhysicalDeviceGroupsKHR+-- > ( VkInstance instance+-- > , uint32_t* pPhysicalDeviceGroupCount+-- > , VkPhysicalDeviceGroupProperties* pPhysicalDeviceGroupProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkEnumeratePhysicalDeviceGroupsKHR.html vkEnumeratePhysicalDeviceGroupsKHR registry at www.khronos.org>+foreign import ccall unsafe "vkEnumeratePhysicalDeviceGroups"+ vkEnumeratePhysicalDeviceGroupsKHR ::+ VkInstance -- ^ instance+ ->+ Ptr Word32 -- ^ pPhysicalDeviceGroupCount+ -> Ptr VkPhysicalDeviceGroupProperties -- ^ pPhysicalDeviceGroupProperties+ -> IO VkResult++-- | This is an alias for `vkEnumeratePhysicalDeviceGroups`.+--+-- Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_INITIALIZATION_FAILED'.+--+-- > VkResult vkEnumeratePhysicalDeviceGroupsKHR+-- > ( VkInstance instance+-- > , uint32_t* pPhysicalDeviceGroupCount+-- > , VkPhysicalDeviceGroupProperties* pPhysicalDeviceGroupProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkEnumeratePhysicalDeviceGroupsKHR.html vkEnumeratePhysicalDeviceGroupsKHR registry at www.khronos.org>+foreign import ccall safe "vkEnumeratePhysicalDeviceGroups"+ vkEnumeratePhysicalDeviceGroupsKHRSafe ::+ VkInstance -- ^ instance+ ->+ Ptr Word32 -- ^ pPhysicalDeviceGroupCount+ -> Ptr VkPhysicalDeviceGroupProperties -- ^ pPhysicalDeviceGroupProperties+ -> IO VkResult++pattern VK_KHR_DEVICE_GROUP_CREATION_SPEC_VERSION ::+ (Num a, Eq a) => a++pattern VK_KHR_DEVICE_GROUP_CREATION_SPEC_VERSION = 1++type VK_KHR_DEVICE_GROUP_CREATION_SPEC_VERSION = 1++pattern VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME :: CString++pattern VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME <-+ (is_VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME -> True)+ where VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME+ = _VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME++{-# INLINE _VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME #-}++_VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME :: CString+_VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME+ = Ptr "VK_KHR_device_group_creation\NUL"#++{-# INLINE is_VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME #-}++is_VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME :: CString -> Bool+is_VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME++type VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME =+ "VK_KHR_device_group_creation"++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES_KHR =+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES++pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO_KHR =+ VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO++pattern VK_MEMORY_HEAP_MULTI_INSTANCE_BIT_KHR =+ VK_MEMORY_HEAP_MULTI_INSTANCE_BIT
@@ -40,10 +40,16 @@ module Graphics.Vulkan.Types.Enum.VkSurfaceTransformFlagsKHR, -- > #include "vk_platform.h" vkGetPhysicalDeviceDisplayPropertiesKHR,+ vkGetPhysicalDeviceDisplayPropertiesKHRSafe, vkGetPhysicalDeviceDisplayPlanePropertiesKHR,+ vkGetPhysicalDeviceDisplayPlanePropertiesKHRSafe, vkGetDisplayPlaneSupportedDisplaysKHR,- vkGetDisplayModePropertiesKHR, vkCreateDisplayModeKHR,- vkGetDisplayPlaneCapabilitiesKHR, vkCreateDisplayPlaneSurfaceKHR,+ vkGetDisplayPlaneSupportedDisplaysKHRSafe,+ vkGetDisplayModePropertiesKHR, vkGetDisplayModePropertiesKHRSafe,+ vkCreateDisplayModeKHR, vkCreateDisplayModeKHRSafe,+ vkGetDisplayPlaneCapabilitiesKHR,+ vkGetDisplayPlaneCapabilitiesKHRSafe,+ vkCreateDisplayPlaneSurfaceKHR, vkCreateDisplayPlaneSurfaceKHRSafe, module Graphics.Vulkan.Types.Enum.VkInternalAllocationType, module Graphics.Vulkan.Types.Enum.VkResult, module Graphics.Vulkan.Types.Enum.VkSystemAllocationScope,@@ -92,7 +98,7 @@ -- > , VkDisplayPropertiesKHR* pProperties -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetPhysicalDeviceDisplayPropertiesKHR.html vkGetPhysicalDeviceDisplayPropertiesKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceDisplayPropertiesKHR.html vkGetPhysicalDeviceDisplayPropertiesKHR registry at www.khronos.org> foreign import ccall unsafe "vkGetPhysicalDeviceDisplayPropertiesKHR" vkGetPhysicalDeviceDisplayPropertiesKHR ::@@ -106,13 +112,32 @@ -- -- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'. --+-- > VkResult vkGetPhysicalDeviceDisplayPropertiesKHR+-- > ( VkPhysicalDevice physicalDevice+-- > , uint32_t* pPropertyCount+-- > , VkDisplayPropertiesKHR* pProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceDisplayPropertiesKHR.html vkGetPhysicalDeviceDisplayPropertiesKHR registry at www.khronos.org>+foreign import ccall safe "vkGetPhysicalDeviceDisplayPropertiesKHR"+ vkGetPhysicalDeviceDisplayPropertiesKHRSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ Ptr Word32 -- ^ pPropertyCount+ -> Ptr VkDisplayPropertiesKHR -- ^ pProperties+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+-- -- > VkResult vkGetPhysicalDeviceDisplayPlanePropertiesKHR -- > ( VkPhysicalDevice physicalDevice -- > , uint32_t* pPropertyCount -- > , VkDisplayPlanePropertiesKHR* pProperties -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetPhysicalDeviceDisplayPlanePropertiesKHR.html vkGetPhysicalDeviceDisplayPlanePropertiesKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceDisplayPlanePropertiesKHR.html vkGetPhysicalDeviceDisplayPlanePropertiesKHR registry at www.khronos.org> foreign import ccall unsafe "vkGetPhysicalDeviceDisplayPlanePropertiesKHR" vkGetPhysicalDeviceDisplayPlanePropertiesKHR ::@@ -126,6 +151,26 @@ -- -- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'. --+-- > VkResult vkGetPhysicalDeviceDisplayPlanePropertiesKHR+-- > ( VkPhysicalDevice physicalDevice+-- > , uint32_t* pPropertyCount+-- > , VkDisplayPlanePropertiesKHR* pProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceDisplayPlanePropertiesKHR.html vkGetPhysicalDeviceDisplayPlanePropertiesKHR registry at www.khronos.org>+foreign import ccall safe+ "vkGetPhysicalDeviceDisplayPlanePropertiesKHR"+ vkGetPhysicalDeviceDisplayPlanePropertiesKHRSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ Ptr Word32 -- ^ pPropertyCount+ -> Ptr VkDisplayPlanePropertiesKHR -- ^ pProperties+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+-- -- > VkResult vkGetDisplayPlaneSupportedDisplaysKHR -- > ( VkPhysicalDevice physicalDevice -- > , uint32_t planeIndex@@ -133,7 +178,7 @@ -- > , VkDisplayKHR* pDisplays -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetDisplayPlaneSupportedDisplaysKHR.html vkGetDisplayPlaneSupportedDisplaysKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetDisplayPlaneSupportedDisplaysKHR.html vkGetDisplayPlaneSupportedDisplaysKHR registry at www.khronos.org> foreign import ccall unsafe "vkGetDisplayPlaneSupportedDisplaysKHR" vkGetDisplayPlaneSupportedDisplaysKHR :: VkPhysicalDevice -- ^ physicalDevice@@ -147,6 +192,27 @@ -- -- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'. --+-- > VkResult vkGetDisplayPlaneSupportedDisplaysKHR+-- > ( VkPhysicalDevice physicalDevice+-- > , uint32_t planeIndex+-- > , uint32_t* pDisplayCount+-- > , VkDisplayKHR* pDisplays+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetDisplayPlaneSupportedDisplaysKHR.html vkGetDisplayPlaneSupportedDisplaysKHR registry at www.khronos.org>+foreign import ccall safe "vkGetDisplayPlaneSupportedDisplaysKHR"+ vkGetDisplayPlaneSupportedDisplaysKHRSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ Word32 -- ^ planeIndex+ -> Ptr Word32 -- ^ pDisplayCount+ -> Ptr VkDisplayKHR -- ^ pDisplays+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+-- -- > VkResult vkGetDisplayModePropertiesKHR -- > ( VkPhysicalDevice physicalDevice -- > , VkDisplayKHR display@@ -154,7 +220,7 @@ -- > , VkDisplayModePropertiesKHR* pProperties -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetDisplayModePropertiesKHR.html vkGetDisplayModePropertiesKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetDisplayModePropertiesKHR.html vkGetDisplayModePropertiesKHR registry at www.khronos.org> foreign import ccall unsafe "vkGetDisplayModePropertiesKHR" vkGetDisplayModePropertiesKHR :: VkPhysicalDevice -- ^ physicalDevice@@ -165,6 +231,28 @@ -> Ptr VkDisplayModePropertiesKHR -- ^ pProperties -> IO VkResult +-- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkGetDisplayModePropertiesKHR+-- > ( VkPhysicalDevice physicalDevice+-- > , VkDisplayKHR display+-- > , uint32_t* pPropertyCount+-- > , VkDisplayModePropertiesKHR* pProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetDisplayModePropertiesKHR.html vkGetDisplayModePropertiesKHR registry at www.khronos.org>+foreign import ccall safe "vkGetDisplayModePropertiesKHR"+ vkGetDisplayModePropertiesKHRSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ VkDisplayKHR -- ^ display+ ->+ Ptr Word32 -- ^ pPropertyCount+ -> Ptr VkDisplayModePropertiesKHR -- ^ pProperties+ -> IO VkResult+ -- | Success codes: 'VK_SUCCESS'. -- -- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_INITIALIZATION_FAILED'.@@ -177,7 +265,7 @@ -- > , VkDisplayModeKHR* pMode -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCreateDisplayModeKHR.html vkCreateDisplayModeKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateDisplayModeKHR.html vkCreateDisplayModeKHR registry at www.khronos.org> foreign import ccall unsafe "vkCreateDisplayModeKHR" vkCreateDisplayModeKHR :: VkPhysicalDevice -- ^ physicalDevice@@ -192,6 +280,31 @@ -- | Success codes: 'VK_SUCCESS'. --+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_INITIALIZATION_FAILED'.+--+-- > VkResult vkCreateDisplayModeKHR+-- > ( VkPhysicalDevice physicalDevice+-- > , VkDisplayKHR display+-- > , const VkDisplayModeCreateInfoKHR* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkDisplayModeKHR* pMode+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateDisplayModeKHR.html vkCreateDisplayModeKHR registry at www.khronos.org>+foreign import ccall safe "vkCreateDisplayModeKHR"+ vkCreateDisplayModeKHRSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ VkDisplayKHR -- ^ display+ ->+ Ptr VkDisplayModeCreateInfoKHR -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkDisplayModeKHR -- ^ pMode+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+-- -- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'. -- -- > VkResult vkGetDisplayPlaneCapabilitiesKHR@@ -201,7 +314,7 @@ -- > , VkDisplayPlaneCapabilitiesKHR* pCapabilities -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetDisplayPlaneCapabilitiesKHR.html vkGetDisplayPlaneCapabilitiesKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetDisplayPlaneCapabilitiesKHR.html vkGetDisplayPlaneCapabilitiesKHR registry at www.khronos.org> foreign import ccall unsafe "vkGetDisplayPlaneCapabilitiesKHR" vkGetDisplayPlaneCapabilitiesKHR :: VkPhysicalDevice -- ^ physicalDevice@@ -216,6 +329,28 @@ -- -- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'. --+-- > VkResult vkGetDisplayPlaneCapabilitiesKHR+-- > ( VkPhysicalDevice physicalDevice+-- > , VkDisplayModeKHR mode+-- > , uint32_t planeIndex+-- > , VkDisplayPlaneCapabilitiesKHR* pCapabilities+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetDisplayPlaneCapabilitiesKHR.html vkGetDisplayPlaneCapabilitiesKHR registry at www.khronos.org>+foreign import ccall safe "vkGetDisplayPlaneCapabilitiesKHR"+ vkGetDisplayPlaneCapabilitiesKHRSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ VkDisplayModeKHR -- ^ mode+ ->+ Word32 -- ^ planeIndex+ -> Ptr VkDisplayPlaneCapabilitiesKHR -- ^ pCapabilities+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+-- -- > VkResult vkCreateDisplayPlaneSurfaceKHR -- > ( VkInstance instance -- > , const VkDisplaySurfaceCreateInfoKHR* pCreateInfo@@ -223,7 +358,7 @@ -- > , VkSurfaceKHR* pSurface -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCreateDisplayPlaneSurfaceKHR.html vkCreateDisplayPlaneSurfaceKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateDisplayPlaneSurfaceKHR.html vkCreateDisplayPlaneSurfaceKHR registry at www.khronos.org> foreign import ccall unsafe "vkCreateDisplayPlaneSurfaceKHR" vkCreateDisplayPlaneSurfaceKHR :: VkInstance -- ^ instance@@ -234,6 +369,28 @@ -> Ptr VkSurfaceKHR -- ^ pSurface -> IO VkResult +-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreateDisplayPlaneSurfaceKHR+-- > ( VkInstance instance+-- > , const VkDisplaySurfaceCreateInfoKHR* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkSurfaceKHR* pSurface+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateDisplayPlaneSurfaceKHR.html vkCreateDisplayPlaneSurfaceKHR registry at www.khronos.org>+foreign import ccall safe "vkCreateDisplayPlaneSurfaceKHR"+ vkCreateDisplayPlaneSurfaceKHRSafe ::+ VkInstance -- ^ instance+ ->+ Ptr VkDisplaySurfaceCreateInfoKHR -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkSurfaceKHR -- ^ pSurface+ -> IO VkResult+ pattern VK_KHR_DISPLAY_SPEC_VERSION :: (Num a, Eq a) => a pattern VK_KHR_DISPLAY_SPEC_VERSION = 21@@ -256,7 +413,7 @@ is_VK_KHR_DISPLAY_EXTENSION_NAME :: CString -> Bool is_VK_KHR_DISPLAY_EXTENSION_NAME- = eqCStrings _VK_KHR_DISPLAY_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_KHR_DISPLAY_EXTENSION_NAME type VK_KHR_DISPLAY_EXTENSION_NAME = "VK_KHR_display"
@@ -32,7 +32,8 @@ module Graphics.Vulkan.Types.Enum.VkResult, module Graphics.Vulkan.Types.Enum.VkStructureType, -- > #include "vk_platform.h"- vkCreateSharedSwapchainsKHR, module Graphics.Vulkan.Marshal,+ vkCreateSharedSwapchainsKHR, vkCreateSharedSwapchainsKHRSafe,+ module Graphics.Vulkan.Marshal, module Graphics.Vulkan.Types.Enum.VkColorSpaceKHR, module Graphics.Vulkan.Types.Enum.VkCompositeAlphaFlagsKHR, module Graphics.Vulkan.Types.Enum.VkFormat,@@ -91,7 +92,7 @@ -- > , VkSwapchainKHR* pSwapchains -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCreateSharedSwapchainsKHR.html vkCreateSharedSwapchainsKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateSharedSwapchainsKHR.html vkCreateSharedSwapchainsKHR registry at www.khronos.org> foreign import ccall unsafe "vkCreateSharedSwapchainsKHR" vkCreateSharedSwapchainsKHR :: VkDevice -- ^ device@@ -104,6 +105,31 @@ -> Ptr VkSwapchainKHR -- ^ pSwapchains -> IO VkResult +-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_INCOMPATIBLE_DISPLAY_KHR', 'VK_ERROR_DEVICE_LOST', 'VK_ERROR_SURFACE_LOST_KHR'.+--+-- > VkResult vkCreateSharedSwapchainsKHR+-- > ( VkDevice device+-- > , uint32_t swapchainCount+-- > , const VkSwapchainCreateInfoKHR* pCreateInfos+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkSwapchainKHR* pSwapchains+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateSharedSwapchainsKHR.html vkCreateSharedSwapchainsKHR registry at www.khronos.org>+foreign import ccall safe "vkCreateSharedSwapchainsKHR"+ vkCreateSharedSwapchainsKHRSafe ::+ VkDevice -- ^ device+ ->+ Word32 -- ^ swapchainCount+ ->+ Ptr VkSwapchainCreateInfoKHR -- ^ pCreateInfos+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkSwapchainKHR -- ^ pSwapchains+ -> IO VkResult+ pattern VK_KHR_DISPLAY_SWAPCHAIN_SPEC_VERSION :: (Num a, Eq a) => a pattern VK_KHR_DISPLAY_SWAPCHAIN_SPEC_VERSION = 9@@ -127,7 +153,7 @@ is_VK_KHR_DISPLAY_SWAPCHAIN_EXTENSION_NAME :: CString -> Bool is_VK_KHR_DISPLAY_SWAPCHAIN_EXTENSION_NAME- = eqCStrings _VK_KHR_DISPLAY_SWAPCHAIN_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_KHR_DISPLAY_SWAPCHAIN_EXTENSION_NAME type VK_KHR_DISPLAY_SWAPCHAIN_EXTENSION_NAME = "VK_KHR_display_swapchain"
@@ -1,3 +1,4 @@+{-# OPTIONS_GHC -fno-warn-missing-pattern-synonym-signatures#-} {-# OPTIONS_HADDOCK not-home#-} {-# LANGUAGE DataKinds #-} {-# LANGUAGE MagicHash #-}@@ -23,28 +24,22 @@ -- ** Required extensions: 'VK_KHR_external_fence_capabilities'. module Graphics.Vulkan.Types.Struct.VkExportFenceCreateInfoKHR,- module Graphics.Vulkan.Types.Enum.VkExternalFenceHandleTypeFlagsKHR,- module Graphics.Vulkan.Types.Enum.VkFenceCreateFlags,- module Graphics.Vulkan.Types.Struct.VkFenceCreateInfo,- module Graphics.Vulkan.Types.Enum.VkFenceImportFlagsKHR,- module Graphics.Vulkan.Types.BaseTypes,- module Graphics.Vulkan.Types.Enum.VkStructureType,- -- > #include "vk_platform.h"+ module Graphics.Vulkan.Types.Enum.VkFenceImportFlagBitsKHR,+ module Graphics.Vulkan.Types.Bitmasks, VK_KHR_EXTERNAL_FENCE_SPEC_VERSION, pattern VK_KHR_EXTERNAL_FENCE_SPEC_VERSION, VK_KHR_EXTERNAL_FENCE_EXTENSION_NAME, pattern VK_KHR_EXTERNAL_FENCE_EXTENSION_NAME,- pattern VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO_KHR)+ pattern VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO_KHR,+ pattern VK_FENCE_IMPORT_TEMPORARY_BIT_KHR) where-import GHC.Ptr (Ptr (..))+import GHC.Ptr (Ptr (..))+import Graphics.Vulkan.Core_1_1 (pattern VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO) import Graphics.Vulkan.Marshal-import Graphics.Vulkan.Types.BaseTypes-import Graphics.Vulkan.Types.Enum.VkExternalFenceHandleTypeFlagsKHR-import Graphics.Vulkan.Types.Enum.VkFenceCreateFlags-import Graphics.Vulkan.Types.Enum.VkFenceImportFlagsKHR-import Graphics.Vulkan.Types.Enum.VkStructureType+import Graphics.Vulkan.Types.Bitmasks+import Graphics.Vulkan.Types.Enum.VkFenceImportFlagBitsKHR+import Graphics.Vulkan.Types.Enum.VkFenceImportFlags (VkFenceImportBitmask (..)) import Graphics.Vulkan.Types.Struct.VkExportFenceCreateInfoKHR-import Graphics.Vulkan.Types.Struct.VkFenceCreateInfo pattern VK_KHR_EXTERNAL_FENCE_SPEC_VERSION :: (Num a, Eq a) => a @@ -69,12 +64,12 @@ is_VK_KHR_EXTERNAL_FENCE_EXTENSION_NAME :: CString -> Bool is_VK_KHR_EXTERNAL_FENCE_EXTENSION_NAME- = eqCStrings _VK_KHR_EXTERNAL_FENCE_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_KHR_EXTERNAL_FENCE_EXTENSION_NAME type VK_KHR_EXTERNAL_FENCE_EXTENSION_NAME = "VK_KHR_external_fence" -pattern VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO_KHR ::- VkStructureType- pattern VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO_KHR =- VkStructureType 1000113000+ VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO++pattern VK_FENCE_IMPORT_TEMPORARY_BIT_KHR =+ VK_FENCE_IMPORT_TEMPORARY_BIT
@@ -1,3 +1,4 @@+{-# OPTIONS_GHC -fno-warn-missing-pattern-synonym-signatures#-} {-# OPTIONS_HADDOCK not-home#-} {-# LANGUAGE DataKinds #-} {-# LANGUAGE ForeignFunctionInterface #-}@@ -23,69 +24,96 @@ -- -- ** Required extensions: 'VK_KHR_get_physical_device_properties2'.- module Graphics.Vulkan.Marshal,- module Graphics.Vulkan.Types.BaseTypes,- module Graphics.Vulkan.Types.Enum.VkExternalFenceFeatureFlagsKHR,- module Graphics.Vulkan.Types.Enum.VkExternalFenceHandleTypeFlagsKHR,+ module Graphics.Vulkan.Types.Enum.VkExternalFenceFeatureFlagBitsKHR,+ module Graphics.Vulkan.Types.Bitmasks,+ module Graphics.Vulkan.Types.Enum.VkExternalFenceHandleTypeFlagBitsKHR, module Graphics.Vulkan.Types.Struct.VkExternalFencePropertiesKHR, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceExternalFenceInfoKHR, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceIDPropertiesKHR,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceLimits,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2KHR,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseProperties,- module Graphics.Vulkan.Types.Enum.VkPhysicalDeviceType,- module Graphics.Vulkan.Types.Enum.VkSampleCountFlags,- module Graphics.Vulkan.Types.Enum.VkStructureType,- -- > #include "vk_platform.h" vkGetPhysicalDeviceExternalFencePropertiesKHR,+ vkGetPhysicalDeviceExternalFencePropertiesKHRSafe,+ module Graphics.Vulkan.Marshal,+ module Graphics.Vulkan.Types.BaseTypes,+ module Graphics.Vulkan.Types.Enum.VkExternalFenceFeatureFlags,+ module Graphics.Vulkan.Types.Enum.VkExternalFenceHandleTypeFlags,+ module Graphics.Vulkan.Types.Enum.VkStructureType, module Graphics.Vulkan.Types.Handles,+ module Graphics.Vulkan.Types.Struct.VkExternalFenceProperties,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceExternalFenceInfo, VK_KHR_EXTERNAL_FENCE_CAPABILITIES_SPEC_VERSION, pattern VK_KHR_EXTERNAL_FENCE_CAPABILITIES_SPEC_VERSION, VK_KHR_EXTERNAL_FENCE_CAPABILITIES_EXTENSION_NAME, pattern VK_KHR_EXTERNAL_FENCE_CAPABILITIES_EXTENSION_NAME, pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO_KHR, pattern VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES_KHR,- pattern VK_LUID_SIZE_KHR, VK_LUID_SIZE_KHR)+ pattern VK_LUID_SIZE_KHR,+ pattern VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR,+ pattern VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR,+ pattern VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR,+ pattern VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT_KHR,+ pattern VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT_KHR,+ pattern VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT_KHR) where import GHC.Ptr (Ptr (..)) import Graphics.Vulkan.Constants- (VK_LUID_SIZE_KHR,- pattern VK_LUID_SIZE_KHR)+ (pattern VK_LUID_SIZE_KHR)+import Graphics.Vulkan.Core_1_1+ (pattern VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES,+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO) import Graphics.Vulkan.Marshal import Graphics.Vulkan.Types.BaseTypes-import Graphics.Vulkan.Types.Enum.VkExternalFenceFeatureFlagsKHR-import Graphics.Vulkan.Types.Enum.VkExternalFenceHandleTypeFlagsKHR-import Graphics.Vulkan.Types.Enum.VkPhysicalDeviceType-import Graphics.Vulkan.Types.Enum.VkSampleCountFlags+import Graphics.Vulkan.Types.Bitmasks+import Graphics.Vulkan.Types.Enum.VkExternalFenceFeatureFlagBitsKHR+import Graphics.Vulkan.Types.Enum.VkExternalFenceFeatureFlags+import Graphics.Vulkan.Types.Enum.VkExternalFenceHandleTypeFlagBitsKHR+import Graphics.Vulkan.Types.Enum.VkExternalFenceHandleTypeFlags import Graphics.Vulkan.Types.Enum.VkStructureType import Graphics.Vulkan.Types.Handles+import Graphics.Vulkan.Types.Struct.VkExternalFenceProperties import Graphics.Vulkan.Types.Struct.VkExternalFencePropertiesKHR+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceExternalFenceInfo import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceExternalFenceInfoKHR import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceIDPropertiesKHR-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceLimits-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2KHR-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseProperties --- | > () vkGetPhysicalDeviceExternalFencePropertiesKHR+-- | This is an alias for `vkGetPhysicalDeviceExternalFenceProperties`.+--+-- > () vkGetPhysicalDeviceExternalFencePropertiesKHR -- > ( VkPhysicalDevice physicalDevice--- > , const VkPhysicalDeviceExternalFenceInfoKHR* pExternalFenceInfo--- > , VkExternalFencePropertiesKHR* pExternalFenceProperties+-- > , const VkPhysicalDeviceExternalFenceInfo* pExternalFenceInfo+-- > , VkExternalFenceProperties* pExternalFenceProperties -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetPhysicalDeviceExternalFencePropertiesKHR.html vkGetPhysicalDeviceExternalFencePropertiesKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceExternalFencePropertiesKHR.html vkGetPhysicalDeviceExternalFencePropertiesKHR registry at www.khronos.org> foreign import ccall unsafe- "vkGetPhysicalDeviceExternalFencePropertiesKHR"+ "vkGetPhysicalDeviceExternalFenceProperties" vkGetPhysicalDeviceExternalFencePropertiesKHR :: VkPhysicalDevice -- ^ physicalDevice ->- Ptr VkPhysicalDeviceExternalFenceInfoKHR -- ^ pExternalFenceInfo- ->- Ptr VkExternalFencePropertiesKHR -- ^ pExternalFenceProperties- -> IO ()+ Ptr VkPhysicalDeviceExternalFenceInfo -- ^ pExternalFenceInfo+ ->+ Ptr VkExternalFenceProperties -- ^ pExternalFenceProperties+ -> IO () +-- | This is an alias for `vkGetPhysicalDeviceExternalFenceProperties`.+--+-- > () vkGetPhysicalDeviceExternalFencePropertiesKHR+-- > ( VkPhysicalDevice physicalDevice+-- > , const VkPhysicalDeviceExternalFenceInfo* pExternalFenceInfo+-- > , VkExternalFenceProperties* pExternalFenceProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceExternalFencePropertiesKHR.html vkGetPhysicalDeviceExternalFencePropertiesKHR registry at www.khronos.org>+foreign import ccall safe+ "vkGetPhysicalDeviceExternalFenceProperties"+ vkGetPhysicalDeviceExternalFencePropertiesKHRSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ Ptr VkPhysicalDeviceExternalFenceInfo -- ^ pExternalFenceInfo+ ->+ Ptr VkExternalFenceProperties -- ^ pExternalFenceProperties+ -> IO ()+ pattern VK_KHR_EXTERNAL_FENCE_CAPABILITIES_SPEC_VERSION :: (Num a, Eq a) => a @@ -112,19 +140,32 @@ is_VK_KHR_EXTERNAL_FENCE_CAPABILITIES_EXTENSION_NAME :: CString -> Bool is_VK_KHR_EXTERNAL_FENCE_CAPABILITIES_EXTENSION_NAME- = eqCStrings _VK_KHR_EXTERNAL_FENCE_CAPABILITIES_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_KHR_EXTERNAL_FENCE_CAPABILITIES_EXTENSION_NAME type VK_KHR_EXTERNAL_FENCE_CAPABILITIES_EXTENSION_NAME = "VK_KHR_external_fence_capabilities" -pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO_KHR- :: VkStructureType- pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO_KHR =- VkStructureType 1000112000--pattern VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES_KHR ::- VkStructureType+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO pattern VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES_KHR =- VkStructureType 1000112001+ VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES++pattern VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR =+ VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT++pattern VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR =+ VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT++pattern VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR =+ VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT++pattern VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT_KHR =+ VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT++pattern VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT_KHR =+ VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT++pattern VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT_KHR =+ VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT
@@ -24,15 +24,15 @@ -- ** Required extensions: 'VK_KHR_external_fence'. module Graphics.Vulkan.Marshal,- module Graphics.Vulkan.Types.Enum.VkExternalFenceHandleTypeFlagsKHR,+ module Graphics.Vulkan.Types.Enum.VkExternalFenceHandleTypeFlags, module Graphics.Vulkan.Types.Struct.VkFenceGetFdInfoKHR,- module Graphics.Vulkan.Types.Enum.VkFenceImportFlagsKHR,+ module Graphics.Vulkan.Types.Enum.VkFenceImportFlags, module Graphics.Vulkan.Types.BaseTypes, module Graphics.Vulkan.Types.Struct.VkImportFenceFdInfoKHR, module Graphics.Vulkan.Types.Enum.VkStructureType, -- > #include "vk_platform.h"- vkImportFenceFdKHR, vkGetFenceFdKHR,- module Graphics.Vulkan.Types.Enum.VkResult,+ vkImportFenceFdKHR, vkImportFenceFdKHRSafe, vkGetFenceFdKHR,+ vkGetFenceFdKHRSafe, module Graphics.Vulkan.Types.Enum.VkResult, module Graphics.Vulkan.Types.Handles, VK_KHR_EXTERNAL_FENCE_FD_SPEC_VERSION, pattern VK_KHR_EXTERNAL_FENCE_FD_SPEC_VERSION,@@ -41,11 +41,11 @@ pattern VK_STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR, pattern VK_STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR) where-import GHC.Ptr (Ptr (..))+import GHC.Ptr (Ptr (..)) import Graphics.Vulkan.Marshal import Graphics.Vulkan.Types.BaseTypes-import Graphics.Vulkan.Types.Enum.VkExternalFenceHandleTypeFlagsKHR-import Graphics.Vulkan.Types.Enum.VkFenceImportFlagsKHR+import Graphics.Vulkan.Types.Enum.VkExternalFenceHandleTypeFlags+import Graphics.Vulkan.Types.Enum.VkFenceImportFlags import Graphics.Vulkan.Types.Enum.VkResult import Graphics.Vulkan.Types.Enum.VkStructureType import Graphics.Vulkan.Types.Handles@@ -54,14 +54,14 @@ -- | Success codes: 'VK_SUCCESS'. ----- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR'.+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_INVALID_EXTERNAL_HANDLE'. -- -- > VkResult vkImportFenceFdKHR -- > ( VkDevice device -- > , const VkImportFenceFdInfoKHR* pImportFenceFdInfo -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkImportFenceFdKHR.html vkImportFenceFdKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkImportFenceFdKHR.html vkImportFenceFdKHR registry at www.khronos.org> foreign import ccall unsafe "vkImportFenceFdKHR" vkImportFenceFdKHR :: VkDevice -- ^ device -> Ptr VkImportFenceFdInfoKHR -- ^ pImportFenceFdInfo@@ -69,6 +69,22 @@ -- | Success codes: 'VK_SUCCESS'. --+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_INVALID_EXTERNAL_HANDLE'.+--+-- > VkResult vkImportFenceFdKHR+-- > ( VkDevice device+-- > , const VkImportFenceFdInfoKHR* pImportFenceFdInfo+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkImportFenceFdKHR.html vkImportFenceFdKHR registry at www.khronos.org>+foreign import ccall safe "vkImportFenceFdKHR"+ vkImportFenceFdKHRSafe ::+ VkDevice -- ^ device+ -> Ptr VkImportFenceFdInfoKHR -- ^ pImportFenceFdInfo+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+-- -- Error codes: 'VK_ERROR_TOO_MANY_OBJECTS', 'VK_ERROR_OUT_OF_HOST_MEMORY'. -- -- > VkResult vkGetFenceFdKHR@@ -77,13 +93,30 @@ -- > , int* pFd -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetFenceFdKHR.html vkGetFenceFdKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetFenceFdKHR.html vkGetFenceFdKHR registry at www.khronos.org> foreign import ccall unsafe "vkGetFenceFdKHR" vkGetFenceFdKHR :: VkDevice -- ^ device -> Ptr VkFenceGetFdInfoKHR -- ^ pGetFdInfo -> Ptr CInt -- ^ pFd -> IO VkResult +-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_TOO_MANY_OBJECTS', 'VK_ERROR_OUT_OF_HOST_MEMORY'.+--+-- > VkResult vkGetFenceFdKHR+-- > ( VkDevice device+-- > , const VkFenceGetFdInfoKHR* pGetFdInfo+-- > , int* pFd+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetFenceFdKHR.html vkGetFenceFdKHR registry at www.khronos.org>+foreign import ccall safe "vkGetFenceFdKHR" vkGetFenceFdKHRSafe ::+ VkDevice -- ^ device+ -> Ptr VkFenceGetFdInfoKHR -- ^ pGetFdInfo+ -> Ptr CInt -- ^ pFd+ -> IO VkResult+ pattern VK_KHR_EXTERNAL_FENCE_FD_SPEC_VERSION :: (Num a, Eq a) => a pattern VK_KHR_EXTERNAL_FENCE_FD_SPEC_VERSION = 1@@ -107,7 +140,7 @@ is_VK_KHR_EXTERNAL_FENCE_FD_EXTENSION_NAME :: CString -> Bool is_VK_KHR_EXTERNAL_FENCE_FD_EXTENSION_NAME- = eqCStrings _VK_KHR_EXTERNAL_FENCE_FD_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_KHR_EXTERNAL_FENCE_FD_EXTENSION_NAME type VK_KHR_EXTERNAL_FENCE_FD_EXTENSION_NAME = "VK_KHR_external_fence_fd"
@@ -17,27 +17,26 @@ -- -- type: @device@ --+ -- platform: @win32@+ -- -- Extension number: @115@ -- -- Required extensions: 'VK_KHR_external_fence'. --- -- Protected by CPP ifdef: @VK_USE_PLATFORM_WIN32_KHR@- -- -- ** Required extensions: 'VK_KHR_external_fence'. module Graphics.Vulkan.Types.Struct.VkExportFenceWin32HandleInfoKHR,- module Graphics.Vulkan.Types.Enum.VkExternalFenceHandleTypeFlagsKHR,+ module Graphics.Vulkan.Types.Enum.VkExternalFenceHandleTypeFlags, module Graphics.Vulkan.Types.Enum.VkFenceCreateFlags, module Graphics.Vulkan.Types.Struct.VkFenceCreateInfo, module Graphics.Vulkan.Types.Struct.VkFenceGetWin32HandleInfoKHR,- module Graphics.Vulkan.Types.Enum.VkFenceImportFlagsKHR,+ module Graphics.Vulkan.Types.Enum.VkFenceImportFlags, module Graphics.Vulkan.Types.BaseTypes, module Graphics.Vulkan.Types.Struct.VkImportFenceWin32HandleInfoKHR, module Graphics.Vulkan.Types.Enum.VkStructureType, -- > #include "vk_platform.h"- --- -- > #include <windows.h>- vkImportFenceWin32HandleKHR, vkGetFenceWin32HandleKHR,+ vkImportFenceWin32HandleKHR, vkImportFenceWin32HandleKHRSafe,+ vkGetFenceWin32HandleKHR, vkGetFenceWin32HandleKHRSafe, module Graphics.Vulkan.Marshal, module Graphics.Vulkan.Types.Enum.VkResult, module Graphics.Vulkan.Types.Handles,@@ -53,9 +52,9 @@ import GHC.Ptr (Ptr (..)) import Graphics.Vulkan.Marshal import Graphics.Vulkan.Types.BaseTypes-import Graphics.Vulkan.Types.Enum.VkExternalFenceHandleTypeFlagsKHR+import Graphics.Vulkan.Types.Enum.VkExternalFenceHandleTypeFlags import Graphics.Vulkan.Types.Enum.VkFenceCreateFlags-import Graphics.Vulkan.Types.Enum.VkFenceImportFlagsKHR+import Graphics.Vulkan.Types.Enum.VkFenceImportFlags import Graphics.Vulkan.Types.Enum.VkResult import Graphics.Vulkan.Types.Enum.VkStructureType import Graphics.Vulkan.Types.Handles@@ -67,14 +66,14 @@ -- | Success codes: 'VK_SUCCESS'. ----- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR'.+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_INVALID_EXTERNAL_HANDLE'. -- -- > VkResult vkImportFenceWin32HandleKHR -- > ( VkDevice device -- > , const VkImportFenceWin32HandleInfoKHR* pImportFenceWin32HandleInfo -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkImportFenceWin32HandleKHR.html vkImportFenceWin32HandleKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkImportFenceWin32HandleKHR.html vkImportFenceWin32HandleKHR registry at www.khronos.org> foreign import ccall unsafe "vkImportFenceWin32HandleKHR" vkImportFenceWin32HandleKHR :: VkDevice -- ^ device@@ -83,6 +82,22 @@ -- | Success codes: 'VK_SUCCESS'. --+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_INVALID_EXTERNAL_HANDLE'.+--+-- > VkResult vkImportFenceWin32HandleKHR+-- > ( VkDevice device+-- > , const VkImportFenceWin32HandleInfoKHR* pImportFenceWin32HandleInfo+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkImportFenceWin32HandleKHR.html vkImportFenceWin32HandleKHR registry at www.khronos.org>+foreign import ccall safe "vkImportFenceWin32HandleKHR"+ vkImportFenceWin32HandleKHRSafe ::+ VkDevice -- ^ device+ -> Ptr VkImportFenceWin32HandleInfoKHR -- ^ pImportFenceWin32HandleInfo+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+-- -- Error codes: 'VK_ERROR_TOO_MANY_OBJECTS', 'VK_ERROR_OUT_OF_HOST_MEMORY'. -- -- > VkResult vkGetFenceWin32HandleKHR@@ -91,7 +106,7 @@ -- > , HANDLE* pHandle -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetFenceWin32HandleKHR.html vkGetFenceWin32HandleKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetFenceWin32HandleKHR.html vkGetFenceWin32HandleKHR registry at www.khronos.org> foreign import ccall unsafe "vkGetFenceWin32HandleKHR" vkGetFenceWin32HandleKHR :: VkDevice -- ^ device@@ -100,6 +115,25 @@ -> Ptr HANDLE -- ^ pHandle -> IO VkResult +-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_TOO_MANY_OBJECTS', 'VK_ERROR_OUT_OF_HOST_MEMORY'.+--+-- > VkResult vkGetFenceWin32HandleKHR+-- > ( VkDevice device+-- > , const VkFenceGetWin32HandleInfoKHR* pGetWin32HandleInfo+-- > , HANDLE* pHandle+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetFenceWin32HandleKHR.html vkGetFenceWin32HandleKHR registry at www.khronos.org>+foreign import ccall safe "vkGetFenceWin32HandleKHR"+ vkGetFenceWin32HandleKHRSafe ::+ VkDevice -- ^ device+ ->+ Ptr VkFenceGetWin32HandleInfoKHR -- ^ pGetWin32HandleInfo+ -> Ptr HANDLE -- ^ pHandle+ -> IO VkResult+ pattern VK_KHR_EXTERNAL_FENCE_WIN32_SPEC_VERSION :: (Num a, Eq a) => a @@ -124,7 +158,7 @@ is_VK_KHR_EXTERNAL_FENCE_WIN32_EXTENSION_NAME :: CString -> Bool is_VK_KHR_EXTERNAL_FENCE_WIN32_EXTENSION_NAME- = eqCStrings _VK_KHR_EXTERNAL_FENCE_WIN32_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_KHR_EXTERNAL_FENCE_WIN32_EXTENSION_NAME type VK_KHR_EXTERNAL_FENCE_WIN32_EXTENSION_NAME = "VK_KHR_external_fence_win32"
@@ -1,3 +1,4 @@+{-# OPTIONS_GHC -fno-warn-missing-pattern-synonym-signatures#-} {-# OPTIONS_HADDOCK not-home#-} {-# LANGUAGE DataKinds #-} {-# LANGUAGE MagicHash #-}@@ -22,27 +23,9 @@ -- -- ** Required extensions: 'VK_KHR_external_memory_capabilities'.- module Graphics.Vulkan.Types.Enum.VkBufferCreateFlags,- module Graphics.Vulkan.Types.Struct.VkBufferCreateInfo,- module Graphics.Vulkan.Types.Enum.VkBufferUsageFlags,- module Graphics.Vulkan.Types.BaseTypes, module Graphics.Vulkan.Types.Struct.VkExportMemoryAllocateInfoKHR,- module Graphics.Vulkan.Types.Struct.VkExtent3D, module Graphics.Vulkan.Types.Struct.VkExternalMemoryBufferCreateInfoKHR,- module Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlagsKHR, module Graphics.Vulkan.Types.Struct.VkExternalMemoryImageCreateInfoKHR,- module Graphics.Vulkan.Types.Enum.VkFormat,- module Graphics.Vulkan.Types.Enum.VkImageCreateFlags,- module Graphics.Vulkan.Types.Struct.VkImageCreateInfo,- module Graphics.Vulkan.Types.Enum.VkImageLayout,- module Graphics.Vulkan.Types.Enum.VkImageTiling,- module Graphics.Vulkan.Types.Enum.VkImageType,- module Graphics.Vulkan.Types.Enum.VkImageUsageFlags,- module Graphics.Vulkan.Types.Struct.VkMemoryAllocateInfo,- module Graphics.Vulkan.Types.Enum.VkSampleCountFlags,- module Graphics.Vulkan.Types.Enum.VkSharingMode,- module Graphics.Vulkan.Types.Enum.VkStructureType,- -- > #include "vk_platform.h" VK_KHR_EXTERNAL_MEMORY_SPEC_VERSION, pattern VK_KHR_EXTERNAL_MEMORY_SPEC_VERSION, VK_KHR_EXTERNAL_MEMORY_EXTENSION_NAME,@@ -51,36 +34,21 @@ pattern VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_KHR, pattern VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_KHR, pattern VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR,- pattern VK_QUEUE_FAMILY_EXTERNAL_KHR, VK_QUEUE_FAMILY_EXTERNAL_KHR)+ pattern VK_QUEUE_FAMILY_EXTERNAL_KHR) where import GHC.Ptr (Ptr (..)) import Graphics.Vulkan.Constants- (VK_QUEUE_FAMILY_EXTERNAL_KHR,- pattern VK_QUEUE_FAMILY_EXTERNAL_KHR)+ (pattern VK_QUEUE_FAMILY_EXTERNAL_KHR)+import Graphics.Vulkan.Core_1_1+ (pattern VK_ERROR_INVALID_EXTERNAL_HANDLE,+ pattern VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO,+ pattern VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO,+ pattern VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO) import Graphics.Vulkan.Marshal-import Graphics.Vulkan.Types.BaseTypes-import Graphics.Vulkan.Types.Enum.VkBufferCreateFlags-import Graphics.Vulkan.Types.Enum.VkBufferUsageFlags-import Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlagsKHR-import Graphics.Vulkan.Types.Enum.VkFormat-import Graphics.Vulkan.Types.Enum.VkImageCreateFlags-import Graphics.Vulkan.Types.Enum.VkImageLayout-import Graphics.Vulkan.Types.Enum.VkImageTiling-import Graphics.Vulkan.Types.Enum.VkImageType-import Graphics.Vulkan.Types.Enum.VkImageUsageFlags-import Graphics.Vulkan.Types.Enum.VkResult- (VkResult (..))-import Graphics.Vulkan.Types.Enum.VkSampleCountFlags-import Graphics.Vulkan.Types.Enum.VkSharingMode-import Graphics.Vulkan.Types.Enum.VkStructureType-import Graphics.Vulkan.Types.Struct.VkBufferCreateInfo import Graphics.Vulkan.Types.Struct.VkExportMemoryAllocateInfoKHR-import Graphics.Vulkan.Types.Struct.VkExtent3D import Graphics.Vulkan.Types.Struct.VkExternalMemoryBufferCreateInfoKHR import Graphics.Vulkan.Types.Struct.VkExternalMemoryImageCreateInfoKHR-import Graphics.Vulkan.Types.Struct.VkImageCreateInfo-import Graphics.Vulkan.Types.Struct.VkMemoryAllocateInfo pattern VK_KHR_EXTERNAL_MEMORY_SPEC_VERSION :: (Num a, Eq a) => a @@ -105,30 +73,19 @@ is_VK_KHR_EXTERNAL_MEMORY_EXTENSION_NAME :: CString -> Bool is_VK_KHR_EXTERNAL_MEMORY_EXTENSION_NAME- = eqCStrings _VK_KHR_EXTERNAL_MEMORY_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_KHR_EXTERNAL_MEMORY_EXTENSION_NAME type VK_KHR_EXTERNAL_MEMORY_EXTENSION_NAME = "VK_KHR_external_memory" -pattern VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO_KHR ::- VkStructureType- pattern VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO_KHR =- VkStructureType 1000072000--pattern VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_KHR ::- VkStructureType+ VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO pattern VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_KHR =- VkStructureType 1000072001--pattern VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_KHR ::- VkStructureType+ VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO pattern VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_KHR =- VkStructureType 1000072002--pattern VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR :: VkResult+ VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO pattern VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR =- VkResult (-1000072003)+ VK_ERROR_INVALID_EXTERNAL_HANDLE
@@ -1,3 +1,4 @@+{-# OPTIONS_GHC -fno-warn-missing-pattern-synonym-signatures#-} {-# OPTIONS_HADDOCK not-home#-} {-# LANGUAGE DataKinds #-} {-# LANGUAGE ForeignFunctionInterface #-}@@ -23,37 +24,28 @@ -- -- ** Required extensions: 'VK_KHR_get_physical_device_properties2'.- module Graphics.Vulkan.Marshal,- module Graphics.Vulkan.Types.BaseTypes,- module Graphics.Vulkan.Types.Enum.VkBufferCreateFlags,- module Graphics.Vulkan.Types.Enum.VkBufferUsageFlags,- module Graphics.Vulkan.Types.Struct.VkExtent3D, module Graphics.Vulkan.Types.Struct.VkExternalBufferPropertiesKHR, module Graphics.Vulkan.Types.Struct.VkExternalImageFormatPropertiesKHR,- module Graphics.Vulkan.Types.Enum.VkExternalMemoryFeatureFlagsKHR,- module Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlagsKHR,+ module Graphics.Vulkan.Types.Enum.VkExternalMemoryFeatureFlagBitsKHR,+ module Graphics.Vulkan.Types.Bitmasks,+ module Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlagBitsKHR, module Graphics.Vulkan.Types.Struct.VkExternalMemoryPropertiesKHR,- module Graphics.Vulkan.Types.Enum.VkFormat,- module Graphics.Vulkan.Types.Enum.VkImageCreateFlags,- module Graphics.Vulkan.Types.Struct.VkImageFormatProperties,- module Graphics.Vulkan.Types.Struct.VkImageFormatProperties2KHR,- module Graphics.Vulkan.Types.Enum.VkImageTiling,- module Graphics.Vulkan.Types.Enum.VkImageType,- module Graphics.Vulkan.Types.Enum.VkImageUsageFlags, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceExternalBufferInfoKHR, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceExternalImageFormatInfoKHR, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceIDPropertiesKHR,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceImageFormatInfo2KHR,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceLimits,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2KHR,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseProperties,- module Graphics.Vulkan.Types.Enum.VkPhysicalDeviceType,- module Graphics.Vulkan.Types.Enum.VkSampleCountFlags,- module Graphics.Vulkan.Types.Enum.VkStructureType,- -- > #include "vk_platform.h" vkGetPhysicalDeviceExternalBufferPropertiesKHR,+ vkGetPhysicalDeviceExternalBufferPropertiesKHRSafe,+ module Graphics.Vulkan.Marshal,+ module Graphics.Vulkan.Types.BaseTypes,+ module Graphics.Vulkan.Types.Enum.VkBufferCreateFlags,+ module Graphics.Vulkan.Types.Enum.VkBufferUsageFlags,+ module Graphics.Vulkan.Types.Enum.VkExternalMemoryFeatureFlags,+ module Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlags,+ module Graphics.Vulkan.Types.Enum.VkStructureType, module Graphics.Vulkan.Types.Handles,+ module Graphics.Vulkan.Types.Struct.VkExternalBufferProperties,+ module Graphics.Vulkan.Types.Struct.VkExternalMemoryProperties,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceExternalBufferInfo, VK_KHR_EXTERNAL_MEMORY_CAPABILITIES_SPEC_VERSION, pattern VK_KHR_EXTERNAL_MEMORY_CAPABILITIES_SPEC_VERSION, VK_KHR_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME,@@ -63,60 +55,87 @@ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO_KHR, pattern VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES_KHR, pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES_KHR,- pattern VK_LUID_SIZE_KHR, VK_LUID_SIZE_KHR)+ pattern VK_LUID_SIZE_KHR,+ pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT_KHR,+ pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR,+ pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR,+ pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT_KHR,+ pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT_KHR,+ pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT_KHR,+ pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT_KHR,+ pattern VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_KHR,+ pattern VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_KHR,+ pattern VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_KHR) where import GHC.Ptr (Ptr (..)) import Graphics.Vulkan.Constants- (VK_LUID_SIZE_KHR,- pattern VK_LUID_SIZE_KHR)+ (pattern VK_LUID_SIZE_KHR)+import Graphics.Vulkan.Core_1_1+ (pattern VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES,+ pattern VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES,+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO,+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO,+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES) import Graphics.Vulkan.Marshal import Graphics.Vulkan.Types.BaseTypes+import Graphics.Vulkan.Types.Bitmasks import Graphics.Vulkan.Types.Enum.VkBufferCreateFlags import Graphics.Vulkan.Types.Enum.VkBufferUsageFlags-import Graphics.Vulkan.Types.Enum.VkExternalMemoryFeatureFlagsKHR-import Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlagsKHR-import Graphics.Vulkan.Types.Enum.VkFormat-import Graphics.Vulkan.Types.Enum.VkImageCreateFlags-import Graphics.Vulkan.Types.Enum.VkImageTiling-import Graphics.Vulkan.Types.Enum.VkImageType-import Graphics.Vulkan.Types.Enum.VkImageUsageFlags-import Graphics.Vulkan.Types.Enum.VkPhysicalDeviceType-import Graphics.Vulkan.Types.Enum.VkSampleCountFlags+import Graphics.Vulkan.Types.Enum.VkExternalMemoryFeatureFlagBitsKHR+import Graphics.Vulkan.Types.Enum.VkExternalMemoryFeatureFlags+import Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlagBitsKHR+import Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlags import Graphics.Vulkan.Types.Enum.VkStructureType import Graphics.Vulkan.Types.Handles-import Graphics.Vulkan.Types.Struct.VkExtent3D+import Graphics.Vulkan.Types.Struct.VkExternalBufferProperties import Graphics.Vulkan.Types.Struct.VkExternalBufferPropertiesKHR import Graphics.Vulkan.Types.Struct.VkExternalImageFormatPropertiesKHR+import Graphics.Vulkan.Types.Struct.VkExternalMemoryProperties import Graphics.Vulkan.Types.Struct.VkExternalMemoryPropertiesKHR-import Graphics.Vulkan.Types.Struct.VkImageFormatProperties-import Graphics.Vulkan.Types.Struct.VkImageFormatProperties2KHR+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceExternalBufferInfo import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceExternalBufferInfoKHR import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceExternalImageFormatInfoKHR import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceIDPropertiesKHR-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceImageFormatInfo2KHR-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceLimits-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2KHR-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseProperties --- | > () vkGetPhysicalDeviceExternalBufferPropertiesKHR+-- | This is an alias for `vkGetPhysicalDeviceExternalBufferProperties`.+--+-- > () vkGetPhysicalDeviceExternalBufferPropertiesKHR -- > ( VkPhysicalDevice physicalDevice--- > , const VkPhysicalDeviceExternalBufferInfoKHR* pExternalBufferInfo--- > , VkExternalBufferPropertiesKHR* pExternalBufferProperties+-- > , const VkPhysicalDeviceExternalBufferInfo* pExternalBufferInfo+-- > , VkExternalBufferProperties* pExternalBufferProperties -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetPhysicalDeviceExternalBufferPropertiesKHR.html vkGetPhysicalDeviceExternalBufferPropertiesKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceExternalBufferPropertiesKHR.html vkGetPhysicalDeviceExternalBufferPropertiesKHR registry at www.khronos.org> foreign import ccall unsafe- "vkGetPhysicalDeviceExternalBufferPropertiesKHR"+ "vkGetPhysicalDeviceExternalBufferProperties" vkGetPhysicalDeviceExternalBufferPropertiesKHR :: VkPhysicalDevice -- ^ physicalDevice ->- Ptr VkPhysicalDeviceExternalBufferInfoKHR -- ^ pExternalBufferInfo- ->- Ptr VkExternalBufferPropertiesKHR -- ^ pExternalBufferProperties- -> IO ()+ Ptr VkPhysicalDeviceExternalBufferInfo -- ^ pExternalBufferInfo+ ->+ Ptr VkExternalBufferProperties -- ^ pExternalBufferProperties+ -> IO () +-- | This is an alias for `vkGetPhysicalDeviceExternalBufferProperties`.+--+-- > () vkGetPhysicalDeviceExternalBufferPropertiesKHR+-- > ( VkPhysicalDevice physicalDevice+-- > , const VkPhysicalDeviceExternalBufferInfo* pExternalBufferInfo+-- > , VkExternalBufferProperties* pExternalBufferProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceExternalBufferPropertiesKHR.html vkGetPhysicalDeviceExternalBufferPropertiesKHR registry at www.khronos.org>+foreign import ccall safe+ "vkGetPhysicalDeviceExternalBufferProperties"+ vkGetPhysicalDeviceExternalBufferPropertiesKHRSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ Ptr VkPhysicalDeviceExternalBufferInfo -- ^ pExternalBufferInfo+ ->+ Ptr VkExternalBufferProperties -- ^ pExternalBufferProperties+ -> IO ()+ pattern VK_KHR_EXTERNAL_MEMORY_CAPABILITIES_SPEC_VERSION :: (Num a, Eq a) => a @@ -144,37 +163,53 @@ is_VK_KHR_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME :: CString -> Bool is_VK_KHR_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME- = eqCStrings _VK_KHR_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_KHR_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME type VK_KHR_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME = "VK_KHR_external_memory_capabilities" pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO_KHR- :: VkStructureType--pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO_KHR- = VkStructureType 1000071000--pattern VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES_KHR ::- VkStructureType+ = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO pattern VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES_KHR =- VkStructureType 1000071001+ VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO_KHR- :: VkStructureType+ = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO -pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO_KHR- = VkStructureType 1000071002+pattern VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES_KHR =+ VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES -pattern VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES_KHR ::- VkStructureType+pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES_KHR =+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES -pattern VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES_KHR =- VkStructureType 1000071003+pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT_KHR =+ VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT -pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES_KHR ::- VkStructureType+pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR =+ VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT -pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES_KHR =- VkStructureType 1000071004+pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR =+ VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT++pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT_KHR =+ VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT++pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT_KHR =+ VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT++pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT_KHR =+ VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT++pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT_KHR =+ VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT++pattern VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_KHR =+ VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT++pattern VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_KHR =+ VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT++pattern VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_KHR =+ VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT
@@ -14,7 +14,7 @@ -- -- contact: @James Jones @cubanismo@ --- -- author: @KHX@+ -- author: @KHR@ -- -- type: @device@ --@@ -26,14 +26,15 @@ -- ** Required extensions: 'VK_KHR_external_memory'. module Graphics.Vulkan.Marshal, module Graphics.Vulkan.Types.BaseTypes,- module Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlagsKHR,+ module Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlags, module Graphics.Vulkan.Types.Struct.VkImportMemoryFdInfoKHR, module Graphics.Vulkan.Types.Struct.VkMemoryAllocateInfo, module Graphics.Vulkan.Types.Struct.VkMemoryFdPropertiesKHR, module Graphics.Vulkan.Types.Struct.VkMemoryGetFdInfoKHR, module Graphics.Vulkan.Types.Enum.VkStructureType, -- > #include "vk_platform.h"- vkGetMemoryFdKHR, vkGetMemoryFdPropertiesKHR,+ vkGetMemoryFdKHR, vkGetMemoryFdKHRSafe, vkGetMemoryFdPropertiesKHR,+ vkGetMemoryFdPropertiesKHRSafe, module Graphics.Vulkan.Types.Enum.VkResult, module Graphics.Vulkan.Types.Handles, VK_KHR_EXTERNAL_MEMORY_FD_SPEC_VERSION,@@ -44,10 +45,10 @@ pattern VK_STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR, pattern VK_STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR) where-import GHC.Ptr (Ptr (..))+import GHC.Ptr (Ptr (..)) import Graphics.Vulkan.Marshal import Graphics.Vulkan.Types.BaseTypes-import Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlagsKHR+import Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlags import Graphics.Vulkan.Types.Enum.VkResult import Graphics.Vulkan.Types.Enum.VkStructureType import Graphics.Vulkan.Types.Handles@@ -66,7 +67,7 @@ -- > , int* pFd -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetMemoryFdKHR.html vkGetMemoryFdKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetMemoryFdKHR.html vkGetMemoryFdKHR registry at www.khronos.org> foreign import ccall unsafe "vkGetMemoryFdKHR" vkGetMemoryFdKHR :: VkDevice -- ^ device -> Ptr VkMemoryGetFdInfoKHR -- ^ pGetFdInfo@@ -75,26 +76,65 @@ -- | Success codes: 'VK_SUCCESS'. ----- Error codes: 'VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR'.+-- Error codes: 'VK_ERROR_TOO_MANY_OBJECTS', 'VK_ERROR_OUT_OF_HOST_MEMORY'. --+-- > VkResult vkGetMemoryFdKHR+-- > ( VkDevice device+-- > , const VkMemoryGetFdInfoKHR* pGetFdInfo+-- > , int* pFd+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetMemoryFdKHR.html vkGetMemoryFdKHR registry at www.khronos.org>+foreign import ccall safe "vkGetMemoryFdKHR" vkGetMemoryFdKHRSafe+ :: VkDevice -- ^ device+ -> Ptr VkMemoryGetFdInfoKHR -- ^ pGetFdInfo+ -> Ptr CInt -- ^ pFd+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_INVALID_EXTERNAL_HANDLE'.+-- -- > VkResult vkGetMemoryFdPropertiesKHR -- > ( VkDevice device--- > , VkExternalMemoryHandleTypeFlagBitsKHR handleType+-- > , VkExternalMemoryHandleTypeFlagBits handleType -- > , int fd -- > , VkMemoryFdPropertiesKHR* pMemoryFdProperties -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetMemoryFdPropertiesKHR.html vkGetMemoryFdPropertiesKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetMemoryFdPropertiesKHR.html vkGetMemoryFdPropertiesKHR registry at www.khronos.org> foreign import ccall unsafe "vkGetMemoryFdPropertiesKHR" vkGetMemoryFdPropertiesKHR :: VkDevice -- ^ device ->- VkExternalMemoryHandleTypeFlagBitsKHR -- ^ handleType- ->+ VkExternalMemoryHandleTypeFlagBits -- ^ handleType+ -> CInt -- ^ fd -> Ptr VkMemoryFdPropertiesKHR -- ^ pMemoryFdProperties -> IO VkResult +-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_INVALID_EXTERNAL_HANDLE'.+--+-- > VkResult vkGetMemoryFdPropertiesKHR+-- > ( VkDevice device+-- > , VkExternalMemoryHandleTypeFlagBits handleType+-- > , int fd+-- > , VkMemoryFdPropertiesKHR* pMemoryFdProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetMemoryFdPropertiesKHR.html vkGetMemoryFdPropertiesKHR registry at www.khronos.org>+foreign import ccall safe "vkGetMemoryFdPropertiesKHR"+ vkGetMemoryFdPropertiesKHRSafe ::+ VkDevice -- ^ device+ ->+ VkExternalMemoryHandleTypeFlagBits -- ^ handleType+ ->+ CInt -- ^ fd+ -> Ptr VkMemoryFdPropertiesKHR -- ^ pMemoryFdProperties+ -> IO VkResult+ pattern VK_KHR_EXTERNAL_MEMORY_FD_SPEC_VERSION :: (Num a, Eq a) => a @@ -119,7 +159,7 @@ is_VK_KHR_EXTERNAL_MEMORY_FD_EXTENSION_NAME :: CString -> Bool is_VK_KHR_EXTERNAL_MEMORY_FD_EXTENSION_NAME- = eqCStrings _VK_KHR_EXTERNAL_MEMORY_FD_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_KHR_EXTERNAL_MEMORY_FD_EXTENSION_NAME type VK_KHR_EXTERNAL_MEMORY_FD_EXTENSION_NAME = "VK_KHR_external_memory_fd"
@@ -18,26 +18,26 @@ -- -- type: @device@ --+ -- platform: @win32@+ -- -- Extension number: @74@ -- -- Required extensions: 'VK_KHR_external_memory'. --- -- Protected by CPP ifdef: @VK_USE_PLATFORM_WIN32_KHR@- -- -- ** Required extensions: 'VK_KHR_external_memory'. module Graphics.Vulkan.Types.BaseTypes, module Graphics.Vulkan.Types.Struct.VkExportMemoryWin32HandleInfoKHR,- module Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlagsKHR,+ module Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlags, module Graphics.Vulkan.Types.Struct.VkImportMemoryWin32HandleInfoKHR, module Graphics.Vulkan.Types.Struct.VkMemoryAllocateInfo, module Graphics.Vulkan.Types.Struct.VkMemoryGetWin32HandleInfoKHR, module Graphics.Vulkan.Types.Struct.VkMemoryWin32HandlePropertiesKHR, module Graphics.Vulkan.Types.Enum.VkStructureType, -- > #include "vk_platform.h"- --- -- > #include <windows.h>- vkGetMemoryWin32HandleKHR, vkGetMemoryWin32HandlePropertiesKHR,+ vkGetMemoryWin32HandleKHR, vkGetMemoryWin32HandleKHRSafe,+ vkGetMemoryWin32HandlePropertiesKHR,+ vkGetMemoryWin32HandlePropertiesKHRSafe, module Graphics.Vulkan.Marshal, module Graphics.Vulkan.Types.Enum.VkResult, module Graphics.Vulkan.Types.Handles,@@ -53,7 +53,7 @@ import GHC.Ptr (Ptr (..)) import Graphics.Vulkan.Marshal import Graphics.Vulkan.Types.BaseTypes-import Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlagsKHR+import Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlags import Graphics.Vulkan.Types.Enum.VkResult import Graphics.Vulkan.Types.Enum.VkStructureType import Graphics.Vulkan.Types.Handles@@ -74,7 +74,7 @@ -- > , HANDLE* pHandle -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetMemoryWin32HandleKHR.html vkGetMemoryWin32HandleKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetMemoryWin32HandleKHR.html vkGetMemoryWin32HandleKHR registry at www.khronos.org> foreign import ccall unsafe "vkGetMemoryWin32HandleKHR" vkGetMemoryWin32HandleKHR :: VkDevice -- ^ device@@ -85,26 +85,67 @@ -- | Success codes: 'VK_SUCCESS'. ----- Error codes: 'VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR'.+-- Error codes: 'VK_ERROR_TOO_MANY_OBJECTS', 'VK_ERROR_OUT_OF_HOST_MEMORY'. --+-- > VkResult vkGetMemoryWin32HandleKHR+-- > ( VkDevice device+-- > , const VkMemoryGetWin32HandleInfoKHR* pGetWin32HandleInfo+-- > , HANDLE* pHandle+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetMemoryWin32HandleKHR.html vkGetMemoryWin32HandleKHR registry at www.khronos.org>+foreign import ccall safe "vkGetMemoryWin32HandleKHR"+ vkGetMemoryWin32HandleKHRSafe ::+ VkDevice -- ^ device+ ->+ Ptr VkMemoryGetWin32HandleInfoKHR -- ^ pGetWin32HandleInfo+ -> Ptr HANDLE -- ^ pHandle+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_INVALID_EXTERNAL_HANDLE'.+-- -- > VkResult vkGetMemoryWin32HandlePropertiesKHR -- > ( VkDevice device--- > , VkExternalMemoryHandleTypeFlagBitsKHR handleType+-- > , VkExternalMemoryHandleTypeFlagBits handleType -- > , HANDLE handle -- > , VkMemoryWin32HandlePropertiesKHR* pMemoryWin32HandleProperties -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetMemoryWin32HandlePropertiesKHR.html vkGetMemoryWin32HandlePropertiesKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetMemoryWin32HandlePropertiesKHR.html vkGetMemoryWin32HandlePropertiesKHR registry at www.khronos.org> foreign import ccall unsafe "vkGetMemoryWin32HandlePropertiesKHR" vkGetMemoryWin32HandlePropertiesKHR :: VkDevice -- ^ device ->- VkExternalMemoryHandleTypeFlagBitsKHR -- ^ handleType- ->+ VkExternalMemoryHandleTypeFlagBits -- ^ handleType+ -> HANDLE -- ^ handle -> Ptr VkMemoryWin32HandlePropertiesKHR -- ^ pMemoryWin32HandleProperties -> IO VkResult +-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_INVALID_EXTERNAL_HANDLE'.+--+-- > VkResult vkGetMemoryWin32HandlePropertiesKHR+-- > ( VkDevice device+-- > , VkExternalMemoryHandleTypeFlagBits handleType+-- > , HANDLE handle+-- > , VkMemoryWin32HandlePropertiesKHR* pMemoryWin32HandleProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetMemoryWin32HandlePropertiesKHR.html vkGetMemoryWin32HandlePropertiesKHR registry at www.khronos.org>+foreign import ccall safe "vkGetMemoryWin32HandlePropertiesKHR"+ vkGetMemoryWin32HandlePropertiesKHRSafe ::+ VkDevice -- ^ device+ ->+ VkExternalMemoryHandleTypeFlagBits -- ^ handleType+ ->+ HANDLE -- ^ handle+ -> Ptr VkMemoryWin32HandlePropertiesKHR -- ^ pMemoryWin32HandleProperties+ -> IO VkResult+ pattern VK_KHR_EXTERNAL_MEMORY_WIN32_SPEC_VERSION :: (Num a, Eq a) => a @@ -129,7 +170,8 @@ is_VK_KHR_EXTERNAL_MEMORY_WIN32_EXTENSION_NAME :: CString -> Bool is_VK_KHR_EXTERNAL_MEMORY_WIN32_EXTENSION_NAME- = eqCStrings _VK_KHR_EXTERNAL_MEMORY_WIN32_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_KHR_EXTERNAL_MEMORY_WIN32_EXTENSION_NAME type VK_KHR_EXTERNAL_MEMORY_WIN32_EXTENSION_NAME = "VK_KHR_external_memory_win32"
@@ -1,3 +1,4 @@+{-# OPTIONS_GHC -fno-warn-missing-pattern-synonym-signatures#-} {-# OPTIONS_HADDOCK not-home#-} {-# LANGUAGE DataKinds #-} {-# LANGUAGE MagicHash #-}@@ -23,29 +24,22 @@ -- ** Required extensions: 'VK_KHR_external_semaphore_capabilities'. module Graphics.Vulkan.Types.Struct.VkExportSemaphoreCreateInfoKHR,- module Graphics.Vulkan.Types.Enum.VkExternalSemaphoreHandleTypeFlagsKHR,- module Graphics.Vulkan.Types.BaseTypes,+ module Graphics.Vulkan.Types.Enum.VkSemaphoreImportFlagBitsKHR, module Graphics.Vulkan.Types.Bitmasks,- module Graphics.Vulkan.Types.Struct.VkSemaphoreCreateInfo,- module Graphics.Vulkan.Types.Enum.VkSemaphoreImportFlagsKHR,- module Graphics.Vulkan.Types.Enum.VkStructureType,- -- > #include "vk_platform.h" VK_KHR_EXTERNAL_SEMAPHORE_SPEC_VERSION, pattern VK_KHR_EXTERNAL_SEMAPHORE_SPEC_VERSION, VK_KHR_EXTERNAL_SEMAPHORE_EXTENSION_NAME, pattern VK_KHR_EXTERNAL_SEMAPHORE_EXTENSION_NAME,- pattern VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO_KHR)+ pattern VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO_KHR,+ pattern VK_SEMAPHORE_IMPORT_TEMPORARY_BIT_KHR) where-import GHC.Ptr- (Ptr (..))+import GHC.Ptr (Ptr (..))+import Graphics.Vulkan.Core_1_1 (pattern VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO) import Graphics.Vulkan.Marshal-import Graphics.Vulkan.Types.BaseTypes import Graphics.Vulkan.Types.Bitmasks-import Graphics.Vulkan.Types.Enum.VkExternalSemaphoreHandleTypeFlagsKHR-import Graphics.Vulkan.Types.Enum.VkSemaphoreImportFlagsKHR-import Graphics.Vulkan.Types.Enum.VkStructureType+import Graphics.Vulkan.Types.Enum.VkSemaphoreImportFlagBitsKHR+import Graphics.Vulkan.Types.Enum.VkSemaphoreImportFlags (VkSemaphoreImportBitmask (..)) import Graphics.Vulkan.Types.Struct.VkExportSemaphoreCreateInfoKHR-import Graphics.Vulkan.Types.Struct.VkSemaphoreCreateInfo pattern VK_KHR_EXTERNAL_SEMAPHORE_SPEC_VERSION :: (Num a, Eq a) => a@@ -71,13 +65,13 @@ is_VK_KHR_EXTERNAL_SEMAPHORE_EXTENSION_NAME :: CString -> Bool is_VK_KHR_EXTERNAL_SEMAPHORE_EXTENSION_NAME- = eqCStrings _VK_KHR_EXTERNAL_SEMAPHORE_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_KHR_EXTERNAL_SEMAPHORE_EXTENSION_NAME type VK_KHR_EXTERNAL_SEMAPHORE_EXTENSION_NAME = "VK_KHR_external_semaphore" -pattern VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO_KHR ::- VkStructureType- pattern VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO_KHR =- VkStructureType 1000077000+ VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO++pattern VK_SEMAPHORE_IMPORT_TEMPORARY_BIT_KHR =+ VK_SEMAPHORE_IMPORT_TEMPORARY_BIT
@@ -1,3 +1,4 @@+{-# OPTIONS_GHC -fno-warn-missing-pattern-synonym-signatures#-} {-# OPTIONS_HADDOCK not-home#-} {-# LANGUAGE DataKinds #-} {-# LANGUAGE ForeignFunctionInterface #-}@@ -23,69 +24,97 @@ -- -- ** Required extensions: 'VK_KHR_get_physical_device_properties2'.- module Graphics.Vulkan.Marshal,- module Graphics.Vulkan.Types.BaseTypes,- module Graphics.Vulkan.Types.Enum.VkExternalSemaphoreFeatureFlagsKHR,- module Graphics.Vulkan.Types.Enum.VkExternalSemaphoreHandleTypeFlagsKHR,+ module Graphics.Vulkan.Types.Enum.VkExternalSemaphoreFeatureFlagBitsKHR,+ module Graphics.Vulkan.Types.Bitmasks,+ module Graphics.Vulkan.Types.Enum.VkExternalSemaphoreHandleTypeFlagBitsKHR, module Graphics.Vulkan.Types.Struct.VkExternalSemaphorePropertiesKHR, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceExternalSemaphoreInfoKHR, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceIDPropertiesKHR,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceLimits,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2KHR,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseProperties,- module Graphics.Vulkan.Types.Enum.VkPhysicalDeviceType,- module Graphics.Vulkan.Types.Enum.VkSampleCountFlags,- module Graphics.Vulkan.Types.Enum.VkStructureType,- -- > #include "vk_platform.h" vkGetPhysicalDeviceExternalSemaphorePropertiesKHR,+ vkGetPhysicalDeviceExternalSemaphorePropertiesKHRSafe,+ module Graphics.Vulkan.Marshal,+ module Graphics.Vulkan.Types.BaseTypes,+ module Graphics.Vulkan.Types.Enum.VkExternalSemaphoreFeatureFlags,+ module Graphics.Vulkan.Types.Enum.VkExternalSemaphoreHandleTypeFlags,+ module Graphics.Vulkan.Types.Enum.VkStructureType, module Graphics.Vulkan.Types.Handles,+ module Graphics.Vulkan.Types.Struct.VkExternalSemaphoreProperties,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceExternalSemaphoreInfo, VK_KHR_EXTERNAL_SEMAPHORE_CAPABILITIES_SPEC_VERSION, pattern VK_KHR_EXTERNAL_SEMAPHORE_CAPABILITIES_SPEC_VERSION, VK_KHR_EXTERNAL_SEMAPHORE_CAPABILITIES_EXTENSION_NAME, pattern VK_KHR_EXTERNAL_SEMAPHORE_CAPABILITIES_EXTENSION_NAME, pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO_KHR, pattern VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES_KHR,- pattern VK_LUID_SIZE_KHR, VK_LUID_SIZE_KHR)+ pattern VK_LUID_SIZE_KHR,+ pattern VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR,+ pattern VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR,+ pattern VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR,+ pattern VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT_KHR,+ pattern VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT_KHR,+ pattern VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT_KHR,+ pattern VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT_KHR) where import GHC.Ptr (Ptr (..)) import Graphics.Vulkan.Constants- (VK_LUID_SIZE_KHR,- pattern VK_LUID_SIZE_KHR)+ (pattern VK_LUID_SIZE_KHR)+import Graphics.Vulkan.Core_1_1+ (pattern VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES,+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO) import Graphics.Vulkan.Marshal import Graphics.Vulkan.Types.BaseTypes-import Graphics.Vulkan.Types.Enum.VkExternalSemaphoreFeatureFlagsKHR-import Graphics.Vulkan.Types.Enum.VkExternalSemaphoreHandleTypeFlagsKHR-import Graphics.Vulkan.Types.Enum.VkPhysicalDeviceType-import Graphics.Vulkan.Types.Enum.VkSampleCountFlags+import Graphics.Vulkan.Types.Bitmasks+import Graphics.Vulkan.Types.Enum.VkExternalSemaphoreFeatureFlagBitsKHR+import Graphics.Vulkan.Types.Enum.VkExternalSemaphoreFeatureFlags+import Graphics.Vulkan.Types.Enum.VkExternalSemaphoreHandleTypeFlagBitsKHR+import Graphics.Vulkan.Types.Enum.VkExternalSemaphoreHandleTypeFlags import Graphics.Vulkan.Types.Enum.VkStructureType import Graphics.Vulkan.Types.Handles+import Graphics.Vulkan.Types.Struct.VkExternalSemaphoreProperties import Graphics.Vulkan.Types.Struct.VkExternalSemaphorePropertiesKHR+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceExternalSemaphoreInfo import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceExternalSemaphoreInfoKHR import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceIDPropertiesKHR-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceLimits-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2KHR-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseProperties --- | > () vkGetPhysicalDeviceExternalSemaphorePropertiesKHR+-- | This is an alias for `vkGetPhysicalDeviceExternalSemaphoreProperties`.+--+-- > () vkGetPhysicalDeviceExternalSemaphorePropertiesKHR -- > ( VkPhysicalDevice physicalDevice--- > , const VkPhysicalDeviceExternalSemaphoreInfoKHR* pExternalSemaphoreInfo--- > , VkExternalSemaphorePropertiesKHR* pExternalSemaphoreProperties+-- > , const VkPhysicalDeviceExternalSemaphoreInfo* pExternalSemaphoreInfo+-- > , VkExternalSemaphoreProperties* pExternalSemaphoreProperties -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetPhysicalDeviceExternalSemaphorePropertiesKHR.html vkGetPhysicalDeviceExternalSemaphorePropertiesKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceExternalSemaphorePropertiesKHR.html vkGetPhysicalDeviceExternalSemaphorePropertiesKHR registry at www.khronos.org> foreign import ccall unsafe- "vkGetPhysicalDeviceExternalSemaphorePropertiesKHR"+ "vkGetPhysicalDeviceExternalSemaphoreProperties" vkGetPhysicalDeviceExternalSemaphorePropertiesKHR :: VkPhysicalDevice -- ^ physicalDevice ->- Ptr VkPhysicalDeviceExternalSemaphoreInfoKHR -- ^ pExternalSemaphoreInfo- ->- Ptr VkExternalSemaphorePropertiesKHR -- ^ pExternalSemaphoreProperties- -> IO ()+ Ptr VkPhysicalDeviceExternalSemaphoreInfo -- ^ pExternalSemaphoreInfo+ ->+ Ptr VkExternalSemaphoreProperties -- ^ pExternalSemaphoreProperties+ -> IO () +-- | This is an alias for `vkGetPhysicalDeviceExternalSemaphoreProperties`.+--+-- > () vkGetPhysicalDeviceExternalSemaphorePropertiesKHR+-- > ( VkPhysicalDevice physicalDevice+-- > , const VkPhysicalDeviceExternalSemaphoreInfo* pExternalSemaphoreInfo+-- > , VkExternalSemaphoreProperties* pExternalSemaphoreProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceExternalSemaphorePropertiesKHR.html vkGetPhysicalDeviceExternalSemaphorePropertiesKHR registry at www.khronos.org>+foreign import ccall safe+ "vkGetPhysicalDeviceExternalSemaphoreProperties"+ vkGetPhysicalDeviceExternalSemaphorePropertiesKHRSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ Ptr VkPhysicalDeviceExternalSemaphoreInfo -- ^ pExternalSemaphoreInfo+ ->+ Ptr VkExternalSemaphoreProperties -- ^ pExternalSemaphoreProperties+ -> IO ()+ pattern VK_KHR_EXTERNAL_SEMAPHORE_CAPABILITIES_SPEC_VERSION :: (Num a, Eq a) => a @@ -114,19 +143,35 @@ is_VK_KHR_EXTERNAL_SEMAPHORE_CAPABILITIES_EXTENSION_NAME :: CString -> Bool is_VK_KHR_EXTERNAL_SEMAPHORE_CAPABILITIES_EXTENSION_NAME- = eqCStrings _VK_KHR_EXTERNAL_SEMAPHORE_CAPABILITIES_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_KHR_EXTERNAL_SEMAPHORE_CAPABILITIES_EXTENSION_NAME type VK_KHR_EXTERNAL_SEMAPHORE_CAPABILITIES_EXTENSION_NAME = "VK_KHR_external_semaphore_capabilities" pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO_KHR- :: VkStructureType+ = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO -pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO_KHR- = VkStructureType 1000076000+pattern VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES_KHR =+ VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES -pattern VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES_KHR ::- VkStructureType+pattern VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR =+ VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT -pattern VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES_KHR =- VkStructureType 1000076001+pattern VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR =+ VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT++pattern VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR+ = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT++pattern VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT_KHR =+ VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT++pattern VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT_KHR =+ VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT++pattern VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT_KHR =+ VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT++pattern VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT_KHR =+ VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT
@@ -24,14 +24,15 @@ -- ** Required extensions: 'VK_KHR_external_semaphore'. module Graphics.Vulkan.Marshal,- module Graphics.Vulkan.Types.Enum.VkExternalSemaphoreHandleTypeFlagsKHR,+ module Graphics.Vulkan.Types.Enum.VkExternalSemaphoreHandleTypeFlags, module Graphics.Vulkan.Types.BaseTypes, module Graphics.Vulkan.Types.Struct.VkImportSemaphoreFdInfoKHR, module Graphics.Vulkan.Types.Struct.VkSemaphoreGetFdInfoKHR,- module Graphics.Vulkan.Types.Enum.VkSemaphoreImportFlagsKHR,+ module Graphics.Vulkan.Types.Enum.VkSemaphoreImportFlags, module Graphics.Vulkan.Types.Enum.VkStructureType, -- > #include "vk_platform.h"- vkImportSemaphoreFdKHR, vkGetSemaphoreFdKHR,+ vkImportSemaphoreFdKHR, vkImportSemaphoreFdKHRSafe,+ vkGetSemaphoreFdKHR, vkGetSemaphoreFdKHRSafe, module Graphics.Vulkan.Types.Enum.VkResult, module Graphics.Vulkan.Types.Handles, VK_KHR_EXTERNAL_SEMAPHORE_FD_SPEC_VERSION,@@ -41,13 +42,12 @@ pattern VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR, pattern VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR) where-import GHC.Ptr- (Ptr (..))+import GHC.Ptr (Ptr (..)) import Graphics.Vulkan.Marshal import Graphics.Vulkan.Types.BaseTypes-import Graphics.Vulkan.Types.Enum.VkExternalSemaphoreHandleTypeFlagsKHR+import Graphics.Vulkan.Types.Enum.VkExternalSemaphoreHandleTypeFlags import Graphics.Vulkan.Types.Enum.VkResult-import Graphics.Vulkan.Types.Enum.VkSemaphoreImportFlagsKHR+import Graphics.Vulkan.Types.Enum.VkSemaphoreImportFlags import Graphics.Vulkan.Types.Enum.VkStructureType import Graphics.Vulkan.Types.Handles import Graphics.Vulkan.Types.Struct.VkImportSemaphoreFdInfoKHR@@ -55,14 +55,14 @@ -- | Success codes: 'VK_SUCCESS'. ----- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR'.+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_INVALID_EXTERNAL_HANDLE'. -- -- > VkResult vkImportSemaphoreFdKHR -- > ( VkDevice device -- > , const VkImportSemaphoreFdInfoKHR* pImportSemaphoreFdInfo -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkImportSemaphoreFdKHR.html vkImportSemaphoreFdKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkImportSemaphoreFdKHR.html vkImportSemaphoreFdKHR registry at www.khronos.org> foreign import ccall unsafe "vkImportSemaphoreFdKHR" vkImportSemaphoreFdKHR :: VkDevice -- ^ device@@ -71,6 +71,22 @@ -- | Success codes: 'VK_SUCCESS'. --+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_INVALID_EXTERNAL_HANDLE'.+--+-- > VkResult vkImportSemaphoreFdKHR+-- > ( VkDevice device+-- > , const VkImportSemaphoreFdInfoKHR* pImportSemaphoreFdInfo+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkImportSemaphoreFdKHR.html vkImportSemaphoreFdKHR registry at www.khronos.org>+foreign import ccall safe "vkImportSemaphoreFdKHR"+ vkImportSemaphoreFdKHRSafe ::+ VkDevice -- ^ device+ -> Ptr VkImportSemaphoreFdInfoKHR -- ^ pImportSemaphoreFdInfo+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+-- -- Error codes: 'VK_ERROR_TOO_MANY_OBJECTS', 'VK_ERROR_OUT_OF_HOST_MEMORY'. -- -- > VkResult vkGetSemaphoreFdKHR@@ -79,7 +95,7 @@ -- > , int* pFd -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetSemaphoreFdKHR.html vkGetSemaphoreFdKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetSemaphoreFdKHR.html vkGetSemaphoreFdKHR registry at www.khronos.org> foreign import ccall unsafe "vkGetSemaphoreFdKHR" vkGetSemaphoreFdKHR :: VkDevice -- ^ device@@ -87,6 +103,24 @@ -> Ptr CInt -- ^ pFd -> IO VkResult +-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_TOO_MANY_OBJECTS', 'VK_ERROR_OUT_OF_HOST_MEMORY'.+--+-- > VkResult vkGetSemaphoreFdKHR+-- > ( VkDevice device+-- > , const VkSemaphoreGetFdInfoKHR* pGetFdInfo+-- > , int* pFd+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetSemaphoreFdKHR.html vkGetSemaphoreFdKHR registry at www.khronos.org>+foreign import ccall safe "vkGetSemaphoreFdKHR"+ vkGetSemaphoreFdKHRSafe ::+ VkDevice -- ^ device+ -> Ptr VkSemaphoreGetFdInfoKHR -- ^ pGetFdInfo+ -> Ptr CInt -- ^ pFd+ -> IO VkResult+ pattern VK_KHR_EXTERNAL_SEMAPHORE_FD_SPEC_VERSION :: (Num a, Eq a) => a @@ -111,7 +145,8 @@ is_VK_KHR_EXTERNAL_SEMAPHORE_FD_EXTENSION_NAME :: CString -> Bool is_VK_KHR_EXTERNAL_SEMAPHORE_FD_EXTENSION_NAME- = eqCStrings _VK_KHR_EXTERNAL_SEMAPHORE_FD_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_KHR_EXTERNAL_SEMAPHORE_FD_EXTENSION_NAME type VK_KHR_EXTERNAL_SEMAPHORE_FD_EXTENSION_NAME = "VK_KHR_external_semaphore_fd"
@@ -17,31 +17,30 @@ -- -- type: @device@ --+ -- platform: @win32@+ -- -- Extension number: @79@ -- -- Required extensions: 'VK_KHR_external_semaphore'. --- -- Protected by CPP ifdef: @VK_USE_PLATFORM_WIN32_KHR@- -- -- ** Required extensions: 'VK_KHR_external_semaphore'. module Graphics.Vulkan.Types.Struct.VkD3D12FenceSubmitInfoKHR, module Graphics.Vulkan.Types.Struct.VkExportSemaphoreWin32HandleInfoKHR,- module Graphics.Vulkan.Types.Enum.VkExternalSemaphoreHandleTypeFlagsKHR,+ module Graphics.Vulkan.Types.Enum.VkExternalSemaphoreHandleTypeFlags, module Graphics.Vulkan.Types.BaseTypes, module Graphics.Vulkan.Types.Struct.VkImportSemaphoreWin32HandleInfoKHR, module Graphics.Vulkan.Types.Enum.VkPipelineStageFlags, module Graphics.Vulkan.Types.Bitmasks, module Graphics.Vulkan.Types.Struct.VkSemaphoreCreateInfo, module Graphics.Vulkan.Types.Struct.VkSemaphoreGetWin32HandleInfoKHR,- module Graphics.Vulkan.Types.Enum.VkSemaphoreImportFlagsKHR,+ module Graphics.Vulkan.Types.Enum.VkSemaphoreImportFlags, module Graphics.Vulkan.Types.Enum.VkStructureType, module Graphics.Vulkan.Types.Struct.VkSubmitInfo, -- > #include "vk_platform.h"- --- -- > #include <windows.h>- vkImportSemaphoreWin32HandleKHR, vkGetSemaphoreWin32HandleKHR,- module Graphics.Vulkan.Marshal,+ vkImportSemaphoreWin32HandleKHR,+ vkImportSemaphoreWin32HandleKHRSafe, vkGetSemaphoreWin32HandleKHR,+ vkGetSemaphoreWin32HandleKHRSafe, module Graphics.Vulkan.Marshal, module Graphics.Vulkan.Types.Enum.VkResult, module Graphics.Vulkan.Types.Handles, module Graphics.Vulkan.Types.Include,@@ -59,10 +58,10 @@ import Graphics.Vulkan.Marshal import Graphics.Vulkan.Types.BaseTypes import Graphics.Vulkan.Types.Bitmasks-import Graphics.Vulkan.Types.Enum.VkExternalSemaphoreHandleTypeFlagsKHR+import Graphics.Vulkan.Types.Enum.VkExternalSemaphoreHandleTypeFlags import Graphics.Vulkan.Types.Enum.VkPipelineStageFlags import Graphics.Vulkan.Types.Enum.VkResult-import Graphics.Vulkan.Types.Enum.VkSemaphoreImportFlagsKHR+import Graphics.Vulkan.Types.Enum.VkSemaphoreImportFlags import Graphics.Vulkan.Types.Enum.VkStructureType import Graphics.Vulkan.Types.Handles import Graphics.Vulkan.Types.Include@@ -75,14 +74,14 @@ -- | Success codes: 'VK_SUCCESS'. ----- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR'.+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_INVALID_EXTERNAL_HANDLE'. -- -- > VkResult vkImportSemaphoreWin32HandleKHR -- > ( VkDevice device -- > , const VkImportSemaphoreWin32HandleInfoKHR* pImportSemaphoreWin32HandleInfo -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkImportSemaphoreWin32HandleKHR.html vkImportSemaphoreWin32HandleKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkImportSemaphoreWin32HandleKHR.html vkImportSemaphoreWin32HandleKHR registry at www.khronos.org> foreign import ccall unsafe "vkImportSemaphoreWin32HandleKHR" vkImportSemaphoreWin32HandleKHR :: VkDevice -- ^ device@@ -91,6 +90,22 @@ -- | Success codes: 'VK_SUCCESS'. --+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_INVALID_EXTERNAL_HANDLE'.+--+-- > VkResult vkImportSemaphoreWin32HandleKHR+-- > ( VkDevice device+-- > , const VkImportSemaphoreWin32HandleInfoKHR* pImportSemaphoreWin32HandleInfo+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkImportSemaphoreWin32HandleKHR.html vkImportSemaphoreWin32HandleKHR registry at www.khronos.org>+foreign import ccall safe "vkImportSemaphoreWin32HandleKHR"+ vkImportSemaphoreWin32HandleKHRSafe ::+ VkDevice -- ^ device+ -> Ptr VkImportSemaphoreWin32HandleInfoKHR -- ^ pImportSemaphoreWin32HandleInfo+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+-- -- Error codes: 'VK_ERROR_TOO_MANY_OBJECTS', 'VK_ERROR_OUT_OF_HOST_MEMORY'. -- -- > VkResult vkGetSemaphoreWin32HandleKHR@@ -99,7 +114,7 @@ -- > , HANDLE* pHandle -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetSemaphoreWin32HandleKHR.html vkGetSemaphoreWin32HandleKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetSemaphoreWin32HandleKHR.html vkGetSemaphoreWin32HandleKHR registry at www.khronos.org> foreign import ccall unsafe "vkGetSemaphoreWin32HandleKHR" vkGetSemaphoreWin32HandleKHR :: VkDevice -- ^ device@@ -108,6 +123,25 @@ -> Ptr HANDLE -- ^ pHandle -> IO VkResult +-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_TOO_MANY_OBJECTS', 'VK_ERROR_OUT_OF_HOST_MEMORY'.+--+-- > VkResult vkGetSemaphoreWin32HandleKHR+-- > ( VkDevice device+-- > , const VkSemaphoreGetWin32HandleInfoKHR* pGetWin32HandleInfo+-- > , HANDLE* pHandle+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetSemaphoreWin32HandleKHR.html vkGetSemaphoreWin32HandleKHR registry at www.khronos.org>+foreign import ccall safe "vkGetSemaphoreWin32HandleKHR"+ vkGetSemaphoreWin32HandleKHRSafe ::+ VkDevice -- ^ device+ ->+ Ptr VkSemaphoreGetWin32HandleInfoKHR -- ^ pGetWin32HandleInfo+ -> Ptr HANDLE -- ^ pHandle+ -> IO VkResult+ pattern VK_KHR_EXTERNAL_SEMAPHORE_WIN32_SPEC_VERSION :: (Num a, Eq a) => a @@ -133,7 +167,8 @@ is_VK_KHR_EXTERNAL_SEMAPHORE_WIN32_EXTENSION_NAME :: CString -> Bool is_VK_KHR_EXTERNAL_SEMAPHORE_WIN32_EXTENSION_NAME- = eqCStrings _VK_KHR_EXTERNAL_SEMAPHORE_WIN32_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_KHR_EXTERNAL_SEMAPHORE_WIN32_EXTENSION_NAME type VK_KHR_EXTERNAL_SEMAPHORE_WIN32_EXTENSION_NAME = "VK_KHR_external_semaphore_win32"
@@ -1,3 +1,4 @@+{-# OPTIONS_GHC -fno-warn-missing-pattern-synonym-signatures#-} {-# OPTIONS_HADDOCK not-home#-} {-# LANGUAGE DataKinds #-} {-# LANGUAGE ForeignFunctionInterface #-}@@ -19,24 +20,31 @@ -- -- Extension number: @147@ module Graphics.Vulkan.Types.Struct.VkBufferMemoryRequirementsInfo2KHR,- module Graphics.Vulkan.Types.BaseTypes,- module Graphics.Vulkan.Types.Struct.VkExtent3D,- module Graphics.Vulkan.Types.Enum.VkImageAspectFlags, module Graphics.Vulkan.Types.Struct.VkImageMemoryRequirementsInfo2KHR, module Graphics.Vulkan.Types.Struct.VkImageSparseMemoryRequirementsInfo2KHR,- module Graphics.Vulkan.Types.Struct.VkMemoryRequirements, module Graphics.Vulkan.Types.Struct.VkMemoryRequirements2KHR,- module Graphics.Vulkan.Types.Enum.VkSparseImageFormatFlags,- module Graphics.Vulkan.Types.Struct.VkSparseImageFormatProperties,- module Graphics.Vulkan.Types.Struct.VkSparseImageMemoryRequirements, module Graphics.Vulkan.Types.Struct.VkSparseImageMemoryRequirements2KHR,- module Graphics.Vulkan.Types.Enum.VkStructureType,- -- > #include "vk_platform.h" vkGetImageMemoryRequirements2KHR,+ vkGetImageMemoryRequirements2KHRSafe, vkGetBufferMemoryRequirements2KHR,+ vkGetBufferMemoryRequirements2KHRSafe, vkGetImageSparseMemoryRequirements2KHR,+ vkGetImageSparseMemoryRequirements2KHRSafe, module Graphics.Vulkan.Marshal,+ module Graphics.Vulkan.Types.BaseTypes,+ module Graphics.Vulkan.Types.Enum.VkImageAspectFlags,+ module Graphics.Vulkan.Types.Enum.VkSparseImageFormatFlags,+ module Graphics.Vulkan.Types.Enum.VkStructureType, module Graphics.Vulkan.Types.Handles,+ module Graphics.Vulkan.Types.Struct.VkBufferMemoryRequirementsInfo2,+ module Graphics.Vulkan.Types.Struct.VkExtent3D,+ module Graphics.Vulkan.Types.Struct.VkImageMemoryRequirementsInfo2,+ module Graphics.Vulkan.Types.Struct.VkImageSparseMemoryRequirementsInfo2,+ module Graphics.Vulkan.Types.Struct.VkMemoryRequirements,+ module Graphics.Vulkan.Types.Struct.VkMemoryRequirements2,+ module Graphics.Vulkan.Types.Struct.VkSparseImageFormatProperties,+ module Graphics.Vulkan.Types.Struct.VkSparseImageMemoryRequirements,+ module Graphics.Vulkan.Types.Struct.VkSparseImageMemoryRequirements2, VK_KHR_GET_MEMORY_REQUIREMENTS_2_SPEC_VERSION, pattern VK_KHR_GET_MEMORY_REQUIREMENTS_2_SPEC_VERSION, VK_KHR_GET_MEMORY_REQUIREMENTS_2_EXTENSION_NAME,@@ -49,73 +57,145 @@ where import GHC.Ptr (Ptr (..))+import Graphics.Vulkan.Core_1_1+ (pattern VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2,+ pattern VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2,+ pattern VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2,+ pattern VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2,+ pattern VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2) import Graphics.Vulkan.Marshal import Graphics.Vulkan.Types.BaseTypes import Graphics.Vulkan.Types.Enum.VkImageAspectFlags import Graphics.Vulkan.Types.Enum.VkSparseImageFormatFlags import Graphics.Vulkan.Types.Enum.VkStructureType import Graphics.Vulkan.Types.Handles+import Graphics.Vulkan.Types.Struct.VkBufferMemoryRequirementsInfo2 import Graphics.Vulkan.Types.Struct.VkBufferMemoryRequirementsInfo2KHR import Graphics.Vulkan.Types.Struct.VkExtent3D+import Graphics.Vulkan.Types.Struct.VkImageMemoryRequirementsInfo2 import Graphics.Vulkan.Types.Struct.VkImageMemoryRequirementsInfo2KHR+import Graphics.Vulkan.Types.Struct.VkImageSparseMemoryRequirementsInfo2 import Graphics.Vulkan.Types.Struct.VkImageSparseMemoryRequirementsInfo2KHR import Graphics.Vulkan.Types.Struct.VkMemoryRequirements+import Graphics.Vulkan.Types.Struct.VkMemoryRequirements2 import Graphics.Vulkan.Types.Struct.VkMemoryRequirements2KHR import Graphics.Vulkan.Types.Struct.VkSparseImageFormatProperties import Graphics.Vulkan.Types.Struct.VkSparseImageMemoryRequirements+import Graphics.Vulkan.Types.Struct.VkSparseImageMemoryRequirements2 import Graphics.Vulkan.Types.Struct.VkSparseImageMemoryRequirements2KHR --- | > () vkGetImageMemoryRequirements2KHR+-- | This is an alias for `vkGetImageMemoryRequirements2`.+--+-- > () vkGetImageMemoryRequirements2KHR -- > ( VkDevice device--- > , const VkImageMemoryRequirementsInfo2KHR* pInfo--- > , VkMemoryRequirements2KHR* pMemoryRequirements+-- > , const VkImageMemoryRequirementsInfo2* pInfo+-- > , VkMemoryRequirements2* pMemoryRequirements -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetImageMemoryRequirements2KHR.html vkGetImageMemoryRequirements2KHR registry at www.khronos.org>-foreign import ccall unsafe "vkGetImageMemoryRequirements2KHR"+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetImageMemoryRequirements2KHR.html vkGetImageMemoryRequirements2KHR registry at www.khronos.org>+foreign import ccall unsafe "vkGetImageMemoryRequirements2" vkGetImageMemoryRequirements2KHR :: VkDevice -- ^ device ->- Ptr VkImageMemoryRequirementsInfo2KHR -- ^ pInfo- ->- Ptr VkMemoryRequirements2KHR -- ^ pMemoryRequirements- -> IO ()+ Ptr VkImageMemoryRequirementsInfo2 -- ^ pInfo+ ->+ Ptr VkMemoryRequirements2 -- ^ pMemoryRequirements+ -> IO () --- | > () vkGetBufferMemoryRequirements2KHR+-- | This is an alias for `vkGetImageMemoryRequirements2`.+--+-- > () vkGetImageMemoryRequirements2KHR -- > ( VkDevice device--- > , const VkBufferMemoryRequirementsInfo2KHR* pInfo--- > , VkMemoryRequirements2KHR* pMemoryRequirements+-- > , const VkImageMemoryRequirementsInfo2* pInfo+-- > , VkMemoryRequirements2* pMemoryRequirements -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetBufferMemoryRequirements2KHR.html vkGetBufferMemoryRequirements2KHR registry at www.khronos.org>-foreign import ccall unsafe "vkGetBufferMemoryRequirements2KHR"+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetImageMemoryRequirements2KHR.html vkGetImageMemoryRequirements2KHR registry at www.khronos.org>+foreign import ccall safe "vkGetImageMemoryRequirements2"+ vkGetImageMemoryRequirements2KHRSafe ::+ VkDevice -- ^ device+ ->+ Ptr VkImageMemoryRequirementsInfo2 -- ^ pInfo+ ->+ Ptr VkMemoryRequirements2 -- ^ pMemoryRequirements+ -> IO ()++-- | This is an alias for `vkGetBufferMemoryRequirements2`.+--+-- > () vkGetBufferMemoryRequirements2KHR+-- > ( VkDevice device+-- > , const VkBufferMemoryRequirementsInfo2* pInfo+-- > , VkMemoryRequirements2* pMemoryRequirements+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetBufferMemoryRequirements2KHR.html vkGetBufferMemoryRequirements2KHR registry at www.khronos.org>+foreign import ccall unsafe "vkGetBufferMemoryRequirements2" vkGetBufferMemoryRequirements2KHR :: VkDevice -- ^ device ->- Ptr VkBufferMemoryRequirementsInfo2KHR -- ^ pInfo- ->- Ptr VkMemoryRequirements2KHR -- ^ pMemoryRequirements- -> IO ()+ Ptr VkBufferMemoryRequirementsInfo2 -- ^ pInfo+ ->+ Ptr VkMemoryRequirements2 -- ^ pMemoryRequirements+ -> IO () --- | > () vkGetImageSparseMemoryRequirements2KHR+-- | This is an alias for `vkGetBufferMemoryRequirements2`.+--+-- > () vkGetBufferMemoryRequirements2KHR -- > ( VkDevice device--- > , const VkImageSparseMemoryRequirementsInfo2KHR* pInfo+-- > , const VkBufferMemoryRequirementsInfo2* pInfo+-- > , VkMemoryRequirements2* pMemoryRequirements+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetBufferMemoryRequirements2KHR.html vkGetBufferMemoryRequirements2KHR registry at www.khronos.org>+foreign import ccall safe "vkGetBufferMemoryRequirements2"+ vkGetBufferMemoryRequirements2KHRSafe ::+ VkDevice -- ^ device+ ->+ Ptr VkBufferMemoryRequirementsInfo2 -- ^ pInfo+ ->+ Ptr VkMemoryRequirements2 -- ^ pMemoryRequirements+ -> IO ()++-- | This is an alias for `vkGetImageSparseMemoryRequirements2`.+--+-- > () vkGetImageSparseMemoryRequirements2KHR+-- > ( VkDevice device+-- > , const VkImageSparseMemoryRequirementsInfo2* pInfo -- > , uint32_t* pSparseMemoryRequirementCount--- > , VkSparseImageMemoryRequirements2KHR* pSparseMemoryRequirements+-- > , VkSparseImageMemoryRequirements2* pSparseMemoryRequirements -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetImageSparseMemoryRequirements2KHR.html vkGetImageSparseMemoryRequirements2KHR registry at www.khronos.org>-foreign import ccall unsafe- "vkGetImageSparseMemoryRequirements2KHR"+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetImageSparseMemoryRequirements2KHR.html vkGetImageSparseMemoryRequirements2KHR registry at www.khronos.org>+foreign import ccall unsafe "vkGetImageSparseMemoryRequirements2" vkGetImageSparseMemoryRequirements2KHR :: VkDevice -- ^ device ->- Ptr VkImageSparseMemoryRequirementsInfo2KHR -- ^ pInfo- ->+ Ptr VkImageSparseMemoryRequirementsInfo2 -- ^ pInfo+ -> Ptr Word32 -- ^ pSparseMemoryRequirementCount- -> Ptr VkSparseImageMemoryRequirements2KHR -- ^ pSparseMemoryRequirements- -> IO ()+ -> Ptr VkSparseImageMemoryRequirements2 -- ^ pSparseMemoryRequirements+ -> IO () +-- | This is an alias for `vkGetImageSparseMemoryRequirements2`.+--+-- > () vkGetImageSparseMemoryRequirements2KHR+-- > ( VkDevice device+-- > , const VkImageSparseMemoryRequirementsInfo2* pInfo+-- > , uint32_t* pSparseMemoryRequirementCount+-- > , VkSparseImageMemoryRequirements2* pSparseMemoryRequirements+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetImageSparseMemoryRequirements2KHR.html vkGetImageSparseMemoryRequirements2KHR registry at www.khronos.org>+foreign import ccall safe "vkGetImageSparseMemoryRequirements2"+ vkGetImageSparseMemoryRequirements2KHRSafe ::+ VkDevice -- ^ device+ ->+ Ptr VkImageSparseMemoryRequirementsInfo2 -- ^ pInfo+ ->+ Ptr Word32 -- ^ pSparseMemoryRequirementCount+ -> Ptr VkSparseImageMemoryRequirements2 -- ^ pSparseMemoryRequirements+ -> IO ()+ pattern VK_KHR_GET_MEMORY_REQUIREMENTS_2_SPEC_VERSION :: (Num a, Eq a) => a @@ -141,37 +221,23 @@ is_VK_KHR_GET_MEMORY_REQUIREMENTS_2_EXTENSION_NAME :: CString -> Bool is_VK_KHR_GET_MEMORY_REQUIREMENTS_2_EXTENSION_NAME- = eqCStrings _VK_KHR_GET_MEMORY_REQUIREMENTS_2_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_KHR_GET_MEMORY_REQUIREMENTS_2_EXTENSION_NAME type VK_KHR_GET_MEMORY_REQUIREMENTS_2_EXTENSION_NAME = "VK_KHR_get_memory_requirements2" -pattern VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2_KHR ::- VkStructureType- pattern VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2_KHR =- VkStructureType 1000146000--pattern VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2_KHR ::- VkStructureType+ VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 pattern VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2_KHR =- VkStructureType 1000146001--pattern VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2_KHR- :: VkStructureType+ VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 pattern VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2_KHR- = VkStructureType 1000146002--pattern VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2_KHR ::- VkStructureType+ = VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 pattern VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2_KHR =- VkStructureType 1000146003--pattern VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2_KHR ::- VkStructureType+ VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 pattern VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2_KHR =- VkStructureType 1000146004+ VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2
@@ -1,3 +1,4 @@+{-# OPTIONS_GHC -fno-warn-missing-pattern-synonym-signatures#-} {-# OPTIONS_HADDOCK not-home#-} {-# LANGUAGE DataKinds #-} {-# LANGUAGE ForeignFunctionInterface #-}@@ -18,55 +19,72 @@ -- type: @instance@ -- -- Extension number: @60@+ module Graphics.Vulkan.Types.Struct.VkFormatProperties2KHR,+ module Graphics.Vulkan.Types.Struct.VkImageFormatProperties2KHR,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceFeatures2KHR,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceImageFormatInfo2KHR,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceMemoryProperties2KHR,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2KHR,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseImageFormatInfo2KHR,+ module Graphics.Vulkan.Types.Struct.VkQueueFamilyProperties2KHR,+ module Graphics.Vulkan.Types.Struct.VkSparseImageFormatProperties2KHR,+ vkGetPhysicalDeviceFeatures2KHR,+ vkGetPhysicalDeviceFeatures2KHRSafe,+ vkGetPhysicalDeviceProperties2KHR,+ vkGetPhysicalDeviceProperties2KHRSafe,+ vkGetPhysicalDeviceFormatProperties2KHR,+ vkGetPhysicalDeviceFormatProperties2KHRSafe,+ vkGetPhysicalDeviceImageFormatProperties2KHR,+ vkGetPhysicalDeviceImageFormatProperties2KHRSafe,+ vkGetPhysicalDeviceQueueFamilyProperties2KHR,+ vkGetPhysicalDeviceQueueFamilyProperties2KHRSafe,+ vkGetPhysicalDeviceMemoryProperties2KHR,+ vkGetPhysicalDeviceMemoryProperties2KHRSafe,+ vkGetPhysicalDeviceSparseImageFormatProperties2KHR,+ vkGetPhysicalDeviceSparseImageFormatProperties2KHRSafe, module Graphics.Vulkan.Marshal, module Graphics.Vulkan.Types.BaseTypes, module Graphics.Vulkan.Types.Bitmasks,- module Graphics.Vulkan.Types.Struct.VkDeviceCreateInfo,- module Graphics.Vulkan.Types.Struct.VkDeviceQueueCreateInfo,- module Graphics.Vulkan.Types.Struct.VkExtent3D,+ module Graphics.Vulkan.Types.Enum.VkDeviceQueueCreateFlags, module Graphics.Vulkan.Types.Enum.VkFormat, module Graphics.Vulkan.Types.Enum.VkFormatFeatureFlags,- module Graphics.Vulkan.Types.Struct.VkFormatProperties,- module Graphics.Vulkan.Types.Struct.VkFormatProperties2KHR, module Graphics.Vulkan.Types.Enum.VkImageAspectFlags, module Graphics.Vulkan.Types.Enum.VkImageCreateFlags,- module Graphics.Vulkan.Types.Struct.VkImageFormatProperties,- module Graphics.Vulkan.Types.Struct.VkImageFormatProperties2KHR, module Graphics.Vulkan.Types.Enum.VkImageTiling, module Graphics.Vulkan.Types.Enum.VkImageType, module Graphics.Vulkan.Types.Enum.VkImageUsageFlags,- module Graphics.Vulkan.Types.Struct.VkMemoryHeap, module Graphics.Vulkan.Types.Enum.VkMemoryHeapFlags, module Graphics.Vulkan.Types.Enum.VkMemoryPropertyFlags,+ module Graphics.Vulkan.Types.Enum.VkPhysicalDeviceType,+ module Graphics.Vulkan.Types.Enum.VkQueueFlags,+ module Graphics.Vulkan.Types.Enum.VkResult,+ module Graphics.Vulkan.Types.Enum.VkSampleCountFlags,+ module Graphics.Vulkan.Types.Enum.VkSparseImageFormatFlags,+ module Graphics.Vulkan.Types.Enum.VkStructureType,+ module Graphics.Vulkan.Types.Handles,+ module Graphics.Vulkan.Types.Struct.VkDeviceCreateInfo,+ module Graphics.Vulkan.Types.Struct.VkDeviceQueueCreateInfo,+ module Graphics.Vulkan.Types.Struct.VkExtent3D,+ module Graphics.Vulkan.Types.Struct.VkFormatProperties,+ module Graphics.Vulkan.Types.Struct.VkFormatProperties2,+ module Graphics.Vulkan.Types.Struct.VkImageFormatProperties,+ module Graphics.Vulkan.Types.Struct.VkImageFormatProperties2,+ module Graphics.Vulkan.Types.Struct.VkMemoryHeap, module Graphics.Vulkan.Types.Struct.VkMemoryType, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceFeatures,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceFeatures2KHR,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceImageFormatInfo2KHR,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceFeatures2,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceImageFormatInfo2, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceLimits, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceMemoryProperties,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceMemoryProperties2KHR,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceMemoryProperties2, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2KHR,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseImageFormatInfo2KHR,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseImageFormatInfo2, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseProperties,- module Graphics.Vulkan.Types.Enum.VkPhysicalDeviceType, module Graphics.Vulkan.Types.Struct.VkQueueFamilyProperties,- module Graphics.Vulkan.Types.Struct.VkQueueFamilyProperties2KHR,- module Graphics.Vulkan.Types.Enum.VkQueueFlags,- module Graphics.Vulkan.Types.Enum.VkSampleCountFlags,- module Graphics.Vulkan.Types.Enum.VkSparseImageFormatFlags,+ module Graphics.Vulkan.Types.Struct.VkQueueFamilyProperties2, module Graphics.Vulkan.Types.Struct.VkSparseImageFormatProperties,- module Graphics.Vulkan.Types.Struct.VkSparseImageFormatProperties2KHR,- module Graphics.Vulkan.Types.Enum.VkStructureType,- -- > #include "vk_platform.h"- vkGetPhysicalDeviceFeatures2KHR, vkGetPhysicalDeviceProperties2KHR,- vkGetPhysicalDeviceFormatProperties2KHR,- vkGetPhysicalDeviceImageFormatProperties2KHR,- vkGetPhysicalDeviceQueueFamilyProperties2KHR,- vkGetPhysicalDeviceMemoryProperties2KHR,- vkGetPhysicalDeviceSparseImageFormatProperties2KHR,- module Graphics.Vulkan.Types.Enum.VkResult,- module Graphics.Vulkan.Types.Handles,+ module Graphics.Vulkan.Types.Struct.VkSparseImageFormatProperties2, VK_KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_SPEC_VERSION, pattern VK_KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_SPEC_VERSION, VK_KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_EXTENSION_NAME,@@ -83,9 +101,20 @@ where import GHC.Ptr (Ptr (..))+import Graphics.Vulkan.Core_1_1+ (pattern VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2,+ pattern VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2,+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2,+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2,+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2,+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2,+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2,+ pattern VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2,+ pattern VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2) import Graphics.Vulkan.Marshal import Graphics.Vulkan.Types.BaseTypes import Graphics.Vulkan.Types.Bitmasks+import Graphics.Vulkan.Types.Enum.VkDeviceQueueCreateFlags import Graphics.Vulkan.Types.Enum.VkFormat import Graphics.Vulkan.Types.Enum.VkFormatFeatureFlags import Graphics.Vulkan.Types.Enum.VkImageAspectFlags@@ -106,135 +135,275 @@ import Graphics.Vulkan.Types.Struct.VkDeviceQueueCreateInfo import Graphics.Vulkan.Types.Struct.VkExtent3D import Graphics.Vulkan.Types.Struct.VkFormatProperties+import Graphics.Vulkan.Types.Struct.VkFormatProperties2 import Graphics.Vulkan.Types.Struct.VkFormatProperties2KHR import Graphics.Vulkan.Types.Struct.VkImageFormatProperties+import Graphics.Vulkan.Types.Struct.VkImageFormatProperties2 import Graphics.Vulkan.Types.Struct.VkImageFormatProperties2KHR import Graphics.Vulkan.Types.Struct.VkMemoryHeap import Graphics.Vulkan.Types.Struct.VkMemoryType import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceFeatures+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceFeatures2 import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceFeatures2KHR+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceImageFormatInfo2 import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceImageFormatInfo2KHR import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceLimits import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceMemoryProperties+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceMemoryProperties2 import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceMemoryProperties2KHR import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2 import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2KHR+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseImageFormatInfo2 import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseImageFormatInfo2KHR import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseProperties import Graphics.Vulkan.Types.Struct.VkQueueFamilyProperties+import Graphics.Vulkan.Types.Struct.VkQueueFamilyProperties2 import Graphics.Vulkan.Types.Struct.VkQueueFamilyProperties2KHR import Graphics.Vulkan.Types.Struct.VkSparseImageFormatProperties+import Graphics.Vulkan.Types.Struct.VkSparseImageFormatProperties2 import Graphics.Vulkan.Types.Struct.VkSparseImageFormatProperties2KHR --- | > () vkGetPhysicalDeviceFeatures2KHR+-- | This is an alias for `vkGetPhysicalDeviceFeatures2`.+--+-- > () vkGetPhysicalDeviceFeatures2KHR -- > ( VkPhysicalDevice physicalDevice--- > , VkPhysicalDeviceFeatures2KHR* pFeatures+-- > , VkPhysicalDeviceFeatures2* pFeatures -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetPhysicalDeviceFeatures2KHR.html vkGetPhysicalDeviceFeatures2KHR registry at www.khronos.org>-foreign import ccall unsafe "vkGetPhysicalDeviceFeatures2KHR"+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceFeatures2KHR.html vkGetPhysicalDeviceFeatures2KHR registry at www.khronos.org>+foreign import ccall unsafe "vkGetPhysicalDeviceFeatures2" vkGetPhysicalDeviceFeatures2KHR :: VkPhysicalDevice -- ^ physicalDevice- -> Ptr VkPhysicalDeviceFeatures2KHR -- ^ pFeatures- -> IO ()+ -> Ptr VkPhysicalDeviceFeatures2 -- ^ pFeatures+ -> IO () --- | > () vkGetPhysicalDeviceProperties2KHR+-- | This is an alias for `vkGetPhysicalDeviceFeatures2`.+--+-- > () vkGetPhysicalDeviceFeatures2KHR -- > ( VkPhysicalDevice physicalDevice--- > , VkPhysicalDeviceProperties2KHR* pProperties+-- > , VkPhysicalDeviceFeatures2* pFeatures -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetPhysicalDeviceProperties2KHR.html vkGetPhysicalDeviceProperties2KHR registry at www.khronos.org>-foreign import ccall unsafe "vkGetPhysicalDeviceProperties2KHR"+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceFeatures2KHR.html vkGetPhysicalDeviceFeatures2KHR registry at www.khronos.org>+foreign import ccall safe "vkGetPhysicalDeviceFeatures2"+ vkGetPhysicalDeviceFeatures2KHRSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ -> Ptr VkPhysicalDeviceFeatures2 -- ^ pFeatures+ -> IO ()++-- | This is an alias for `vkGetPhysicalDeviceProperties2`.+--+-- > () vkGetPhysicalDeviceProperties2KHR+-- > ( VkPhysicalDevice physicalDevice+-- > , VkPhysicalDeviceProperties2* pProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceProperties2KHR.html vkGetPhysicalDeviceProperties2KHR registry at www.khronos.org>+foreign import ccall unsafe "vkGetPhysicalDeviceProperties2" vkGetPhysicalDeviceProperties2KHR :: VkPhysicalDevice -- ^ physicalDevice- -> Ptr VkPhysicalDeviceProperties2KHR -- ^ pProperties- -> IO ()+ -> Ptr VkPhysicalDeviceProperties2 -- ^ pProperties+ -> IO () --- | > () vkGetPhysicalDeviceFormatProperties2KHR+-- | This is an alias for `vkGetPhysicalDeviceProperties2`.+--+-- > () vkGetPhysicalDeviceProperties2KHR -- > ( VkPhysicalDevice physicalDevice+-- > , VkPhysicalDeviceProperties2* pProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceProperties2KHR.html vkGetPhysicalDeviceProperties2KHR registry at www.khronos.org>+foreign import ccall safe "vkGetPhysicalDeviceProperties2"+ vkGetPhysicalDeviceProperties2KHRSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ -> Ptr VkPhysicalDeviceProperties2 -- ^ pProperties+ -> IO ()++-- | This is an alias for `vkGetPhysicalDeviceFormatProperties2`.+--+-- > () vkGetPhysicalDeviceFormatProperties2KHR+-- > ( VkPhysicalDevice physicalDevice -- > , VkFormat format--- > , VkFormatProperties2KHR* pFormatProperties+-- > , VkFormatProperties2* pFormatProperties -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetPhysicalDeviceFormatProperties2KHR.html vkGetPhysicalDeviceFormatProperties2KHR registry at www.khronos.org>-foreign import ccall unsafe- "vkGetPhysicalDeviceFormatProperties2KHR"+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceFormatProperties2KHR.html vkGetPhysicalDeviceFormatProperties2KHR registry at www.khronos.org>+foreign import ccall unsafe "vkGetPhysicalDeviceFormatProperties2" vkGetPhysicalDeviceFormatProperties2KHR :: VkPhysicalDevice -- ^ physicalDevice -> VkFormat -- ^ format- -> Ptr VkFormatProperties2KHR -- ^ pFormatProperties- -> IO ()+ -> Ptr VkFormatProperties2 -- ^ pFormatProperties+ -> IO () --- | Success codes: 'VK_SUCCESS'.+-- | This is an alias for `vkGetPhysicalDeviceFormatProperties2`. --+-- > () vkGetPhysicalDeviceFormatProperties2KHR+-- > ( VkPhysicalDevice physicalDevice+-- > , VkFormat format+-- > , VkFormatProperties2* pFormatProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceFormatProperties2KHR.html vkGetPhysicalDeviceFormatProperties2KHR registry at www.khronos.org>+foreign import ccall safe "vkGetPhysicalDeviceFormatProperties2"+ vkGetPhysicalDeviceFormatProperties2KHRSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ -> VkFormat -- ^ format+ -> Ptr VkFormatProperties2 -- ^ pFormatProperties+ -> IO ()++-- | This is an alias for `vkGetPhysicalDeviceImageFormatProperties2`.+--+-- Success codes: 'VK_SUCCESS'.+-- -- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_FORMAT_NOT_SUPPORTED'. -- -- > VkResult vkGetPhysicalDeviceImageFormatProperties2KHR -- > ( VkPhysicalDevice physicalDevice--- > , const VkPhysicalDeviceImageFormatInfo2KHR* pImageFormatInfo--- > , VkImageFormatProperties2KHR* pImageFormatProperties+-- > , const VkPhysicalDeviceImageFormatInfo2* pImageFormatInfo+-- > , VkImageFormatProperties2* pImageFormatProperties -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetPhysicalDeviceImageFormatProperties2KHR.html vkGetPhysicalDeviceImageFormatProperties2KHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceImageFormatProperties2KHR.html vkGetPhysicalDeviceImageFormatProperties2KHR registry at www.khronos.org> foreign import ccall unsafe- "vkGetPhysicalDeviceImageFormatProperties2KHR"+ "vkGetPhysicalDeviceImageFormatProperties2" vkGetPhysicalDeviceImageFormatProperties2KHR :: VkPhysicalDevice -- ^ physicalDevice ->- Ptr VkPhysicalDeviceImageFormatInfo2KHR -- ^ pImageFormatInfo- ->- Ptr VkImageFormatProperties2KHR -- ^ pImageFormatProperties- -> IO VkResult+ Ptr VkPhysicalDeviceImageFormatInfo2 -- ^ pImageFormatInfo+ ->+ Ptr VkImageFormatProperties2 -- ^ pImageFormatProperties+ -> IO VkResult --- | > () vkGetPhysicalDeviceQueueFamilyProperties2KHR+-- | This is an alias for `vkGetPhysicalDeviceImageFormatProperties2`.+--+-- Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_FORMAT_NOT_SUPPORTED'.+--+-- > VkResult vkGetPhysicalDeviceImageFormatProperties2KHR -- > ( VkPhysicalDevice physicalDevice+-- > , const VkPhysicalDeviceImageFormatInfo2* pImageFormatInfo+-- > , VkImageFormatProperties2* pImageFormatProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceImageFormatProperties2KHR.html vkGetPhysicalDeviceImageFormatProperties2KHR registry at www.khronos.org>+foreign import ccall safe+ "vkGetPhysicalDeviceImageFormatProperties2"+ vkGetPhysicalDeviceImageFormatProperties2KHRSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ Ptr VkPhysicalDeviceImageFormatInfo2 -- ^ pImageFormatInfo+ ->+ Ptr VkImageFormatProperties2 -- ^ pImageFormatProperties+ -> IO VkResult++-- | This is an alias for `vkGetPhysicalDeviceQueueFamilyProperties2`.+--+-- > () vkGetPhysicalDeviceQueueFamilyProperties2KHR+-- > ( VkPhysicalDevice physicalDevice -- > , uint32_t* pQueueFamilyPropertyCount--- > , VkQueueFamilyProperties2KHR* pQueueFamilyProperties+-- > , VkQueueFamilyProperties2* pQueueFamilyProperties -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetPhysicalDeviceQueueFamilyProperties2KHR.html vkGetPhysicalDeviceQueueFamilyProperties2KHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceQueueFamilyProperties2KHR.html vkGetPhysicalDeviceQueueFamilyProperties2KHR registry at www.khronos.org> foreign import ccall unsafe- "vkGetPhysicalDeviceQueueFamilyProperties2KHR"+ "vkGetPhysicalDeviceQueueFamilyProperties2" vkGetPhysicalDeviceQueueFamilyProperties2KHR :: VkPhysicalDevice -- ^ physicalDevice -> Ptr Word32 -- ^ pQueueFamilyPropertyCount- -> Ptr VkQueueFamilyProperties2KHR -- ^ pQueueFamilyProperties- -> IO ()+ -> Ptr VkQueueFamilyProperties2 -- ^ pQueueFamilyProperties+ -> IO () --- | > () vkGetPhysicalDeviceMemoryProperties2KHR+-- | This is an alias for `vkGetPhysicalDeviceQueueFamilyProperties2`.+--+-- > () vkGetPhysicalDeviceQueueFamilyProperties2KHR -- > ( VkPhysicalDevice physicalDevice--- > , VkPhysicalDeviceMemoryProperties2KHR* pMemoryProperties+-- > , uint32_t* pQueueFamilyPropertyCount+-- > , VkQueueFamilyProperties2* pQueueFamilyProperties -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetPhysicalDeviceMemoryProperties2KHR.html vkGetPhysicalDeviceMemoryProperties2KHR registry at www.khronos.org>-foreign import ccall unsafe- "vkGetPhysicalDeviceMemoryProperties2KHR"- vkGetPhysicalDeviceMemoryProperties2KHR ::+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceQueueFamilyProperties2KHR.html vkGetPhysicalDeviceQueueFamilyProperties2KHR registry at www.khronos.org>+foreign import ccall safe+ "vkGetPhysicalDeviceQueueFamilyProperties2"+ vkGetPhysicalDeviceQueueFamilyProperties2KHRSafe :: VkPhysicalDevice -- ^ physicalDevice ->- Ptr VkPhysicalDeviceMemoryProperties2KHR -- ^ pMemoryProperties- -> IO ()+ Ptr Word32 -- ^ pQueueFamilyPropertyCount+ -> Ptr VkQueueFamilyProperties2 -- ^ pQueueFamilyProperties+ -> IO () --- | > () vkGetPhysicalDeviceSparseImageFormatProperties2KHR+-- | This is an alias for `vkGetPhysicalDeviceMemoryProperties2`.+--+-- > () vkGetPhysicalDeviceMemoryProperties2KHR -- > ( VkPhysicalDevice physicalDevice--- > , const VkPhysicalDeviceSparseImageFormatInfo2KHR* pFormatInfo+-- > , VkPhysicalDeviceMemoryProperties2* pMemoryProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceMemoryProperties2KHR.html vkGetPhysicalDeviceMemoryProperties2KHR registry at www.khronos.org>+foreign import ccall unsafe "vkGetPhysicalDeviceMemoryProperties2"+ vkGetPhysicalDeviceMemoryProperties2KHR ::+ VkPhysicalDevice -- ^ physicalDevice+ -> Ptr VkPhysicalDeviceMemoryProperties2 -- ^ pMemoryProperties+ -> IO ()++-- | This is an alias for `vkGetPhysicalDeviceMemoryProperties2`.+--+-- > () vkGetPhysicalDeviceMemoryProperties2KHR+-- > ( VkPhysicalDevice physicalDevice+-- > , VkPhysicalDeviceMemoryProperties2* pMemoryProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceMemoryProperties2KHR.html vkGetPhysicalDeviceMemoryProperties2KHR registry at www.khronos.org>+foreign import ccall safe "vkGetPhysicalDeviceMemoryProperties2"+ vkGetPhysicalDeviceMemoryProperties2KHRSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ -> Ptr VkPhysicalDeviceMemoryProperties2 -- ^ pMemoryProperties+ -> IO ()++-- | This is an alias for `vkGetPhysicalDeviceSparseImageFormatProperties2`.+--+-- > () vkGetPhysicalDeviceSparseImageFormatProperties2KHR+-- > ( VkPhysicalDevice physicalDevice+-- > , const VkPhysicalDeviceSparseImageFormatInfo2* pFormatInfo -- > , uint32_t* pPropertyCount--- > , VkSparseImageFormatProperties2KHR* pProperties+-- > , VkSparseImageFormatProperties2* pProperties -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetPhysicalDeviceSparseImageFormatProperties2KHR.html vkGetPhysicalDeviceSparseImageFormatProperties2KHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceSparseImageFormatProperties2KHR.html vkGetPhysicalDeviceSparseImageFormatProperties2KHR registry at www.khronos.org> foreign import ccall unsafe- "vkGetPhysicalDeviceSparseImageFormatProperties2KHR"+ "vkGetPhysicalDeviceSparseImageFormatProperties2" vkGetPhysicalDeviceSparseImageFormatProperties2KHR :: VkPhysicalDevice -- ^ physicalDevice ->- Ptr VkPhysicalDeviceSparseImageFormatInfo2KHR -- ^ pFormatInfo- ->+ Ptr VkPhysicalDeviceSparseImageFormatInfo2 -- ^ pFormatInfo+ -> Ptr Word32 -- ^ pPropertyCount- -> Ptr VkSparseImageFormatProperties2KHR -- ^ pProperties- -> IO ()+ -> Ptr VkSparseImageFormatProperties2 -- ^ pProperties+ -> IO () +-- | This is an alias for `vkGetPhysicalDeviceSparseImageFormatProperties2`.+--+-- > () vkGetPhysicalDeviceSparseImageFormatProperties2KHR+-- > ( VkPhysicalDevice physicalDevice+-- > , const VkPhysicalDeviceSparseImageFormatInfo2* pFormatInfo+-- > , uint32_t* pPropertyCount+-- > , VkSparseImageFormatProperties2* pProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceSparseImageFormatProperties2KHR.html vkGetPhysicalDeviceSparseImageFormatProperties2KHR registry at www.khronos.org>+foreign import ccall safe+ "vkGetPhysicalDeviceSparseImageFormatProperties2"+ vkGetPhysicalDeviceSparseImageFormatProperties2KHRSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ Ptr VkPhysicalDeviceSparseImageFormatInfo2 -- ^ pFormatInfo+ ->+ Ptr Word32 -- ^ pPropertyCount+ -> Ptr VkSparseImageFormatProperties2 -- ^ pProperties+ -> IO ()+ pattern VK_KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_SPEC_VERSION :: (Num a, Eq a) => a @@ -263,62 +432,35 @@ is_VK_KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_EXTENSION_NAME :: CString -> Bool is_VK_KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_EXTENSION_NAME- = eqCStrings- _VK_KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_EXTENSION_NAME type VK_KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_EXTENSION_NAME = "VK_KHR_get_physical_device_properties2" -pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2_KHR ::- VkStructureType- pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2_KHR =- VkStructureType 1000059000--pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2_KHR ::- VkStructureType+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2_KHR =- VkStructureType 1000059001--pattern VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2_KHR ::- VkStructureType+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 pattern VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2_KHR =- VkStructureType 1000059002--pattern VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2_KHR ::- VkStructureType+ VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2 pattern VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2_KHR =- VkStructureType 1000059003--pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2_KHR- :: VkStructureType+ VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2_KHR =- VkStructureType 1000059004--pattern VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2_KHR ::- VkStructureType+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 pattern VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2_KHR =- VkStructureType 1000059005--pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2_KHR- :: VkStructureType+ VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2_KHR =- VkStructureType 1000059006--pattern VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2_KHR ::- VkStructureType+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 pattern VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2_KHR =- VkStructureType 1000059007--pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2_KHR- :: VkStructureType+ VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2_KHR- = VkStructureType 1000059008+ = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2
@@ -38,7 +38,9 @@ module Graphics.Vulkan.Types.Enum.VkSurfaceTransformFlagsKHR, -- > #include "vk_platform.h" vkGetPhysicalDeviceSurfaceCapabilities2KHR,+ vkGetPhysicalDeviceSurfaceCapabilities2KHRSafe, vkGetPhysicalDeviceSurfaceFormats2KHR,+ vkGetPhysicalDeviceSurfaceFormats2KHRSafe, module Graphics.Vulkan.Marshal, module Graphics.Vulkan.Types.Enum.VkResult, module Graphics.Vulkan.Types.Handles,@@ -78,7 +80,7 @@ -- > , VkSurfaceCapabilities2KHR* pSurfaceCapabilities -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetPhysicalDeviceSurfaceCapabilities2KHR.html vkGetPhysicalDeviceSurfaceCapabilities2KHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceSurfaceCapabilities2KHR.html vkGetPhysicalDeviceSurfaceCapabilities2KHR registry at www.khronos.org> foreign import ccall unsafe "vkGetPhysicalDeviceSurfaceCapabilities2KHR" vkGetPhysicalDeviceSurfaceCapabilities2KHR ::@@ -89,6 +91,27 @@ Ptr VkSurfaceCapabilities2KHR -- ^ pSurfaceCapabilities -> IO VkResult +-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_SURFACE_LOST_KHR'.+--+-- > VkResult vkGetPhysicalDeviceSurfaceCapabilities2KHR+-- > ( VkPhysicalDevice physicalDevice+-- > , const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo+-- > , VkSurfaceCapabilities2KHR* pSurfaceCapabilities+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceSurfaceCapabilities2KHR.html vkGetPhysicalDeviceSurfaceCapabilities2KHR registry at www.khronos.org>+foreign import ccall safe+ "vkGetPhysicalDeviceSurfaceCapabilities2KHR"+ vkGetPhysicalDeviceSurfaceCapabilities2KHRSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ Ptr VkPhysicalDeviceSurfaceInfo2KHR -- ^ pSurfaceInfo+ ->+ Ptr VkSurfaceCapabilities2KHR -- ^ pSurfaceCapabilities+ -> IO VkResult+ -- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'. -- -- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_SURFACE_LOST_KHR'.@@ -100,7 +123,7 @@ -- > , VkSurfaceFormat2KHR* pSurfaceFormats -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetPhysicalDeviceSurfaceFormats2KHR.html vkGetPhysicalDeviceSurfaceFormats2KHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceSurfaceFormats2KHR.html vkGetPhysicalDeviceSurfaceFormats2KHR registry at www.khronos.org> foreign import ccall unsafe "vkGetPhysicalDeviceSurfaceFormats2KHR" vkGetPhysicalDeviceSurfaceFormats2KHR :: VkPhysicalDevice -- ^ physicalDevice@@ -111,6 +134,28 @@ -> Ptr VkSurfaceFormat2KHR -- ^ pSurfaceFormats -> IO VkResult +-- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_SURFACE_LOST_KHR'.+--+-- > VkResult vkGetPhysicalDeviceSurfaceFormats2KHR+-- > ( VkPhysicalDevice physicalDevice+-- > , const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo+-- > , uint32_t* pSurfaceFormatCount+-- > , VkSurfaceFormat2KHR* pSurfaceFormats+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceSurfaceFormats2KHR.html vkGetPhysicalDeviceSurfaceFormats2KHR registry at www.khronos.org>+foreign import ccall safe "vkGetPhysicalDeviceSurfaceFormats2KHR"+ vkGetPhysicalDeviceSurfaceFormats2KHRSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ Ptr VkPhysicalDeviceSurfaceInfo2KHR -- ^ pSurfaceInfo+ ->+ Ptr Word32 -- ^ pSurfaceFormatCount+ -> Ptr VkSurfaceFormat2KHR -- ^ pSurfaceFormats+ -> IO VkResult+ pattern VK_KHR_GET_SURFACE_CAPABILITIES_2_SPEC_VERSION :: (Num a, Eq a) => a @@ -136,7 +181,8 @@ is_VK_KHR_GET_SURFACE_CAPABILITIES_2_EXTENSION_NAME :: CString -> Bool is_VK_KHR_GET_SURFACE_CAPABILITIES_2_EXTENSION_NAME- = eqCStrings _VK_KHR_GET_SURFACE_CAPABILITIES_2_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_KHR_GET_SURFACE_CAPABILITIES_2_EXTENSION_NAME type VK_KHR_GET_SURFACE_CAPABILITIES_2_EXTENSION_NAME = "VK_KHR_get_surface_capabilities2"
@@ -76,7 +76,7 @@ is_VK_KHR_IMAGE_FORMAT_LIST_EXTENSION_NAME :: CString -> Bool is_VK_KHR_IMAGE_FORMAT_LIST_EXTENSION_NAME- = eqCStrings _VK_KHR_IMAGE_FORMAT_LIST_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_KHR_IMAGE_FORMAT_LIST_EXTENSION_NAME type VK_KHR_IMAGE_FORMAT_LIST_EXTENSION_NAME = "VK_KHR_image_format_list"
@@ -72,7 +72,7 @@ is_VK_KHR_INCREMENTAL_PRESENT_EXTENSION_NAME :: CString -> Bool is_VK_KHR_INCREMENTAL_PRESENT_EXTENSION_NAME- = eqCStrings _VK_KHR_INCREMENTAL_PRESENT_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_KHR_INCREMENTAL_PRESENT_EXTENSION_NAME type VK_KHR_INCREMENTAL_PRESENT_EXTENSION_NAME = "VK_KHR_incremental_present"
@@ -1,3 +1,4 @@+{-# OPTIONS_GHC -fno-warn-missing-pattern-synonym-signatures#-} {-# OPTIONS_GHC -fno-warn-unused-imports#-} {-# OPTIONS_HADDOCK not-home#-} {-# LANGUAGE DataKinds #-}@@ -19,9 +20,9 @@ -- type: @device@ -- -- Extension number: @70@- vkTrimCommandPoolKHR, module Graphics.Vulkan.Marshal,+ module Graphics.Vulkan.Types.Bitmasks, vkTrimCommandPoolKHR,+ vkTrimCommandPoolKHRSafe, module Graphics.Vulkan.Marshal, module Graphics.Vulkan.Types.BaseTypes,- module Graphics.Vulkan.Types.Bitmasks, module Graphics.Vulkan.Types.Handles, VK_KHR_MAINTENANCE1_SPEC_VERSION, pattern VK_KHR_MAINTENANCE1_SPEC_VERSION,@@ -32,36 +33,53 @@ pattern VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR, pattern VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT_KHR) where-import GHC.Ptr (Ptr (..))+import GHC.Ptr (Ptr (..))+import Graphics.Vulkan.Core_1_1 (pattern VK_ERROR_OUT_OF_POOL_MEMORY,+ pattern VK_FORMAT_FEATURE_TRANSFER_DST_BIT,+ pattern VK_FORMAT_FEATURE_TRANSFER_SRC_BIT,+ pattern VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT) import Graphics.Vulkan.Marshal import Graphics.Vulkan.Types.BaseTypes import Graphics.Vulkan.Types.Bitmasks-import Graphics.Vulkan.Types.Enum.VkFormatFeatureFlags (VkFormatFeatureBitmask (..),- VkFormatFeatureFlagBits)-import Graphics.Vulkan.Types.Enum.VkImageCreateFlags (VkImageCreateBitmask (..),- VkImageCreateFlagBits)-import Graphics.Vulkan.Types.Enum.VkResult (VkResult (..)) import Graphics.Vulkan.Types.Handles --- | > () vkTrimCommandPoolKHR+-- | This is an alias for `vkTrimCommandPool`.+--+-- > () vkTrimCommandPoolKHR -- > ( VkDevice device -- > , VkCommandPool commandPool--- > , VkCommandPoolTrimFlagsKHR flags+-- > , VkCommandPoolTrimFlags flags -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkTrimCommandPoolKHR.html vkTrimCommandPoolKHR registry at www.khronos.org>-foreign import ccall unsafe "vkTrimCommandPoolKHR"+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkTrimCommandPoolKHR.html vkTrimCommandPoolKHR registry at www.khronos.org>+foreign import ccall unsafe "vkTrimCommandPool" vkTrimCommandPoolKHR :: VkDevice -- ^ device -> VkCommandPool -- ^ commandPool- -> VkCommandPoolTrimFlagsKHR -- ^ flags- -> IO ()+ -> VkCommandPoolTrimFlags -- ^ flags+ -> IO () +-- | This is an alias for `vkTrimCommandPool`.+--+-- > () vkTrimCommandPoolKHR+-- > ( VkDevice device+-- > , VkCommandPool commandPool+-- > , VkCommandPoolTrimFlags flags+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkTrimCommandPoolKHR.html vkTrimCommandPoolKHR registry at www.khronos.org>+foreign import ccall safe "vkTrimCommandPool"+ vkTrimCommandPoolKHRSafe ::+ VkDevice -- ^ device+ -> VkCommandPool -- ^ commandPool+ -> VkCommandPoolTrimFlags -- ^ flags+ -> IO ()+ pattern VK_KHR_MAINTENANCE1_SPEC_VERSION :: (Num a, Eq a) => a -pattern VK_KHR_MAINTENANCE1_SPEC_VERSION = 1+pattern VK_KHR_MAINTENANCE1_SPEC_VERSION = 2 -type VK_KHR_MAINTENANCE1_SPEC_VERSION = 1+type VK_KHR_MAINTENANCE1_SPEC_VERSION = 2 pattern VK_KHR_MAINTENANCE1_EXTENSION_NAME :: CString @@ -80,37 +98,18 @@ is_VK_KHR_MAINTENANCE1_EXTENSION_NAME :: CString -> Bool is_VK_KHR_MAINTENANCE1_EXTENSION_NAME- = eqCStrings _VK_KHR_MAINTENANCE1_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_KHR_MAINTENANCE1_EXTENSION_NAME type VK_KHR_MAINTENANCE1_EXTENSION_NAME = "VK_KHR_maintenance1" -pattern VK_ERROR_OUT_OF_POOL_MEMORY_KHR :: VkResult--pattern VK_ERROR_OUT_OF_POOL_MEMORY_KHR = VkResult (-1000069000)---- | Format can be used as the source image of image transfer commands------ bitpos = @14@-pattern VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR ::- VkFormatFeatureFlagBits+pattern VK_ERROR_OUT_OF_POOL_MEMORY_KHR =+ VK_ERROR_OUT_OF_POOL_MEMORY pattern VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR =- VkFormatFeatureFlagBits 16384---- | Format can be used as the destination image of image transfer commands------ bitpos = @15@-pattern VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR ::- VkFormatFeatureFlagBits+ VK_FORMAT_FEATURE_TRANSFER_SRC_BIT pattern VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR =- VkFormatFeatureFlagBits 32768---- | The 3D image can be viewed as a 2D or 2D array image------ bitpos = @5@-pattern VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT_KHR ::- VkImageCreateFlagBits+ VK_FORMAT_FEATURE_TRANSFER_DST_BIT pattern VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT_KHR =- VkImageCreateFlagBits 32+ VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT
@@ -1,3 +1,4 @@+{-# OPTIONS_GHC -fno-warn-missing-pattern-synonym-signatures#-} {-# OPTIONS_HADDOCK not-home#-} {-# LANGUAGE DataKinds #-} {-# LANGUAGE MagicHash #-}@@ -17,47 +18,13 @@ -- type: @device@ -- -- Extension number: @118@- module Graphics.Vulkan.Marshal,- module Graphics.Vulkan.Types.Enum.VkAccessFlags,- module Graphics.Vulkan.Types.Struct.VkAttachmentDescription,- module Graphics.Vulkan.Types.Enum.VkAttachmentDescriptionFlags,- module Graphics.Vulkan.Types.Enum.VkAttachmentLoadOp,- module Graphics.Vulkan.Types.Struct.VkAttachmentReference,- module Graphics.Vulkan.Types.Enum.VkAttachmentStoreOp,- module Graphics.Vulkan.Types.BaseTypes,- module Graphics.Vulkan.Types.Struct.VkComponentMapping,- module Graphics.Vulkan.Types.Enum.VkComponentSwizzle,- module Graphics.Vulkan.Types.Enum.VkDependencyFlags,- module Graphics.Vulkan.Types.Enum.VkFormat,- module Graphics.Vulkan.Types.Enum.VkImageAspectFlags,- module Graphics.Vulkan.Types.Enum.VkImageLayout,- module Graphics.Vulkan.Types.Struct.VkImageSubresourceRange,- module Graphics.Vulkan.Types.Enum.VkImageUsageFlags,- module Graphics.Vulkan.Types.Bitmasks,- module Graphics.Vulkan.Types.Struct.VkImageViewCreateInfo,- module Graphics.Vulkan.Types.Enum.VkImageViewType, module Graphics.Vulkan.Types.Struct.VkImageViewUsageCreateInfoKHR, module Graphics.Vulkan.Types.Struct.VkInputAttachmentAspectReferenceKHR,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceLimits, module Graphics.Vulkan.Types.Struct.VkPhysicalDevicePointClippingPropertiesKHR,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2KHR,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseProperties,- module Graphics.Vulkan.Types.Enum.VkPhysicalDeviceType,- module Graphics.Vulkan.Types.Enum.VkPipelineBindPoint,- module Graphics.Vulkan.Types.Enum.VkPipelineStageFlags, module Graphics.Vulkan.Types.Struct.VkPipelineTessellationDomainOriginStateCreateInfoKHR,- module Graphics.Vulkan.Types.Struct.VkPipelineTessellationStateCreateInfo, module Graphics.Vulkan.Types.Enum.VkPointClippingBehaviorKHR,- module Graphics.Vulkan.Types.Struct.VkRenderPassCreateInfo, module Graphics.Vulkan.Types.Struct.VkRenderPassInputAttachmentAspectCreateInfoKHR,- module Graphics.Vulkan.Types.Enum.VkSampleCountFlags,- module Graphics.Vulkan.Types.Enum.VkStructureType,- module Graphics.Vulkan.Types.Struct.VkSubpassDependency,- module Graphics.Vulkan.Types.Struct.VkSubpassDescription,- module Graphics.Vulkan.Types.Enum.VkSubpassDescriptionFlags, module Graphics.Vulkan.Types.Enum.VkTessellationDomainOriginKHR,- -- > #include "vk_platform.h" VK_KHR_MAINTENANCE2_SPEC_VERSION, pattern VK_KHR_MAINTENANCE2_SPEC_VERSION, VK_KHR_MAINTENANCE2_EXTENSION_NAME,@@ -69,53 +36,35 @@ pattern VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO_KHR, pattern VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO_KHR, pattern VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL_KHR,- pattern VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL_KHR)+ pattern VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL_KHR,+ pattern VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES_KHR,+ pattern VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY_KHR,+ pattern VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT_KHR,+ pattern VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT_KHR) where import GHC.Ptr (Ptr (..))+import Graphics.Vulkan.Core_1_1+ (pattern VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT,+ pattern VK_IMAGE_CREATE_EXTENDED_USAGE_BIT,+ pattern VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL,+ pattern VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL,+ pattern VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO,+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES,+ pattern VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO,+ pattern VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO) import Graphics.Vulkan.Marshal-import Graphics.Vulkan.Types.BaseTypes-import Graphics.Vulkan.Types.Bitmasks-import Graphics.Vulkan.Types.Enum.VkAccessFlags-import Graphics.Vulkan.Types.Enum.VkAttachmentDescriptionFlags-import Graphics.Vulkan.Types.Enum.VkAttachmentLoadOp-import Graphics.Vulkan.Types.Enum.VkAttachmentStoreOp-import Graphics.Vulkan.Types.Enum.VkComponentSwizzle-import Graphics.Vulkan.Types.Enum.VkDependencyFlags-import Graphics.Vulkan.Types.Enum.VkFormat-import Graphics.Vulkan.Types.Enum.VkImageAspectFlags-import Graphics.Vulkan.Types.Enum.VkImageCreateFlags- (VkImageCreateBitmask (..),- VkImageCreateFlagBits)-import Graphics.Vulkan.Types.Enum.VkImageLayout-import Graphics.Vulkan.Types.Enum.VkImageUsageFlags-import Graphics.Vulkan.Types.Enum.VkImageViewType-import Graphics.Vulkan.Types.Enum.VkPhysicalDeviceType-import Graphics.Vulkan.Types.Enum.VkPipelineBindPoint-import Graphics.Vulkan.Types.Enum.VkPipelineStageFlags+import Graphics.Vulkan.Types.Enum.VkPointClippingBehavior+ (VkPointClippingBehavior (..)) import Graphics.Vulkan.Types.Enum.VkPointClippingBehaviorKHR-import Graphics.Vulkan.Types.Enum.VkSampleCountFlags-import Graphics.Vulkan.Types.Enum.VkStructureType-import Graphics.Vulkan.Types.Enum.VkSubpassDescriptionFlags+import Graphics.Vulkan.Types.Enum.VkTessellationDomainOrigin+ (VkTessellationDomainOrigin (..)) import Graphics.Vulkan.Types.Enum.VkTessellationDomainOriginKHR-import Graphics.Vulkan.Types.Struct.VkAttachmentDescription-import Graphics.Vulkan.Types.Struct.VkAttachmentReference-import Graphics.Vulkan.Types.Struct.VkComponentMapping-import Graphics.Vulkan.Types.Struct.VkImageSubresourceRange-import Graphics.Vulkan.Types.Struct.VkImageViewCreateInfo import Graphics.Vulkan.Types.Struct.VkImageViewUsageCreateInfoKHR import Graphics.Vulkan.Types.Struct.VkInputAttachmentAspectReferenceKHR-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceLimits import Graphics.Vulkan.Types.Struct.VkPhysicalDevicePointClippingPropertiesKHR-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2KHR-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseProperties import Graphics.Vulkan.Types.Struct.VkPipelineTessellationDomainOriginStateCreateInfoKHR-import Graphics.Vulkan.Types.Struct.VkPipelineTessellationStateCreateInfo-import Graphics.Vulkan.Types.Struct.VkRenderPassCreateInfo import Graphics.Vulkan.Types.Struct.VkRenderPassInputAttachmentAspectCreateInfoKHR-import Graphics.Vulkan.Types.Struct.VkSubpassDependency-import Graphics.Vulkan.Types.Struct.VkSubpassDescription pattern VK_KHR_MAINTENANCE2_SPEC_VERSION :: (Num a, Eq a) => a @@ -140,56 +89,43 @@ is_VK_KHR_MAINTENANCE2_EXTENSION_NAME :: CString -> Bool is_VK_KHR_MAINTENANCE2_EXTENSION_NAME- = eqCStrings _VK_KHR_MAINTENANCE2_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_KHR_MAINTENANCE2_EXTENSION_NAME type VK_KHR_MAINTENANCE2_EXTENSION_NAME = "VK_KHR_maintenance2" --- | bitpos = @7@-pattern VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT_KHR ::- VkImageCreateFlagBits- pattern VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT_KHR =- VkImageCreateFlagBits 128---- | bitpos = @8@-pattern VK_IMAGE_CREATE_EXTENDED_USAGE_BIT_KHR ::- VkImageCreateFlagBits+ VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT pattern VK_IMAGE_CREATE_EXTENDED_USAGE_BIT_KHR =- VkImageCreateFlagBits 256--pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES_KHR- :: VkStructureType+ VK_IMAGE_CREATE_EXTENDED_USAGE_BIT pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES_KHR- = VkStructureType 1000117000--pattern VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO_KHR- :: VkStructureType+ = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES pattern VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO_KHR- = VkStructureType 1000117001--pattern VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO_KHR ::- VkStructureType+ = VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO pattern VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO_KHR =- VkStructureType 1000117002--pattern VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO_KHR- :: VkStructureType+ VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO pattern VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO_KHR- = VkStructureType 1000117003--pattern VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL_KHR- :: VkImageLayout+ =+ VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO pattern VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL_KHR- = VkImageLayout 1000117000+ = VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL pattern VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL_KHR- :: VkImageLayout+ = VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL -pattern VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL_KHR- = VkImageLayout 1000117001+pattern VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES_KHR =+ VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES++pattern VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY_KHR =+ VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY++pattern VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT_KHR =+ VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT++pattern VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT_KHR =+ VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT
@@ -0,0 +1,133 @@+{-# OPTIONS_GHC -fno-warn-missing-pattern-synonym-signatures#-}+{-# OPTIONS_HADDOCK not-home#-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE ForeignFunctionInterface #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE ViewPatterns #-}+module Graphics.Vulkan.Ext.VK_KHR_maintenance3+ (-- * Vulkan extension: @VK_KHR_maintenance3@+ -- |+ --+ -- supported: @vulkan@+ --+ -- contact: @Jeff Bolz @jbolz@+ --+ -- author: @KHR@+ --+ -- type: @device@+ --+ -- Extension number: @169@+ --+ -- Required extensions: 'VK_KHR_get_physical_device_properties2'.+ --++ -- ** Required extensions: 'VK_KHR_get_physical_device_properties2'.+ module Graphics.Vulkan.Types.Struct.VkDescriptorSetLayoutSupportKHR,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceMaintenance3PropertiesKHR,+ vkGetDescriptorSetLayoutSupportKHR,+ vkGetDescriptorSetLayoutSupportKHRSafe,+ module Graphics.Vulkan.Marshal,+ module Graphics.Vulkan.Types.BaseTypes,+ module Graphics.Vulkan.Types.Enum.VkDescriptorSetLayoutCreateFlags,+ module Graphics.Vulkan.Types.Enum.VkDescriptorType,+ module Graphics.Vulkan.Types.Enum.VkShaderStageFlags,+ module Graphics.Vulkan.Types.Enum.VkStructureType,+ module Graphics.Vulkan.Types.Handles,+ module Graphics.Vulkan.Types.Struct.VkDescriptorSetLayoutBinding,+ module Graphics.Vulkan.Types.Struct.VkDescriptorSetLayoutCreateInfo,+ module Graphics.Vulkan.Types.Struct.VkDescriptorSetLayoutSupport,+ VK_KHR_MAINTENANCE3_SPEC_VERSION,+ pattern VK_KHR_MAINTENANCE3_SPEC_VERSION,+ VK_KHR_MAINTENANCE3_EXTENSION_NAME,+ pattern VK_KHR_MAINTENANCE3_EXTENSION_NAME,+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES_KHR,+ pattern VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT_KHR)+ where+import GHC.Ptr+ (Ptr (..))+import Graphics.Vulkan.Core_1_1+ (pattern VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT,+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES)+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Types.BaseTypes+import Graphics.Vulkan.Types.Enum.VkDescriptorSetLayoutCreateFlags+import Graphics.Vulkan.Types.Enum.VkDescriptorType+import Graphics.Vulkan.Types.Enum.VkShaderStageFlags+import Graphics.Vulkan.Types.Enum.VkStructureType+import Graphics.Vulkan.Types.Handles+import Graphics.Vulkan.Types.Struct.VkDescriptorSetLayoutBinding+import Graphics.Vulkan.Types.Struct.VkDescriptorSetLayoutCreateInfo+import Graphics.Vulkan.Types.Struct.VkDescriptorSetLayoutSupport+import Graphics.Vulkan.Types.Struct.VkDescriptorSetLayoutSupportKHR+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceMaintenance3PropertiesKHR++-- | This is an alias for `vkGetDescriptorSetLayoutSupport`.+--+-- > () vkGetDescriptorSetLayoutSupportKHR+-- > ( VkDevice device+-- > , const VkDescriptorSetLayoutCreateInfo* pCreateInfo+-- > , VkDescriptorSetLayoutSupport* pSupport+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetDescriptorSetLayoutSupportKHR.html vkGetDescriptorSetLayoutSupportKHR registry at www.khronos.org>+foreign import ccall unsafe "vkGetDescriptorSetLayoutSupport"+ vkGetDescriptorSetLayoutSupportKHR ::+ VkDevice -- ^ device+ ->+ Ptr VkDescriptorSetLayoutCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkDescriptorSetLayoutSupport -- ^ pSupport+ -> IO ()++-- | This is an alias for `vkGetDescriptorSetLayoutSupport`.+--+-- > () vkGetDescriptorSetLayoutSupportKHR+-- > ( VkDevice device+-- > , const VkDescriptorSetLayoutCreateInfo* pCreateInfo+-- > , VkDescriptorSetLayoutSupport* pSupport+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetDescriptorSetLayoutSupportKHR.html vkGetDescriptorSetLayoutSupportKHR registry at www.khronos.org>+foreign import ccall safe "vkGetDescriptorSetLayoutSupport"+ vkGetDescriptorSetLayoutSupportKHRSafe ::+ VkDevice -- ^ device+ ->+ Ptr VkDescriptorSetLayoutCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkDescriptorSetLayoutSupport -- ^ pSupport+ -> IO ()++pattern VK_KHR_MAINTENANCE3_SPEC_VERSION :: (Num a, Eq a) => a++pattern VK_KHR_MAINTENANCE3_SPEC_VERSION = 1++type VK_KHR_MAINTENANCE3_SPEC_VERSION = 1++pattern VK_KHR_MAINTENANCE3_EXTENSION_NAME :: CString++pattern VK_KHR_MAINTENANCE3_EXTENSION_NAME <-+ (is_VK_KHR_MAINTENANCE3_EXTENSION_NAME -> True)+ where VK_KHR_MAINTENANCE3_EXTENSION_NAME+ = _VK_KHR_MAINTENANCE3_EXTENSION_NAME++{-# INLINE _VK_KHR_MAINTENANCE3_EXTENSION_NAME #-}++_VK_KHR_MAINTENANCE3_EXTENSION_NAME :: CString+_VK_KHR_MAINTENANCE3_EXTENSION_NAME+ = Ptr "VK_KHR_maintenance3\NUL"#++{-# INLINE is_VK_KHR_MAINTENANCE3_EXTENSION_NAME #-}++is_VK_KHR_MAINTENANCE3_EXTENSION_NAME :: CString -> Bool+is_VK_KHR_MAINTENANCE3_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_KHR_MAINTENANCE3_EXTENSION_NAME++type VK_KHR_MAINTENANCE3_EXTENSION_NAME = "VK_KHR_maintenance3"++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES_KHR+ = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES++pattern VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT_KHR =+ VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT
@@ -17,12 +17,12 @@ -- -- type: @instance@ --+ -- platform: @mir@+ -- -- Extension number: @8@ -- -- Required extensions: 'VK_KHR_surface'. --- -- Protected by CPP ifdef: @VK_USE_PLATFORM_MIR_KHR@- -- -- ** Required extensions: 'VK_KHR_surface'. module Graphics.Vulkan.Types.BaseTypes,@@ -30,10 +30,9 @@ module Graphics.Vulkan.Types.Struct.VkMirSurfaceCreateInfoKHR, module Graphics.Vulkan.Types.Enum.VkStructureType, -- > #include "vk_platform.h"- --- -- > #include <mir_toolkit/client_types.h>- vkCreateMirSurfaceKHR,+ vkCreateMirSurfaceKHR, vkCreateMirSurfaceKHRSafe, vkGetPhysicalDeviceMirPresentationSupportKHR,+ vkGetPhysicalDeviceMirPresentationSupportKHRSafe, module Graphics.Vulkan.Marshal, module Graphics.Vulkan.Types.Enum.VkInternalAllocationType, module Graphics.Vulkan.Types.Enum.VkResult,@@ -73,7 +72,7 @@ -- > , VkSurfaceKHR* pSurface -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCreateMirSurfaceKHR.html vkCreateMirSurfaceKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateMirSurfaceKHR.html vkCreateMirSurfaceKHR registry at www.khronos.org> foreign import ccall unsafe "vkCreateMirSurfaceKHR" vkCreateMirSurfaceKHR :: VkInstance -- ^ instance@@ -84,13 +83,35 @@ -> Ptr VkSurfaceKHR -- ^ pSurface -> IO VkResult +-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreateMirSurfaceKHR+-- > ( VkInstance instance+-- > , const VkMirSurfaceCreateInfoKHR* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkSurfaceKHR* pSurface+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateMirSurfaceKHR.html vkCreateMirSurfaceKHR registry at www.khronos.org>+foreign import ccall safe "vkCreateMirSurfaceKHR"+ vkCreateMirSurfaceKHRSafe ::+ VkInstance -- ^ instance+ ->+ Ptr VkMirSurfaceCreateInfoKHR -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkSurfaceKHR -- ^ pSurface+ -> IO VkResult+ -- | > VkBool32 vkGetPhysicalDeviceMirPresentationSupportKHR -- > ( VkPhysicalDevice physicalDevice -- > , uint32_t queueFamilyIndex -- > , MirConnection* connection -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetPhysicalDeviceMirPresentationSupportKHR.html vkGetPhysicalDeviceMirPresentationSupportKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceMirPresentationSupportKHR.html vkGetPhysicalDeviceMirPresentationSupportKHR registry at www.khronos.org> foreign import ccall unsafe "vkGetPhysicalDeviceMirPresentationSupportKHR" vkGetPhysicalDeviceMirPresentationSupportKHR ::@@ -99,6 +120,21 @@ -> Ptr MirConnection -- ^ connection -> IO VkBool32 +-- | > VkBool32 vkGetPhysicalDeviceMirPresentationSupportKHR+-- > ( VkPhysicalDevice physicalDevice+-- > , uint32_t queueFamilyIndex+-- > , MirConnection* connection+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceMirPresentationSupportKHR.html vkGetPhysicalDeviceMirPresentationSupportKHR registry at www.khronos.org>+foreign import ccall safe+ "vkGetPhysicalDeviceMirPresentationSupportKHR"+ vkGetPhysicalDeviceMirPresentationSupportKHRSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ -> Word32 -- ^ queueFamilyIndex+ -> Ptr MirConnection -- ^ connection+ -> IO VkBool32+ pattern VK_KHR_MIR_SURFACE_SPEC_VERSION :: (Num a, Eq a) => a pattern VK_KHR_MIR_SURFACE_SPEC_VERSION = 4@@ -121,7 +157,7 @@ is_VK_KHR_MIR_SURFACE_EXTENSION_NAME :: CString -> Bool is_VK_KHR_MIR_SURFACE_EXTENSION_NAME- = eqCStrings _VK_KHR_MIR_SURFACE_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_KHR_MIR_SURFACE_EXTENSION_NAME type VK_KHR_MIR_SURFACE_EXTENSION_NAME = "VK_KHR_mir_surface"
@@ -0,0 +1,86 @@+{-# OPTIONS_GHC -fno-warn-missing-pattern-synonym-signatures#-}+{-# OPTIONS_HADDOCK not-home#-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE ViewPatterns #-}+module Graphics.Vulkan.Ext.VK_KHR_multiview+ (-- * Vulkan extension: @VK_KHR_multiview@+ -- |+ --+ -- supported: @vulkan@+ --+ -- contact: @Jeff Bolz @jbolz@+ --+ -- author: @KHR@+ --+ -- type: @device@+ --+ -- Extension number: @54@+ --+ -- Required extensions: 'VK_KHR_get_physical_device_properties2'.+ --++ -- ** Required extensions: 'VK_KHR_get_physical_device_properties2'.+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceMultiviewFeaturesKHR,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceMultiviewPropertiesKHR,+ module Graphics.Vulkan.Types.Struct.VkRenderPassMultiviewCreateInfoKHR,+ VK_KHR_MULTIVIEW_SPEC_VERSION,+ pattern VK_KHR_MULTIVIEW_SPEC_VERSION,+ VK_KHR_MULTIVIEW_EXTENSION_NAME,+ pattern VK_KHR_MULTIVIEW_EXTENSION_NAME,+ pattern VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO_KHR,+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES_KHR,+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES_KHR,+ pattern VK_DEPENDENCY_VIEW_LOCAL_BIT_KHR)+ where+import GHC.Ptr+ (Ptr (..))+import Graphics.Vulkan.Core_1_1+ (pattern VK_DEPENDENCY_VIEW_LOCAL_BIT,+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES,+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES,+ pattern VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO)+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceMultiviewFeaturesKHR+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceMultiviewPropertiesKHR+import Graphics.Vulkan.Types.Struct.VkRenderPassMultiviewCreateInfoKHR++pattern VK_KHR_MULTIVIEW_SPEC_VERSION :: (Num a, Eq a) => a++pattern VK_KHR_MULTIVIEW_SPEC_VERSION = 1++type VK_KHR_MULTIVIEW_SPEC_VERSION = 1++pattern VK_KHR_MULTIVIEW_EXTENSION_NAME :: CString++pattern VK_KHR_MULTIVIEW_EXTENSION_NAME <-+ (is_VK_KHR_MULTIVIEW_EXTENSION_NAME -> True)+ where VK_KHR_MULTIVIEW_EXTENSION_NAME+ = _VK_KHR_MULTIVIEW_EXTENSION_NAME++{-# INLINE _VK_KHR_MULTIVIEW_EXTENSION_NAME #-}++_VK_KHR_MULTIVIEW_EXTENSION_NAME :: CString+_VK_KHR_MULTIVIEW_EXTENSION_NAME = Ptr "VK_KHR_multiview\NUL"#++{-# INLINE is_VK_KHR_MULTIVIEW_EXTENSION_NAME #-}++is_VK_KHR_MULTIVIEW_EXTENSION_NAME :: CString -> Bool+is_VK_KHR_MULTIVIEW_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_KHR_MULTIVIEW_EXTENSION_NAME++type VK_KHR_MULTIVIEW_EXTENSION_NAME = "VK_KHR_multiview"++pattern VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO_KHR =+ VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES_KHR =+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES++pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES_KHR+ = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES++pattern VK_DEPENDENCY_VIEW_LOCAL_BIT_KHR =+ VK_DEPENDENCY_VIEW_LOCAL_BIT
@@ -27,14 +27,14 @@ module Graphics.Vulkan.Types.BaseTypes, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceLimits, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2KHR,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2, module Graphics.Vulkan.Types.Struct.VkPhysicalDevicePushDescriptorPropertiesKHR, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseProperties, module Graphics.Vulkan.Types.Enum.VkPhysicalDeviceType, module Graphics.Vulkan.Types.Enum.VkSampleCountFlags, module Graphics.Vulkan.Types.Enum.VkStructureType, -- > #include "vk_platform.h"- vkCmdPushDescriptorSetKHR,+ vkCmdPushDescriptorSetKHR, vkCmdPushDescriptorSetKHRSafe, module Graphics.Vulkan.Types.Enum.VkDescriptorType, module Graphics.Vulkan.Types.Enum.VkImageLayout, module Graphics.Vulkan.Types.Enum.VkPipelineBindPoint,@@ -47,7 +47,11 @@ VK_KHR_PUSH_DESCRIPTOR_EXTENSION_NAME, pattern VK_KHR_PUSH_DESCRIPTOR_EXTENSION_NAME, pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR,- pattern VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR)+ pattern VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR,+ -- ** Required extensions: 'VK_KHR_get_physical_device_properties2'.+ vkCmdPushDescriptorSetWithTemplateKHR,+ vkCmdPushDescriptorSetWithTemplateKHRSafe,+ pattern VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR) where import GHC.Ptr (Ptr (..))@@ -57,6 +61,8 @@ (VkDescriptorSetLayoutCreateBitmask (..), VkDescriptorSetLayoutCreateFlagBits) import Graphics.Vulkan.Types.Enum.VkDescriptorType+import Graphics.Vulkan.Types.Enum.VkDescriptorUpdateTemplateType+ (VkDescriptorUpdateTemplateType (..)) import Graphics.Vulkan.Types.Enum.VkImageLayout import Graphics.Vulkan.Types.Enum.VkPhysicalDeviceType import Graphics.Vulkan.Types.Enum.VkPipelineBindPoint@@ -67,7 +73,7 @@ import Graphics.Vulkan.Types.Struct.VkDescriptorImageInfo import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceLimits import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2KHR+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2 import Graphics.Vulkan.Types.Struct.VkPhysicalDevicePushDescriptorPropertiesKHR import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseProperties import Graphics.Vulkan.Types.Struct.VkWriteDescriptorSet@@ -85,7 +91,7 @@ -- > , const VkWriteDescriptorSet* pDescriptorWrites -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdPushDescriptorSetKHR.html vkCmdPushDescriptorSetKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdPushDescriptorSetKHR.html vkCmdPushDescriptorSetKHR registry at www.khronos.org> foreign import ccall unsafe "vkCmdPushDescriptorSetKHR" vkCmdPushDescriptorSetKHR :: VkCommandBuffer -- ^ commandBuffer@@ -99,11 +105,38 @@ -> Ptr VkWriteDescriptorSet -- ^ pDescriptorWrites -> IO () +-- | queues: 'graphics', 'compute'.+--+-- renderpass: @both@+--+-- > () vkCmdPushDescriptorSetKHR+-- > ( VkCommandBuffer commandBuffer+-- > , VkPipelineBindPoint pipelineBindPoint+-- > , VkPipelineLayout layout+-- > , uint32_t set+-- > , uint32_t descriptorWriteCount+-- > , const VkWriteDescriptorSet* pDescriptorWrites+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdPushDescriptorSetKHR.html vkCmdPushDescriptorSetKHR registry at www.khronos.org>+foreign import ccall safe "vkCmdPushDescriptorSetKHR"+ vkCmdPushDescriptorSetKHRSafe ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkPipelineBindPoint -- ^ pipelineBindPoint+ ->+ VkPipelineLayout -- ^ layout+ ->+ Word32 -- ^ set+ -> Word32 -- ^ descriptorWriteCount+ -> Ptr VkWriteDescriptorSet -- ^ pDescriptorWrites+ -> IO ()+ pattern VK_KHR_PUSH_DESCRIPTOR_SPEC_VERSION :: (Num a, Eq a) => a -pattern VK_KHR_PUSH_DESCRIPTOR_SPEC_VERSION = 1+pattern VK_KHR_PUSH_DESCRIPTOR_SPEC_VERSION = 2 -type VK_KHR_PUSH_DESCRIPTOR_SPEC_VERSION = 1+type VK_KHR_PUSH_DESCRIPTOR_SPEC_VERSION = 2 pattern VK_KHR_PUSH_DESCRIPTOR_EXTENSION_NAME :: CString @@ -122,7 +155,7 @@ is_VK_KHR_PUSH_DESCRIPTOR_EXTENSION_NAME :: CString -> Bool is_VK_KHR_PUSH_DESCRIPTOR_EXTENSION_NAME- = eqCStrings _VK_KHR_PUSH_DESCRIPTOR_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_KHR_PUSH_DESCRIPTOR_EXTENSION_NAME type VK_KHR_PUSH_DESCRIPTOR_EXTENSION_NAME = "VK_KHR_push_descriptor"@@ -141,3 +174,58 @@ pattern VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR = VkDescriptorSetLayoutCreateFlagBits 1++-- | queues: 'graphics', 'compute'.+--+-- renderpass: @both@+--+-- > () vkCmdPushDescriptorSetWithTemplateKHR+-- > ( VkCommandBuffer commandBuffer+-- > , VkDescriptorUpdateTemplate descriptorUpdateTemplate+-- > , VkPipelineLayout layout+-- > , uint32_t set+-- > , const void* pData+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdPushDescriptorSetWithTemplateKHR.html vkCmdPushDescriptorSetWithTemplateKHR registry at www.khronos.org>+foreign import ccall unsafe "vkCmdPushDescriptorSetWithTemplateKHR"+ vkCmdPushDescriptorSetWithTemplateKHR ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkDescriptorUpdateTemplate -- ^ descriptorUpdateTemplate+ ->+ VkPipelineLayout -- ^ layout+ -> Word32 -- ^ set+ -> Ptr Void -- ^ pData+ -> IO ()++-- | queues: 'graphics', 'compute'.+--+-- renderpass: @both@+--+-- > () vkCmdPushDescriptorSetWithTemplateKHR+-- > ( VkCommandBuffer commandBuffer+-- > , VkDescriptorUpdateTemplate descriptorUpdateTemplate+-- > , VkPipelineLayout layout+-- > , uint32_t set+-- > , const void* pData+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdPushDescriptorSetWithTemplateKHR.html vkCmdPushDescriptorSetWithTemplateKHR registry at www.khronos.org>+foreign import ccall safe "vkCmdPushDescriptorSetWithTemplateKHR"+ vkCmdPushDescriptorSetWithTemplateKHRSafe ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ VkDescriptorUpdateTemplate -- ^ descriptorUpdateTemplate+ ->+ VkPipelineLayout -- ^ layout+ -> Word32 -- ^ set+ -> Ptr Void -- ^ pData+ -> IO ()++-- | Create descriptor update template for pushed descriptor updates+pattern VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR ::+ VkDescriptorUpdateTemplateType++pattern VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR =+ VkDescriptorUpdateTemplateType 1
@@ -49,7 +49,7 @@ is_VK_KHR_RELAXED_BLOCK_LAYOUT_EXTENSION_NAME :: CString -> Bool is_VK_KHR_RELAXED_BLOCK_LAYOUT_EXTENSION_NAME- = eqCStrings _VK_KHR_RELAXED_BLOCK_LAYOUT_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_KHR_RELAXED_BLOCK_LAYOUT_EXTENSION_NAME type VK_KHR_RELAXED_BLOCK_LAYOUT_EXTENSION_NAME = "VK_KHR_relaxed_block_layout"
@@ -54,7 +54,8 @@ is_VK_KHR_SAMPLER_MIRROR_CLAMP_TO_EDGE_EXTENSION_NAME :: CString -> Bool is_VK_KHR_SAMPLER_MIRROR_CLAMP_TO_EDGE_EXTENSION_NAME- = eqCStrings _VK_KHR_SAMPLER_MIRROR_CLAMP_TO_EDGE_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_KHR_SAMPLER_MIRROR_CLAMP_TO_EDGE_EXTENSION_NAME type VK_KHR_SAMPLER_MIRROR_CLAMP_TO_EDGE_EXTENSION_NAME = "VK_KHR_sampler_mirror_clamp_to_edge"
@@ -1,3 +1,4 @@+{-# OPTIONS_GHC -fno-warn-missing-pattern-synonym-signatures#-} {-# OPTIONS_HADDOCK not-home#-} {-# LANGUAGE DataKinds #-} {-# LANGUAGE ForeignFunctionInterface #-}@@ -23,51 +24,36 @@ -- -- ** Required extensions: 'VK_KHR_maintenance1', 'VK_KHR_bind_memory2', 'VK_KHR_get_memory_requirements2', 'VK_KHR_get_physical_device_properties2'.- module Graphics.Vulkan.Marshal,- module Graphics.Vulkan.Types.Struct.VkBindImageMemoryInfoKHR, module Graphics.Vulkan.Types.Struct.VkBindImagePlaneMemoryInfoKHR,- module Graphics.Vulkan.Types.BaseTypes,- module Graphics.Vulkan.Types.Enum.VkBorderColor, module Graphics.Vulkan.Types.Enum.VkChromaLocationKHR,- module Graphics.Vulkan.Types.Enum.VkCompareOp,- module Graphics.Vulkan.Types.Struct.VkComponentMapping,- module Graphics.Vulkan.Types.Enum.VkComponentSwizzle,- module Graphics.Vulkan.Types.Bitmasks,- module Graphics.Vulkan.Types.Struct.VkDeviceCreateInfo,- module Graphics.Vulkan.Types.Struct.VkDeviceQueueCreateInfo,- module Graphics.Vulkan.Types.Struct.VkExtent3D,- module Graphics.Vulkan.Types.Enum.VkFilter,- module Graphics.Vulkan.Types.Enum.VkFormat,- module Graphics.Vulkan.Types.Enum.VkImageAspectFlags,- module Graphics.Vulkan.Types.Struct.VkImageFormatProperties,- module Graphics.Vulkan.Types.Struct.VkImageFormatProperties2KHR,- module Graphics.Vulkan.Types.Struct.VkImageMemoryRequirementsInfo2KHR, module Graphics.Vulkan.Types.Struct.VkImagePlaneMemoryRequirementsInfoKHR,- module Graphics.Vulkan.Types.Struct.VkImageSubresourceRange,- module Graphics.Vulkan.Types.Struct.VkImageViewCreateInfo,- module Graphics.Vulkan.Types.Enum.VkImageViewType,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceFeatures,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceFeatures2KHR, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSamplerYcbcrConversionFeaturesKHR,- module Graphics.Vulkan.Types.Enum.VkSampleCountFlags,- module Graphics.Vulkan.Types.Enum.VkSamplerAddressMode,- module Graphics.Vulkan.Types.Struct.VkSamplerCreateInfo,- module Graphics.Vulkan.Types.Enum.VkSamplerMipmapMode, module Graphics.Vulkan.Types.Struct.VkSamplerYcbcrConversionCreateInfoKHR, module Graphics.Vulkan.Types.Struct.VkSamplerYcbcrConversionImageFormatPropertiesKHR, module Graphics.Vulkan.Types.Struct.VkSamplerYcbcrConversionInfoKHR, module Graphics.Vulkan.Types.Enum.VkSamplerYcbcrModelConversionKHR, module Graphics.Vulkan.Types.Enum.VkSamplerYcbcrRangeKHR,- module Graphics.Vulkan.Types.Enum.VkStructureType,- -- > #include "vk_platform.h" vkCreateSamplerYcbcrConversionKHR,+ vkCreateSamplerYcbcrConversionKHRSafe, vkDestroySamplerYcbcrConversionKHR,+ vkDestroySamplerYcbcrConversionKHRSafe,+ module Graphics.Vulkan.Marshal,+ module Graphics.Vulkan.Types.BaseTypes,+ module Graphics.Vulkan.Types.Enum.VkChromaLocation,+ module Graphics.Vulkan.Types.Enum.VkComponentSwizzle,+ module Graphics.Vulkan.Types.Enum.VkFilter,+ module Graphics.Vulkan.Types.Enum.VkFormat, module Graphics.Vulkan.Types.Enum.VkInternalAllocationType, module Graphics.Vulkan.Types.Enum.VkResult,+ module Graphics.Vulkan.Types.Enum.VkSamplerYcbcrModelConversion,+ module Graphics.Vulkan.Types.Enum.VkSamplerYcbcrRange,+ module Graphics.Vulkan.Types.Enum.VkStructureType, module Graphics.Vulkan.Types.Enum.VkSystemAllocationScope, module Graphics.Vulkan.Types.Funcpointers, module Graphics.Vulkan.Types.Handles, module Graphics.Vulkan.Types.Struct.VkAllocationCallbacks,+ module Graphics.Vulkan.Types.Struct.VkComponentMapping,+ module Graphics.Vulkan.Types.Struct.VkSamplerYcbcrConversionCreateInfo, VK_KHR_SAMPLER_YCBCR_CONVERSION_SPEC_VERSION, pattern VK_KHR_SAMPLER_YCBCR_CONVERSION_SPEC_VERSION, VK_KHR_SAMPLER_YCBCR_CONVERSION_EXTENSION_NAME,@@ -124,101 +110,187 @@ pattern VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT_KHR, pattern VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT_KHR, pattern VK_FORMAT_FEATURE_DISJOINT_BIT_KHR,- pattern VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT_KHR)+ pattern VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT_KHR,+ pattern VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY_KHR,+ pattern VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY_KHR,+ pattern VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709_KHR,+ pattern VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601_KHR,+ pattern VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020_KHR,+ pattern VK_SAMPLER_YCBCR_RANGE_ITU_FULL_KHR,+ pattern VK_SAMPLER_YCBCR_RANGE_ITU_NARROW_KHR,+ pattern VK_CHROMA_LOCATION_COSITED_EVEN_KHR,+ pattern VK_CHROMA_LOCATION_MIDPOINT_KHR,+ -- ** Required extensions: 'VK_EXT_debug_report', 'VK_KHR_maintenance1', 'VK_KHR_bind_memory2', 'VK_KHR_get_memory_requirements2', 'VK_KHR_get_physical_device_properties2'.+ pattern VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT) where import GHC.Ptr (Ptr (..))+import Graphics.Vulkan.Core_1_1+ (pattern VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16,+ pattern VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16,+ pattern VK_FORMAT_B16G16R16G16_422_UNORM,+ pattern VK_FORMAT_B8G8R8G8_422_UNORM,+ pattern VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT,+ pattern VK_FORMAT_FEATURE_DISJOINT_BIT,+ pattern VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT,+ pattern VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT,+ pattern VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT,+ pattern VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT,+ pattern VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT,+ pattern VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16,+ pattern VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16,+ pattern VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16,+ pattern VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16,+ pattern VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16,+ pattern VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16,+ pattern VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16,+ pattern VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16,+ pattern VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16,+ pattern VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16,+ pattern VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16,+ pattern VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16,+ pattern VK_FORMAT_G16B16G16R16_422_UNORM,+ pattern VK_FORMAT_G16_B16R16_2PLANE_420_UNORM,+ pattern VK_FORMAT_G16_B16R16_2PLANE_422_UNORM,+ pattern VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM,+ pattern VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM,+ pattern VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM,+ pattern VK_FORMAT_G8B8G8R8_422_UNORM,+ pattern VK_FORMAT_G8_B8R8_2PLANE_420_UNORM,+ pattern VK_FORMAT_G8_B8R8_2PLANE_422_UNORM,+ pattern VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM,+ pattern VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM,+ pattern VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM,+ pattern VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16,+ pattern VK_FORMAT_R10X6G10X6_UNORM_2PACK16,+ pattern VK_FORMAT_R10X6_UNORM_PACK16,+ pattern VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16,+ pattern VK_FORMAT_R12X4G12X4_UNORM_2PACK16,+ pattern VK_FORMAT_R12X4_UNORM_PACK16,+ pattern VK_IMAGE_ASPECT_PLANE_0_BIT,+ pattern VK_IMAGE_ASPECT_PLANE_1_BIT,+ pattern VK_IMAGE_ASPECT_PLANE_2_BIT,+ pattern VK_IMAGE_CREATE_DISJOINT_BIT,+ pattern VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION,+ pattern VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO,+ pattern VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO,+ pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES,+ pattern VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO,+ pattern VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES,+ pattern VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO)+import Graphics.Vulkan.Ext.VK_EXT_debug_report+ (pattern VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT) import Graphics.Vulkan.Marshal import Graphics.Vulkan.Types.BaseTypes-import Graphics.Vulkan.Types.Bitmasks-import Graphics.Vulkan.Types.Enum.VkBorderColor+import Graphics.Vulkan.Types.Enum.VkChromaLocation import Graphics.Vulkan.Types.Enum.VkChromaLocationKHR-import Graphics.Vulkan.Types.Enum.VkCompareOp import Graphics.Vulkan.Types.Enum.VkComponentSwizzle-import Graphics.Vulkan.Types.Enum.VkDebugReportObjectTypeEXT- (VkDebugReportObjectTypeEXT (..)) import Graphics.Vulkan.Types.Enum.VkFilter import Graphics.Vulkan.Types.Enum.VkFormat-import Graphics.Vulkan.Types.Enum.VkFormatFeatureFlags- (VkFormatFeatureBitmask (..),- VkFormatFeatureFlagBits)-import Graphics.Vulkan.Types.Enum.VkImageAspectFlags-import Graphics.Vulkan.Types.Enum.VkImageCreateFlags- (VkImageCreateBitmask (..),- VkImageCreateFlagBits)-import Graphics.Vulkan.Types.Enum.VkImageViewType import Graphics.Vulkan.Types.Enum.VkInternalAllocationType-import Graphics.Vulkan.Types.Enum.VkObjectType- (VkObjectType (..)) import Graphics.Vulkan.Types.Enum.VkResult-import Graphics.Vulkan.Types.Enum.VkSampleCountFlags-import Graphics.Vulkan.Types.Enum.VkSamplerAddressMode-import Graphics.Vulkan.Types.Enum.VkSamplerMipmapMode+import Graphics.Vulkan.Types.Enum.VkSamplerYcbcrModelConversion import Graphics.Vulkan.Types.Enum.VkSamplerYcbcrModelConversionKHR+import Graphics.Vulkan.Types.Enum.VkSamplerYcbcrRange import Graphics.Vulkan.Types.Enum.VkSamplerYcbcrRangeKHR import Graphics.Vulkan.Types.Enum.VkStructureType import Graphics.Vulkan.Types.Enum.VkSystemAllocationScope import Graphics.Vulkan.Types.Funcpointers import Graphics.Vulkan.Types.Handles import Graphics.Vulkan.Types.Struct.VkAllocationCallbacks-import Graphics.Vulkan.Types.Struct.VkBindImageMemoryInfoKHR import Graphics.Vulkan.Types.Struct.VkBindImagePlaneMemoryInfoKHR import Graphics.Vulkan.Types.Struct.VkComponentMapping-import Graphics.Vulkan.Types.Struct.VkDeviceCreateInfo-import Graphics.Vulkan.Types.Struct.VkDeviceQueueCreateInfo-import Graphics.Vulkan.Types.Struct.VkExtent3D-import Graphics.Vulkan.Types.Struct.VkImageFormatProperties-import Graphics.Vulkan.Types.Struct.VkImageFormatProperties2KHR-import Graphics.Vulkan.Types.Struct.VkImageMemoryRequirementsInfo2KHR import Graphics.Vulkan.Types.Struct.VkImagePlaneMemoryRequirementsInfoKHR-import Graphics.Vulkan.Types.Struct.VkImageSubresourceRange-import Graphics.Vulkan.Types.Struct.VkImageViewCreateInfo-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceFeatures-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceFeatures2KHR import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSamplerYcbcrConversionFeaturesKHR-import Graphics.Vulkan.Types.Struct.VkSamplerCreateInfo+import Graphics.Vulkan.Types.Struct.VkSamplerYcbcrConversionCreateInfo import Graphics.Vulkan.Types.Struct.VkSamplerYcbcrConversionCreateInfoKHR import Graphics.Vulkan.Types.Struct.VkSamplerYcbcrConversionImageFormatPropertiesKHR import Graphics.Vulkan.Types.Struct.VkSamplerYcbcrConversionInfoKHR --- | Success codes: 'VK_SUCCESS'.+-- | This is an alias for `vkCreateSamplerYcbcrConversion`. --+-- Success codes: 'VK_SUCCESS'.+-- -- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'. -- -- > VkResult vkCreateSamplerYcbcrConversionKHR -- > ( VkDevice device--- > , const VkSamplerYcbcrConversionCreateInfoKHR* pCreateInfo+-- > , const VkSamplerYcbcrConversionCreateInfo* pCreateInfo -- > , const VkAllocationCallbacks* pAllocator--- > , VkSamplerYcbcrConversionKHR* pYcbcrConversion+-- > , VkSamplerYcbcrConversion* pYcbcrConversion -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCreateSamplerYcbcrConversionKHR.html vkCreateSamplerYcbcrConversionKHR registry at www.khronos.org>-foreign import ccall unsafe "vkCreateSamplerYcbcrConversionKHR"+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateSamplerYcbcrConversionKHR.html vkCreateSamplerYcbcrConversionKHR registry at www.khronos.org>+foreign import ccall unsafe "vkCreateSamplerYcbcrConversion" vkCreateSamplerYcbcrConversionKHR :: VkDevice -- ^ device ->- Ptr VkSamplerYcbcrConversionCreateInfoKHR -- ^ pCreateInfo- ->+ Ptr VkSamplerYcbcrConversionCreateInfo -- ^ pCreateInfo+ -> Ptr VkAllocationCallbacks -- ^ pAllocator ->- Ptr VkSamplerYcbcrConversionKHR -- ^ pYcbcrConversion- -> IO VkResult+ Ptr VkSamplerYcbcrConversion -- ^ pYcbcrConversion+ -> IO VkResult --- | > () vkDestroySamplerYcbcrConversionKHR+-- | This is an alias for `vkCreateSamplerYcbcrConversion`.+--+-- Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreateSamplerYcbcrConversionKHR -- > ( VkDevice device--- > , VkSamplerYcbcrConversionKHR ycbcrConversion+-- > , const VkSamplerYcbcrConversionCreateInfo* pCreateInfo -- > , const VkAllocationCallbacks* pAllocator+-- > , VkSamplerYcbcrConversion* pYcbcrConversion -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkDestroySamplerYcbcrConversionKHR.html vkDestroySamplerYcbcrConversionKHR registry at www.khronos.org>-foreign import ccall unsafe "vkDestroySamplerYcbcrConversionKHR"+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateSamplerYcbcrConversionKHR.html vkCreateSamplerYcbcrConversionKHR registry at www.khronos.org>+foreign import ccall safe "vkCreateSamplerYcbcrConversion"+ vkCreateSamplerYcbcrConversionKHRSafe ::+ VkDevice -- ^ device+ ->+ Ptr VkSamplerYcbcrConversionCreateInfo -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ ->+ Ptr VkSamplerYcbcrConversion -- ^ pYcbcrConversion+ -> IO VkResult++-- | This is an alias for `vkDestroySamplerYcbcrConversion`.+--+-- > () vkDestroySamplerYcbcrConversionKHR+-- > ( VkDevice device+-- > , VkSamplerYcbcrConversion ycbcrConversion+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroySamplerYcbcrConversionKHR.html vkDestroySamplerYcbcrConversionKHR registry at www.khronos.org>+foreign import ccall unsafe "vkDestroySamplerYcbcrConversion" vkDestroySamplerYcbcrConversionKHR :: VkDevice -- ^ device ->- VkSamplerYcbcrConversionKHR -- ^ ycbcrConversion- -> Ptr VkAllocationCallbacks -- ^ pAllocator- -> IO ()+ VkSamplerYcbcrConversion -- ^ ycbcrConversion+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO () +-- | This is an alias for `vkDestroySamplerYcbcrConversion`.+--+-- > () vkDestroySamplerYcbcrConversionKHR+-- > ( VkDevice device+-- > , VkSamplerYcbcrConversion ycbcrConversion+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroySamplerYcbcrConversionKHR.html vkDestroySamplerYcbcrConversionKHR registry at www.khronos.org>+foreign import ccall safe "vkDestroySamplerYcbcrConversion"+ vkDestroySamplerYcbcrConversionKHRSafe ::+ VkDevice -- ^ device+ ->+ VkSamplerYcbcrConversion -- ^ ycbcrConversion+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()+ pattern VK_KHR_SAMPLER_YCBCR_CONVERSION_SPEC_VERSION :: (Num a, Eq a) => a @@ -244,314 +316,200 @@ is_VK_KHR_SAMPLER_YCBCR_CONVERSION_EXTENSION_NAME :: CString -> Bool is_VK_KHR_SAMPLER_YCBCR_CONVERSION_EXTENSION_NAME- = eqCStrings _VK_KHR_SAMPLER_YCBCR_CONVERSION_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_KHR_SAMPLER_YCBCR_CONVERSION_EXTENSION_NAME type VK_KHR_SAMPLER_YCBCR_CONVERSION_EXTENSION_NAME = "VK_KHR_sampler_ycbcr_conversion" pattern VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO_KHR- :: VkStructureType--pattern VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO_KHR- = VkStructureType 1000156000--pattern VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO_KHR ::- VkStructureType+ = VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO pattern VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO_KHR =- VkStructureType 1000156001--pattern VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO_KHR ::- VkStructureType+ VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO pattern VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO_KHR =- VkStructureType 1000156002--pattern VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO_KHR- :: VkStructureType+ VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO pattern VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO_KHR- = VkStructureType 1000156003--pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES_KHR- :: VkStructureType+ = VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES_KHR- = VkStructureType 1000156004--pattern VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES_KHR- :: VkStructureType+ =+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES pattern VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES_KHR- = VkStructureType 1000156005--pattern VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR_EXT- :: VkDebugReportObjectTypeEXT+ =+ VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES pattern VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR_EXT- = VkDebugReportObjectTypeEXT 1000156000--pattern VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR :: VkObjectType+ = VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT pattern VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR =- VkObjectType 1000156000--pattern VK_FORMAT_G8B8G8R8_422_UNORM_KHR :: VkFormat--pattern VK_FORMAT_G8B8G8R8_422_UNORM_KHR = VkFormat 1000156000--pattern VK_FORMAT_B8G8R8G8_422_UNORM_KHR :: VkFormat+ VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION -pattern VK_FORMAT_B8G8R8G8_422_UNORM_KHR = VkFormat 1000156001+pattern VK_FORMAT_G8B8G8R8_422_UNORM_KHR =+ VK_FORMAT_G8B8G8R8_422_UNORM -pattern VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM_KHR :: VkFormat+pattern VK_FORMAT_B8G8R8G8_422_UNORM_KHR =+ VK_FORMAT_B8G8R8G8_422_UNORM pattern VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM_KHR =- VkFormat 1000156002--pattern VK_FORMAT_G8_B8R8_2PLANE_420_UNORM_KHR :: VkFormat+ VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM pattern VK_FORMAT_G8_B8R8_2PLANE_420_UNORM_KHR =- VkFormat 1000156003--pattern VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM_KHR :: VkFormat+ VK_FORMAT_G8_B8R8_2PLANE_420_UNORM pattern VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM_KHR =- VkFormat 1000156004--pattern VK_FORMAT_G8_B8R8_2PLANE_422_UNORM_KHR :: VkFormat+ VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM pattern VK_FORMAT_G8_B8R8_2PLANE_422_UNORM_KHR =- VkFormat 1000156005--pattern VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM_KHR :: VkFormat+ VK_FORMAT_G8_B8R8_2PLANE_422_UNORM pattern VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM_KHR =- VkFormat 1000156006--pattern VK_FORMAT_R10X6_UNORM_PACK16_KHR :: VkFormat--pattern VK_FORMAT_R10X6_UNORM_PACK16_KHR = VkFormat 1000156007+ VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM -pattern VK_FORMAT_R10X6G10X6_UNORM_2PACK16_KHR :: VkFormat+pattern VK_FORMAT_R10X6_UNORM_PACK16_KHR =+ VK_FORMAT_R10X6_UNORM_PACK16 pattern VK_FORMAT_R10X6G10X6_UNORM_2PACK16_KHR =- VkFormat 1000156008--pattern VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16_KHR ::- VkFormat+ VK_FORMAT_R10X6G10X6_UNORM_2PACK16 pattern VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16_KHR =- VkFormat 1000156009--pattern VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16_KHR ::- VkFormat+ VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16 pattern VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16_KHR =- VkFormat 1000156010--pattern VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16_KHR ::- VkFormat+ VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16 pattern VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16_KHR =- VkFormat 1000156011--pattern VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16_KHR ::- VkFormat+ VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16 pattern VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16_KHR =- VkFormat 1000156012--pattern VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16_KHR ::- VkFormat+ VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16 pattern VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16_KHR =- VkFormat 1000156013--pattern VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16_KHR ::- VkFormat+ VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16 pattern VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16_KHR =- VkFormat 1000156014--pattern VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16_KHR ::- VkFormat+ VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16 pattern VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16_KHR =- VkFormat 1000156015--pattern VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16_KHR ::- VkFormat+ VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16 pattern VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16_KHR =- VkFormat 1000156016--pattern VK_FORMAT_R12X4_UNORM_PACK16_KHR :: VkFormat--pattern VK_FORMAT_R12X4_UNORM_PACK16_KHR = VkFormat 1000156017+ VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16 -pattern VK_FORMAT_R12X4G12X4_UNORM_2PACK16_KHR :: VkFormat+pattern VK_FORMAT_R12X4_UNORM_PACK16_KHR =+ VK_FORMAT_R12X4_UNORM_PACK16 pattern VK_FORMAT_R12X4G12X4_UNORM_2PACK16_KHR =- VkFormat 1000156018--pattern VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16_KHR ::- VkFormat+ VK_FORMAT_R12X4G12X4_UNORM_2PACK16 pattern VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16_KHR =- VkFormat 1000156019--pattern VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16_KHR ::- VkFormat+ VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16 pattern VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16_KHR =- VkFormat 1000156020--pattern VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16_KHR ::- VkFormat+ VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16 pattern VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16_KHR =- VkFormat 1000156021--pattern VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16_KHR ::- VkFormat+ VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16 pattern VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16_KHR =- VkFormat 1000156022--pattern VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16_KHR ::- VkFormat+ VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16 pattern VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16_KHR =- VkFormat 1000156023--pattern VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16_KHR ::- VkFormat+ VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16 pattern VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16_KHR =- VkFormat 1000156024--pattern VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16_KHR ::- VkFormat+ VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16 pattern VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16_KHR =- VkFormat 1000156025--pattern VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16_KHR ::- VkFormat+ VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16 pattern VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16_KHR =- VkFormat 1000156026--pattern VK_FORMAT_G16B16G16R16_422_UNORM_KHR :: VkFormat--pattern VK_FORMAT_G16B16G16R16_422_UNORM_KHR = VkFormat 1000156027--pattern VK_FORMAT_B16G16R16G16_422_UNORM_KHR :: VkFormat+ VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16 -pattern VK_FORMAT_B16G16R16G16_422_UNORM_KHR = VkFormat 1000156028+pattern VK_FORMAT_G16B16G16R16_422_UNORM_KHR =+ VK_FORMAT_G16B16G16R16_422_UNORM -pattern VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM_KHR :: VkFormat+pattern VK_FORMAT_B16G16R16G16_422_UNORM_KHR =+ VK_FORMAT_B16G16R16G16_422_UNORM pattern VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM_KHR =- VkFormat 1000156029--pattern VK_FORMAT_G16_B16R16_2PLANE_420_UNORM_KHR :: VkFormat+ VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM pattern VK_FORMAT_G16_B16R16_2PLANE_420_UNORM_KHR =- VkFormat 1000156030--pattern VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM_KHR :: VkFormat+ VK_FORMAT_G16_B16R16_2PLANE_420_UNORM pattern VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM_KHR =- VkFormat 1000156031--pattern VK_FORMAT_G16_B16R16_2PLANE_422_UNORM_KHR :: VkFormat+ VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM pattern VK_FORMAT_G16_B16R16_2PLANE_422_UNORM_KHR =- VkFormat 1000156032--pattern VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM_KHR :: VkFormat+ VK_FORMAT_G16_B16R16_2PLANE_422_UNORM pattern VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM_KHR =- VkFormat 1000156033---- | bitpos = @4@-pattern VK_IMAGE_ASPECT_PLANE_0_BIT_KHR :: VkImageAspectFlagBits--pattern VK_IMAGE_ASPECT_PLANE_0_BIT_KHR = VkImageAspectFlagBits 16---- | bitpos = @5@-pattern VK_IMAGE_ASPECT_PLANE_1_BIT_KHR :: VkImageAspectFlagBits--pattern VK_IMAGE_ASPECT_PLANE_1_BIT_KHR = VkImageAspectFlagBits 32+ VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM --- | bitpos = @6@-pattern VK_IMAGE_ASPECT_PLANE_2_BIT_KHR :: VkImageAspectFlagBits+pattern VK_IMAGE_ASPECT_PLANE_0_BIT_KHR =+ VK_IMAGE_ASPECT_PLANE_0_BIT -pattern VK_IMAGE_ASPECT_PLANE_2_BIT_KHR = VkImageAspectFlagBits 64+pattern VK_IMAGE_ASPECT_PLANE_1_BIT_KHR =+ VK_IMAGE_ASPECT_PLANE_1_BIT --- | bitpos = @9@-pattern VK_IMAGE_CREATE_DISJOINT_BIT_KHR :: VkImageCreateFlagBits+pattern VK_IMAGE_ASPECT_PLANE_2_BIT_KHR =+ VK_IMAGE_ASPECT_PLANE_2_BIT pattern VK_IMAGE_CREATE_DISJOINT_BIT_KHR =- VkImageCreateFlagBits 512---- | Format can have midpoint rather than cosited chroma samples------ bitpos = @17@-pattern VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT_KHR ::- VkFormatFeatureFlagBits+ VK_IMAGE_CREATE_DISJOINT_BIT pattern VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT_KHR =- VkFormatFeatureFlagBits 131072---- | Format can be used with linear filtering whilst color conversion is enabled------ bitpos = @18@-pattern VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT_KHR- :: VkFormatFeatureFlagBits+ VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT pattern VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT_KHR- = VkFormatFeatureFlagBits 262144---- | Format can have different chroma, min and mag filters------ bitpos = @19@-pattern VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT_KHR- :: VkFormatFeatureFlagBits+ =+ VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT pattern VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT_KHR- = VkFormatFeatureFlagBits 524288---- | bitpos = @20@-pattern VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT_KHR- :: VkFormatFeatureFlagBits+ =+ VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT pattern VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT_KHR- = VkFormatFeatureFlagBits 1048576+ =+ VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT --- | bitpos = @21@ pattern VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT_KHR- :: VkFormatFeatureFlagBits+ =+ VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT -pattern VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT_KHR- = VkFormatFeatureFlagBits 2097152+pattern VK_FORMAT_FEATURE_DISJOINT_BIT_KHR =+ VK_FORMAT_FEATURE_DISJOINT_BIT --- | Format supports disjoint planes------ bitpos = @22@-pattern VK_FORMAT_FEATURE_DISJOINT_BIT_KHR ::- VkFormatFeatureFlagBits+pattern VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT_KHR =+ VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT -pattern VK_FORMAT_FEATURE_DISJOINT_BIT_KHR =- VkFormatFeatureFlagBits 4194304+pattern VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY_KHR =+ VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY --- | Format can have cosited rather than midpoint chroma samples------ bitpos = @23@-pattern VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT_KHR ::- VkFormatFeatureFlagBits+pattern VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY_KHR =+ VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY -pattern VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT_KHR =- VkFormatFeatureFlagBits 8388608+pattern VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709_KHR =+ VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709++pattern VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601_KHR =+ VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601++pattern VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020_KHR =+ VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020++pattern VK_SAMPLER_YCBCR_RANGE_ITU_FULL_KHR =+ VK_SAMPLER_YCBCR_RANGE_ITU_FULL++pattern VK_SAMPLER_YCBCR_RANGE_ITU_NARROW_KHR =+ VK_SAMPLER_YCBCR_RANGE_ITU_NARROW++pattern VK_CHROMA_LOCATION_COSITED_EVEN_KHR =+ VK_CHROMA_LOCATION_COSITED_EVEN++pattern VK_CHROMA_LOCATION_MIDPOINT_KHR =+ VK_CHROMA_LOCATION_MIDPOINT
@@ -49,7 +49,8 @@ is_VK_KHR_SHADER_DRAW_PARAMETERS_EXTENSION_NAME :: CString -> Bool is_VK_KHR_SHADER_DRAW_PARAMETERS_EXTENSION_NAME- = eqCStrings _VK_KHR_SHADER_DRAW_PARAMETERS_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_KHR_SHADER_DRAW_PARAMETERS_EXTENSION_NAME type VK_KHR_SHADER_DRAW_PARAMETERS_EXTENSION_NAME = "VK_KHR_shader_draw_parameters"
@@ -33,7 +33,7 @@ module Graphics.Vulkan.Types.Struct.VkSurfaceCapabilitiesKHR, module Graphics.Vulkan.Types.Enum.VkSurfaceTransformFlagsKHR, -- > #include "vk_platform.h"- vkGetSwapchainStatusKHR,+ vkGetSwapchainStatusKHR, vkGetSwapchainStatusKHRSafe, module Graphics.Vulkan.Types.Enum.VkResult, module Graphics.Vulkan.Types.Handles, VK_KHR_SHARED_PRESENTABLE_IMAGE_SPEC_VERSION,@@ -73,13 +73,29 @@ -- > , VkSwapchainKHR swapchain -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetSwapchainStatusKHR.html vkGetSwapchainStatusKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetSwapchainStatusKHR.html vkGetSwapchainStatusKHR registry at www.khronos.org> foreign import ccall unsafe "vkGetSwapchainStatusKHR" vkGetSwapchainStatusKHR :: VkDevice -- ^ device -> VkSwapchainKHR -- ^ swapchain -> IO VkResult +-- | Success codes: 'VK_SUCCESS', 'VK_SUBOPTIMAL_KHR'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_DEVICE_LOST', 'VK_ERROR_OUT_OF_DATE_KHR', 'VK_ERROR_SURFACE_LOST_KHR'.+--+-- > VkResult vkGetSwapchainStatusKHR+-- > ( VkDevice device+-- > , VkSwapchainKHR swapchain+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetSwapchainStatusKHR.html vkGetSwapchainStatusKHR registry at www.khronos.org>+foreign import ccall safe "vkGetSwapchainStatusKHR"+ vkGetSwapchainStatusKHRSafe ::+ VkDevice -- ^ device+ -> VkSwapchainKHR -- ^ swapchain+ -> IO VkResult+ pattern VK_KHR_SHARED_PRESENTABLE_IMAGE_SPEC_VERSION :: (Num a, Eq a) => a @@ -105,7 +121,8 @@ is_VK_KHR_SHARED_PRESENTABLE_IMAGE_EXTENSION_NAME :: CString -> Bool is_VK_KHR_SHARED_PRESENTABLE_IMAGE_EXTENSION_NAME- = eqCStrings _VK_KHR_SHARED_PRESENTABLE_IMAGE_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_KHR_SHARED_PRESENTABLE_IMAGE_EXTENSION_NAME type VK_KHR_SHARED_PRESENTABLE_IMAGE_EXTENSION_NAME = "VK_KHR_shared_presentable_image"
@@ -52,7 +52,8 @@ is_VK_KHR_STORAGE_BUFFER_STORAGE_CLASS_EXTENSION_NAME :: CString -> Bool is_VK_KHR_STORAGE_BUFFER_STORAGE_CLASS_EXTENSION_NAME- = eqCStrings _VK_KHR_STORAGE_BUFFER_STORAGE_CLASS_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_KHR_STORAGE_BUFFER_STORAGE_CLASS_EXTENSION_NAME type VK_KHR_STORAGE_BUFFER_STORAGE_CLASS_EXTENSION_NAME = "VK_KHR_storage_buffer_storage_class"
@@ -19,10 +19,15 @@ -- type: @instance@ -- -- Extension number: @1@- vkDestroySurfaceKHR, vkGetPhysicalDeviceSurfaceSupportKHR,+ vkDestroySurfaceKHR, vkDestroySurfaceKHRSafe,+ vkGetPhysicalDeviceSurfaceSupportKHR,+ vkGetPhysicalDeviceSurfaceSupportKHRSafe, vkGetPhysicalDeviceSurfaceCapabilitiesKHR,+ vkGetPhysicalDeviceSurfaceCapabilitiesKHRSafe, vkGetPhysicalDeviceSurfaceFormatsKHR,+ vkGetPhysicalDeviceSurfaceFormatsKHRSafe, vkGetPhysicalDeviceSurfacePresentModesKHR,+ vkGetPhysicalDeviceSurfacePresentModesKHRSafe, module Graphics.Vulkan.Marshal, module Graphics.Vulkan.Types.BaseTypes, module Graphics.Vulkan.Types.Enum.VkColorSpaceKHR,@@ -74,7 +79,7 @@ -- > , const VkAllocationCallbacks* pAllocator -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkDestroySurfaceKHR.html vkDestroySurfaceKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroySurfaceKHR.html vkDestroySurfaceKHR registry at www.khronos.org> foreign import ccall unsafe "vkDestroySurfaceKHR" vkDestroySurfaceKHR :: VkInstance -- ^ instance@@ -82,6 +87,20 @@ -> Ptr VkAllocationCallbacks -- ^ pAllocator -> IO () +-- | > () vkDestroySurfaceKHR+-- > ( VkInstance instance+-- > , VkSurfaceKHR surface+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroySurfaceKHR.html vkDestroySurfaceKHR registry at www.khronos.org>+foreign import ccall safe "vkDestroySurfaceKHR"+ vkDestroySurfaceKHRSafe ::+ VkInstance -- ^ instance+ -> VkSurfaceKHR -- ^ surface+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()+ -- | Success codes: 'VK_SUCCESS'. -- -- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_SURFACE_LOST_KHR'.@@ -93,7 +112,7 @@ -- > , VkBool32* pSupported -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetPhysicalDeviceSurfaceSupportKHR.html vkGetPhysicalDeviceSurfaceSupportKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceSurfaceSupportKHR.html vkGetPhysicalDeviceSurfaceSupportKHR registry at www.khronos.org> foreign import ccall unsafe "vkGetPhysicalDeviceSurfaceSupportKHR" vkGetPhysicalDeviceSurfaceSupportKHR :: VkPhysicalDevice -- ^ physicalDevice@@ -107,13 +126,34 @@ -- -- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_SURFACE_LOST_KHR'. --+-- > VkResult vkGetPhysicalDeviceSurfaceSupportKHR+-- > ( VkPhysicalDevice physicalDevice+-- > , uint32_t queueFamilyIndex+-- > , VkSurfaceKHR surface+-- > , VkBool32* pSupported+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceSurfaceSupportKHR.html vkGetPhysicalDeviceSurfaceSupportKHR registry at www.khronos.org>+foreign import ccall safe "vkGetPhysicalDeviceSurfaceSupportKHR"+ vkGetPhysicalDeviceSurfaceSupportKHRSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ Word32 -- ^ queueFamilyIndex+ -> VkSurfaceKHR -- ^ surface+ -> Ptr VkBool32 -- ^ pSupported+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_SURFACE_LOST_KHR'.+-- -- > VkResult vkGetPhysicalDeviceSurfaceCapabilitiesKHR -- > ( VkPhysicalDevice physicalDevice -- > , VkSurfaceKHR surface -- > , VkSurfaceCapabilitiesKHR* pSurfaceCapabilities -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetPhysicalDeviceSurfaceCapabilitiesKHR.html vkGetPhysicalDeviceSurfaceCapabilitiesKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceSurfaceCapabilitiesKHR.html vkGetPhysicalDeviceSurfaceCapabilitiesKHR registry at www.khronos.org> foreign import ccall unsafe "vkGetPhysicalDeviceSurfaceCapabilitiesKHR" vkGetPhysicalDeviceSurfaceCapabilitiesKHR ::@@ -123,6 +163,26 @@ -> Ptr VkSurfaceCapabilitiesKHR -- ^ pSurfaceCapabilities -> IO VkResult +-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_SURFACE_LOST_KHR'.+--+-- > VkResult vkGetPhysicalDeviceSurfaceCapabilitiesKHR+-- > ( VkPhysicalDevice physicalDevice+-- > , VkSurfaceKHR surface+-- > , VkSurfaceCapabilitiesKHR* pSurfaceCapabilities+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceSurfaceCapabilitiesKHR.html vkGetPhysicalDeviceSurfaceCapabilitiesKHR registry at www.khronos.org>+foreign import ccall safe+ "vkGetPhysicalDeviceSurfaceCapabilitiesKHR"+ vkGetPhysicalDeviceSurfaceCapabilitiesKHRSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ VkSurfaceKHR -- ^ surface+ -> Ptr VkSurfaceCapabilitiesKHR -- ^ pSurfaceCapabilities+ -> IO VkResult+ -- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'. -- -- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_SURFACE_LOST_KHR'.@@ -134,7 +194,7 @@ -- > , VkSurfaceFormatKHR* pSurfaceFormats -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetPhysicalDeviceSurfaceFormatsKHR.html vkGetPhysicalDeviceSurfaceFormatsKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceSurfaceFormatsKHR.html vkGetPhysicalDeviceSurfaceFormatsKHR registry at www.khronos.org> foreign import ccall unsafe "vkGetPhysicalDeviceSurfaceFormatsKHR" vkGetPhysicalDeviceSurfaceFormatsKHR :: VkPhysicalDevice -- ^ physicalDevice@@ -148,6 +208,27 @@ -- -- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_SURFACE_LOST_KHR'. --+-- > VkResult vkGetPhysicalDeviceSurfaceFormatsKHR+-- > ( VkPhysicalDevice physicalDevice+-- > , VkSurfaceKHR surface+-- > , uint32_t* pSurfaceFormatCount+-- > , VkSurfaceFormatKHR* pSurfaceFormats+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceSurfaceFormatsKHR.html vkGetPhysicalDeviceSurfaceFormatsKHR registry at www.khronos.org>+foreign import ccall safe "vkGetPhysicalDeviceSurfaceFormatsKHR"+ vkGetPhysicalDeviceSurfaceFormatsKHRSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ VkSurfaceKHR -- ^ surface+ -> Ptr Word32 -- ^ pSurfaceFormatCount+ -> Ptr VkSurfaceFormatKHR -- ^ pSurfaceFormats+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_SURFACE_LOST_KHR'.+-- -- > VkResult vkGetPhysicalDeviceSurfacePresentModesKHR -- > ( VkPhysicalDevice physicalDevice -- > , VkSurfaceKHR surface@@ -155,7 +236,7 @@ -- > , VkPresentModeKHR* pPresentModes -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetPhysicalDeviceSurfacePresentModesKHR.html vkGetPhysicalDeviceSurfacePresentModesKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceSurfacePresentModesKHR.html vkGetPhysicalDeviceSurfacePresentModesKHR registry at www.khronos.org> foreign import ccall unsafe "vkGetPhysicalDeviceSurfacePresentModesKHR" vkGetPhysicalDeviceSurfacePresentModesKHR ::@@ -166,6 +247,28 @@ -> Ptr VkPresentModeKHR -- ^ pPresentModes -> IO VkResult +-- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_SURFACE_LOST_KHR'.+--+-- > VkResult vkGetPhysicalDeviceSurfacePresentModesKHR+-- > ( VkPhysicalDevice physicalDevice+-- > , VkSurfaceKHR surface+-- > , uint32_t* pPresentModeCount+-- > , VkPresentModeKHR* pPresentModes+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceSurfacePresentModesKHR.html vkGetPhysicalDeviceSurfacePresentModesKHR registry at www.khronos.org>+foreign import ccall safe+ "vkGetPhysicalDeviceSurfacePresentModesKHR"+ vkGetPhysicalDeviceSurfacePresentModesKHRSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ VkSurfaceKHR -- ^ surface+ -> Ptr Word32 -- ^ pPresentModeCount+ -> Ptr VkPresentModeKHR -- ^ pPresentModes+ -> IO VkResult+ pattern VK_KHR_SURFACE_SPEC_VERSION :: (Num a, Eq a) => a pattern VK_KHR_SURFACE_SPEC_VERSION = 25@@ -188,7 +291,7 @@ is_VK_KHR_SURFACE_EXTENSION_NAME :: CString -> Bool is_VK_KHR_SURFACE_EXTENSION_NAME- = eqCStrings _VK_KHR_SURFACE_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_KHR_SURFACE_EXTENSION_NAME type VK_KHR_SURFACE_EXTENSION_NAME = "VK_KHR_surface"
@@ -1,3 +1,4 @@+{-# OPTIONS_GHC -fno-warn-unused-imports#-} {-# OPTIONS_HADDOCK not-home#-} {-# LANGUAGE DataKinds #-} {-# LANGUAGE ForeignFunctionInterface #-}@@ -23,8 +24,11 @@ -- -- ** Required extensions: 'VK_KHR_surface'.- vkCreateSwapchainKHR, vkDestroySwapchainKHR,- vkGetSwapchainImagesKHR, vkAcquireNextImageKHR, vkQueuePresentKHR,+ vkCreateSwapchainKHR, vkCreateSwapchainKHRSafe,+ vkDestroySwapchainKHR, vkDestroySwapchainKHRSafe,+ vkGetSwapchainImagesKHR, vkGetSwapchainImagesKHRSafe,+ vkAcquireNextImageKHR, vkAcquireNextImageKHRSafe,+ vkQueuePresentKHR, vkQueuePresentKHRSafe, module Graphics.Vulkan.Marshal, module Graphics.Vulkan.Types.BaseTypes, module Graphics.Vulkan.Types.Enum.VkColorSpaceKHR,@@ -53,20 +57,61 @@ pattern VK_STRUCTURE_TYPE_PRESENT_INFO_KHR, pattern VK_IMAGE_LAYOUT_PRESENT_SRC_KHR, pattern VK_SUBOPTIMAL_KHR, pattern VK_ERROR_OUT_OF_DATE_KHR,- pattern VK_OBJECT_TYPE_SWAPCHAIN_KHR)+ pattern VK_OBJECT_TYPE_SWAPCHAIN_KHR,+ -- ** Required extensions: 'VK_KHR_surface'.+ module Graphics.Vulkan.Types.Struct.VkAcquireNextImageInfoKHR,+ module Graphics.Vulkan.Types.Struct.VkBindImageMemoryInfo,+ module Graphics.Vulkan.Types.Struct.VkBindImageMemorySwapchainInfoKHR,+ module Graphics.Vulkan.Types.Struct.VkDeviceGroupPresentCapabilitiesKHR,+ module Graphics.Vulkan.Types.Struct.VkDeviceGroupPresentInfoKHR,+ module Graphics.Vulkan.Types.Enum.VkDeviceGroupPresentModeFlagsKHR,+ module Graphics.Vulkan.Types.Struct.VkDeviceGroupSwapchainCreateInfoKHR,+ module Graphics.Vulkan.Types.Struct.VkExtent3D,+ module Graphics.Vulkan.Types.Enum.VkImageCreateFlags,+ module Graphics.Vulkan.Types.Struct.VkImageCreateInfo,+ module Graphics.Vulkan.Types.Enum.VkImageLayout,+ module Graphics.Vulkan.Types.Struct.VkImageSwapchainCreateInfoKHR,+ module Graphics.Vulkan.Types.Enum.VkImageTiling,+ module Graphics.Vulkan.Types.Enum.VkImageType,+ module Graphics.Vulkan.Types.Enum.VkSampleCountFlags,+ -- > #include "vk_platform.h"+ vkGetDeviceGroupPresentCapabilitiesKHR,+ vkGetDeviceGroupPresentCapabilitiesKHRSafe,+ vkGetDeviceGroupSurfacePresentModesKHR,+ vkGetDeviceGroupSurfacePresentModesKHRSafe,+ vkGetPhysicalDevicePresentRectanglesKHR,+ vkGetPhysicalDevicePresentRectanglesKHRSafe,+ vkAcquireNextImage2KHR, vkAcquireNextImage2KHRSafe,+ module Graphics.Vulkan.Types.Struct.VkOffset2D,+ module Graphics.Vulkan.Types.Struct.VkRect2D,+ pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR,+ pattern VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR,+ pattern VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR,+ pattern VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR,+ pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR,+ pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR,+ pattern VK_SWAPCHAIN_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR,+ pattern VK_SWAPCHAIN_CREATE_PROTECTED_BIT_KHR) where-import GHC.Ptr (Ptr (..))+import GHC.Ptr+ (Ptr (..)) import Graphics.Vulkan.Marshal import Graphics.Vulkan.Types.BaseTypes import Graphics.Vulkan.Types.Enum.VkColorSpaceKHR import Graphics.Vulkan.Types.Enum.VkCompositeAlphaFlagsKHR+import Graphics.Vulkan.Types.Enum.VkDeviceGroupPresentModeFlagsKHR import Graphics.Vulkan.Types.Enum.VkFormat-import Graphics.Vulkan.Types.Enum.VkImageLayout (VkImageLayout (..))+import Graphics.Vulkan.Types.Enum.VkImageCreateFlags+import Graphics.Vulkan.Types.Enum.VkImageLayout+import Graphics.Vulkan.Types.Enum.VkImageTiling+import Graphics.Vulkan.Types.Enum.VkImageType import Graphics.Vulkan.Types.Enum.VkImageUsageFlags import Graphics.Vulkan.Types.Enum.VkInternalAllocationType-import Graphics.Vulkan.Types.Enum.VkObjectType (VkObjectType (..))+import Graphics.Vulkan.Types.Enum.VkObjectType+ (VkObjectType (..)) import Graphics.Vulkan.Types.Enum.VkPresentModeKHR import Graphics.Vulkan.Types.Enum.VkResult+import Graphics.Vulkan.Types.Enum.VkSampleCountFlags import Graphics.Vulkan.Types.Enum.VkSharingMode import Graphics.Vulkan.Types.Enum.VkStructureType import Graphics.Vulkan.Types.Enum.VkSurfaceTransformFlagsKHR@@ -74,9 +119,20 @@ import Graphics.Vulkan.Types.Enum.VkSystemAllocationScope import Graphics.Vulkan.Types.Funcpointers import Graphics.Vulkan.Types.Handles+import Graphics.Vulkan.Types.Struct.VkAcquireNextImageInfoKHR import Graphics.Vulkan.Types.Struct.VkAllocationCallbacks+import Graphics.Vulkan.Types.Struct.VkBindImageMemoryInfo+import Graphics.Vulkan.Types.Struct.VkBindImageMemorySwapchainInfoKHR+import Graphics.Vulkan.Types.Struct.VkDeviceGroupPresentCapabilitiesKHR+import Graphics.Vulkan.Types.Struct.VkDeviceGroupPresentInfoKHR+import Graphics.Vulkan.Types.Struct.VkDeviceGroupSwapchainCreateInfoKHR import Graphics.Vulkan.Types.Struct.VkExtent2D+import Graphics.Vulkan.Types.Struct.VkExtent3D+import Graphics.Vulkan.Types.Struct.VkImageCreateInfo+import Graphics.Vulkan.Types.Struct.VkImageSwapchainCreateInfoKHR+import Graphics.Vulkan.Types.Struct.VkOffset2D import Graphics.Vulkan.Types.Struct.VkPresentInfoKHR+import Graphics.Vulkan.Types.Struct.VkRect2D import Graphics.Vulkan.Types.Struct.VkSwapchainCreateInfoKHR -- | Success codes: 'VK_SUCCESS'.@@ -90,7 +146,7 @@ -- > , VkSwapchainKHR* pSwapchain -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCreateSwapchainKHR.html vkCreateSwapchainKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateSwapchainKHR.html vkCreateSwapchainKHR registry at www.khronos.org> foreign import ccall unsafe "vkCreateSwapchainKHR" vkCreateSwapchainKHR :: VkDevice -- ^ device@@ -101,13 +157,35 @@ -> Ptr VkSwapchainKHR -- ^ pSwapchain -> IO VkResult +-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_DEVICE_LOST', 'VK_ERROR_SURFACE_LOST_KHR', 'VK_ERROR_NATIVE_WINDOW_IN_USE_KHR'.+--+-- > VkResult vkCreateSwapchainKHR+-- > ( VkDevice device+-- > , const VkSwapchainCreateInfoKHR* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkSwapchainKHR* pSwapchain+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateSwapchainKHR.html vkCreateSwapchainKHR registry at www.khronos.org>+foreign import ccall safe "vkCreateSwapchainKHR"+ vkCreateSwapchainKHRSafe ::+ VkDevice -- ^ device+ ->+ Ptr VkSwapchainCreateInfoKHR -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkSwapchainKHR -- ^ pSwapchain+ -> IO VkResult+ -- | > () vkDestroySwapchainKHR -- > ( VkDevice device -- > , VkSwapchainKHR swapchain -- > , const VkAllocationCallbacks* pAllocator -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkDestroySwapchainKHR.html vkDestroySwapchainKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroySwapchainKHR.html vkDestroySwapchainKHR registry at www.khronos.org> foreign import ccall unsafe "vkDestroySwapchainKHR" vkDestroySwapchainKHR :: VkDevice -- ^ device@@ -115,6 +193,20 @@ -> Ptr VkAllocationCallbacks -- ^ pAllocator -> IO () +-- | > () vkDestroySwapchainKHR+-- > ( VkDevice device+-- > , VkSwapchainKHR swapchain+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroySwapchainKHR.html vkDestroySwapchainKHR registry at www.khronos.org>+foreign import ccall safe "vkDestroySwapchainKHR"+ vkDestroySwapchainKHRSafe ::+ VkDevice -- ^ device+ -> VkSwapchainKHR -- ^ swapchain+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()+ -- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'. -- -- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.@@ -126,7 +218,7 @@ -- > , VkImage* pSwapchainImages -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetSwapchainImagesKHR.html vkGetSwapchainImagesKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetSwapchainImagesKHR.html vkGetSwapchainImagesKHR registry at www.khronos.org> foreign import ccall unsafe "vkGetSwapchainImagesKHR" vkGetSwapchainImagesKHR :: VkDevice -- ^ device@@ -136,6 +228,27 @@ -> Ptr VkImage -- ^ pSwapchainImages -> IO VkResult +-- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkGetSwapchainImagesKHR+-- > ( VkDevice device+-- > , VkSwapchainKHR swapchain+-- > , uint32_t* pSwapchainImageCount+-- > , VkImage* pSwapchainImages+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetSwapchainImagesKHR.html vkGetSwapchainImagesKHR registry at www.khronos.org>+foreign import ccall safe "vkGetSwapchainImagesKHR"+ vkGetSwapchainImagesKHRSafe ::+ VkDevice -- ^ device+ ->+ VkSwapchainKHR -- ^ swapchain+ -> Ptr Word32 -- ^ pSwapchainImageCount+ -> Ptr VkImage -- ^ pSwapchainImages+ -> IO VkResult+ -- | Success codes: 'VK_SUCCESS', 'VK_TIMEOUT', 'VK_NOT_READY', 'VK_SUBOPTIMAL_KHR'. -- -- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_DEVICE_LOST', 'VK_ERROR_OUT_OF_DATE_KHR', 'VK_ERROR_SURFACE_LOST_KHR'.@@ -149,7 +262,7 @@ -- > , uint32_t* pImageIndex -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkAcquireNextImageKHR.html vkAcquireNextImageKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkAcquireNextImageKHR.html vkAcquireNextImageKHR registry at www.khronos.org> foreign import ccall unsafe "vkAcquireNextImageKHR" vkAcquireNextImageKHR :: VkDevice -- ^ device@@ -162,6 +275,32 @@ -> Ptr Word32 -- ^ pImageIndex -> IO VkResult +-- | Success codes: 'VK_SUCCESS', 'VK_TIMEOUT', 'VK_NOT_READY', 'VK_SUBOPTIMAL_KHR'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_DEVICE_LOST', 'VK_ERROR_OUT_OF_DATE_KHR', 'VK_ERROR_SURFACE_LOST_KHR'.+--+-- > VkResult vkAcquireNextImageKHR+-- > ( VkDevice device+-- > , VkSwapchainKHR swapchain+-- > , uint64_t timeout+-- > , VkSemaphore semaphore+-- > , VkFence fence+-- > , uint32_t* pImageIndex+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkAcquireNextImageKHR.html vkAcquireNextImageKHR registry at www.khronos.org>+foreign import ccall safe "vkAcquireNextImageKHR"+ vkAcquireNextImageKHRSafe ::+ VkDevice -- ^ device+ ->+ VkSwapchainKHR -- ^ swapchain+ ->+ Word64 -- ^ timeout+ -> VkSemaphore -- ^ semaphore+ -> VkFence -- ^ fence+ -> Ptr Word32 -- ^ pImageIndex+ -> IO VkResult+ -- | Success codes: 'VK_SUCCESS', 'VK_SUBOPTIMAL_KHR'. -- -- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_DEVICE_LOST', 'VK_ERROR_OUT_OF_DATE_KHR', 'VK_ERROR_SURFACE_LOST_KHR'.@@ -171,17 +310,32 @@ -- > , const VkPresentInfoKHR* pPresentInfo -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkQueuePresentKHR.html vkQueuePresentKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkQueuePresentKHR.html vkQueuePresentKHR registry at www.khronos.org> foreign import ccall unsafe "vkQueuePresentKHR" vkQueuePresentKHR :: VkQueue -- ^ queue -> Ptr VkPresentInfoKHR -- ^ pPresentInfo -> IO VkResult +-- | Success codes: 'VK_SUCCESS', 'VK_SUBOPTIMAL_KHR'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_DEVICE_LOST', 'VK_ERROR_OUT_OF_DATE_KHR', 'VK_ERROR_SURFACE_LOST_KHR'.+--+-- > VkResult vkQueuePresentKHR+-- > ( VkQueue queue+-- > , const VkPresentInfoKHR* pPresentInfo+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkQueuePresentKHR.html vkQueuePresentKHR registry at www.khronos.org>+foreign import ccall safe "vkQueuePresentKHR" vkQueuePresentKHRSafe+ :: VkQueue -- ^ queue+ -> Ptr VkPresentInfoKHR -- ^ pPresentInfo+ -> IO VkResult+ pattern VK_KHR_SWAPCHAIN_SPEC_VERSION :: (Num a, Eq a) => a -pattern VK_KHR_SWAPCHAIN_SPEC_VERSION = 68+pattern VK_KHR_SWAPCHAIN_SPEC_VERSION = 70 -type VK_KHR_SWAPCHAIN_SPEC_VERSION = 68+type VK_KHR_SWAPCHAIN_SPEC_VERSION = 70 pattern VK_KHR_SWAPCHAIN_EXTENSION_NAME :: CString @@ -199,7 +353,7 @@ is_VK_KHR_SWAPCHAIN_EXTENSION_NAME :: CString -> Bool is_VK_KHR_SWAPCHAIN_EXTENSION_NAME- = eqCStrings _VK_KHR_SWAPCHAIN_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_KHR_SWAPCHAIN_EXTENSION_NAME type VK_KHR_SWAPCHAIN_EXTENSION_NAME = "VK_KHR_swapchain" @@ -230,3 +384,210 @@ pattern VK_OBJECT_TYPE_SWAPCHAIN_KHR :: VkObjectType pattern VK_OBJECT_TYPE_SWAPCHAIN_KHR = VkObjectType 1000001000++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkGetDeviceGroupPresentCapabilitiesKHR+-- > ( VkDevice device+-- > , VkDeviceGroupPresentCapabilitiesKHR* pDeviceGroupPresentCapabilities+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetDeviceGroupPresentCapabilitiesKHR.html vkGetDeviceGroupPresentCapabilitiesKHR registry at www.khronos.org>+foreign import ccall unsafe+ "vkGetDeviceGroupPresentCapabilitiesKHR"+ vkGetDeviceGroupPresentCapabilitiesKHR ::+ VkDevice -- ^ device+ -> Ptr VkDeviceGroupPresentCapabilitiesKHR -- ^ pDeviceGroupPresentCapabilities+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkGetDeviceGroupPresentCapabilitiesKHR+-- > ( VkDevice device+-- > , VkDeviceGroupPresentCapabilitiesKHR* pDeviceGroupPresentCapabilities+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetDeviceGroupPresentCapabilitiesKHR.html vkGetDeviceGroupPresentCapabilitiesKHR registry at www.khronos.org>+foreign import ccall safe "vkGetDeviceGroupPresentCapabilitiesKHR"+ vkGetDeviceGroupPresentCapabilitiesKHRSafe ::+ VkDevice -- ^ device+ -> Ptr VkDeviceGroupPresentCapabilitiesKHR -- ^ pDeviceGroupPresentCapabilities+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_SURFACE_LOST_KHR'.+--+-- > VkResult vkGetDeviceGroupSurfacePresentModesKHR+-- > ( VkDevice device+-- > , VkSurfaceKHR surface+-- > , VkDeviceGroupPresentModeFlagsKHR* pModes+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetDeviceGroupSurfacePresentModesKHR.html vkGetDeviceGroupSurfacePresentModesKHR registry at www.khronos.org>+foreign import ccall unsafe+ "vkGetDeviceGroupSurfacePresentModesKHR"+ vkGetDeviceGroupSurfacePresentModesKHR ::+ VkDevice -- ^ device+ ->+ VkSurfaceKHR -- ^ surface+ -> Ptr VkDeviceGroupPresentModeFlagsKHR -- ^ pModes+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_SURFACE_LOST_KHR'.+--+-- > VkResult vkGetDeviceGroupSurfacePresentModesKHR+-- > ( VkDevice device+-- > , VkSurfaceKHR surface+-- > , VkDeviceGroupPresentModeFlagsKHR* pModes+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetDeviceGroupSurfacePresentModesKHR.html vkGetDeviceGroupSurfacePresentModesKHR registry at www.khronos.org>+foreign import ccall safe "vkGetDeviceGroupSurfacePresentModesKHR"+ vkGetDeviceGroupSurfacePresentModesKHRSafe ::+ VkDevice -- ^ device+ ->+ VkSurfaceKHR -- ^ surface+ -> Ptr VkDeviceGroupPresentModeFlagsKHR -- ^ pModes+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkGetPhysicalDevicePresentRectanglesKHR+-- > ( VkPhysicalDevice physicalDevice+-- > , VkSurfaceKHR surface+-- > , uint32_t* pRectCount+-- > , VkRect2D* pRects+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDevicePresentRectanglesKHR.html vkGetPhysicalDevicePresentRectanglesKHR registry at www.khronos.org>+foreign import ccall unsafe+ "vkGetPhysicalDevicePresentRectanglesKHR"+ vkGetPhysicalDevicePresentRectanglesKHR ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ VkSurfaceKHR -- ^ surface+ -> Ptr Word32 -- ^ pRectCount+ -> Ptr VkRect2D -- ^ pRects+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkGetPhysicalDevicePresentRectanglesKHR+-- > ( VkPhysicalDevice physicalDevice+-- > , VkSurfaceKHR surface+-- > , uint32_t* pRectCount+-- > , VkRect2D* pRects+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDevicePresentRectanglesKHR.html vkGetPhysicalDevicePresentRectanglesKHR registry at www.khronos.org>+foreign import ccall safe "vkGetPhysicalDevicePresentRectanglesKHR"+ vkGetPhysicalDevicePresentRectanglesKHRSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ VkSurfaceKHR -- ^ surface+ -> Ptr Word32 -- ^ pRectCount+ -> Ptr VkRect2D -- ^ pRects+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS', 'VK_TIMEOUT', 'VK_NOT_READY', 'VK_SUBOPTIMAL_KHR'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_DEVICE_LOST', 'VK_ERROR_OUT_OF_DATE_KHR', 'VK_ERROR_SURFACE_LOST_KHR'.+--+-- > VkResult vkAcquireNextImage2KHR+-- > ( VkDevice device+-- > , const VkAcquireNextImageInfoKHR* pAcquireInfo+-- > , uint32_t* pImageIndex+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkAcquireNextImage2KHR.html vkAcquireNextImage2KHR registry at www.khronos.org>+foreign import ccall unsafe "vkAcquireNextImage2KHR"+ vkAcquireNextImage2KHR ::+ VkDevice -- ^ device+ ->+ Ptr VkAcquireNextImageInfoKHR -- ^ pAcquireInfo+ -> Ptr Word32 -- ^ pImageIndex+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS', 'VK_TIMEOUT', 'VK_NOT_READY', 'VK_SUBOPTIMAL_KHR'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_DEVICE_LOST', 'VK_ERROR_OUT_OF_DATE_KHR', 'VK_ERROR_SURFACE_LOST_KHR'.+--+-- > VkResult vkAcquireNextImage2KHR+-- > ( VkDevice device+-- > , const VkAcquireNextImageInfoKHR* pAcquireInfo+-- > , uint32_t* pImageIndex+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkAcquireNextImage2KHR.html vkAcquireNextImage2KHR registry at www.khronos.org>+foreign import ccall safe "vkAcquireNextImage2KHR"+ vkAcquireNextImage2KHRSafe ::+ VkDevice -- ^ device+ ->+ Ptr VkAcquireNextImageInfoKHR -- ^ pAcquireInfo+ -> Ptr Word32 -- ^ pImageIndex+ -> IO VkResult++pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR =+ VkStructureType 1000060007++pattern VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR =+ VkStructureType 1000060008++pattern VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR =+ VkStructureType 1000060009++pattern VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR =+ VkStructureType 1000060010++pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR =+ VkStructureType 1000060011++pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR ::+ VkStructureType++pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR =+ VkStructureType 1000060012++-- | Allow images with VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT+--+-- bitpos = @0@+pattern VK_SWAPCHAIN_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR ::+ VkSwapchainCreateFlagBitsKHR++pattern VK_SWAPCHAIN_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR =+ VkSwapchainCreateFlagBitsKHR 1++-- | Swapchain is protected+--+-- bitpos = @1@+pattern VK_SWAPCHAIN_CREATE_PROTECTED_BIT_KHR ::+ VkSwapchainCreateFlagBitsKHR++pattern VK_SWAPCHAIN_CREATE_PROTECTED_BIT_KHR =+ VkSwapchainCreateFlagBitsKHR 2
@@ -1,3 +1,4 @@+{-# OPTIONS_GHC -fno-warn-missing-pattern-synonym-signatures#-} {-# OPTIONS_HADDOCK not-home#-} {-# LANGUAGE DataKinds #-} {-# LANGUAGE MagicHash #-}@@ -22,16 +23,7 @@ -- -- ** Required extensions: 'VK_KHR_get_physical_device_properties2', 'VK_KHR_storage_buffer_storage_class'.- module Graphics.Vulkan.Marshal,- module Graphics.Vulkan.Types.BaseTypes,- module Graphics.Vulkan.Types.Bitmasks,- module Graphics.Vulkan.Types.Struct.VkDeviceCreateInfo,- module Graphics.Vulkan.Types.Struct.VkDeviceQueueCreateInfo,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceFeatures,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceFeatures2KHR, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceVariablePointerFeaturesKHR,- module Graphics.Vulkan.Types.Enum.VkStructureType,- -- > #include "vk_platform.h" VK_KHR_VARIABLE_POINTERS_SPEC_VERSION, pattern VK_KHR_VARIABLE_POINTERS_SPEC_VERSION, VK_KHR_VARIABLE_POINTERS_EXTENSION_NAME,@@ -40,14 +32,9 @@ where import GHC.Ptr (Ptr (..))+import Graphics.Vulkan.Core_1_1+ (pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES) import Graphics.Vulkan.Marshal-import Graphics.Vulkan.Types.BaseTypes-import Graphics.Vulkan.Types.Bitmasks-import Graphics.Vulkan.Types.Enum.VkStructureType-import Graphics.Vulkan.Types.Struct.VkDeviceCreateInfo-import Graphics.Vulkan.Types.Struct.VkDeviceQueueCreateInfo-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceFeatures-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceFeatures2KHR import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceVariablePointerFeaturesKHR pattern VK_KHR_VARIABLE_POINTERS_SPEC_VERSION :: (Num a, Eq a) => a@@ -73,13 +60,10 @@ is_VK_KHR_VARIABLE_POINTERS_EXTENSION_NAME :: CString -> Bool is_VK_KHR_VARIABLE_POINTERS_EXTENSION_NAME- = eqCStrings _VK_KHR_VARIABLE_POINTERS_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_KHR_VARIABLE_POINTERS_EXTENSION_NAME type VK_KHR_VARIABLE_POINTERS_EXTENSION_NAME = "VK_KHR_variable_pointers" pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES_KHR- :: VkStructureType--pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES_KHR- = VkStructureType 1000120000+ = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES
@@ -17,12 +17,12 @@ -- -- type: @instance@ --+ -- platform: @wayland@+ -- -- Extension number: @7@ -- -- Required extensions: 'VK_KHR_surface'. --- -- Protected by CPP ifdef: @VK_USE_PLATFORM_WAYLAND_KHR@- -- -- ** Required extensions: 'VK_KHR_surface'. module Graphics.Vulkan.Types.BaseTypes,@@ -30,10 +30,9 @@ module Graphics.Vulkan.Types.Bitmasks, module Graphics.Vulkan.Types.Struct.VkWaylandSurfaceCreateInfoKHR, -- > #include "vk_platform.h"- --- -- > #include <wayland-client.h>- vkCreateWaylandSurfaceKHR,+ vkCreateWaylandSurfaceKHR, vkCreateWaylandSurfaceKHRSafe, vkGetPhysicalDeviceWaylandPresentationSupportKHR,+ vkGetPhysicalDeviceWaylandPresentationSupportKHRSafe, module Graphics.Vulkan.Marshal, module Graphics.Vulkan.Types.Enum.VkInternalAllocationType, module Graphics.Vulkan.Types.Enum.VkResult,@@ -73,7 +72,7 @@ -- > , VkSurfaceKHR* pSurface -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCreateWaylandSurfaceKHR.html vkCreateWaylandSurfaceKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateWaylandSurfaceKHR.html vkCreateWaylandSurfaceKHR registry at www.khronos.org> foreign import ccall unsafe "vkCreateWaylandSurfaceKHR" vkCreateWaylandSurfaceKHR :: VkInstance -- ^ instance@@ -84,13 +83,35 @@ -> Ptr VkSurfaceKHR -- ^ pSurface -> IO VkResult +-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreateWaylandSurfaceKHR+-- > ( VkInstance instance+-- > , const VkWaylandSurfaceCreateInfoKHR* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkSurfaceKHR* pSurface+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateWaylandSurfaceKHR.html vkCreateWaylandSurfaceKHR registry at www.khronos.org>+foreign import ccall safe "vkCreateWaylandSurfaceKHR"+ vkCreateWaylandSurfaceKHRSafe ::+ VkInstance -- ^ instance+ ->+ Ptr VkWaylandSurfaceCreateInfoKHR -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkSurfaceKHR -- ^ pSurface+ -> IO VkResult+ -- | > VkBool32 vkGetPhysicalDeviceWaylandPresentationSupportKHR -- > ( VkPhysicalDevice physicalDevice -- > , uint32_t queueFamilyIndex -- > , struct wl_display* display -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetPhysicalDeviceWaylandPresentationSupportKHR.html vkGetPhysicalDeviceWaylandPresentationSupportKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceWaylandPresentationSupportKHR.html vkGetPhysicalDeviceWaylandPresentationSupportKHR registry at www.khronos.org> foreign import ccall unsafe "vkGetPhysicalDeviceWaylandPresentationSupportKHR" vkGetPhysicalDeviceWaylandPresentationSupportKHR ::@@ -99,6 +120,21 @@ -> Ptr WlDisplay -- ^ display -> IO VkBool32 +-- | > VkBool32 vkGetPhysicalDeviceWaylandPresentationSupportKHR+-- > ( VkPhysicalDevice physicalDevice+-- > , uint32_t queueFamilyIndex+-- > , struct wl_display* display+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceWaylandPresentationSupportKHR.html vkGetPhysicalDeviceWaylandPresentationSupportKHR registry at www.khronos.org>+foreign import ccall safe+ "vkGetPhysicalDeviceWaylandPresentationSupportKHR"+ vkGetPhysicalDeviceWaylandPresentationSupportKHRSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ -> Word32 -- ^ queueFamilyIndex+ -> Ptr WlDisplay -- ^ display+ -> IO VkBool32+ pattern VK_KHR_WAYLAND_SURFACE_SPEC_VERSION :: (Num a, Eq a) => a pattern VK_KHR_WAYLAND_SURFACE_SPEC_VERSION = 6@@ -122,7 +158,7 @@ is_VK_KHR_WAYLAND_SURFACE_EXTENSION_NAME :: CString -> Bool is_VK_KHR_WAYLAND_SURFACE_EXTENSION_NAME- = eqCStrings _VK_KHR_WAYLAND_SURFACE_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_KHR_WAYLAND_SURFACE_EXTENSION_NAME type VK_KHR_WAYLAND_SURFACE_EXTENSION_NAME = "VK_KHR_wayland_surface"
@@ -16,12 +16,12 @@ -- -- type: @device@ --+ -- platform: @win32@+ -- -- Extension number: @76@ -- -- Required extensions: 'VK_KHR_external_memory_win32'. --- -- Protected by CPP ifdef: @VK_USE_PLATFORM_WIN32_KHR@- -- -- ** Required extensions: 'VK_KHR_external_memory_win32'. module Graphics.Vulkan.Types.BaseTypes,@@ -68,7 +68,7 @@ is_VK_KHR_WIN32_KEYED_MUTEX_EXTENSION_NAME :: CString -> Bool is_VK_KHR_WIN32_KEYED_MUTEX_EXTENSION_NAME- = eqCStrings _VK_KHR_WIN32_KEYED_MUTEX_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_KHR_WIN32_KEYED_MUTEX_EXTENSION_NAME type VK_KHR_WIN32_KEYED_MUTEX_EXTENSION_NAME = "VK_KHR_win32_keyed_mutex"
@@ -17,12 +17,12 @@ -- -- type: @instance@ --+ -- platform: @win32@+ -- -- Extension number: @10@ -- -- Required extensions: 'VK_KHR_surface'. --- -- Protected by CPP ifdef: @VK_USE_PLATFORM_WIN32_KHR@- -- -- ** Required extensions: 'VK_KHR_surface'. module Graphics.Vulkan.Types.BaseTypes,@@ -30,10 +30,9 @@ module Graphics.Vulkan.Types.Bitmasks, module Graphics.Vulkan.Types.Struct.VkWin32SurfaceCreateInfoKHR, -- > #include "vk_platform.h"- --- -- > #include <windows.h>- vkCreateWin32SurfaceKHR,+ vkCreateWin32SurfaceKHR, vkCreateWin32SurfaceKHRSafe, vkGetPhysicalDeviceWin32PresentationSupportKHR,+ vkGetPhysicalDeviceWin32PresentationSupportKHRSafe, module Graphics.Vulkan.Marshal, module Graphics.Vulkan.Types.Enum.VkInternalAllocationType, module Graphics.Vulkan.Types.Enum.VkResult,@@ -73,7 +72,7 @@ -- > , VkSurfaceKHR* pSurface -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCreateWin32SurfaceKHR.html vkCreateWin32SurfaceKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateWin32SurfaceKHR.html vkCreateWin32SurfaceKHR registry at www.khronos.org> foreign import ccall unsafe "vkCreateWin32SurfaceKHR" vkCreateWin32SurfaceKHR :: VkInstance -- ^ instance@@ -84,12 +83,34 @@ -> Ptr VkSurfaceKHR -- ^ pSurface -> IO VkResult +-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreateWin32SurfaceKHR+-- > ( VkInstance instance+-- > , const VkWin32SurfaceCreateInfoKHR* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkSurfaceKHR* pSurface+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateWin32SurfaceKHR.html vkCreateWin32SurfaceKHR registry at www.khronos.org>+foreign import ccall safe "vkCreateWin32SurfaceKHR"+ vkCreateWin32SurfaceKHRSafe ::+ VkInstance -- ^ instance+ ->+ Ptr VkWin32SurfaceCreateInfoKHR -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkSurfaceKHR -- ^ pSurface+ -> IO VkResult+ -- | > VkBool32 vkGetPhysicalDeviceWin32PresentationSupportKHR -- > ( VkPhysicalDevice physicalDevice -- > , uint32_t queueFamilyIndex -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetPhysicalDeviceWin32PresentationSupportKHR.html vkGetPhysicalDeviceWin32PresentationSupportKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceWin32PresentationSupportKHR.html vkGetPhysicalDeviceWin32PresentationSupportKHR registry at www.khronos.org> foreign import ccall unsafe "vkGetPhysicalDeviceWin32PresentationSupportKHR" vkGetPhysicalDeviceWin32PresentationSupportKHR ::@@ -97,6 +118,19 @@ -> Word32 -- ^ queueFamilyIndex -> IO VkBool32 +-- | > VkBool32 vkGetPhysicalDeviceWin32PresentationSupportKHR+-- > ( VkPhysicalDevice physicalDevice+-- > , uint32_t queueFamilyIndex+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceWin32PresentationSupportKHR.html vkGetPhysicalDeviceWin32PresentationSupportKHR registry at www.khronos.org>+foreign import ccall safe+ "vkGetPhysicalDeviceWin32PresentationSupportKHR"+ vkGetPhysicalDeviceWin32PresentationSupportKHRSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ -> Word32 -- ^ queueFamilyIndex+ -> IO VkBool32+ pattern VK_KHR_WIN32_SURFACE_SPEC_VERSION :: (Num a, Eq a) => a pattern VK_KHR_WIN32_SURFACE_SPEC_VERSION = 6@@ -120,7 +154,7 @@ is_VK_KHR_WIN32_SURFACE_EXTENSION_NAME :: CString -> Bool is_VK_KHR_WIN32_SURFACE_EXTENSION_NAME- = eqCStrings _VK_KHR_WIN32_SURFACE_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_KHR_WIN32_SURFACE_EXTENSION_NAME type VK_KHR_WIN32_SURFACE_EXTENSION_NAME = "VK_KHR_win32_surface"
@@ -17,12 +17,12 @@ -- -- type: @instance@ --+ -- platform: @xcb@+ -- -- Extension number: @6@ -- -- Required extensions: 'VK_KHR_surface'. --- -- Protected by CPP ifdef: @VK_USE_PLATFORM_XCB_KHR@- -- -- ** Required extensions: 'VK_KHR_surface'. module Graphics.Vulkan.Types.BaseTypes,@@ -30,10 +30,9 @@ module Graphics.Vulkan.Types.Bitmasks, module Graphics.Vulkan.Types.Struct.VkXcbSurfaceCreateInfoKHR, -- > #include "vk_platform.h"- --- -- > #include <xcb/xcb.h>- vkCreateXcbSurfaceKHR,+ vkCreateXcbSurfaceKHR, vkCreateXcbSurfaceKHRSafe, vkGetPhysicalDeviceXcbPresentationSupportKHR,+ vkGetPhysicalDeviceXcbPresentationSupportKHRSafe, module Graphics.Vulkan.Marshal, module Graphics.Vulkan.Types.Enum.VkInternalAllocationType, module Graphics.Vulkan.Types.Enum.VkResult,@@ -73,7 +72,7 @@ -- > , VkSurfaceKHR* pSurface -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCreateXcbSurfaceKHR.html vkCreateXcbSurfaceKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateXcbSurfaceKHR.html vkCreateXcbSurfaceKHR registry at www.khronos.org> foreign import ccall unsafe "vkCreateXcbSurfaceKHR" vkCreateXcbSurfaceKHR :: VkInstance -- ^ instance@@ -84,6 +83,28 @@ -> Ptr VkSurfaceKHR -- ^ pSurface -> IO VkResult +-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreateXcbSurfaceKHR+-- > ( VkInstance instance+-- > , const VkXcbSurfaceCreateInfoKHR* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkSurfaceKHR* pSurface+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateXcbSurfaceKHR.html vkCreateXcbSurfaceKHR registry at www.khronos.org>+foreign import ccall safe "vkCreateXcbSurfaceKHR"+ vkCreateXcbSurfaceKHRSafe ::+ VkInstance -- ^ instance+ ->+ Ptr VkXcbSurfaceCreateInfoKHR -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkSurfaceKHR -- ^ pSurface+ -> IO VkResult+ -- | > VkBool32 vkGetPhysicalDeviceXcbPresentationSupportKHR -- > ( VkPhysicalDevice physicalDevice -- > , uint32_t queueFamilyIndex@@ -91,7 +112,7 @@ -- > , xcb_visualid_t visual_id -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetPhysicalDeviceXcbPresentationSupportKHR.html vkGetPhysicalDeviceXcbPresentationSupportKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceXcbPresentationSupportKHR.html vkGetPhysicalDeviceXcbPresentationSupportKHR registry at www.khronos.org> foreign import ccall unsafe "vkGetPhysicalDeviceXcbPresentationSupportKHR" vkGetPhysicalDeviceXcbPresentationSupportKHR ::@@ -102,6 +123,24 @@ -> XcbVisualidT -- ^ visual_id -> IO VkBool32 +-- | > VkBool32 vkGetPhysicalDeviceXcbPresentationSupportKHR+-- > ( VkPhysicalDevice physicalDevice+-- > , uint32_t queueFamilyIndex+-- > , xcb_connection_t* connection+-- > , xcb_visualid_t visual_id+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceXcbPresentationSupportKHR.html vkGetPhysicalDeviceXcbPresentationSupportKHR registry at www.khronos.org>+foreign import ccall safe+ "vkGetPhysicalDeviceXcbPresentationSupportKHR"+ vkGetPhysicalDeviceXcbPresentationSupportKHRSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ Word32 -- ^ queueFamilyIndex+ -> Ptr XcbConnectionT -- ^ connection+ -> XcbVisualidT -- ^ visual_id+ -> IO VkBool32+ pattern VK_KHR_XCB_SURFACE_SPEC_VERSION :: (Num a, Eq a) => a pattern VK_KHR_XCB_SURFACE_SPEC_VERSION = 6@@ -124,7 +163,7 @@ is_VK_KHR_XCB_SURFACE_EXTENSION_NAME :: CString -> Bool is_VK_KHR_XCB_SURFACE_EXTENSION_NAME- = eqCStrings _VK_KHR_XCB_SURFACE_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_KHR_XCB_SURFACE_EXTENSION_NAME type VK_KHR_XCB_SURFACE_EXTENSION_NAME = "VK_KHR_xcb_surface"
@@ -17,12 +17,12 @@ -- -- type: @instance@ --+ -- platform: @xlib@+ -- -- Extension number: @5@ -- -- Required extensions: 'VK_KHR_surface'. --- -- Protected by CPP ifdef: @VK_USE_PLATFORM_XLIB_KHR@- -- -- ** Required extensions: 'VK_KHR_surface'. module Graphics.Vulkan.Types.BaseTypes,@@ -30,10 +30,9 @@ module Graphics.Vulkan.Types.Bitmasks, module Graphics.Vulkan.Types.Struct.VkXlibSurfaceCreateInfoKHR, -- > #include "vk_platform.h"- --- -- > #include <X11/Xlib.h>- vkCreateXlibSurfaceKHR,+ vkCreateXlibSurfaceKHR, vkCreateXlibSurfaceKHRSafe, vkGetPhysicalDeviceXlibPresentationSupportKHR,+ vkGetPhysicalDeviceXlibPresentationSupportKHRSafe, module Graphics.Vulkan.Marshal, module Graphics.Vulkan.Types.Enum.VkInternalAllocationType, module Graphics.Vulkan.Types.Enum.VkResult,@@ -73,7 +72,7 @@ -- > , VkSurfaceKHR* pSurface -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCreateXlibSurfaceKHR.html vkCreateXlibSurfaceKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateXlibSurfaceKHR.html vkCreateXlibSurfaceKHR registry at www.khronos.org> foreign import ccall unsafe "vkCreateXlibSurfaceKHR" vkCreateXlibSurfaceKHR :: VkInstance -- ^ instance@@ -84,6 +83,28 @@ -> Ptr VkSurfaceKHR -- ^ pSurface -> IO VkResult +-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreateXlibSurfaceKHR+-- > ( VkInstance instance+-- > , const VkXlibSurfaceCreateInfoKHR* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkSurfaceKHR* pSurface+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateXlibSurfaceKHR.html vkCreateXlibSurfaceKHR registry at www.khronos.org>+foreign import ccall safe "vkCreateXlibSurfaceKHR"+ vkCreateXlibSurfaceKHRSafe ::+ VkInstance -- ^ instance+ ->+ Ptr VkXlibSurfaceCreateInfoKHR -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkSurfaceKHR -- ^ pSurface+ -> IO VkResult+ -- | > VkBool32 vkGetPhysicalDeviceXlibPresentationSupportKHR -- > ( VkPhysicalDevice physicalDevice -- > , uint32_t queueFamilyIndex@@ -91,7 +112,7 @@ -- > , VisualID visualID -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetPhysicalDeviceXlibPresentationSupportKHR.html vkGetPhysicalDeviceXlibPresentationSupportKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceXlibPresentationSupportKHR.html vkGetPhysicalDeviceXlibPresentationSupportKHR registry at www.khronos.org> foreign import ccall unsafe "vkGetPhysicalDeviceXlibPresentationSupportKHR" vkGetPhysicalDeviceXlibPresentationSupportKHR ::@@ -102,6 +123,24 @@ -> VisualID -- ^ visualID -> IO VkBool32 +-- | > VkBool32 vkGetPhysicalDeviceXlibPresentationSupportKHR+-- > ( VkPhysicalDevice physicalDevice+-- > , uint32_t queueFamilyIndex+-- > , Display* dpy+-- > , VisualID visualID+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceXlibPresentationSupportKHR.html vkGetPhysicalDeviceXlibPresentationSupportKHR registry at www.khronos.org>+foreign import ccall safe+ "vkGetPhysicalDeviceXlibPresentationSupportKHR"+ vkGetPhysicalDeviceXlibPresentationSupportKHRSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ Word32 -- ^ queueFamilyIndex+ -> Ptr Display -- ^ dpy+ -> VisualID -- ^ visualID+ -> IO VkBool32+ pattern VK_KHR_XLIB_SURFACE_SPEC_VERSION :: (Num a, Eq a) => a pattern VK_KHR_XLIB_SURFACE_SPEC_VERSION = 6@@ -125,7 +164,7 @@ is_VK_KHR_XLIB_SURFACE_EXTENSION_NAME :: CString -> Bool is_VK_KHR_XLIB_SURFACE_EXTENSION_NAME- = eqCStrings _VK_KHR_XLIB_SURFACE_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_KHR_XLIB_SURFACE_EXTENSION_NAME type VK_KHR_XLIB_SURFACE_EXTENSION_NAME = "VK_KHR_xlib_surface"
@@ -1,481 +0,0 @@-{-# OPTIONS_GHC -fno-warn-unused-imports#-}-{-# OPTIONS_HADDOCK not-home#-}-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE ForeignFunctionInterface #-}-{-# LANGUAGE MagicHash #-}-{-# LANGUAGE PatternSynonyms #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE ViewPatterns #-}-module Graphics.Vulkan.Ext.VK_KHX_device_group- (-- * Vulkan extension: @VK_KHX_device_group@- -- |- --- -- supported: @vulkan@- --- -- contact: @Jeff Bolz @jbolz@- --- -- author: @KHX@- --- -- type: @device@- --- -- Extension number: @61@- --- -- Required extensions: 'VK_KHX_device_group_creation'.- ---- -- ** Required extensions: 'VK_KHX_device_group_creation'.- module Graphics.Vulkan.Types.Struct.VkBindSparseInfo,- module Graphics.Vulkan.Types.BaseTypes,- module Graphics.Vulkan.Types.Struct.VkClearColorValue,- module Graphics.Vulkan.Types.Struct.VkClearDepthStencilValue,- module Graphics.Vulkan.Types.Struct.VkClearValue,- module Graphics.Vulkan.Types.Struct.VkCommandBufferBeginInfo,- module Graphics.Vulkan.Types.Struct.VkCommandBufferInheritanceInfo,- module Graphics.Vulkan.Types.Enum.VkCommandBufferUsageFlags,- module Graphics.Vulkan.Types.Struct.VkDeviceGroupBindSparseInfoKHX,- module Graphics.Vulkan.Types.Struct.VkDeviceGroupCommandBufferBeginInfoKHX,- module Graphics.Vulkan.Types.Struct.VkDeviceGroupRenderPassBeginInfoKHX,- module Graphics.Vulkan.Types.Struct.VkDeviceGroupSubmitInfoKHX,- module Graphics.Vulkan.Types.Struct.VkExtent2D,- module Graphics.Vulkan.Types.Struct.VkExtent3D,- module Graphics.Vulkan.Types.Enum.VkImageAspectFlags,- module Graphics.Vulkan.Types.Struct.VkImageSubresource,- module Graphics.Vulkan.Types.Enum.VkMemoryAllocateFlagsKHX,- module Graphics.Vulkan.Types.Struct.VkMemoryAllocateFlagsInfoKHX,- module Graphics.Vulkan.Types.Struct.VkMemoryAllocateInfo,- module Graphics.Vulkan.Types.Struct.VkOffset2D,- module Graphics.Vulkan.Types.Struct.VkOffset3D,- module Graphics.Vulkan.Types.Enum.VkPeerMemoryFeatureFlagsKHX,- module Graphics.Vulkan.Types.Enum.VkPipelineStageFlags,- module Graphics.Vulkan.Types.Enum.VkQueryControlFlags,- module Graphics.Vulkan.Types.Enum.VkQueryPipelineStatisticFlags,- module Graphics.Vulkan.Types.Struct.VkRect2D,- module Graphics.Vulkan.Types.Struct.VkRenderPassBeginInfo,- module Graphics.Vulkan.Types.Struct.VkSparseBufferMemoryBindInfo,- module Graphics.Vulkan.Types.Struct.VkSparseImageMemoryBind,- module Graphics.Vulkan.Types.Struct.VkSparseImageMemoryBindInfo,- module Graphics.Vulkan.Types.Struct.VkSparseImageOpaqueMemoryBindInfo,- module Graphics.Vulkan.Types.Struct.VkSparseMemoryBind,- module Graphics.Vulkan.Types.Enum.VkSparseMemoryBindFlags,- module Graphics.Vulkan.Types.Enum.VkStructureType,- module Graphics.Vulkan.Types.Struct.VkSubmitInfo,- -- > #include "vk_platform.h"- vkGetDeviceGroupPeerMemoryFeaturesKHX, vkCmdSetDeviceMaskKHX,- vkCmdDispatchBaseKHX, module Graphics.Vulkan.Marshal,- module Graphics.Vulkan.Types.Handles,- VK_KHX_DEVICE_GROUP_SPEC_VERSION,- pattern VK_KHX_DEVICE_GROUP_SPEC_VERSION,- VK_KHX_DEVICE_GROUP_EXTENSION_NAME,- pattern VK_KHX_DEVICE_GROUP_EXTENSION_NAME,- pattern VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO_KHX,- pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO_KHX,- pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO_KHX,- pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO_KHX,- pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO_KHX,- pattern VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHX,- pattern VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHX,- pattern VK_PIPELINE_CREATE_DISPATCH_BASE_KHX,- pattern VK_DEPENDENCY_DEVICE_GROUP_BIT_KHX,- -- ** Required extensions: 'VK_KHR_bind_memory2', 'VK_KHX_device_group_creation'.- module Graphics.Vulkan.Types.Struct.VkBindBufferMemoryDeviceGroupInfoKHX,- module Graphics.Vulkan.Types.Struct.VkBindBufferMemoryInfoKHR,- module Graphics.Vulkan.Types.Struct.VkBindImageMemoryDeviceGroupInfoKHX,- module Graphics.Vulkan.Types.Struct.VkBindImageMemoryInfoKHR,- -- > #include "vk_platform.h"- pattern VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO_KHX,- pattern VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO_KHX,- pattern VK_IMAGE_CREATE_BIND_SFR_BIT_KHX,- -- ** Required extensions: 'VK_KHR_surface', 'VK_KHX_device_group_creation'.- module Graphics.Vulkan.Types.Struct.VkDeviceGroupPresentCapabilitiesKHX,- module Graphics.Vulkan.Types.Enum.VkDeviceGroupPresentModeFlagsKHX,- -- > #include "vk_platform.h"- vkGetDeviceGroupPresentCapabilitiesKHX,- vkGetDeviceGroupSurfacePresentModesKHX,- vkGetPhysicalDevicePresentRectanglesKHX,- module Graphics.Vulkan.Types.Enum.VkResult,- pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHX,- -- ** Required extensions: 'VK_KHR_swapchain', 'VK_KHX_device_group_creation'.- module Graphics.Vulkan.Types.Struct.VkAcquireNextImageInfoKHX,- module Graphics.Vulkan.Types.Struct.VkBindImageMemorySwapchainInfoKHX,- module Graphics.Vulkan.Types.Enum.VkColorSpaceKHR,- module Graphics.Vulkan.Types.Enum.VkCompositeAlphaFlagsKHR,- module Graphics.Vulkan.Types.Struct.VkDeviceGroupPresentInfoKHX,- module Graphics.Vulkan.Types.Struct.VkDeviceGroupSwapchainCreateInfoKHX,- module Graphics.Vulkan.Types.Enum.VkFormat,- module Graphics.Vulkan.Types.Enum.VkImageCreateFlags,- module Graphics.Vulkan.Types.Struct.VkImageCreateInfo,- module Graphics.Vulkan.Types.Enum.VkImageLayout,- module Graphics.Vulkan.Types.Struct.VkImageSwapchainCreateInfoKHX,- module Graphics.Vulkan.Types.Enum.VkImageTiling,- module Graphics.Vulkan.Types.Enum.VkImageType,- module Graphics.Vulkan.Types.Enum.VkImageUsageFlags,- module Graphics.Vulkan.Types.Struct.VkPresentInfoKHR,- module Graphics.Vulkan.Types.Enum.VkPresentModeKHR,- module Graphics.Vulkan.Types.Enum.VkSampleCountFlags,- module Graphics.Vulkan.Types.Enum.VkSharingMode,- module Graphics.Vulkan.Types.Enum.VkSurfaceTransformFlagsKHR,- module Graphics.Vulkan.Types.Enum.VkSwapchainCreateFlagsKHR,- module Graphics.Vulkan.Types.Struct.VkSwapchainCreateInfoKHR,- -- > #include "vk_platform.h"- vkAcquireNextImage2KHX,- pattern VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHX,- pattern VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHX,- pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHX,- pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHX,- pattern VK_SWAPCHAIN_CREATE_BIND_SFR_BIT_KHX)- where-import GHC.Ptr- (Ptr (..))-import Graphics.Vulkan.Marshal-import Graphics.Vulkan.Types.BaseTypes-import Graphics.Vulkan.Types.Enum.VkColorSpaceKHR-import Graphics.Vulkan.Types.Enum.VkCommandBufferUsageFlags-import Graphics.Vulkan.Types.Enum.VkCompositeAlphaFlagsKHR-import Graphics.Vulkan.Types.Enum.VkDependencyFlags- (VkDependencyBitmask (..),- VkDependencyFlagBits)-import Graphics.Vulkan.Types.Enum.VkDeviceGroupPresentModeFlagsKHX-import Graphics.Vulkan.Types.Enum.VkFormat-import Graphics.Vulkan.Types.Enum.VkImageAspectFlags-import Graphics.Vulkan.Types.Enum.VkImageCreateFlags-import Graphics.Vulkan.Types.Enum.VkImageLayout-import Graphics.Vulkan.Types.Enum.VkImageTiling-import Graphics.Vulkan.Types.Enum.VkImageType-import Graphics.Vulkan.Types.Enum.VkImageUsageFlags-import Graphics.Vulkan.Types.Enum.VkMemoryAllocateFlagsKHX-import Graphics.Vulkan.Types.Enum.VkPeerMemoryFeatureFlagsKHX-import Graphics.Vulkan.Types.Enum.VkPipelineCreateFlags- (VkPipelineCreateBitmask (..),- VkPipelineCreateFlagBits)-import Graphics.Vulkan.Types.Enum.VkPipelineStageFlags-import Graphics.Vulkan.Types.Enum.VkPresentModeKHR-import Graphics.Vulkan.Types.Enum.VkQueryControlFlags-import Graphics.Vulkan.Types.Enum.VkQueryPipelineStatisticFlags-import Graphics.Vulkan.Types.Enum.VkResult-import Graphics.Vulkan.Types.Enum.VkSampleCountFlags-import Graphics.Vulkan.Types.Enum.VkSharingMode-import Graphics.Vulkan.Types.Enum.VkSparseMemoryBindFlags-import Graphics.Vulkan.Types.Enum.VkStructureType-import Graphics.Vulkan.Types.Enum.VkSurfaceTransformFlagsKHR-import Graphics.Vulkan.Types.Enum.VkSwapchainCreateFlagsKHR-import Graphics.Vulkan.Types.Handles-import Graphics.Vulkan.Types.Struct.VkAcquireNextImageInfoKHX-import Graphics.Vulkan.Types.Struct.VkBindBufferMemoryDeviceGroupInfoKHX-import Graphics.Vulkan.Types.Struct.VkBindBufferMemoryInfoKHR-import Graphics.Vulkan.Types.Struct.VkBindImageMemoryDeviceGroupInfoKHX-import Graphics.Vulkan.Types.Struct.VkBindImageMemoryInfoKHR-import Graphics.Vulkan.Types.Struct.VkBindImageMemorySwapchainInfoKHX-import Graphics.Vulkan.Types.Struct.VkBindSparseInfo-import Graphics.Vulkan.Types.Struct.VkClearColorValue-import Graphics.Vulkan.Types.Struct.VkClearDepthStencilValue-import Graphics.Vulkan.Types.Struct.VkClearValue-import Graphics.Vulkan.Types.Struct.VkCommandBufferBeginInfo-import Graphics.Vulkan.Types.Struct.VkCommandBufferInheritanceInfo-import Graphics.Vulkan.Types.Struct.VkDeviceGroupBindSparseInfoKHX-import Graphics.Vulkan.Types.Struct.VkDeviceGroupCommandBufferBeginInfoKHX-import Graphics.Vulkan.Types.Struct.VkDeviceGroupPresentCapabilitiesKHX-import Graphics.Vulkan.Types.Struct.VkDeviceGroupPresentInfoKHX-import Graphics.Vulkan.Types.Struct.VkDeviceGroupRenderPassBeginInfoKHX-import Graphics.Vulkan.Types.Struct.VkDeviceGroupSubmitInfoKHX-import Graphics.Vulkan.Types.Struct.VkDeviceGroupSwapchainCreateInfoKHX-import Graphics.Vulkan.Types.Struct.VkExtent2D-import Graphics.Vulkan.Types.Struct.VkExtent3D-import Graphics.Vulkan.Types.Struct.VkImageCreateInfo-import Graphics.Vulkan.Types.Struct.VkImageSubresource-import Graphics.Vulkan.Types.Struct.VkImageSwapchainCreateInfoKHX-import Graphics.Vulkan.Types.Struct.VkMemoryAllocateFlagsInfoKHX-import Graphics.Vulkan.Types.Struct.VkMemoryAllocateInfo-import Graphics.Vulkan.Types.Struct.VkOffset2D-import Graphics.Vulkan.Types.Struct.VkOffset3D-import Graphics.Vulkan.Types.Struct.VkPresentInfoKHR-import Graphics.Vulkan.Types.Struct.VkRect2D-import Graphics.Vulkan.Types.Struct.VkRenderPassBeginInfo-import Graphics.Vulkan.Types.Struct.VkSparseBufferMemoryBindInfo-import Graphics.Vulkan.Types.Struct.VkSparseImageMemoryBind-import Graphics.Vulkan.Types.Struct.VkSparseImageMemoryBindInfo-import Graphics.Vulkan.Types.Struct.VkSparseImageOpaqueMemoryBindInfo-import Graphics.Vulkan.Types.Struct.VkSparseMemoryBind-import Graphics.Vulkan.Types.Struct.VkSubmitInfo-import Graphics.Vulkan.Types.Struct.VkSwapchainCreateInfoKHR---- | > () vkGetDeviceGroupPeerMemoryFeaturesKHX--- > ( VkDevice device--- > , uint32_t heapIndex--- > , uint32_t localDeviceIndex--- > , uint32_t remoteDeviceIndex--- > , VkPeerMemoryFeatureFlagsKHX* pPeerMemoryFeatures--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetDeviceGroupPeerMemoryFeaturesKHX.html vkGetDeviceGroupPeerMemoryFeaturesKHX registry at www.khronos.org>-foreign import ccall unsafe "vkGetDeviceGroupPeerMemoryFeaturesKHX"- vkGetDeviceGroupPeerMemoryFeaturesKHX ::- VkDevice -- ^ device- ->- Word32 -- ^ heapIndex- ->- Word32 -- ^ localDeviceIndex- -> Word32 -- ^ remoteDeviceIndex- -> Ptr VkPeerMemoryFeatureFlagsKHX -- ^ pPeerMemoryFeatures- -> IO ()---- | queues: 'graphics', 'compute', 'transfer'.------ renderpass: @both@------ > () vkCmdSetDeviceMaskKHX--- > ( VkCommandBuffer commandBuffer--- > , uint32_t deviceMask--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdSetDeviceMaskKHX.html vkCmdSetDeviceMaskKHX registry at www.khronos.org>-foreign import ccall unsafe "vkCmdSetDeviceMaskKHX"- vkCmdSetDeviceMaskKHX :: VkCommandBuffer -- ^ commandBuffer- -> Word32 -- ^ deviceMask- -> IO ()---- | queues: 'compute'.------ renderpass: @outside@------ > () vkCmdDispatchBaseKHX--- > ( VkCommandBuffer commandBuffer--- > , uint32_t baseGroupX--- > , uint32_t baseGroupY--- > , uint32_t baseGroupZ--- > , uint32_t groupCountX--- > , uint32_t groupCountY--- > , uint32_t groupCountZ--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdDispatchBaseKHX.html vkCmdDispatchBaseKHX registry at www.khronos.org>-foreign import ccall unsafe "vkCmdDispatchBaseKHX"- vkCmdDispatchBaseKHX ::- VkCommandBuffer -- ^ commandBuffer- ->- Word32 -- ^ baseGroupX- -> Word32 -- ^ baseGroupY- -> Word32 -- ^ baseGroupZ- -> Word32 -- ^ groupCountX- -> Word32 -- ^ groupCountY- -> Word32 -- ^ groupCountZ- -> IO ()--pattern VK_KHX_DEVICE_GROUP_SPEC_VERSION :: (Num a, Eq a) => a--pattern VK_KHX_DEVICE_GROUP_SPEC_VERSION = 2--type VK_KHX_DEVICE_GROUP_SPEC_VERSION = 2--pattern VK_KHX_DEVICE_GROUP_EXTENSION_NAME :: CString--pattern VK_KHX_DEVICE_GROUP_EXTENSION_NAME <-- (is_VK_KHX_DEVICE_GROUP_EXTENSION_NAME -> True)- where VK_KHX_DEVICE_GROUP_EXTENSION_NAME- = _VK_KHX_DEVICE_GROUP_EXTENSION_NAME--{-# INLINE _VK_KHX_DEVICE_GROUP_EXTENSION_NAME #-}--_VK_KHX_DEVICE_GROUP_EXTENSION_NAME :: CString-_VK_KHX_DEVICE_GROUP_EXTENSION_NAME- = Ptr "VK_KHX_device_group\NUL"#--{-# INLINE is_VK_KHX_DEVICE_GROUP_EXTENSION_NAME #-}--is_VK_KHX_DEVICE_GROUP_EXTENSION_NAME :: CString -> Bool-is_VK_KHX_DEVICE_GROUP_EXTENSION_NAME- = eqCStrings _VK_KHX_DEVICE_GROUP_EXTENSION_NAME--type VK_KHX_DEVICE_GROUP_EXTENSION_NAME = "VK_KHX_device_group"--pattern VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO_KHX ::- VkStructureType--pattern VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO_KHX =- VkStructureType 1000060000--pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO_KHX- :: VkStructureType--pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO_KHX =- VkStructureType 1000060003--pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO_KHX- :: VkStructureType--pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO_KHX- = VkStructureType 1000060004--pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO_KHX ::- VkStructureType--pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO_KHX =- VkStructureType 1000060005--pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO_KHX ::- VkStructureType--pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO_KHX =- VkStructureType 1000060006--pattern VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHX ::- VkStructureType--pattern VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHX =- VkStructureType 1000060010---- | bitpos = @3@-pattern VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHX ::- VkPipelineCreateFlagBits--pattern VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHX =- VkPipelineCreateFlagBits 8---- | bitpos = @4@-pattern VK_PIPELINE_CREATE_DISPATCH_BASE_KHX ::- VkPipelineCreateFlagBits--pattern VK_PIPELINE_CREATE_DISPATCH_BASE_KHX =- VkPipelineCreateFlagBits 16---- | Dependency is across devices------ bitpos = @2@-pattern VK_DEPENDENCY_DEVICE_GROUP_BIT_KHX :: VkDependencyFlagBits--pattern VK_DEPENDENCY_DEVICE_GROUP_BIT_KHX = VkDependencyFlagBits 4--pattern VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO_KHX- :: VkStructureType--pattern VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO_KHX- = VkStructureType 1000060013--pattern VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO_KHX- :: VkStructureType--pattern VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO_KHX =- VkStructureType 1000060014---- | Allows using VkBindImageMemoryDeviceGroupInfoKHX::pSFRRects when binding memory to the image------ bitpos = @6@-pattern VK_IMAGE_CREATE_BIND_SFR_BIT_KHX :: VkImageCreateFlagBits--pattern VK_IMAGE_CREATE_BIND_SFR_BIT_KHX = VkImageCreateFlagBits 64---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.------ > VkResult vkGetDeviceGroupPresentCapabilitiesKHX--- > ( VkDevice device--- > , VkDeviceGroupPresentCapabilitiesKHX* pDeviceGroupPresentCapabilities--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetDeviceGroupPresentCapabilitiesKHX.html vkGetDeviceGroupPresentCapabilitiesKHX registry at www.khronos.org>-foreign import ccall unsafe- "vkGetDeviceGroupPresentCapabilitiesKHX"- vkGetDeviceGroupPresentCapabilitiesKHX ::- VkDevice -- ^ device- -> Ptr VkDeviceGroupPresentCapabilitiesKHX -- ^ pDeviceGroupPresentCapabilities- -> IO VkResult---- | Success codes: 'VK_SUCCESS'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_SURFACE_LOST_KHR'.------ > VkResult vkGetDeviceGroupSurfacePresentModesKHX--- > ( VkDevice device--- > , VkSurfaceKHR surface--- > , VkDeviceGroupPresentModeFlagsKHX* pModes--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetDeviceGroupSurfacePresentModesKHX.html vkGetDeviceGroupSurfacePresentModesKHX registry at www.khronos.org>-foreign import ccall unsafe- "vkGetDeviceGroupSurfacePresentModesKHX"- vkGetDeviceGroupSurfacePresentModesKHX ::- VkDevice -- ^ device- ->- VkSurfaceKHR -- ^ surface- -> Ptr VkDeviceGroupPresentModeFlagsKHX -- ^ pModes- -> IO VkResult---- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.------ > VkResult vkGetPhysicalDevicePresentRectanglesKHX--- > ( VkPhysicalDevice physicalDevice--- > , VkSurfaceKHR surface--- > , uint32_t* pRectCount--- > , VkRect2D* pRects--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetPhysicalDevicePresentRectanglesKHX.html vkGetPhysicalDevicePresentRectanglesKHX registry at www.khronos.org>-foreign import ccall unsafe- "vkGetPhysicalDevicePresentRectanglesKHX"- vkGetPhysicalDevicePresentRectanglesKHX ::- VkPhysicalDevice -- ^ physicalDevice- ->- VkSurfaceKHR -- ^ surface- -> Ptr Word32 -- ^ pRectCount- -> Ptr VkRect2D -- ^ pRects- -> IO VkResult--pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHX ::- VkStructureType--pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHX =- VkStructureType 1000060007---- | Success codes: 'VK_SUCCESS', 'VK_TIMEOUT', 'VK_NOT_READY', 'VK_SUBOPTIMAL_KHR'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_DEVICE_LOST', 'VK_ERROR_OUT_OF_DATE_KHR', 'VK_ERROR_SURFACE_LOST_KHR'.------ > VkResult vkAcquireNextImage2KHX--- > ( VkDevice device--- > , const VkAcquireNextImageInfoKHX* pAcquireInfo--- > , uint32_t* pImageIndex--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkAcquireNextImage2KHX.html vkAcquireNextImage2KHX registry at www.khronos.org>-foreign import ccall unsafe "vkAcquireNextImage2KHX"- vkAcquireNextImage2KHX ::- VkDevice -- ^ device- ->- Ptr VkAcquireNextImageInfoKHX -- ^ pAcquireInfo- -> Ptr Word32 -- ^ pImageIndex- -> IO VkResult--pattern VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHX ::- VkStructureType--pattern VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHX =- VkStructureType 1000060008--pattern VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHX ::- VkStructureType--pattern VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHX =- VkStructureType 1000060009--pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHX ::- VkStructureType--pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHX =- VkStructureType 1000060011--pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHX ::- VkStructureType--pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHX =- VkStructureType 1000060012---- | Allow images with VK_IMAGE_CREATE_BIND_SFR_BIT_KHX------ bitpos = @0@-pattern VK_SWAPCHAIN_CREATE_BIND_SFR_BIT_KHX ::- VkSwapchainCreateFlagBitsKHR--pattern VK_SWAPCHAIN_CREATE_BIND_SFR_BIT_KHX =- VkSwapchainCreateFlagBitsKHR 1
@@ -1,127 +0,0 @@-{-# OPTIONS_HADDOCK not-home#-}-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE ForeignFunctionInterface #-}-{-# LANGUAGE MagicHash #-}-{-# LANGUAGE PatternSynonyms #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE ViewPatterns #-}-module Graphics.Vulkan.Ext.VK_KHX_device_group_creation- (-- * Vulkan extension: @VK_KHX_device_group_creation@- -- |- --- -- supported: @vulkan@- --- -- contact: @Jeff Bolz @jbolz@- --- -- author: @KHX@- --- -- type: @instance@- --- -- Extension number: @71@- module Graphics.Vulkan.Marshal,- module Graphics.Vulkan.Types.BaseTypes,- module Graphics.Vulkan.Types.Bitmasks,- module Graphics.Vulkan.Types.Struct.VkDeviceCreateInfo,- module Graphics.Vulkan.Types.Struct.VkDeviceGroupDeviceCreateInfoKHX,- module Graphics.Vulkan.Types.Struct.VkDeviceQueueCreateInfo,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceFeatures,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceGroupPropertiesKHX,- module Graphics.Vulkan.Types.Enum.VkStructureType,- -- > #include "vk_platform.h"- vkEnumeratePhysicalDeviceGroupsKHX,- module Graphics.Vulkan.Types.Enum.VkResult,- module Graphics.Vulkan.Types.Handles,- VK_KHX_DEVICE_GROUP_CREATION_SPEC_VERSION,- pattern VK_KHX_DEVICE_GROUP_CREATION_SPEC_VERSION,- VK_KHX_DEVICE_GROUP_CREATION_EXTENSION_NAME,- pattern VK_KHX_DEVICE_GROUP_CREATION_EXTENSION_NAME,- pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES_KHX,- pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO_KHX,- pattern VK_MAX_DEVICE_GROUP_SIZE_KHX, VK_MAX_DEVICE_GROUP_SIZE_KHX,- pattern VK_MEMORY_HEAP_MULTI_INSTANCE_BIT_KHX)- where-import GHC.Ptr (Ptr (..))-import Graphics.Vulkan.Constants (VK_MAX_DEVICE_GROUP_SIZE_KHX,- pattern VK_MAX_DEVICE_GROUP_SIZE_KHX)-import Graphics.Vulkan.Marshal-import Graphics.Vulkan.Types.BaseTypes-import Graphics.Vulkan.Types.Bitmasks-import Graphics.Vulkan.Types.Enum.VkMemoryHeapFlags (VkMemoryHeapBitmask (..),- VkMemoryHeapFlagBits)-import Graphics.Vulkan.Types.Enum.VkResult-import Graphics.Vulkan.Types.Enum.VkStructureType-import Graphics.Vulkan.Types.Handles-import Graphics.Vulkan.Types.Struct.VkDeviceCreateInfo-import Graphics.Vulkan.Types.Struct.VkDeviceGroupDeviceCreateInfoKHX-import Graphics.Vulkan.Types.Struct.VkDeviceQueueCreateInfo-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceFeatures-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceGroupPropertiesKHX---- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'.------ Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_INITIALIZATION_FAILED'.------ > VkResult vkEnumeratePhysicalDeviceGroupsKHX--- > ( VkInstance instance--- > , uint32_t* pPhysicalDeviceGroupCount--- > , VkPhysicalDeviceGroupPropertiesKHX* pPhysicalDeviceGroupProperties--- > )------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkEnumeratePhysicalDeviceGroupsKHX.html vkEnumeratePhysicalDeviceGroupsKHX registry at www.khronos.org>-foreign import ccall unsafe "vkEnumeratePhysicalDeviceGroupsKHX"- vkEnumeratePhysicalDeviceGroupsKHX ::- VkInstance -- ^ instance- ->- Ptr Word32 -- ^ pPhysicalDeviceGroupCount- -> Ptr VkPhysicalDeviceGroupPropertiesKHX -- ^ pPhysicalDeviceGroupProperties- -> IO VkResult--pattern VK_KHX_DEVICE_GROUP_CREATION_SPEC_VERSION ::- (Num a, Eq a) => a--pattern VK_KHX_DEVICE_GROUP_CREATION_SPEC_VERSION = 1--type VK_KHX_DEVICE_GROUP_CREATION_SPEC_VERSION = 1--pattern VK_KHX_DEVICE_GROUP_CREATION_EXTENSION_NAME :: CString--pattern VK_KHX_DEVICE_GROUP_CREATION_EXTENSION_NAME <-- (is_VK_KHX_DEVICE_GROUP_CREATION_EXTENSION_NAME -> True)- where VK_KHX_DEVICE_GROUP_CREATION_EXTENSION_NAME- = _VK_KHX_DEVICE_GROUP_CREATION_EXTENSION_NAME--{-# INLINE _VK_KHX_DEVICE_GROUP_CREATION_EXTENSION_NAME #-}--_VK_KHX_DEVICE_GROUP_CREATION_EXTENSION_NAME :: CString-_VK_KHX_DEVICE_GROUP_CREATION_EXTENSION_NAME- = Ptr "VK_KHX_device_group_creation\NUL"#--{-# INLINE is_VK_KHX_DEVICE_GROUP_CREATION_EXTENSION_NAME #-}--is_VK_KHX_DEVICE_GROUP_CREATION_EXTENSION_NAME :: CString -> Bool-is_VK_KHX_DEVICE_GROUP_CREATION_EXTENSION_NAME- = eqCStrings _VK_KHX_DEVICE_GROUP_CREATION_EXTENSION_NAME--type VK_KHX_DEVICE_GROUP_CREATION_EXTENSION_NAME =- "VK_KHX_device_group_creation"--pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES_KHX ::- VkStructureType--pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES_KHX =- VkStructureType 1000070000--pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO_KHX ::- VkStructureType--pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO_KHX =- VkStructureType 1000070001---- | If set, heap allocations allocate multiple instances by default------ bitpos = @1@-pattern VK_MEMORY_HEAP_MULTI_INSTANCE_BIT_KHX ::- VkMemoryHeapFlagBits--pattern VK_MEMORY_HEAP_MULTI_INSTANCE_BIT_KHX =- VkMemoryHeapFlagBits 2
@@ -1,149 +0,0 @@-{-# OPTIONS_HADDOCK not-home#-}-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE MagicHash #-}-{-# LANGUAGE PatternSynonyms #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE ViewPatterns #-}-module Graphics.Vulkan.Ext.VK_KHX_multiview- (-- * Vulkan extension: @VK_KHX_multiview@- -- |- --- -- supported: @vulkan@- --- -- contact: @Jeff Bolz @jbolz@- --- -- author: @NV@- --- -- type: @device@- --- -- Extension number: @54@- --- -- Required extensions: 'VK_KHR_get_physical_device_properties2'.- ---- -- ** Required extensions: 'VK_KHR_get_physical_device_properties2'.- module Graphics.Vulkan.Marshal,- module Graphics.Vulkan.Types.Enum.VkAccessFlags,- module Graphics.Vulkan.Types.Struct.VkAttachmentDescription,- module Graphics.Vulkan.Types.Enum.VkAttachmentDescriptionFlags,- module Graphics.Vulkan.Types.Enum.VkAttachmentLoadOp,- module Graphics.Vulkan.Types.Struct.VkAttachmentReference,- module Graphics.Vulkan.Types.Enum.VkAttachmentStoreOp,- module Graphics.Vulkan.Types.BaseTypes,- module Graphics.Vulkan.Types.Enum.VkDependencyFlags,- module Graphics.Vulkan.Types.Bitmasks,- module Graphics.Vulkan.Types.Struct.VkDeviceCreateInfo,- module Graphics.Vulkan.Types.Struct.VkDeviceQueueCreateInfo,- module Graphics.Vulkan.Types.Enum.VkFormat,- module Graphics.Vulkan.Types.Enum.VkImageLayout,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceFeatures,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceFeatures2KHR,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceLimits,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceMultiviewFeaturesKHX,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceMultiviewPropertiesKHX,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2KHR,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseProperties,- module Graphics.Vulkan.Types.Enum.VkPhysicalDeviceType,- module Graphics.Vulkan.Types.Enum.VkPipelineBindPoint,- module Graphics.Vulkan.Types.Enum.VkPipelineStageFlags,- module Graphics.Vulkan.Types.Struct.VkRenderPassCreateInfo,- module Graphics.Vulkan.Types.Struct.VkRenderPassMultiviewCreateInfoKHX,- module Graphics.Vulkan.Types.Enum.VkSampleCountFlags,- module Graphics.Vulkan.Types.Enum.VkStructureType,- module Graphics.Vulkan.Types.Struct.VkSubpassDependency,- module Graphics.Vulkan.Types.Struct.VkSubpassDescription,- module Graphics.Vulkan.Types.Enum.VkSubpassDescriptionFlags,- -- > #include "vk_platform.h"- VK_KHX_MULTIVIEW_SPEC_VERSION,- pattern VK_KHX_MULTIVIEW_SPEC_VERSION,- VK_KHX_MULTIVIEW_EXTENSION_NAME,- pattern VK_KHX_MULTIVIEW_EXTENSION_NAME,- pattern VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO_KHX,- pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES_KHX,- pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES_KHX,- pattern VK_DEPENDENCY_VIEW_LOCAL_BIT_KHX)- where-import GHC.Ptr- (Ptr (..))-import Graphics.Vulkan.Marshal-import Graphics.Vulkan.Types.BaseTypes-import Graphics.Vulkan.Types.Bitmasks-import Graphics.Vulkan.Types.Enum.VkAccessFlags-import Graphics.Vulkan.Types.Enum.VkAttachmentDescriptionFlags-import Graphics.Vulkan.Types.Enum.VkAttachmentLoadOp-import Graphics.Vulkan.Types.Enum.VkAttachmentStoreOp-import Graphics.Vulkan.Types.Enum.VkDependencyFlags-import Graphics.Vulkan.Types.Enum.VkFormat-import Graphics.Vulkan.Types.Enum.VkImageLayout-import Graphics.Vulkan.Types.Enum.VkPhysicalDeviceType-import Graphics.Vulkan.Types.Enum.VkPipelineBindPoint-import Graphics.Vulkan.Types.Enum.VkPipelineStageFlags-import Graphics.Vulkan.Types.Enum.VkSampleCountFlags-import Graphics.Vulkan.Types.Enum.VkStructureType-import Graphics.Vulkan.Types.Enum.VkSubpassDescriptionFlags-import Graphics.Vulkan.Types.Struct.VkAttachmentDescription-import Graphics.Vulkan.Types.Struct.VkAttachmentReference-import Graphics.Vulkan.Types.Struct.VkDeviceCreateInfo-import Graphics.Vulkan.Types.Struct.VkDeviceQueueCreateInfo-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceFeatures-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceFeatures2KHR-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceLimits-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceMultiviewFeaturesKHX-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceMultiviewPropertiesKHX-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2KHR-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseProperties-import Graphics.Vulkan.Types.Struct.VkRenderPassCreateInfo-import Graphics.Vulkan.Types.Struct.VkRenderPassMultiviewCreateInfoKHX-import Graphics.Vulkan.Types.Struct.VkSubpassDependency-import Graphics.Vulkan.Types.Struct.VkSubpassDescription--pattern VK_KHX_MULTIVIEW_SPEC_VERSION :: (Num a, Eq a) => a--pattern VK_KHX_MULTIVIEW_SPEC_VERSION = 1--type VK_KHX_MULTIVIEW_SPEC_VERSION = 1--pattern VK_KHX_MULTIVIEW_EXTENSION_NAME :: CString--pattern VK_KHX_MULTIVIEW_EXTENSION_NAME <-- (is_VK_KHX_MULTIVIEW_EXTENSION_NAME -> True)- where VK_KHX_MULTIVIEW_EXTENSION_NAME- = _VK_KHX_MULTIVIEW_EXTENSION_NAME--{-# INLINE _VK_KHX_MULTIVIEW_EXTENSION_NAME #-}--_VK_KHX_MULTIVIEW_EXTENSION_NAME :: CString-_VK_KHX_MULTIVIEW_EXTENSION_NAME = Ptr "VK_KHX_multiview\NUL"#--{-# INLINE is_VK_KHX_MULTIVIEW_EXTENSION_NAME #-}--is_VK_KHX_MULTIVIEW_EXTENSION_NAME :: CString -> Bool-is_VK_KHX_MULTIVIEW_EXTENSION_NAME- = eqCStrings _VK_KHX_MULTIVIEW_EXTENSION_NAME--type VK_KHX_MULTIVIEW_EXTENSION_NAME = "VK_KHX_multiview"--pattern VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO_KHX ::- VkStructureType--pattern VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO_KHX =- VkStructureType 1000053000--pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES_KHX ::- VkStructureType--pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES_KHX =- VkStructureType 1000053001--pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES_KHX- :: VkStructureType--pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES_KHX- = VkStructureType 1000053002---- | bitpos = @1@-pattern VK_DEPENDENCY_VIEW_LOCAL_BIT_KHX :: VkDependencyFlagBits--pattern VK_DEPENDENCY_VIEW_LOCAL_BIT_KHX = VkDependencyFlagBits 2
@@ -17,12 +17,12 @@ -- -- type: @instance@ --+ -- platform: @ios@+ -- -- Extension number: @123@ -- -- Required extensions: 'VK_KHR_surface'. --- -- Protected by CPP ifdef: @VK_USE_PLATFORM_IOS_MVK@- -- -- ** Required extensions: 'VK_KHR_surface'. module Graphics.Vulkan.Types.BaseTypes,@@ -30,7 +30,8 @@ module Graphics.Vulkan.Types.Struct.VkIOSSurfaceCreateInfoMVK, module Graphics.Vulkan.Types.Enum.VkStructureType, -- > #include "vk_platform.h"- vkCreateIOSSurfaceMVK, module Graphics.Vulkan.Marshal,+ vkCreateIOSSurfaceMVK, vkCreateIOSSurfaceMVKSafe,+ module Graphics.Vulkan.Marshal, module Graphics.Vulkan.Types.Enum.VkInternalAllocationType, module Graphics.Vulkan.Types.Enum.VkResult, module Graphics.Vulkan.Types.Enum.VkSystemAllocationScope,@@ -67,7 +68,7 @@ -- > , VkSurfaceKHR* pSurface -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCreateIOSSurfaceMVK.html vkCreateIOSSurfaceMVK registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateIOSSurfaceMVK.html vkCreateIOSSurfaceMVK registry at www.khronos.org> foreign import ccall unsafe "vkCreateIOSSurfaceMVK" vkCreateIOSSurfaceMVK :: VkInstance -- ^ instance@@ -78,6 +79,28 @@ -> Ptr VkSurfaceKHR -- ^ pSurface -> IO VkResult +-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_NATIVE_WINDOW_IN_USE_KHR'.+--+-- > VkResult vkCreateIOSSurfaceMVK+-- > ( VkInstance instance+-- > , const VkIOSSurfaceCreateInfoMVK* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkSurfaceKHR* pSurface+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateIOSSurfaceMVK.html vkCreateIOSSurfaceMVK registry at www.khronos.org>+foreign import ccall safe "vkCreateIOSSurfaceMVK"+ vkCreateIOSSurfaceMVKSafe ::+ VkInstance -- ^ instance+ ->+ Ptr VkIOSSurfaceCreateInfoMVK -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkSurfaceKHR -- ^ pSurface+ -> IO VkResult+ pattern VK_MVK_IOS_SURFACE_SPEC_VERSION :: (Num a, Eq a) => a pattern VK_MVK_IOS_SURFACE_SPEC_VERSION = 2@@ -100,7 +123,7 @@ is_VK_MVK_IOS_SURFACE_EXTENSION_NAME :: CString -> Bool is_VK_MVK_IOS_SURFACE_EXTENSION_NAME- = eqCStrings _VK_MVK_IOS_SURFACE_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_MVK_IOS_SURFACE_EXTENSION_NAME type VK_MVK_IOS_SURFACE_EXTENSION_NAME = "VK_MVK_ios_surface"
@@ -17,12 +17,12 @@ -- -- type: @instance@ --+ -- platform: @macos@+ -- -- Extension number: @124@ -- -- Required extensions: 'VK_KHR_surface'. --- -- Protected by CPP ifdef: @VK_USE_PLATFORM_MACOS_MVK@- -- -- ** Required extensions: 'VK_KHR_surface'. module Graphics.Vulkan.Types.BaseTypes,@@ -30,7 +30,8 @@ module Graphics.Vulkan.Types.Struct.VkMacOSSurfaceCreateInfoMVK, module Graphics.Vulkan.Types.Enum.VkStructureType, -- > #include "vk_platform.h"- vkCreateMacOSSurfaceMVK, module Graphics.Vulkan.Marshal,+ vkCreateMacOSSurfaceMVK, vkCreateMacOSSurfaceMVKSafe,+ module Graphics.Vulkan.Marshal, module Graphics.Vulkan.Types.Enum.VkInternalAllocationType, module Graphics.Vulkan.Types.Enum.VkResult, module Graphics.Vulkan.Types.Enum.VkSystemAllocationScope,@@ -67,7 +68,7 @@ -- > , VkSurfaceKHR* pSurface -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCreateMacOSSurfaceMVK.html vkCreateMacOSSurfaceMVK registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateMacOSSurfaceMVK.html vkCreateMacOSSurfaceMVK registry at www.khronos.org> foreign import ccall unsafe "vkCreateMacOSSurfaceMVK" vkCreateMacOSSurfaceMVK :: VkInstance -- ^ instance@@ -78,6 +79,28 @@ -> Ptr VkSurfaceKHR -- ^ pSurface -> IO VkResult +-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_NATIVE_WINDOW_IN_USE_KHR'.+--+-- > VkResult vkCreateMacOSSurfaceMVK+-- > ( VkInstance instance+-- > , const VkMacOSSurfaceCreateInfoMVK* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkSurfaceKHR* pSurface+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateMacOSSurfaceMVK.html vkCreateMacOSSurfaceMVK registry at www.khronos.org>+foreign import ccall safe "vkCreateMacOSSurfaceMVK"+ vkCreateMacOSSurfaceMVKSafe ::+ VkInstance -- ^ instance+ ->+ Ptr VkMacOSSurfaceCreateInfoMVK -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkSurfaceKHR -- ^ pSurface+ -> IO VkResult+ pattern VK_MVK_MACOS_SURFACE_SPEC_VERSION :: (Num a, Eq a) => a pattern VK_MVK_MACOS_SURFACE_SPEC_VERSION = 2@@ -101,7 +124,7 @@ is_VK_MVK_MACOS_SURFACE_EXTENSION_NAME :: CString -> Bool is_VK_MVK_MACOS_SURFACE_EXTENSION_NAME- = eqCStrings _VK_MVK_MACOS_SURFACE_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_MVK_MACOS_SURFACE_EXTENSION_NAME type VK_MVK_MACOS_SURFACE_EXTENSION_NAME = "VK_MVK_macos_surface"
@@ -17,12 +17,12 @@ -- -- type: @instance@ --+ -- platform: @vi@+ -- -- Extension number: @63@ -- -- Required extensions: 'VK_KHR_surface'. --- -- Protected by CPP ifdef: @VK_USE_PLATFORM_VI_NN@- -- -- ** Required extensions: 'VK_KHR_surface'. module Graphics.Vulkan.Types.BaseTypes,@@ -30,7 +30,8 @@ module Graphics.Vulkan.Types.Bitmasks, module Graphics.Vulkan.Types.Struct.VkViSurfaceCreateInfoNN, -- > #include "vk_platform.h"- vkCreateViSurfaceNN, module Graphics.Vulkan.Marshal,+ vkCreateViSurfaceNN, vkCreateViSurfaceNNSafe,+ module Graphics.Vulkan.Marshal, module Graphics.Vulkan.Types.Enum.VkInternalAllocationType, module Graphics.Vulkan.Types.Enum.VkResult, module Graphics.Vulkan.Types.Enum.VkSystemAllocationScope,@@ -67,7 +68,7 @@ -- > , VkSurfaceKHR* pSurface -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCreateViSurfaceNN.html vkCreateViSurfaceNN registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateViSurfaceNN.html vkCreateViSurfaceNN registry at www.khronos.org> foreign import ccall unsafe "vkCreateViSurfaceNN" vkCreateViSurfaceNN :: VkInstance -- ^ instance@@ -78,6 +79,28 @@ -> Ptr VkSurfaceKHR -- ^ pSurface -> IO VkResult +-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_NATIVE_WINDOW_IN_USE_KHR'.+--+-- > VkResult vkCreateViSurfaceNN+-- > ( VkInstance instance+-- > , const VkViSurfaceCreateInfoNN* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkSurfaceKHR* pSurface+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateViSurfaceNN.html vkCreateViSurfaceNN registry at www.khronos.org>+foreign import ccall safe "vkCreateViSurfaceNN"+ vkCreateViSurfaceNNSafe ::+ VkInstance -- ^ instance+ ->+ Ptr VkViSurfaceCreateInfoNN -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkSurfaceKHR -- ^ pSurface+ -> IO VkResult+ pattern VK_NN_VI_SURFACE_SPEC_VERSION :: (Num a, Eq a) => a pattern VK_NN_VI_SURFACE_SPEC_VERSION = 1@@ -100,7 +123,7 @@ is_VK_NN_VI_SURFACE_EXTENSION_NAME :: CString -> Bool is_VK_NN_VI_SURFACE_EXTENSION_NAME- = eqCStrings _VK_NN_VI_SURFACE_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_NN_VI_SURFACE_EXTENSION_NAME type VK_NN_VI_SURFACE_EXTENSION_NAME = "VK_NN_vi_surface"
@@ -42,12 +42,19 @@ module Graphics.Vulkan.Types.Enum.VkShaderStageFlags, module Graphics.Vulkan.Types.Enum.VkStructureType, -- > #include "vk_platform.h"- vkCmdProcessCommandsNVX, vkCmdReserveSpaceForCommandsNVX,+ vkCmdProcessCommandsNVX, vkCmdProcessCommandsNVXSafe,+ vkCmdReserveSpaceForCommandsNVX,+ vkCmdReserveSpaceForCommandsNVXSafe, vkCreateIndirectCommandsLayoutNVX,- vkDestroyIndirectCommandsLayoutNVX, vkCreateObjectTableNVX,- vkDestroyObjectTableNVX, vkRegisterObjectsNVX,- vkUnregisterObjectsNVX,+ vkCreateIndirectCommandsLayoutNVXSafe,+ vkDestroyIndirectCommandsLayoutNVX,+ vkDestroyIndirectCommandsLayoutNVXSafe, vkCreateObjectTableNVX,+ vkCreateObjectTableNVXSafe, vkDestroyObjectTableNVX,+ vkDestroyObjectTableNVXSafe, vkRegisterObjectsNVX,+ vkRegisterObjectsNVXSafe, vkUnregisterObjectsNVX,+ vkUnregisterObjectsNVXSafe, vkGetPhysicalDeviceGeneratedCommandsPropertiesNVX,+ vkGetPhysicalDeviceGeneratedCommandsPropertiesNVXSafe, module Graphics.Vulkan.Marshal, module Graphics.Vulkan.Types.Enum.VkInternalAllocationType, module Graphics.Vulkan.Types.Enum.VkResult,@@ -121,7 +128,7 @@ -- > , const VkCmdProcessCommandsInfoNVX* pProcessCommandsInfo -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdProcessCommandsNVX.html vkCmdProcessCommandsNVX registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdProcessCommandsNVX.html vkCmdProcessCommandsNVX registry at www.khronos.org> foreign import ccall unsafe "vkCmdProcessCommandsNVX" vkCmdProcessCommandsNVX :: VkCommandBuffer -- ^ commandBuffer@@ -132,18 +139,50 @@ -- -- renderpass: @inside@ --+-- > () vkCmdProcessCommandsNVX+-- > ( VkCommandBuffer commandBuffer+-- > , const VkCmdProcessCommandsInfoNVX* pProcessCommandsInfo+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdProcessCommandsNVX.html vkCmdProcessCommandsNVX registry at www.khronos.org>+foreign import ccall safe "vkCmdProcessCommandsNVX"+ vkCmdProcessCommandsNVXSafe ::+ VkCommandBuffer -- ^ commandBuffer+ -> Ptr VkCmdProcessCommandsInfoNVX -- ^ pProcessCommandsInfo+ -> IO ()++-- | queues: 'graphics', 'compute'.+--+-- renderpass: @inside@+-- -- > () vkCmdReserveSpaceForCommandsNVX -- > ( VkCommandBuffer commandBuffer -- > , const VkCmdReserveSpaceForCommandsInfoNVX* pReserveSpaceInfo -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdReserveSpaceForCommandsNVX.html vkCmdReserveSpaceForCommandsNVX registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdReserveSpaceForCommandsNVX.html vkCmdReserveSpaceForCommandsNVX registry at www.khronos.org> foreign import ccall unsafe "vkCmdReserveSpaceForCommandsNVX" vkCmdReserveSpaceForCommandsNVX :: VkCommandBuffer -- ^ commandBuffer -> Ptr VkCmdReserveSpaceForCommandsInfoNVX -- ^ pReserveSpaceInfo -> IO () +-- | queues: 'graphics', 'compute'.+--+-- renderpass: @inside@+--+-- > () vkCmdReserveSpaceForCommandsNVX+-- > ( VkCommandBuffer commandBuffer+-- > , const VkCmdReserveSpaceForCommandsInfoNVX* pReserveSpaceInfo+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdReserveSpaceForCommandsNVX.html vkCmdReserveSpaceForCommandsNVX registry at www.khronos.org>+foreign import ccall safe "vkCmdReserveSpaceForCommandsNVX"+ vkCmdReserveSpaceForCommandsNVXSafe ::+ VkCommandBuffer -- ^ commandBuffer+ -> Ptr VkCmdReserveSpaceForCommandsInfoNVX -- ^ pReserveSpaceInfo+ -> IO ()+ -- | Success codes: 'VK_SUCCESS'. -- -- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.@@ -155,7 +194,7 @@ -- > , VkIndirectCommandsLayoutNVX* pIndirectCommandsLayout -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCreateIndirectCommandsLayoutNVX.html vkCreateIndirectCommandsLayoutNVX registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateIndirectCommandsLayoutNVX.html vkCreateIndirectCommandsLayoutNVX registry at www.khronos.org> foreign import ccall unsafe "vkCreateIndirectCommandsLayoutNVX" vkCreateIndirectCommandsLayoutNVX :: VkDevice -- ^ device@@ -167,13 +206,36 @@ Ptr VkIndirectCommandsLayoutNVX -- ^ pIndirectCommandsLayout -> IO VkResult +-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreateIndirectCommandsLayoutNVX+-- > ( VkDevice device+-- > , const VkIndirectCommandsLayoutCreateInfoNVX* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkIndirectCommandsLayoutNVX* pIndirectCommandsLayout+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateIndirectCommandsLayoutNVX.html vkCreateIndirectCommandsLayoutNVX registry at www.khronos.org>+foreign import ccall safe "vkCreateIndirectCommandsLayoutNVX"+ vkCreateIndirectCommandsLayoutNVXSafe ::+ VkDevice -- ^ device+ ->+ Ptr VkIndirectCommandsLayoutCreateInfoNVX -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ ->+ Ptr VkIndirectCommandsLayoutNVX -- ^ pIndirectCommandsLayout+ -> IO VkResult+ -- | > () vkDestroyIndirectCommandsLayoutNVX -- > ( VkDevice device -- > , VkIndirectCommandsLayoutNVX indirectCommandsLayout -- > , const VkAllocationCallbacks* pAllocator -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkDestroyIndirectCommandsLayoutNVX.html vkDestroyIndirectCommandsLayoutNVX registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyIndirectCommandsLayoutNVX.html vkDestroyIndirectCommandsLayoutNVX registry at www.khronos.org> foreign import ccall unsafe "vkDestroyIndirectCommandsLayoutNVX" vkDestroyIndirectCommandsLayoutNVX :: VkDevice -- ^ device@@ -182,6 +244,21 @@ -> Ptr VkAllocationCallbacks -- ^ pAllocator -> IO () +-- | > () vkDestroyIndirectCommandsLayoutNVX+-- > ( VkDevice device+-- > , VkIndirectCommandsLayoutNVX indirectCommandsLayout+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyIndirectCommandsLayoutNVX.html vkDestroyIndirectCommandsLayoutNVX registry at www.khronos.org>+foreign import ccall safe "vkDestroyIndirectCommandsLayoutNVX"+ vkDestroyIndirectCommandsLayoutNVXSafe ::+ VkDevice -- ^ device+ ->+ VkIndirectCommandsLayoutNVX -- ^ indirectCommandsLayout+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()+ -- | Success codes: 'VK_SUCCESS'. -- -- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.@@ -193,7 +270,7 @@ -- > , VkObjectTableNVX* pObjectTable -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCreateObjectTableNVX.html vkCreateObjectTableNVX registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateObjectTableNVX.html vkCreateObjectTableNVX registry at www.khronos.org> foreign import ccall unsafe "vkCreateObjectTableNVX" vkCreateObjectTableNVX :: VkDevice -- ^ device@@ -204,13 +281,35 @@ -> Ptr VkObjectTableNVX -- ^ pObjectTable -> IO VkResult +-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkCreateObjectTableNVX+-- > ( VkDevice device+-- > , const VkObjectTableCreateInfoNVX* pCreateInfo+-- > , const VkAllocationCallbacks* pAllocator+-- > , VkObjectTableNVX* pObjectTable+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreateObjectTableNVX.html vkCreateObjectTableNVX registry at www.khronos.org>+foreign import ccall safe "vkCreateObjectTableNVX"+ vkCreateObjectTableNVXSafe ::+ VkDevice -- ^ device+ ->+ Ptr VkObjectTableCreateInfoNVX -- ^ pCreateInfo+ ->+ Ptr VkAllocationCallbacks -- ^ pAllocator+ -> Ptr VkObjectTableNVX -- ^ pObjectTable+ -> IO VkResult+ -- | > () vkDestroyObjectTableNVX -- > ( VkDevice device -- > , VkObjectTableNVX objectTable -- > , const VkAllocationCallbacks* pAllocator -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkDestroyObjectTableNVX.html vkDestroyObjectTableNVX registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyObjectTableNVX.html vkDestroyObjectTableNVX registry at www.khronos.org> foreign import ccall unsafe "vkDestroyObjectTableNVX" vkDestroyObjectTableNVX :: VkDevice -- ^ device@@ -218,6 +317,20 @@ -> Ptr VkAllocationCallbacks -- ^ pAllocator -> IO () +-- | > () vkDestroyObjectTableNVX+-- > ( VkDevice device+-- > , VkObjectTableNVX objectTable+-- > , const VkAllocationCallbacks* pAllocator+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkDestroyObjectTableNVX.html vkDestroyObjectTableNVX registry at www.khronos.org>+foreign import ccall safe "vkDestroyObjectTableNVX"+ vkDestroyObjectTableNVXSafe ::+ VkDevice -- ^ device+ -> VkObjectTableNVX -- ^ objectTable+ -> Ptr VkAllocationCallbacks -- ^ pAllocator+ -> IO ()+ -- | Success codes: 'VK_SUCCESS'. -- -- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.@@ -230,7 +343,7 @@ -- > , const uint32_t* pObjectIndices -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkRegisterObjectsNVX.html vkRegisterObjectsNVX registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkRegisterObjectsNVX.html vkRegisterObjectsNVX registry at www.khronos.org> foreign import ccall unsafe "vkRegisterObjectsNVX" vkRegisterObjectsNVX :: VkDevice -- ^ device@@ -247,6 +360,31 @@ -- -- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'. --+-- > VkResult vkRegisterObjectsNVX+-- > ( VkDevice device+-- > , VkObjectTableNVX objectTable+-- > , uint32_t objectCount+-- > , const VkObjectTableEntryNVX* const* ppObjectTableEntries+-- > , const uint32_t* pObjectIndices+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkRegisterObjectsNVX.html vkRegisterObjectsNVX registry at www.khronos.org>+foreign import ccall safe "vkRegisterObjectsNVX"+ vkRegisterObjectsNVXSafe ::+ VkDevice -- ^ device+ ->+ VkObjectTableNVX -- ^ objectTable+ ->+ Word32 -- ^ objectCount+ ->+ Ptr (Ptr VkObjectTableEntryNVX) -- ^ ppObjectTableEntries+ -> Ptr Word32 -- ^ pObjectIndices+ -> IO VkResult++-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+-- -- > VkResult vkUnregisterObjectsNVX -- > ( VkDevice device -- > , VkObjectTableNVX objectTable@@ -255,7 +393,7 @@ -- > , const uint32_t* pObjectIndices -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkUnregisterObjectsNVX.html vkUnregisterObjectsNVX registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkUnregisterObjectsNVX.html vkUnregisterObjectsNVX registry at www.khronos.org> foreign import ccall unsafe "vkUnregisterObjectsNVX" vkUnregisterObjectsNVX :: VkDevice -- ^ device@@ -267,13 +405,37 @@ -> Ptr Word32 -- ^ pObjectIndices -> IO VkResult +-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'.+--+-- > VkResult vkUnregisterObjectsNVX+-- > ( VkDevice device+-- > , VkObjectTableNVX objectTable+-- > , uint32_t objectCount+-- > , const VkObjectEntryTypeNVX* pObjectEntryTypes+-- > , const uint32_t* pObjectIndices+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkUnregisterObjectsNVX.html vkUnregisterObjectsNVX registry at www.khronos.org>+foreign import ccall safe "vkUnregisterObjectsNVX"+ vkUnregisterObjectsNVXSafe ::+ VkDevice -- ^ device+ ->+ VkObjectTableNVX -- ^ objectTable+ ->+ Word32 -- ^ objectCount+ -> Ptr VkObjectEntryTypeNVX -- ^ pObjectEntryTypes+ -> Ptr Word32 -- ^ pObjectIndices+ -> IO VkResult+ -- | > () vkGetPhysicalDeviceGeneratedCommandsPropertiesNVX -- > ( VkPhysicalDevice physicalDevice -- > , VkDeviceGeneratedCommandsFeaturesNVX* pFeatures -- > , VkDeviceGeneratedCommandsLimitsNVX* pLimits -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetPhysicalDeviceGeneratedCommandsPropertiesNVX.html vkGetPhysicalDeviceGeneratedCommandsPropertiesNVX registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceGeneratedCommandsPropertiesNVX.html vkGetPhysicalDeviceGeneratedCommandsPropertiesNVX registry at www.khronos.org> foreign import ccall unsafe "vkGetPhysicalDeviceGeneratedCommandsPropertiesNVX" vkGetPhysicalDeviceGeneratedCommandsPropertiesNVX ::@@ -284,6 +446,23 @@ Ptr VkDeviceGeneratedCommandsLimitsNVX -- ^ pLimits -> IO () +-- | > () vkGetPhysicalDeviceGeneratedCommandsPropertiesNVX+-- > ( VkPhysicalDevice physicalDevice+-- > , VkDeviceGeneratedCommandsFeaturesNVX* pFeatures+-- > , VkDeviceGeneratedCommandsLimitsNVX* pLimits+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceGeneratedCommandsPropertiesNVX.html vkGetPhysicalDeviceGeneratedCommandsPropertiesNVX registry at www.khronos.org>+foreign import ccall safe+ "vkGetPhysicalDeviceGeneratedCommandsPropertiesNVX"+ vkGetPhysicalDeviceGeneratedCommandsPropertiesNVXSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ Ptr VkDeviceGeneratedCommandsFeaturesNVX -- ^ pFeatures+ ->+ Ptr VkDeviceGeneratedCommandsLimitsNVX -- ^ pLimits+ -> IO ()+ pattern VK_NVX_DEVICE_GENERATED_COMMANDS_SPEC_VERSION :: (Num a, Eq a) => a @@ -309,7 +488,8 @@ is_VK_NVX_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME :: CString -> Bool is_VK_NVX_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME- = eqCStrings _VK_NVX_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_NVX_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME type VK_NVX_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME = "VK_NVX_device_generated_commands"
@@ -18,16 +18,16 @@ -- -- Extension number: @98@ --- -- Required extensions: 'VK_KHX_multiview'.+ -- Required extensions: 'VK_KHR_multiview'. -- - -- ** Required extensions: 'VK_KHX_multiview'.+ -- ** Required extensions: 'VK_KHR_multiview'. module Graphics.Vulkan.Marshal, module Graphics.Vulkan.Types.BaseTypes, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceLimits, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties,- module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2KHR,+ module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2, module Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseProperties, module Graphics.Vulkan.Types.Enum.VkPhysicalDeviceType, module Graphics.Vulkan.Types.Enum.VkSampleCountFlags,@@ -54,7 +54,7 @@ import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceLimits import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties-import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2KHR+import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceProperties2 import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceSparseProperties pattern VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_SPEC_VERSION ::@@ -84,7 +84,8 @@ is_VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_EXTENSION_NAME :: CString -> Bool is_VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_EXTENSION_NAME- = eqCStrings _VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_EXTENSION_NAME type VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_EXTENSION_NAME = "VK_NVX_multiview_per_view_attributes"
@@ -29,7 +29,8 @@ module Graphics.Vulkan.Types.Struct.VkViewport, module Graphics.Vulkan.Types.Struct.VkViewportWScalingNV, -- > #include "vk_platform.h"- vkCmdSetViewportWScalingNV, module Graphics.Vulkan.Types.Handles,+ vkCmdSetViewportWScalingNV, vkCmdSetViewportWScalingNVSafe,+ module Graphics.Vulkan.Types.Handles, VK_NV_CLIP_SPACE_W_SCALING_SPEC_VERSION, pattern VK_NV_CLIP_SPACE_W_SCALING_SPEC_VERSION, VK_NV_CLIP_SPACE_W_SCALING_EXTENSION_NAME,@@ -65,7 +66,7 @@ -- > , const VkViewportWScalingNV* pViewportWScalings -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkCmdSetViewportWScalingNV.html vkCmdSetViewportWScalingNV registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdSetViewportWScalingNV.html vkCmdSetViewportWScalingNV registry at www.khronos.org> foreign import ccall unsafe "vkCmdSetViewportWScalingNV" vkCmdSetViewportWScalingNV :: VkCommandBuffer -- ^ commandBuffer@@ -75,6 +76,27 @@ -> Ptr VkViewportWScalingNV -- ^ pViewportWScalings -> IO () +-- | queues: 'graphics'.+--+-- renderpass: @both@+--+-- > () vkCmdSetViewportWScalingNV+-- > ( VkCommandBuffer commandBuffer+-- > , uint32_t firstViewport+-- > , uint32_t viewportCount+-- > , const VkViewportWScalingNV* pViewportWScalings+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCmdSetViewportWScalingNV.html vkCmdSetViewportWScalingNV registry at www.khronos.org>+foreign import ccall safe "vkCmdSetViewportWScalingNV"+ vkCmdSetViewportWScalingNVSafe ::+ VkCommandBuffer -- ^ commandBuffer+ ->+ Word32 -- ^ firstViewport+ -> Word32 -- ^ viewportCount+ -> Ptr VkViewportWScalingNV -- ^ pViewportWScalings+ -> IO ()+ pattern VK_NV_CLIP_SPACE_W_SCALING_SPEC_VERSION :: (Num a, Eq a) => a @@ -99,7 +121,7 @@ is_VK_NV_CLIP_SPACE_W_SCALING_EXTENSION_NAME :: CString -> Bool is_VK_NV_CLIP_SPACE_W_SCALING_EXTENSION_NAME- = eqCStrings _VK_NV_CLIP_SPACE_W_SCALING_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_NV_CLIP_SPACE_W_SCALING_EXTENSION_NAME type VK_NV_CLIP_SPACE_W_SCALING_EXTENSION_NAME = "VK_NV_clip_space_w_scaling"
@@ -92,7 +92,7 @@ is_VK_NV_DEDICATED_ALLOCATION_EXTENSION_NAME :: CString -> Bool is_VK_NV_DEDICATED_ALLOCATION_EXTENSION_NAME- = eqCStrings _VK_NV_DEDICATED_ALLOCATION_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_NV_DEDICATED_ALLOCATION_EXTENSION_NAME type VK_NV_DEDICATED_ALLOCATION_EXTENSION_NAME = "VK_NV_dedicated_allocation"
@@ -88,7 +88,7 @@ is_VK_NV_EXTERNAL_MEMORY_EXTENSION_NAME :: CString -> Bool is_VK_NV_EXTERNAL_MEMORY_EXTENSION_NAME- = eqCStrings _VK_NV_EXTERNAL_MEMORY_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_NV_EXTERNAL_MEMORY_EXTENSION_NAME type VK_NV_EXTERNAL_MEMORY_EXTENSION_NAME = "VK_NV_external_memory"
@@ -28,6 +28,7 @@ module Graphics.Vulkan.Types.Enum.VkSampleCountFlags, -- > #include "vk_platform.h" vkGetPhysicalDeviceExternalImageFormatPropertiesNV,+ vkGetPhysicalDeviceExternalImageFormatPropertiesNVSafe, module Graphics.Vulkan.Marshal, module Graphics.Vulkan.Types.Enum.VkFormat, module Graphics.Vulkan.Types.Enum.VkImageCreateFlags,@@ -73,7 +74,7 @@ -- > , VkExternalImageFormatPropertiesNV* pExternalImageFormatProperties -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetPhysicalDeviceExternalImageFormatPropertiesNV.html vkGetPhysicalDeviceExternalImageFormatPropertiesNV registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceExternalImageFormatPropertiesNV.html vkGetPhysicalDeviceExternalImageFormatPropertiesNV registry at www.khronos.org> foreign import ccall unsafe "vkGetPhysicalDeviceExternalImageFormatPropertiesNV" vkGetPhysicalDeviceExternalImageFormatPropertiesNV ::@@ -94,6 +95,42 @@ Ptr VkExternalImageFormatPropertiesNV -- ^ pExternalImageFormatProperties -> IO VkResult +-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_FORMAT_NOT_SUPPORTED'.+--+-- > VkResult vkGetPhysicalDeviceExternalImageFormatPropertiesNV+-- > ( VkPhysicalDevice physicalDevice+-- > , VkFormat format+-- > , VkImageType type+-- > , VkImageTiling tiling+-- > , VkImageUsageFlags usage+-- > , VkImageCreateFlags flags+-- > , VkExternalMemoryHandleTypeFlagsNV externalHandleType+-- > , VkExternalImageFormatPropertiesNV* pExternalImageFormatProperties+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetPhysicalDeviceExternalImageFormatPropertiesNV.html vkGetPhysicalDeviceExternalImageFormatPropertiesNV registry at www.khronos.org>+foreign import ccall safe+ "vkGetPhysicalDeviceExternalImageFormatPropertiesNV"+ vkGetPhysicalDeviceExternalImageFormatPropertiesNVSafe ::+ VkPhysicalDevice -- ^ physicalDevice+ ->+ VkFormat -- ^ format+ ->+ VkImageType -- ^ type+ ->+ VkImageTiling -- ^ tiling+ ->+ VkImageUsageFlags -- ^ usage+ ->+ VkImageCreateFlags -- ^ flags+ ->+ VkExternalMemoryHandleTypeFlagsNV -- ^ externalHandleType+ ->+ Ptr VkExternalImageFormatPropertiesNV -- ^ pExternalImageFormatProperties+ -> IO VkResult+ pattern VK_NV_EXTERNAL_MEMORY_CAPABILITIES_SPEC_VERSION :: (Num a, Eq a) => a @@ -120,7 +157,8 @@ is_VK_NV_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME :: CString -> Bool is_VK_NV_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME- = eqCStrings _VK_NV_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_NV_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME type VK_NV_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME = "VK_NV_external_memory_capabilities"
@@ -18,12 +18,12 @@ -- -- type: @device@ --+ -- platform: @win32@+ -- -- Extension number: @58@ -- -- Required extensions: 'VK_NV_external_memory'. --- -- Protected by CPP ifdef: @VK_USE_PLATFORM_WIN32_KHR@- -- -- ** Required extensions: 'VK_NV_external_memory'. module Graphics.Vulkan.Types.BaseTypes,@@ -33,9 +33,8 @@ module Graphics.Vulkan.Types.Struct.VkMemoryAllocateInfo, module Graphics.Vulkan.Types.Enum.VkStructureType, -- > #include "vk_platform.h"- --- -- > #include <windows.h>- vkGetMemoryWin32HandleNV, module Graphics.Vulkan.Marshal,+ vkGetMemoryWin32HandleNV, vkGetMemoryWin32HandleNVSafe,+ module Graphics.Vulkan.Marshal, module Graphics.Vulkan.Types.Enum.VkResult, module Graphics.Vulkan.Types.Handles, VK_NV_EXTERNAL_MEMORY_WIN32_SPEC_VERSION,@@ -68,7 +67,7 @@ -- > , HANDLE* pHandle -- > ) ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/vkGetMemoryWin32HandleNV.html vkGetMemoryWin32HandleNV registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetMemoryWin32HandleNV.html vkGetMemoryWin32HandleNV registry at www.khronos.org> foreign import ccall unsafe "vkGetMemoryWin32HandleNV" vkGetMemoryWin32HandleNV :: VkDevice -- ^ device@@ -79,6 +78,28 @@ -> Ptr HANDLE -- ^ pHandle -> IO VkResult +-- | Success codes: 'VK_SUCCESS'.+--+-- Error codes: 'VK_ERROR_TOO_MANY_OBJECTS', 'VK_ERROR_OUT_OF_HOST_MEMORY'.+--+-- > VkResult vkGetMemoryWin32HandleNV+-- > ( VkDevice device+-- > , VkDeviceMemory memory+-- > , VkExternalMemoryHandleTypeFlagsNV handleType+-- > , HANDLE* pHandle+-- > )+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkGetMemoryWin32HandleNV.html vkGetMemoryWin32HandleNV registry at www.khronos.org>+foreign import ccall safe "vkGetMemoryWin32HandleNV"+ vkGetMemoryWin32HandleNVSafe ::+ VkDevice -- ^ device+ ->+ VkDeviceMemory -- ^ memory+ ->+ VkExternalMemoryHandleTypeFlagsNV -- ^ handleType+ -> Ptr HANDLE -- ^ pHandle+ -> IO VkResult+ pattern VK_NV_EXTERNAL_MEMORY_WIN32_SPEC_VERSION :: (Num a, Eq a) => a @@ -103,7 +124,7 @@ is_VK_NV_EXTERNAL_MEMORY_WIN32_EXTENSION_NAME :: CString -> Bool is_VK_NV_EXTERNAL_MEMORY_WIN32_EXTENSION_NAME- = eqCStrings _VK_NV_EXTERNAL_MEMORY_WIN32_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_NV_EXTERNAL_MEMORY_WIN32_EXTENSION_NAME type VK_NV_EXTERNAL_MEMORY_WIN32_EXTENSION_NAME = "VK_NV_external_memory_win32"
@@ -50,7 +50,7 @@ is_VK_NV_FILL_RECTANGLE_EXTENSION_NAME :: CString -> Bool is_VK_NV_FILL_RECTANGLE_EXTENSION_NAME- = eqCStrings _VK_NV_FILL_RECTANGLE_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_NV_FILL_RECTANGLE_EXTENSION_NAME type VK_NV_FILL_RECTANGLE_EXTENSION_NAME = "VK_NV_fill_rectangle"
@@ -65,7 +65,8 @@ is_VK_NV_FRAGMENT_COVERAGE_TO_COLOR_EXTENSION_NAME :: CString -> Bool is_VK_NV_FRAGMENT_COVERAGE_TO_COLOR_EXTENSION_NAME- = eqCStrings _VK_NV_FRAGMENT_COVERAGE_TO_COLOR_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_NV_FRAGMENT_COVERAGE_TO_COLOR_EXTENSION_NAME type VK_NV_FRAGMENT_COVERAGE_TO_COLOR_EXTENSION_NAME = "VK_NV_fragment_coverage_to_color"
@@ -67,7 +67,8 @@ is_VK_NV_FRAMEBUFFER_MIXED_SAMPLES_EXTENSION_NAME :: CString -> Bool is_VK_NV_FRAMEBUFFER_MIXED_SAMPLES_EXTENSION_NAME- = eqCStrings _VK_NV_FRAMEBUFFER_MIXED_SAMPLES_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_NV_FRAMEBUFFER_MIXED_SAMPLES_EXTENSION_NAME type VK_NV_FRAMEBUFFER_MIXED_SAMPLES_EXTENSION_NAME = "VK_NV_framebuffer_mixed_samples"
@@ -50,7 +50,8 @@ is_VK_NV_GEOMETRY_SHADER_PASSTHROUGH_EXTENSION_NAME :: CString -> Bool is_VK_NV_GEOMETRY_SHADER_PASSTHROUGH_EXTENSION_NAME- = eqCStrings _VK_NV_GEOMETRY_SHADER_PASSTHROUGH_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_NV_GEOMETRY_SHADER_PASSTHROUGH_EXTENSION_NAME type VK_NV_GEOMETRY_SHADER_PASSTHROUGH_EXTENSION_NAME = "VK_NV_geometry_shader_passthrough"
@@ -49,7 +49,7 @@ is_VK_NV_GLSL_SHADER_EXTENSION_NAME :: CString -> Bool is_VK_NV_GLSL_SHADER_EXTENSION_NAME- = eqCStrings _VK_NV_GLSL_SHADER_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_NV_GLSL_SHADER_EXTENSION_NAME type VK_NV_GLSL_SHADER_EXTENSION_NAME = "VK_NV_glsl_shader"
@@ -52,7 +52,8 @@ is_VK_NV_SAMPLE_MASK_OVERRIDE_COVERAGE_EXTENSION_NAME :: CString -> Bool is_VK_NV_SAMPLE_MASK_OVERRIDE_COVERAGE_EXTENSION_NAME- = eqCStrings _VK_NV_SAMPLE_MASK_OVERRIDE_COVERAGE_EXTENSION_NAME+ = (EQ ==) .+ cmpCStrings _VK_NV_SAMPLE_MASK_OVERRIDE_COVERAGE_EXTENSION_NAME type VK_NV_SAMPLE_MASK_OVERRIDE_COVERAGE_EXTENSION_NAME = "VK_NV_sample_mask_override_coverage"
@@ -48,6 +48,6 @@ is_VK_NV_VIEWPORT_ARRAY2_EXTENSION_NAME :: CString -> Bool is_VK_NV_VIEWPORT_ARRAY2_EXTENSION_NAME- = eqCStrings _VK_NV_VIEWPORT_ARRAY2_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_NV_VIEWPORT_ARRAY2_EXTENSION_NAME type VK_NV_VIEWPORT_ARRAY2_EXTENSION_NAME = "VK_NV_viewport_array2"
@@ -73,7 +73,7 @@ is_VK_NV_VIEWPORT_SWIZZLE_EXTENSION_NAME :: CString -> Bool is_VK_NV_VIEWPORT_SWIZZLE_EXTENSION_NAME- = eqCStrings _VK_NV_VIEWPORT_SWIZZLE_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_NV_VIEWPORT_SWIZZLE_EXTENSION_NAME type VK_NV_VIEWPORT_SWIZZLE_EXTENSION_NAME = "VK_NV_viewport_swizzle"
@@ -16,12 +16,12 @@ -- -- type: @device@ --+ -- platform: @win32@+ -- -- Extension number: @59@ -- -- Required extensions: 'VK_NV_external_memory_win32'. --- -- Protected by CPP ifdef: @VK_USE_PLATFORM_WIN32_KHR@- -- -- ** Required extensions: 'VK_NV_external_memory_win32'. module Graphics.Vulkan.Types.BaseTypes,@@ -68,7 +68,7 @@ is_VK_NV_WIN32_KEYED_MUTEX_EXTENSION_NAME :: CString -> Bool is_VK_NV_WIN32_KEYED_MUTEX_EXTENSION_NAME- = eqCStrings _VK_NV_WIN32_KEYED_MUTEX_EXTENSION_NAME+ = (EQ ==) . cmpCStrings _VK_NV_WIN32_KEYED_MUTEX_EXTENSION_NAME type VK_NV_WIN32_KEYED_MUTEX_EXTENSION_NAME = "VK_NV_win32_keyed_mutex"
@@ -5,15 +5,26 @@ {-# LANGUAGE Strict #-} module Graphics.Vulkan.Types.Bitmasks (VkAndroidSurfaceCreateFlagsKHR(..), VkBufferViewCreateFlags(..),- VkCommandPoolTrimFlagsKHR(..), VkDescriptorPoolResetFlags(..),+ VkCommandPoolTrimFlags(..), VkCommandPoolTrimFlagsKHR(..),+ VkDebugUtilsMessengerCallbackDataFlagsEXT(..),+ VkDebugUtilsMessengerCreateFlagsEXT(..),+ VkDescriptorPoolResetFlags(..),+ VkDescriptorUpdateTemplateCreateFlags(..), VkDescriptorUpdateTemplateCreateFlagsKHR(..),- VkDeviceCreateFlags(..), VkDeviceQueueCreateFlags(..),- VkDisplayModeCreateFlagsKHR(..),+ VkDeviceCreateFlags(..), VkDisplayModeCreateFlagsKHR(..), VkDisplaySurfaceCreateFlagsKHR(..), VkEventCreateFlags(..),- VkFramebufferCreateFlags(..), VkIOSSurfaceCreateFlagsMVK(..),- VkImageViewCreateFlags(..), VkInstanceCreateFlags(..),- VkMacOSSurfaceCreateFlagsMVK(..), VkMemoryMapFlags(..),- VkMirSurfaceCreateFlagsKHR(..), VkPipelineCacheCreateFlags(..),+ VkExternalFenceFeatureFlagsKHR(..),+ VkExternalFenceHandleTypeFlagsKHR(..),+ VkExternalMemoryFeatureFlagsKHR(..),+ VkExternalMemoryHandleTypeFlagsKHR(..),+ VkExternalSemaphoreFeatureFlagsKHR(..),+ VkExternalSemaphoreHandleTypeFlagsKHR(..),+ VkFenceImportFlagsKHR(..), VkFramebufferCreateFlags(..),+ VkIOSSurfaceCreateFlagsMVK(..), VkImageViewCreateFlags(..),+ VkInstanceCreateFlags(..), VkMacOSSurfaceCreateFlagsMVK(..),+ VkMemoryAllocateFlagsKHR(..), VkMemoryMapFlags(..),+ VkMirSurfaceCreateFlagsKHR(..), VkPeerMemoryFeatureFlagsKHR(..),+ VkPipelineCacheCreateFlags(..), VkPipelineColorBlendStateCreateFlags(..), VkPipelineCoverageModulationStateCreateFlagsNV(..), VkPipelineCoverageToColorStateCreateFlagsNV(..),@@ -32,8 +43,9 @@ VkPipelineViewportSwizzleStateCreateFlagsNV(..), VkQueryPoolCreateFlags(..), VkRenderPassCreateFlags(..), VkSamplerCreateFlags(..), VkSemaphoreCreateFlags(..),- VkShaderModuleCreateFlags(..), VkValidationCacheCreateFlagsEXT(..),- VkViSurfaceCreateFlagsNN(..), VkWaylandSurfaceCreateFlagsKHR(..),+ VkSemaphoreImportFlagsKHR(..), VkShaderModuleCreateFlags(..),+ VkValidationCacheCreateFlagsEXT(..), VkViSurfaceCreateFlagsNN(..),+ VkWaylandSurfaceCreateFlagsKHR(..), VkWin32SurfaceCreateFlagsKHR(..), VkXcbSurfaceCreateFlagsKHR(..), VkXlibSurfaceCreateFlagsKHR(..)) where@@ -68,6 +80,18 @@ {-# INLINE readsPrec #-} readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags) +newtype VkCommandPoolTrimFlags = VkCommandPoolTrimFlags VkFlags+ deriving (Eq, Ord, Num, Bounded, Enum, Integral, Bits,+ FiniteBits, Storable, Real, Data, Generic)++instance Show VkCommandPoolTrimFlags where+ {-# INLINE show #-}+ show (VkCommandPoolTrimFlags x) = show x++instance Read VkCommandPoolTrimFlags where+ {-# INLINE readsPrec #-}+ readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags)+ newtype VkCommandPoolTrimFlagsKHR = VkCommandPoolTrimFlagsKHR VkFlags deriving (Eq, Ord, Num, Bounded, Enum, Integral, Bits, FiniteBits, Storable, Real, Data, Generic)@@ -80,6 +104,32 @@ {-# INLINE readsPrec #-} readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags) +newtype VkDebugUtilsMessengerCallbackDataFlagsEXT = VkDebugUtilsMessengerCallbackDataFlagsEXT VkFlags+ deriving (Eq, Ord, Num, Bounded, Enum,+ Integral, Bits, FiniteBits,+ Storable, Real, Data, Generic)++instance Show VkDebugUtilsMessengerCallbackDataFlagsEXT where+ {-# INLINE show #-}+ show (VkDebugUtilsMessengerCallbackDataFlagsEXT x) = show x++instance Read VkDebugUtilsMessengerCallbackDataFlagsEXT where+ {-# INLINE readsPrec #-}+ readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags)++newtype VkDebugUtilsMessengerCreateFlagsEXT = VkDebugUtilsMessengerCreateFlagsEXT VkFlags+ deriving (Eq, Ord, Num, Bounded, Enum, Integral,+ Bits, FiniteBits, Storable, Real, Data,+ Generic)++instance Show VkDebugUtilsMessengerCreateFlagsEXT where+ {-# INLINE show #-}+ show (VkDebugUtilsMessengerCreateFlagsEXT x) = show x++instance Read VkDebugUtilsMessengerCreateFlagsEXT where+ {-# INLINE readsPrec #-}+ readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags)+ newtype VkDescriptorPoolResetFlags = VkDescriptorPoolResetFlags VkFlags deriving (Eq, Ord, Num, Bounded, Enum, Integral, Bits, FiniteBits, Storable, Real, Data, Generic)@@ -92,6 +142,19 @@ {-# INLINE readsPrec #-} readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags) +newtype VkDescriptorUpdateTemplateCreateFlags = VkDescriptorUpdateTemplateCreateFlags VkFlags+ deriving (Eq, Ord, Num, Bounded, Enum, Integral,+ Bits, FiniteBits, Storable, Real, Data,+ Generic)++instance Show VkDescriptorUpdateTemplateCreateFlags where+ {-# INLINE show #-}+ show (VkDescriptorUpdateTemplateCreateFlags x) = show x++instance Read VkDescriptorUpdateTemplateCreateFlags where+ {-# INLINE readsPrec #-}+ readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags)+ newtype VkDescriptorUpdateTemplateCreateFlagsKHR = VkDescriptorUpdateTemplateCreateFlagsKHR VkFlags deriving (Eq, Ord, Num, Bounded, Enum, Integral, Bits, FiniteBits, Storable,@@ -117,18 +180,6 @@ {-# INLINE readsPrec #-} readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags) -newtype VkDeviceQueueCreateFlags = VkDeviceQueueCreateFlags VkFlags- deriving (Eq, Ord, Num, Bounded, Enum, Integral, Bits,- FiniteBits, Storable, Real, Data, Generic)--instance Show VkDeviceQueueCreateFlags where- {-# INLINE show #-}- show (VkDeviceQueueCreateFlags x) = show x--instance Read VkDeviceQueueCreateFlags where- {-# INLINE readsPrec #-}- readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags)- newtype VkDisplayModeCreateFlagsKHR = VkDisplayModeCreateFlagsKHR VkFlags deriving (Eq, Ord, Num, Bounded, Enum, Integral, Bits, FiniteBits, Storable, Real, Data, Generic)@@ -165,6 +216,93 @@ {-# INLINE readsPrec #-} readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags) +newtype VkExternalFenceFeatureFlagsKHR = VkExternalFenceFeatureFlagsKHR VkFlags+ deriving (Eq, Ord, Num, Bounded, Enum, Integral, Bits,+ FiniteBits, Storable, Real, Data, Generic)++instance Show VkExternalFenceFeatureFlagsKHR where+ {-# INLINE show #-}+ show (VkExternalFenceFeatureFlagsKHR x) = show x++instance Read VkExternalFenceFeatureFlagsKHR where+ {-# INLINE readsPrec #-}+ readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags)++newtype VkExternalFenceHandleTypeFlagsKHR = VkExternalFenceHandleTypeFlagsKHR VkFlags+ deriving (Eq, Ord, Num, Bounded, Enum, Integral, Bits,+ FiniteBits, Storable, Real, Data, Generic)++instance Show VkExternalFenceHandleTypeFlagsKHR where+ {-# INLINE show #-}+ show (VkExternalFenceHandleTypeFlagsKHR x) = show x++instance Read VkExternalFenceHandleTypeFlagsKHR where+ {-# INLINE readsPrec #-}+ readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags)++newtype VkExternalMemoryFeatureFlagsKHR = VkExternalMemoryFeatureFlagsKHR VkFlags+ deriving (Eq, Ord, Num, Bounded, Enum, Integral, Bits,+ FiniteBits, Storable, Real, Data, Generic)++instance Show VkExternalMemoryFeatureFlagsKHR where+ {-# INLINE show #-}+ show (VkExternalMemoryFeatureFlagsKHR x) = show x++instance Read VkExternalMemoryFeatureFlagsKHR where+ {-# INLINE readsPrec #-}+ readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags)++newtype VkExternalMemoryHandleTypeFlagsKHR = VkExternalMemoryHandleTypeFlagsKHR VkFlags+ deriving (Eq, Ord, Num, Bounded, Enum, Integral,+ Bits, FiniteBits, Storable, Real, Data,+ Generic)++instance Show VkExternalMemoryHandleTypeFlagsKHR where+ {-# INLINE show #-}+ show (VkExternalMemoryHandleTypeFlagsKHR x) = show x++instance Read VkExternalMemoryHandleTypeFlagsKHR where+ {-# INLINE readsPrec #-}+ readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags)++newtype VkExternalSemaphoreFeatureFlagsKHR = VkExternalSemaphoreFeatureFlagsKHR VkFlags+ deriving (Eq, Ord, Num, Bounded, Enum, Integral,+ Bits, FiniteBits, Storable, Real, Data,+ Generic)++instance Show VkExternalSemaphoreFeatureFlagsKHR where+ {-# INLINE show #-}+ show (VkExternalSemaphoreFeatureFlagsKHR x) = show x++instance Read VkExternalSemaphoreFeatureFlagsKHR where+ {-# INLINE readsPrec #-}+ readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags)++newtype VkExternalSemaphoreHandleTypeFlagsKHR = VkExternalSemaphoreHandleTypeFlagsKHR VkFlags+ deriving (Eq, Ord, Num, Bounded, Enum, Integral,+ Bits, FiniteBits, Storable, Real, Data,+ Generic)++instance Show VkExternalSemaphoreHandleTypeFlagsKHR where+ {-# INLINE show #-}+ show (VkExternalSemaphoreHandleTypeFlagsKHR x) = show x++instance Read VkExternalSemaphoreHandleTypeFlagsKHR where+ {-# INLINE readsPrec #-}+ readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags)++newtype VkFenceImportFlagsKHR = VkFenceImportFlagsKHR VkFlags+ deriving (Eq, Ord, Num, Bounded, Enum, Integral, Bits, FiniteBits,+ Storable, Real, Data, Generic)++instance Show VkFenceImportFlagsKHR where+ {-# INLINE show #-}+ show (VkFenceImportFlagsKHR x) = show x++instance Read VkFenceImportFlagsKHR where+ {-# INLINE readsPrec #-}+ readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags)+ newtype VkFramebufferCreateFlags = VkFramebufferCreateFlags VkFlags deriving (Eq, Ord, Num, Bounded, Enum, Integral, Bits, FiniteBits, Storable, Real, Data, Generic)@@ -225,6 +363,18 @@ {-# INLINE readsPrec #-} readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags) +newtype VkMemoryAllocateFlagsKHR = VkMemoryAllocateFlagsKHR VkFlags+ deriving (Eq, Ord, Num, Bounded, Enum, Integral, Bits,+ FiniteBits, Storable, Real, Data, Generic)++instance Show VkMemoryAllocateFlagsKHR where+ {-# INLINE show #-}+ show (VkMemoryAllocateFlagsKHR x) = show x++instance Read VkMemoryAllocateFlagsKHR where+ {-# INLINE readsPrec #-}+ readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags)+ newtype VkMemoryMapFlags = VkMemoryMapFlags VkFlags deriving (Eq, Ord, Num, Bounded, Enum, Integral, Bits, FiniteBits, Storable, Real, Data, Generic)@@ -249,6 +399,18 @@ {-# INLINE readsPrec #-} readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags) +newtype VkPeerMemoryFeatureFlagsKHR = VkPeerMemoryFeatureFlagsKHR VkFlags+ deriving (Eq, Ord, Num, Bounded, Enum, Integral, Bits,+ FiniteBits, Storable, Real, Data, Generic)++instance Show VkPeerMemoryFeatureFlagsKHR where+ {-# INLINE show #-}+ show (VkPeerMemoryFeatureFlagsKHR x) = show x++instance Read VkPeerMemoryFeatureFlagsKHR where+ {-# INLINE readsPrec #-}+ readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags)+ newtype VkPipelineCacheCreateFlags = VkPipelineCacheCreateFlags VkFlags deriving (Eq, Ord, Num, Bounded, Enum, Integral, Bits, FiniteBits, Storable, Real, Data, Generic)@@ -517,6 +679,18 @@ show (VkSemaphoreCreateFlags x) = show x instance Read VkSemaphoreCreateFlags where+ {-# INLINE readsPrec #-}+ readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags)++newtype VkSemaphoreImportFlagsKHR = VkSemaphoreImportFlagsKHR VkFlags+ deriving (Eq, Ord, Num, Bounded, Enum, Integral, Bits,+ FiniteBits, Storable, Real, Data, Generic)++instance Show VkSemaphoreImportFlagsKHR where+ {-# INLINE show #-}+ show (VkSemaphoreImportFlagsKHR x) = show x++instance Read VkSemaphoreImportFlagsKHR where {-# INLINE readsPrec #-} readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags)
@@ -1,36 +1,45 @@ {-# LANGUAGE CPP #-} {-# LANGUAGE DataKinds #-}+{-# LANGUAGE EmptyDataDecls #-} {-# LANGUAGE PatternSynonyms #-} {-# LANGUAGE Strict #-} module Graphics.Vulkan.Types.Defines- (-- | ===== @VK_API_VERSION@- -- > // DEPRECATED: This define has been removed. Specific version defines (e.g. VK_API_VERSION_1_0), or the VK_MAKE_VERSION macro, should be used instead.- -- > //#define VK_API_VERSION VK_MAKE_VERSION(1, 0, 0) // Patch version should always be set to 0- VK_API_VERSION_1_0, pattern VK_API_VERSION_1_0, Ptr(), -- | ===== @VK_DEFINE_HANDLE@- -- Dispatchable handles are represented as `Foreign.Ptr`- --- -- >- -- > #define VK_DEFINE_HANDLE(object) typedef struct object##_T* object;- VkPtr(..),- -- | ===== @VK_DEFINE_NON_DISPATCHABLE_HANDLE@- -- Non-dispatchable handles are represented as `VkPtr`- --- -- >- -- > #if !defined(VK_DEFINE_NON_DISPATCHABLE_HANDLE)- -- > #if defined(__LP64__) || defined(_WIN64) || (defined(__x86_64__) && !defined(__ILP32__) ) || defined(_M_X64) || defined(__ia64) || defined (_M_IA64) || defined(__aarch64__) || defined(__powerpc64__)- -- > #define VK_DEFINE_NON_DISPATCHABLE_HANDLE(object) typedef struct object##_T *object;- -- > #else- -- > #define VK_DEFINE_NON_DISPATCHABLE_HANDLE(object) typedef uint64_t object;- -- > #endif- -- > #endif- -- >- VK_HEADER_VERSION, pattern VK_HEADER_VERSION, _VK_MAKE_VERSION,- VulkanPtr(..), pattern VK_NULL_HANDLE, _VK_VERSION_MAJOR,- _VK_VERSION_MINOR, _VK_VERSION_PATCH)+ (AHardwareBuffer(), ANativeWindow(), -- | ===== @VK_API_VERSION@+ -- > // DEPRECATED: This define has been removed. Specific version defines (e.g. VK_API_VERSION_1_0), or the VK_MAKE_VERSION macro, should be used instead.+ -- > //#define VK_API_VERSION VK_MAKE_VERSION(1, 0, 0) // Patch version should always be set to 0+ VK_API_VERSION_1_0,+ pattern VK_API_VERSION_1_0, VK_API_VERSION_1_1,+ pattern VK_API_VERSION_1_1, Ptr(), -- | ===== @VK_DEFINE_HANDLE@+ -- Dispatchable handles are represented as `Foreign.Ptr`+ --+ -- >+ -- > #define VK_DEFINE_HANDLE(object) typedef struct object##_T* object;+ VkPtr(..), -- | ===== @VK_DEFINE_NON_DISPATCHABLE_HANDLE@+ -- Non-dispatchable handles are represented as `VkPtr`+ --+ -- >+ -- > #if !defined(VK_DEFINE_NON_DISPATCHABLE_HANDLE)+ -- > #if defined(__LP64__) || defined(_WIN64) || (defined(__x86_64__) && !defined(__ILP32__) ) || defined(_M_X64) || defined(__ia64) || defined (_M_IA64) || defined(__aarch64__) || defined(__powerpc64__)+ -- > #define VK_DEFINE_NON_DISPATCHABLE_HANDLE(object) typedef struct object##_T *object;+ -- > #else+ -- > #define VK_DEFINE_NON_DISPATCHABLE_HANDLE(object) typedef uint64_t object;+ -- > #endif+ -- > #endif+ -- >+ VK_HEADER_VERSION,+ pattern VK_HEADER_VERSION, _VK_MAKE_VERSION, VulkanPtr(..),+ pattern VK_NULL_HANDLE, _VK_VERSION_MAJOR, _VK_VERSION_MINOR,+ _VK_VERSION_PATCH) where import Data.Bits (Bits (..)) import Graphics.Vulkan.Marshal +-- | > struct AHardwareBuffer;+data AHardwareBuffer++-- | > struct ANativeWindow;+data ANativeWindow+ -- | > // Vulkan 1.0 version number -- > #define VK_API_VERSION_1_0 VK_MAKE_VERSION(1, 0, 0)// Patch version should always be set to 0 pattern VK_API_VERSION_1_0 :: (Num a, Eq a) => a@@ -39,13 +48,21 @@ type VK_API_VERSION_1_0 = 4194304 +-- | > // Vulkan 1.1 version number+-- > #define VK_API_VERSION_1_1 VK_MAKE_VERSION(1, 1, 0)// Patch version should always be set to 0+pattern VK_API_VERSION_1_1 :: (Num a, Eq a) => a++pattern VK_API_VERSION_1_1 = 4198400++type VK_API_VERSION_1_1 = 4198400+ -- | > // Version of this file--- > #define VK_HEADER_VERSION 69+-- > #define VK_HEADER_VERSION 71 pattern VK_HEADER_VERSION :: (Num a, Eq a) => a -pattern VK_HEADER_VERSION = 69+pattern VK_HEADER_VERSION = 71 -type VK_HEADER_VERSION = 69+type VK_HEADER_VERSION = 71 -- | > #define VK_MAKE_VERSION(major, minor, patch) \ -- > (((major) << 22) | ((minor) << 12) | (patch))
@@ -20,7 +20,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkAttachmentLoadOp.html VkAttachmentLoadOp registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkAttachmentLoadOp.html VkAttachmentLoadOp registry at www.khronos.org> newtype VkAttachmentLoadOp = VkAttachmentLoadOp Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -20,7 +20,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkAttachmentStoreOp.html VkAttachmentStoreOp registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkAttachmentStoreOp.html VkAttachmentStoreOp registry at www.khronos.org> newtype VkAttachmentStoreOp = VkAttachmentStoreOp Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -31,7 +31,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkBlendFactor.html VkBlendFactor registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkBlendFactor.html VkBlendFactor registry at www.khronos.org> newtype VkBlendFactor = VkBlendFactor Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -20,7 +20,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkBlendOp.html VkBlendOp registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkBlendOp.html VkBlendOp registry at www.khronos.org> newtype VkBlendOp = VkBlendOp Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -21,7 +21,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkBlendOverlapEXT.html VkBlendOverlapEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkBlendOverlapEXT.html VkBlendOverlapEXT registry at www.khronos.org> newtype VkBlendOverlapEXT = VkBlendOverlapEXT Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -25,7 +25,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkBorderColor.html VkBorderColor registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkBorderColor.html VkBorderColor registry at www.khronos.org> newtype VkBorderColor = VkBorderColor Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -0,0 +1,54 @@+{-# OPTIONS_HADDOCK ignore-exports#-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Types.Enum.VkChromaLocation+ (VkChromaLocation(VkChromaLocation,+ VK_CHROMA_LOCATION_COSITED_EVEN, VK_CHROMA_LOCATION_MIDPOINT))+ where+import Data.Data (Data)+import Foreign.Storable (Storable)+import GHC.Generics (Generic)+import GHC.Read (choose, expectP)+import Graphics.Vulkan.Marshal (Int32)+import Text.ParserCombinators.ReadPrec (prec, step, (+++))+import Text.Read (Read (..), parens)+import Text.Read.Lex (Lexeme (..))++-- | type = @enum@+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkChromaLocation.html VkChromaLocation registry at www.khronos.org>+newtype VkChromaLocation = VkChromaLocation Int32+ deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)++instance Show VkChromaLocation where+ showsPrec _ VK_CHROMA_LOCATION_COSITED_EVEN+ = showString "VK_CHROMA_LOCATION_COSITED_EVEN"+ showsPrec _ VK_CHROMA_LOCATION_MIDPOINT+ = showString "VK_CHROMA_LOCATION_MIDPOINT"+ showsPrec p (VkChromaLocation x)+ = showParen (p >= 11)+ (showString "VkChromaLocation " . showsPrec 11 x)++instance Read VkChromaLocation where+ readPrec+ = parens+ (choose+ [("VK_CHROMA_LOCATION_COSITED_EVEN",+ pure VK_CHROMA_LOCATION_COSITED_EVEN),+ ("VK_CHROMA_LOCATION_MIDPOINT", pure VK_CHROMA_LOCATION_MIDPOINT)]+ ++++ prec 10+ (expectP (Ident "VkChromaLocation") >>+ (VkChromaLocation <$> step readPrec)))++pattern VK_CHROMA_LOCATION_COSITED_EVEN :: VkChromaLocation++pattern VK_CHROMA_LOCATION_COSITED_EVEN = VkChromaLocation 0++pattern VK_CHROMA_LOCATION_MIDPOINT :: VkChromaLocation++pattern VK_CHROMA_LOCATION_MIDPOINT = VkChromaLocation 1
@@ -1,56 +1,25 @@-{-# OPTIONS_HADDOCK ignore-exports#-} {-# LANGUAGE DataKinds #-} {-# LANGUAGE DeriveDataTypeable #-} {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE PatternSynonyms #-} {-# LANGUAGE Strict #-} module Graphics.Vulkan.Types.Enum.VkChromaLocationKHR- (VkChromaLocationKHR(VkChromaLocationKHR,- VK_CHROMA_LOCATION_COSITED_EVEN_KHR,- VK_CHROMA_LOCATION_MIDPOINT_KHR))- where+ (VkChromaLocationKHR(..)) where+import Data.Bits (Bits, FiniteBits)+import Data.Coerce (coerce) import Data.Data (Data) import Foreign.Storable (Storable) import GHC.Generics (Generic)-import GHC.Read (choose, expectP)-import Graphics.Vulkan.Marshal (Int32)-import Text.ParserCombinators.ReadPrec (prec, step, (+++))-import Text.Read (Read (..), parens)-import Text.Read.Lex (Lexeme (..))+import Graphics.Vulkan.Types.BaseTypes (VkFlags) --- | type = @enum@------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkChromaLocationKHR.html VkChromaLocationKHR registry at www.khronos.org>-newtype VkChromaLocationKHR = VkChromaLocationKHR Int32- deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)+newtype VkChromaLocationKHR = VkChromaLocationKHR VkFlags+ deriving (Eq, Ord, Num, Bounded, Enum, Integral, Bits, FiniteBits,+ Storable, Real, Data, Generic) instance Show VkChromaLocationKHR where- showsPrec _ VK_CHROMA_LOCATION_COSITED_EVEN_KHR- = showString "VK_CHROMA_LOCATION_COSITED_EVEN_KHR"- showsPrec _ VK_CHROMA_LOCATION_MIDPOINT_KHR- = showString "VK_CHROMA_LOCATION_MIDPOINT_KHR"- showsPrec p (VkChromaLocationKHR x)- = showParen (p >= 11)- (showString "VkChromaLocationKHR " . showsPrec 11 x)+ {-# INLINE show #-}+ show (VkChromaLocationKHR x) = show x instance Read VkChromaLocationKHR where- readPrec- = parens- (choose- [("VK_CHROMA_LOCATION_COSITED_EVEN_KHR",- pure VK_CHROMA_LOCATION_COSITED_EVEN_KHR),- ("VK_CHROMA_LOCATION_MIDPOINT_KHR",- pure VK_CHROMA_LOCATION_MIDPOINT_KHR)]- +++- prec 10- (expectP (Ident "VkChromaLocationKHR") >>- (VkChromaLocationKHR <$> step readPrec)))--pattern VK_CHROMA_LOCATION_COSITED_EVEN_KHR :: VkChromaLocationKHR--pattern VK_CHROMA_LOCATION_COSITED_EVEN_KHR = VkChromaLocationKHR 0--pattern VK_CHROMA_LOCATION_MIDPOINT_KHR :: VkChromaLocationKHR--pattern VK_CHROMA_LOCATION_MIDPOINT_KHR = VkChromaLocationKHR 1+ {-# INLINE readsPrec #-}+ readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags)
@@ -20,7 +20,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkColorSpaceKHR.html VkColorSpaceKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkColorSpaceKHR.html VkColorSpaceKHR registry at www.khronos.org> newtype VkColorSpaceKHR = VkColorSpaceKHR Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -21,7 +21,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkCommandBufferLevel.html VkCommandBufferLevel registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkCommandBufferLevel.html VkCommandBufferLevel registry at www.khronos.org> newtype VkCommandBufferLevel = VkCommandBufferLevel Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -22,7 +22,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkCompareOp.html VkCompareOp registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkCompareOp.html VkCompareOp registry at www.khronos.org> newtype VkCompareOp = VkCompareOp Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -23,7 +23,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkComponentSwizzle.html VkComponentSwizzle registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkComponentSwizzle.html VkComponentSwizzle registry at www.khronos.org> newtype VkComponentSwizzle = VkComponentSwizzle Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -22,7 +22,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkConservativeRasterizationModeEXT.html VkConservativeRasterizationModeEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkConservativeRasterizationModeEXT.html VkConservativeRasterizationModeEXT registry at www.khronos.org> newtype VkConservativeRasterizationModeEXT = VkConservativeRasterizationModeEXT Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -23,7 +23,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkCoverageModulationModeNV.html VkCoverageModulationModeNV registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkCoverageModulationModeNV.html VkCoverageModulationModeNV registry at www.khronos.org> newtype VkCoverageModulationModeNV = VkCoverageModulationModeNV Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -53,7 +53,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDebugReportObjectTypeEXT.html VkDebugReportObjectTypeEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDebugReportObjectTypeEXT.html VkDebugReportObjectTypeEXT registry at www.khronos.org> newtype VkDebugReportObjectTypeEXT = VkDebugReportObjectTypeEXT Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -0,0 +1,135 @@+{-# OPTIONS_HADDOCK ignore-exports#-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE KindSignatures #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StandaloneDeriving #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeSynonymInstances #-}+module Graphics.Vulkan.Types.Enum.VkDebugUtilsMessageSeverityFlagsEXT+ (VkDebugUtilsMessageSeverityBitmaskEXT(VkDebugUtilsMessageSeverityBitmaskEXT,+ VkDebugUtilsMessageSeverityFlagsEXT,+ VkDebugUtilsMessageSeverityFlagBitsEXT,+ VK_DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT,+ VK_DEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT,+ VK_DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT,+ VK_DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT),+ VkDebugUtilsMessageSeverityFlagsEXT,+ VkDebugUtilsMessageSeverityFlagBitsEXT)+ where+import Data.Bits (Bits, FiniteBits)+import Data.Data (Data)+import Foreign.Storable (Storable)+import GHC.Generics (Generic)+import GHC.Read (choose, expectP)+import Graphics.Vulkan.Marshal (FlagBit, FlagMask, FlagType)+import Graphics.Vulkan.Types.BaseTypes (VkFlags (..))+import Text.ParserCombinators.ReadPrec (prec, step, (+++))+import Text.Read (Read (..), parens)+import Text.Read.Lex (Lexeme (..))++newtype VkDebugUtilsMessageSeverityBitmaskEXT (a ::+ FlagType) = VkDebugUtilsMessageSeverityBitmaskEXT VkFlags+ deriving (Eq, Ord, Storable, Data,+ Generic)++type VkDebugUtilsMessageSeverityFlagsEXT =+ VkDebugUtilsMessageSeverityBitmaskEXT FlagMask++type VkDebugUtilsMessageSeverityFlagBitsEXT =+ VkDebugUtilsMessageSeverityBitmaskEXT FlagBit++pattern VkDebugUtilsMessageSeverityFlagBitsEXT ::+ VkFlags -> VkDebugUtilsMessageSeverityBitmaskEXT FlagBit++pattern VkDebugUtilsMessageSeverityFlagBitsEXT n =+ VkDebugUtilsMessageSeverityBitmaskEXT n++pattern VkDebugUtilsMessageSeverityFlagsEXT ::+ VkFlags -> VkDebugUtilsMessageSeverityBitmaskEXT FlagMask++pattern VkDebugUtilsMessageSeverityFlagsEXT n =+ VkDebugUtilsMessageSeverityBitmaskEXT n++deriving instance+ Bits (VkDebugUtilsMessageSeverityBitmaskEXT FlagMask)++deriving instance+ FiniteBits (VkDebugUtilsMessageSeverityBitmaskEXT FlagMask)++deriving instance+ Integral (VkDebugUtilsMessageSeverityBitmaskEXT FlagMask)++deriving instance+ Num (VkDebugUtilsMessageSeverityBitmaskEXT FlagMask)++deriving instance+ Bounded (VkDebugUtilsMessageSeverityBitmaskEXT FlagMask)++deriving instance+ Enum (VkDebugUtilsMessageSeverityBitmaskEXT FlagMask)++deriving instance+ Real (VkDebugUtilsMessageSeverityBitmaskEXT FlagMask)++instance Show (VkDebugUtilsMessageSeverityBitmaskEXT a) where+ showsPrec _ VK_DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT+ = showString "VK_DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT"+ showsPrec _ VK_DEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT+ = showString "VK_DEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT"+ showsPrec _ VK_DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT+ = showString "VK_DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT"+ showsPrec _ VK_DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT+ = showString "VK_DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT"+ showsPrec p (VkDebugUtilsMessageSeverityBitmaskEXT x)+ = showParen (p >= 11)+ (showString "VkDebugUtilsMessageSeverityBitmaskEXT " .+ showsPrec 11 x)++instance Read (VkDebugUtilsMessageSeverityBitmaskEXT a) where+ readPrec+ = parens+ (choose+ [("VK_DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT",+ pure VK_DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT),+ ("VK_DEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT",+ pure VK_DEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT),+ ("VK_DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT",+ pure VK_DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT),+ ("VK_DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT",+ pure VK_DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT)]+ ++++ prec 10+ (expectP (Ident "VkDebugUtilsMessageSeverityBitmaskEXT") >>+ (VkDebugUtilsMessageSeverityBitmaskEXT <$> step readPrec)))++-- | bitpos = @0@+pattern VK_DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT ::+ VkDebugUtilsMessageSeverityBitmaskEXT a++pattern VK_DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT =+ VkDebugUtilsMessageSeverityBitmaskEXT 1++-- | bitpos = @4@+pattern VK_DEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT ::+ VkDebugUtilsMessageSeverityBitmaskEXT a++pattern VK_DEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT =+ VkDebugUtilsMessageSeverityBitmaskEXT 16++-- | bitpos = @8@+pattern VK_DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT ::+ VkDebugUtilsMessageSeverityBitmaskEXT a++pattern VK_DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT =+ VkDebugUtilsMessageSeverityBitmaskEXT 256++-- | bitpos = @12@+pattern VK_DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT ::+ VkDebugUtilsMessageSeverityBitmaskEXT a++pattern VK_DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT =+ VkDebugUtilsMessageSeverityBitmaskEXT 4096
@@ -0,0 +1,118 @@+{-# OPTIONS_HADDOCK ignore-exports#-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE KindSignatures #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StandaloneDeriving #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeSynonymInstances #-}+module Graphics.Vulkan.Types.Enum.VkDebugUtilsMessageTypeFlagsEXT+ (VkDebugUtilsMessageTypeBitmaskEXT(VkDebugUtilsMessageTypeBitmaskEXT,+ VkDebugUtilsMessageTypeFlagsEXT,+ VkDebugUtilsMessageTypeFlagBitsEXT,+ VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT,+ VK_DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT,+ VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT),+ VkDebugUtilsMessageTypeFlagsEXT,+ VkDebugUtilsMessageTypeFlagBitsEXT)+ where+import Data.Bits (Bits, FiniteBits)+import Data.Data (Data)+import Foreign.Storable (Storable)+import GHC.Generics (Generic)+import GHC.Read (choose, expectP)+import Graphics.Vulkan.Marshal (FlagBit, FlagMask, FlagType)+import Graphics.Vulkan.Types.BaseTypes (VkFlags (..))+import Text.ParserCombinators.ReadPrec (prec, step, (+++))+import Text.Read (Read (..), parens)+import Text.Read.Lex (Lexeme (..))++newtype VkDebugUtilsMessageTypeBitmaskEXT (a ::+ FlagType) = VkDebugUtilsMessageTypeBitmaskEXT VkFlags+ deriving (Eq, Ord, Storable, Data,+ Generic)++type VkDebugUtilsMessageTypeFlagsEXT =+ VkDebugUtilsMessageTypeBitmaskEXT FlagMask++type VkDebugUtilsMessageTypeFlagBitsEXT =+ VkDebugUtilsMessageTypeBitmaskEXT FlagBit++pattern VkDebugUtilsMessageTypeFlagBitsEXT ::+ VkFlags -> VkDebugUtilsMessageTypeBitmaskEXT FlagBit++pattern VkDebugUtilsMessageTypeFlagBitsEXT n =+ VkDebugUtilsMessageTypeBitmaskEXT n++pattern VkDebugUtilsMessageTypeFlagsEXT ::+ VkFlags -> VkDebugUtilsMessageTypeBitmaskEXT FlagMask++pattern VkDebugUtilsMessageTypeFlagsEXT n =+ VkDebugUtilsMessageTypeBitmaskEXT n++deriving instance Bits (VkDebugUtilsMessageTypeBitmaskEXT FlagMask)++deriving instance+ FiniteBits (VkDebugUtilsMessageTypeBitmaskEXT FlagMask)++deriving instance+ Integral (VkDebugUtilsMessageTypeBitmaskEXT FlagMask)++deriving instance Num (VkDebugUtilsMessageTypeBitmaskEXT FlagMask)++deriving instance+ Bounded (VkDebugUtilsMessageTypeBitmaskEXT FlagMask)++deriving instance Enum (VkDebugUtilsMessageTypeBitmaskEXT FlagMask)++deriving instance Real (VkDebugUtilsMessageTypeBitmaskEXT FlagMask)++instance Show (VkDebugUtilsMessageTypeBitmaskEXT a) where+ showsPrec _ VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT+ = showString "VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT"+ showsPrec _ VK_DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT+ = showString "VK_DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT"+ showsPrec _ VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT+ = showString "VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT"+ showsPrec p (VkDebugUtilsMessageTypeBitmaskEXT x)+ = showParen (p >= 11)+ (showString "VkDebugUtilsMessageTypeBitmaskEXT " . showsPrec 11 x)++instance Read (VkDebugUtilsMessageTypeBitmaskEXT a) where+ readPrec+ = parens+ (choose+ [("VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT",+ pure VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT),+ ("VK_DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT",+ pure VK_DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT),+ ("VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT",+ pure VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT)]+ ++++ prec 10+ (expectP (Ident "VkDebugUtilsMessageTypeBitmaskEXT") >>+ (VkDebugUtilsMessageTypeBitmaskEXT <$> step readPrec)))++-- | bitpos = @0@+pattern VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT ::+ VkDebugUtilsMessageTypeBitmaskEXT a++pattern VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT =+ VkDebugUtilsMessageTypeBitmaskEXT 1++-- | bitpos = @1@+pattern VK_DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT ::+ VkDebugUtilsMessageTypeBitmaskEXT a++pattern VK_DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT =+ VkDebugUtilsMessageTypeBitmaskEXT 2++-- | bitpos = @2@+pattern VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT ::+ VkDebugUtilsMessageTypeBitmaskEXT a++pattern VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT =+ VkDebugUtilsMessageTypeBitmaskEXT 4
@@ -28,7 +28,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDescriptorType.html VkDescriptorType registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDescriptorType.html VkDescriptorType registry at www.khronos.org> newtype VkDescriptorType = VkDescriptorType Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -0,0 +1,51 @@+{-# OPTIONS_HADDOCK ignore-exports#-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Types.Enum.VkDescriptorUpdateTemplateType+ (VkDescriptorUpdateTemplateType(VkDescriptorUpdateTemplateType,+ VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET))+ where+import Data.Data (Data)+import Foreign.Storable (Storable)+import GHC.Generics (Generic)+import GHC.Read (choose, expectP)+import Graphics.Vulkan.Marshal (Int32)+import Text.ParserCombinators.ReadPrec (prec, step, (+++))+import Text.Read (Read (..), parens)+import Text.Read.Lex (Lexeme (..))++-- | type = @enum@+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDescriptorUpdateTemplateType.html VkDescriptorUpdateTemplateType registry at www.khronos.org>+newtype VkDescriptorUpdateTemplateType = VkDescriptorUpdateTemplateType Int32+ deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data,+ Generic)++instance Show VkDescriptorUpdateTemplateType where+ showsPrec _ VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET+ = showString "VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET"+ showsPrec p (VkDescriptorUpdateTemplateType x)+ = showParen (p >= 11)+ (showString "VkDescriptorUpdateTemplateType " . showsPrec 11 x)++instance Read VkDescriptorUpdateTemplateType where+ readPrec+ = parens+ (choose+ [("VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET",+ pure VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET)]+ ++++ prec 10+ (expectP (Ident "VkDescriptorUpdateTemplateType") >>+ (VkDescriptorUpdateTemplateType <$> step readPrec)))++-- | Create descriptor update template for descriptor set updates+pattern VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET ::+ VkDescriptorUpdateTemplateType++pattern VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET =+ VkDescriptorUpdateTemplateType 0
@@ -1,65 +1,25 @@-{-# OPTIONS_HADDOCK ignore-exports#-} {-# LANGUAGE DataKinds #-} {-# LANGUAGE DeriveDataTypeable #-} {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE PatternSynonyms #-} {-# LANGUAGE Strict #-} module Graphics.Vulkan.Types.Enum.VkDescriptorUpdateTemplateTypeKHR- (VkDescriptorUpdateTemplateTypeKHR(VkDescriptorUpdateTemplateTypeKHR,- VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR,- VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR))- where+ (VkDescriptorUpdateTemplateTypeKHR(..)) where+import Data.Bits (Bits, FiniteBits)+import Data.Coerce (coerce) import Data.Data (Data) import Foreign.Storable (Storable) import GHC.Generics (Generic)-import GHC.Read (choose, expectP)-import Graphics.Vulkan.Marshal (Int32)-import Text.ParserCombinators.ReadPrec (prec, step, (+++))-import Text.Read (Read (..), parens)-import Text.Read.Lex (Lexeme (..))+import Graphics.Vulkan.Types.BaseTypes (VkFlags) --- | type = @enum@------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDescriptorUpdateTemplateTypeKHR.html VkDescriptorUpdateTemplateTypeKHR registry at www.khronos.org>-newtype VkDescriptorUpdateTemplateTypeKHR = VkDescriptorUpdateTemplateTypeKHR Int32- deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data,- Generic)+newtype VkDescriptorUpdateTemplateTypeKHR = VkDescriptorUpdateTemplateTypeKHR VkFlags+ deriving (Eq, Ord, Num, Bounded, Enum, Integral, Bits,+ FiniteBits, Storable, Real, Data, Generic) instance Show VkDescriptorUpdateTemplateTypeKHR where- showsPrec _ VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR- = showString- "VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR"- showsPrec _ VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR- = showString- "VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR"- showsPrec p (VkDescriptorUpdateTemplateTypeKHR x)- = showParen (p >= 11)- (showString "VkDescriptorUpdateTemplateTypeKHR " . showsPrec 11 x)+ {-# INLINE show #-}+ show (VkDescriptorUpdateTemplateTypeKHR x) = show x instance Read VkDescriptorUpdateTemplateTypeKHR where- readPrec- = parens- (choose- [("VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR",- pure VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR),- ("VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR",- pure VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR)]- +++- prec 10- (expectP (Ident "VkDescriptorUpdateTemplateTypeKHR") >>- (VkDescriptorUpdateTemplateTypeKHR <$> step readPrec)))---- | Create descriptor update template for descriptor set updates-pattern VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR ::- VkDescriptorUpdateTemplateTypeKHR--pattern VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR =- VkDescriptorUpdateTemplateTypeKHR 0---- | Create descriptor update template for pushed descriptor updates-pattern VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR ::- VkDescriptorUpdateTemplateTypeKHR--pattern VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR =- VkDescriptorUpdateTemplateTypeKHR 1+ {-# INLINE readsPrec #-}+ readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags)
@@ -20,7 +20,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDeviceEventTypeEXT.html VkDeviceEventTypeEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDeviceEventTypeEXT.html VkDeviceEventTypeEXT registry at www.khronos.org> newtype VkDeviceEventTypeEXT = VkDeviceEventTypeEXT Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -0,0 +1,142 @@+{-# OPTIONS_HADDOCK ignore-exports#-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE KindSignatures #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StandaloneDeriving #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeSynonymInstances #-}+module Graphics.Vulkan.Types.Enum.VkDeviceGroupPresentModeFlagsKHR+ (VkDeviceGroupPresentModeBitmaskKHR(VkDeviceGroupPresentModeBitmaskKHR,+ VkDeviceGroupPresentModeFlagsKHR,+ VkDeviceGroupPresentModeFlagBitsKHR,+ VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR,+ VK_DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHR,+ VK_DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHR,+ VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR),+ VkDeviceGroupPresentModeFlagsKHR,+ VkDeviceGroupPresentModeFlagBitsKHR)+ where+import Data.Bits (Bits, FiniteBits)+import Data.Data (Data)+import Foreign.Storable (Storable)+import GHC.Generics (Generic)+import GHC.Read (choose, expectP)+import Graphics.Vulkan.Marshal (FlagBit, FlagMask, FlagType)+import Graphics.Vulkan.Types.BaseTypes (VkFlags (..))+import Text.ParserCombinators.ReadPrec (prec, step, (+++))+import Text.Read (Read (..), parens)+import Text.Read.Lex (Lexeme (..))++newtype VkDeviceGroupPresentModeBitmaskKHR (a ::+ FlagType) = VkDeviceGroupPresentModeBitmaskKHR VkFlags+ deriving (Eq, Ord, Storable, Data,+ Generic)++type VkDeviceGroupPresentModeFlagsKHR =+ VkDeviceGroupPresentModeBitmaskKHR FlagMask++type VkDeviceGroupPresentModeFlagBitsKHR =+ VkDeviceGroupPresentModeBitmaskKHR FlagBit++pattern VkDeviceGroupPresentModeFlagBitsKHR ::+ VkFlags -> VkDeviceGroupPresentModeBitmaskKHR FlagBit++pattern VkDeviceGroupPresentModeFlagBitsKHR n =+ VkDeviceGroupPresentModeBitmaskKHR n++pattern VkDeviceGroupPresentModeFlagsKHR ::+ VkFlags -> VkDeviceGroupPresentModeBitmaskKHR FlagMask++pattern VkDeviceGroupPresentModeFlagsKHR n =+ VkDeviceGroupPresentModeBitmaskKHR n++deriving instance+ Bits (VkDeviceGroupPresentModeBitmaskKHR FlagMask)++deriving instance+ FiniteBits (VkDeviceGroupPresentModeBitmaskKHR FlagMask)++deriving instance+ Integral (VkDeviceGroupPresentModeBitmaskKHR FlagMask)++deriving instance Num (VkDeviceGroupPresentModeBitmaskKHR FlagMask)++deriving instance+ Bounded (VkDeviceGroupPresentModeBitmaskKHR FlagMask)++deriving instance+ Enum (VkDeviceGroupPresentModeBitmaskKHR FlagMask)++deriving instance+ Real (VkDeviceGroupPresentModeBitmaskKHR FlagMask)++instance Show (VkDeviceGroupPresentModeBitmaskKHR a) where+ showsPrec _ VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR+ = showString "VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR"+ showsPrec _ VK_DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHR+ = showString "VK_DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHR"+ showsPrec _ VK_DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHR+ = showString "VK_DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHR"+ showsPrec _ VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR+ = showString+ "VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR"+ showsPrec p (VkDeviceGroupPresentModeBitmaskKHR x)+ = showParen (p >= 11)+ (showString "VkDeviceGroupPresentModeBitmaskKHR " . showsPrec 11 x)++instance Read (VkDeviceGroupPresentModeBitmaskKHR a) where+ readPrec+ = parens+ (choose+ [("VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR",+ pure VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR),+ ("VK_DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHR",+ pure VK_DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHR),+ ("VK_DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHR",+ pure VK_DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHR),+ ("VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR",+ pure VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR)]+ ++++ prec 10+ (expectP (Ident "VkDeviceGroupPresentModeBitmaskKHR") >>+ (VkDeviceGroupPresentModeBitmaskKHR <$> step readPrec)))++-- | Present from local memory+--+-- bitpos = @0@+pattern VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR ::+ VkDeviceGroupPresentModeBitmaskKHR a++pattern VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR =+ VkDeviceGroupPresentModeBitmaskKHR 1++-- | Present from remote memory+--+-- bitpos = @1@+pattern VK_DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHR ::+ VkDeviceGroupPresentModeBitmaskKHR a++pattern VK_DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHR =+ VkDeviceGroupPresentModeBitmaskKHR 2++-- | Present sum of local and/or remote memory+--+-- bitpos = @2@+pattern VK_DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHR ::+ VkDeviceGroupPresentModeBitmaskKHR a++pattern VK_DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHR =+ VkDeviceGroupPresentModeBitmaskKHR 4++-- | Each physical device presents from local memory+--+-- bitpos = @3@+pattern VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR ::+ VkDeviceGroupPresentModeBitmaskKHR a++pattern VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR =+ VkDeviceGroupPresentModeBitmaskKHR 8
@@ -1,142 +0,0 @@-{-# OPTIONS_HADDOCK ignore-exports#-}-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE KindSignatures #-}-{-# LANGUAGE PatternSynonyms #-}-{-# LANGUAGE StandaloneDeriving #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE TypeSynonymInstances #-}-module Graphics.Vulkan.Types.Enum.VkDeviceGroupPresentModeFlagsKHX- (VkDeviceGroupPresentModeBitmaskKHX(VkDeviceGroupPresentModeBitmaskKHX,- VkDeviceGroupPresentModeFlagsKHX,- VkDeviceGroupPresentModeFlagBitsKHX,- VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHX,- VK_DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHX,- VK_DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHX,- VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHX),- VkDeviceGroupPresentModeFlagsKHX,- VkDeviceGroupPresentModeFlagBitsKHX)- where-import Data.Bits (Bits, FiniteBits)-import Data.Data (Data)-import Foreign.Storable (Storable)-import GHC.Generics (Generic)-import GHC.Read (choose, expectP)-import Graphics.Vulkan.Marshal (FlagBit, FlagMask, FlagType)-import Graphics.Vulkan.Types.BaseTypes (VkFlags (..))-import Text.ParserCombinators.ReadPrec (prec, step, (+++))-import Text.Read (Read (..), parens)-import Text.Read.Lex (Lexeme (..))--newtype VkDeviceGroupPresentModeBitmaskKHX (a ::- FlagType) = VkDeviceGroupPresentModeBitmaskKHX VkFlags- deriving (Eq, Ord, Storable, Data,- Generic)--type VkDeviceGroupPresentModeFlagsKHX =- VkDeviceGroupPresentModeBitmaskKHX FlagMask--type VkDeviceGroupPresentModeFlagBitsKHX =- VkDeviceGroupPresentModeBitmaskKHX FlagBit--pattern VkDeviceGroupPresentModeFlagBitsKHX ::- VkFlags -> VkDeviceGroupPresentModeBitmaskKHX FlagBit--pattern VkDeviceGroupPresentModeFlagBitsKHX n =- VkDeviceGroupPresentModeBitmaskKHX n--pattern VkDeviceGroupPresentModeFlagsKHX ::- VkFlags -> VkDeviceGroupPresentModeBitmaskKHX FlagMask--pattern VkDeviceGroupPresentModeFlagsKHX n =- VkDeviceGroupPresentModeBitmaskKHX n--deriving instance- Bits (VkDeviceGroupPresentModeBitmaskKHX FlagMask)--deriving instance- FiniteBits (VkDeviceGroupPresentModeBitmaskKHX FlagMask)--deriving instance- Integral (VkDeviceGroupPresentModeBitmaskKHX FlagMask)--deriving instance Num (VkDeviceGroupPresentModeBitmaskKHX FlagMask)--deriving instance- Bounded (VkDeviceGroupPresentModeBitmaskKHX FlagMask)--deriving instance- Enum (VkDeviceGroupPresentModeBitmaskKHX FlagMask)--deriving instance- Real (VkDeviceGroupPresentModeBitmaskKHX FlagMask)--instance Show (VkDeviceGroupPresentModeBitmaskKHX a) where- showsPrec _ VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHX- = showString "VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHX"- showsPrec _ VK_DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHX- = showString "VK_DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHX"- showsPrec _ VK_DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHX- = showString "VK_DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHX"- showsPrec _ VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHX- = showString- "VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHX"- showsPrec p (VkDeviceGroupPresentModeBitmaskKHX x)- = showParen (p >= 11)- (showString "VkDeviceGroupPresentModeBitmaskKHX " . showsPrec 11 x)--instance Read (VkDeviceGroupPresentModeBitmaskKHX a) where- readPrec- = parens- (choose- [("VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHX",- pure VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHX),- ("VK_DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHX",- pure VK_DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHX),- ("VK_DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHX",- pure VK_DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHX),- ("VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHX",- pure VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHX)]- +++- prec 10- (expectP (Ident "VkDeviceGroupPresentModeBitmaskKHX") >>- (VkDeviceGroupPresentModeBitmaskKHX <$> step readPrec)))---- | Present from local memory------ bitpos = @0@-pattern VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHX ::- VkDeviceGroupPresentModeBitmaskKHX a--pattern VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHX =- VkDeviceGroupPresentModeBitmaskKHX 1---- | Present from remote memory------ bitpos = @1@-pattern VK_DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHX ::- VkDeviceGroupPresentModeBitmaskKHX a--pattern VK_DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHX =- VkDeviceGroupPresentModeBitmaskKHX 2---- | Present sum of local and/or remote memory------ bitpos = @2@-pattern VK_DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHX ::- VkDeviceGroupPresentModeBitmaskKHX a--pattern VK_DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHX =- VkDeviceGroupPresentModeBitmaskKHX 4---- | Each physical device presents from local memory------ bitpos = @3@-pattern VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHX ::- VkDeviceGroupPresentModeBitmaskKHX a--pattern VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHX =- VkDeviceGroupPresentModeBitmaskKHX 8
@@ -1,25 +0,0 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE Strict #-}-module Graphics.Vulkan.Types.Enum.VkDeviceQueueCreateFlagBits- (VkDeviceQueueCreateFlagBits(..)) where-import Data.Bits (Bits, FiniteBits)-import Data.Coerce (coerce)-import Data.Data (Data)-import Foreign.Storable (Storable)-import GHC.Generics (Generic)-import Graphics.Vulkan.Types.BaseTypes (VkFlags)--newtype VkDeviceQueueCreateFlagBits = VkDeviceQueueCreateFlagBits VkFlags- deriving (Eq, Ord, Num, Bounded, Enum, Integral, Bits,- FiniteBits, Storable, Real, Data, Generic)--instance Show VkDeviceQueueCreateFlagBits where- {-# INLINE show #-}- show (VkDeviceQueueCreateFlagBits x) = show x--instance Read VkDeviceQueueCreateFlagBits where- {-# INLINE readsPrec #-}- readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags)
@@ -0,0 +1,73 @@+{-# OPTIONS_HADDOCK ignore-exports#-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE KindSignatures #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StandaloneDeriving #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeSynonymInstances #-}+module Graphics.Vulkan.Types.Enum.VkDeviceQueueCreateFlags+ (VkDeviceQueueCreateBitmask(VkDeviceQueueCreateBitmask,+ VkDeviceQueueCreateFlags, VkDeviceQueueCreateFlagBits),+ VkDeviceQueueCreateFlags, VkDeviceQueueCreateFlagBits)+ where+import Data.Bits (Bits, FiniteBits)+import Data.Data (Data)+import Foreign.Storable (Storable)+import GHC.Generics (Generic)+import GHC.Read (choose, expectP)+import Graphics.Vulkan.Marshal (FlagBit, FlagMask, FlagType)+import Graphics.Vulkan.Types.BaseTypes (VkFlags (..))+import Text.ParserCombinators.ReadPrec (prec, step, (+++))+import Text.Read (Read (..), parens)+import Text.Read.Lex (Lexeme (..))++newtype VkDeviceQueueCreateBitmask (a ::+ FlagType) = VkDeviceQueueCreateBitmask VkFlags+ deriving (Eq, Ord, Storable, Data, Generic)++type VkDeviceQueueCreateFlags = VkDeviceQueueCreateBitmask FlagMask++type VkDeviceQueueCreateFlagBits =+ VkDeviceQueueCreateBitmask FlagBit++pattern VkDeviceQueueCreateFlagBits ::+ VkFlags -> VkDeviceQueueCreateBitmask FlagBit++pattern VkDeviceQueueCreateFlagBits n =+ VkDeviceQueueCreateBitmask n++pattern VkDeviceQueueCreateFlags ::+ VkFlags -> VkDeviceQueueCreateBitmask FlagMask++pattern VkDeviceQueueCreateFlags n = VkDeviceQueueCreateBitmask n++deriving instance Bits (VkDeviceQueueCreateBitmask FlagMask)++deriving instance FiniteBits (VkDeviceQueueCreateBitmask FlagMask)++deriving instance Integral (VkDeviceQueueCreateBitmask FlagMask)++deriving instance Num (VkDeviceQueueCreateBitmask FlagMask)++deriving instance Bounded (VkDeviceQueueCreateBitmask FlagMask)++deriving instance Enum (VkDeviceQueueCreateBitmask FlagMask)++deriving instance Real (VkDeviceQueueCreateBitmask FlagMask)++instance Show (VkDeviceQueueCreateBitmask a) where+ showsPrec p (VkDeviceQueueCreateBitmask x)+ = showParen (p >= 11)+ (showString "VkDeviceQueueCreateBitmask " . showsPrec 11 x)++instance Read (VkDeviceQueueCreateBitmask a) where+ readPrec+ = parens+ (choose [] ++++ prec 10+ (expectP (Ident "VkDeviceQueueCreateBitmask") >>+ (VkDeviceQueueCreateBitmask <$> step readPrec)))
@@ -21,7 +21,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDiscardRectangleModeEXT.html VkDiscardRectangleModeEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDiscardRectangleModeEXT.html VkDiscardRectangleModeEXT registry at www.khronos.org> newtype VkDiscardRectangleModeEXT = VkDiscardRectangleModeEXT Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -20,7 +20,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDisplayEventTypeEXT.html VkDisplayEventTypeEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDisplayEventTypeEXT.html VkDisplayEventTypeEXT registry at www.khronos.org> newtype VkDisplayEventTypeEXT = VkDisplayEventTypeEXT Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -21,7 +21,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDisplayPowerStateEXT.html VkDisplayPowerStateEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDisplayPowerStateEXT.html VkDisplayPowerStateEXT registry at www.khronos.org> newtype VkDisplayPowerStateEXT = VkDisplayPowerStateEXT Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -25,7 +25,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDynamicState.html VkDynamicState registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDynamicState.html VkDynamicState registry at www.khronos.org> newtype VkDynamicState = VkDynamicState Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -0,0 +1,25 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Types.Enum.VkExternalFenceFeatureFlagBitsKHR+ (VkExternalFenceFeatureFlagBitsKHR(..)) where+import Data.Bits (Bits, FiniteBits)+import Data.Coerce (coerce)+import Data.Data (Data)+import Foreign.Storable (Storable)+import GHC.Generics (Generic)+import Graphics.Vulkan.Types.BaseTypes (VkFlags)++newtype VkExternalFenceFeatureFlagBitsKHR = VkExternalFenceFeatureFlagBitsKHR VkFlags+ deriving (Eq, Ord, Num, Bounded, Enum, Integral, Bits,+ FiniteBits, Storable, Real, Data, Generic)++instance Show VkExternalFenceFeatureFlagBitsKHR where+ {-# INLINE show #-}+ show (VkExternalFenceFeatureFlagBitsKHR x) = show x++instance Read VkExternalFenceFeatureFlagBitsKHR where+ {-# INLINE readsPrec #-}+ readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags)
@@ -0,0 +1,101 @@+{-# OPTIONS_HADDOCK ignore-exports#-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE KindSignatures #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StandaloneDeriving #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeSynonymInstances #-}+module Graphics.Vulkan.Types.Enum.VkExternalFenceFeatureFlags+ (VkExternalFenceFeatureBitmask(VkExternalFenceFeatureBitmask,+ VkExternalFenceFeatureFlags, VkExternalFenceFeatureFlagBits,+ VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT,+ VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT),+ VkExternalFenceFeatureFlags, VkExternalFenceFeatureFlagBits)+ where+import Data.Bits (Bits, FiniteBits)+import Data.Data (Data)+import Foreign.Storable (Storable)+import GHC.Generics (Generic)+import GHC.Read (choose, expectP)+import Graphics.Vulkan.Marshal (FlagBit, FlagMask, FlagType)+import Graphics.Vulkan.Types.BaseTypes (VkFlags (..))+import Text.ParserCombinators.ReadPrec (prec, step, (+++))+import Text.Read (Read (..), parens)+import Text.Read.Lex (Lexeme (..))++newtype VkExternalFenceFeatureBitmask (a ::+ FlagType) = VkExternalFenceFeatureBitmask VkFlags+ deriving (Eq, Ord, Storable, Data, Generic)++type VkExternalFenceFeatureFlags =+ VkExternalFenceFeatureBitmask FlagMask++type VkExternalFenceFeatureFlagBits =+ VkExternalFenceFeatureBitmask FlagBit++pattern VkExternalFenceFeatureFlagBits ::+ VkFlags -> VkExternalFenceFeatureBitmask FlagBit++pattern VkExternalFenceFeatureFlagBits n =+ VkExternalFenceFeatureBitmask n++pattern VkExternalFenceFeatureFlags ::+ VkFlags -> VkExternalFenceFeatureBitmask FlagMask++pattern VkExternalFenceFeatureFlags n =+ VkExternalFenceFeatureBitmask n++deriving instance Bits (VkExternalFenceFeatureBitmask FlagMask)++deriving instance+ FiniteBits (VkExternalFenceFeatureBitmask FlagMask)++deriving instance Integral (VkExternalFenceFeatureBitmask FlagMask)++deriving instance Num (VkExternalFenceFeatureBitmask FlagMask)++deriving instance Bounded (VkExternalFenceFeatureBitmask FlagMask)++deriving instance Enum (VkExternalFenceFeatureBitmask FlagMask)++deriving instance Real (VkExternalFenceFeatureBitmask FlagMask)++instance Show (VkExternalFenceFeatureBitmask a) where+ showsPrec _ VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT+ = showString "VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT"+ showsPrec _ VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT+ = showString "VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT"+ showsPrec p (VkExternalFenceFeatureBitmask x)+ = showParen (p >= 11)+ (showString "VkExternalFenceFeatureBitmask " . showsPrec 11 x)++instance Read (VkExternalFenceFeatureBitmask a) where+ readPrec+ = parens+ (choose+ [("VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT",+ pure VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT),+ ("VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT",+ pure VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT)]+ ++++ prec 10+ (expectP (Ident "VkExternalFenceFeatureBitmask") >>+ (VkExternalFenceFeatureBitmask <$> step readPrec)))++-- | bitpos = @0@+pattern VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT ::+ VkExternalFenceFeatureBitmask a++pattern VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT =+ VkExternalFenceFeatureBitmask 1++-- | bitpos = @1@+pattern VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT ::+ VkExternalFenceFeatureBitmask a++pattern VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT =+ VkExternalFenceFeatureBitmask 2
@@ -1,105 +0,0 @@-{-# OPTIONS_HADDOCK ignore-exports#-}-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE KindSignatures #-}-{-# LANGUAGE PatternSynonyms #-}-{-# LANGUAGE StandaloneDeriving #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE TypeSynonymInstances #-}-module Graphics.Vulkan.Types.Enum.VkExternalFenceFeatureFlagsKHR- (VkExternalFenceFeatureBitmaskKHR(VkExternalFenceFeatureBitmaskKHR,- VkExternalFenceFeatureFlagsKHR,- VkExternalFenceFeatureFlagBitsKHR,- VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT_KHR,- VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT_KHR),- VkExternalFenceFeatureFlagsKHR, VkExternalFenceFeatureFlagBitsKHR)- where-import Data.Bits (Bits, FiniteBits)-import Data.Data (Data)-import Foreign.Storable (Storable)-import GHC.Generics (Generic)-import GHC.Read (choose, expectP)-import Graphics.Vulkan.Marshal (FlagBit, FlagMask, FlagType)-import Graphics.Vulkan.Types.BaseTypes (VkFlags (..))-import Text.ParserCombinators.ReadPrec (prec, step, (+++))-import Text.Read (Read (..), parens)-import Text.Read.Lex (Lexeme (..))--newtype VkExternalFenceFeatureBitmaskKHR (a ::- FlagType) = VkExternalFenceFeatureBitmaskKHR VkFlags- deriving (Eq, Ord, Storable, Data,- Generic)--type VkExternalFenceFeatureFlagsKHR =- VkExternalFenceFeatureBitmaskKHR FlagMask--type VkExternalFenceFeatureFlagBitsKHR =- VkExternalFenceFeatureBitmaskKHR FlagBit--pattern VkExternalFenceFeatureFlagBitsKHR ::- VkFlags -> VkExternalFenceFeatureBitmaskKHR FlagBit--pattern VkExternalFenceFeatureFlagBitsKHR n =- VkExternalFenceFeatureBitmaskKHR n--pattern VkExternalFenceFeatureFlagsKHR ::- VkFlags -> VkExternalFenceFeatureBitmaskKHR FlagMask--pattern VkExternalFenceFeatureFlagsKHR n =- VkExternalFenceFeatureBitmaskKHR n--deriving instance Bits (VkExternalFenceFeatureBitmaskKHR FlagMask)--deriving instance- FiniteBits (VkExternalFenceFeatureBitmaskKHR FlagMask)--deriving instance- Integral (VkExternalFenceFeatureBitmaskKHR FlagMask)--deriving instance Num (VkExternalFenceFeatureBitmaskKHR FlagMask)--deriving instance- Bounded (VkExternalFenceFeatureBitmaskKHR FlagMask)--deriving instance Enum (VkExternalFenceFeatureBitmaskKHR FlagMask)--deriving instance Real (VkExternalFenceFeatureBitmaskKHR FlagMask)--instance Show (VkExternalFenceFeatureBitmaskKHR a) where- showsPrec _ VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT_KHR- = showString "VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT_KHR"- showsPrec _ VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT_KHR- = showString "VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT_KHR"- showsPrec p (VkExternalFenceFeatureBitmaskKHR x)- = showParen (p >= 11)- (showString "VkExternalFenceFeatureBitmaskKHR " . showsPrec 11 x)--instance Read (VkExternalFenceFeatureBitmaskKHR a) where- readPrec- = parens- (choose- [("VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT_KHR",- pure VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT_KHR),- ("VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT_KHR",- pure VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT_KHR)]- +++- prec 10- (expectP (Ident "VkExternalFenceFeatureBitmaskKHR") >>- (VkExternalFenceFeatureBitmaskKHR <$> step readPrec)))---- | bitpos = @0@-pattern VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT_KHR ::- VkExternalFenceFeatureBitmaskKHR a--pattern VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT_KHR =- VkExternalFenceFeatureBitmaskKHR 1---- | bitpos = @1@-pattern VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT_KHR ::- VkExternalFenceFeatureBitmaskKHR a--pattern VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT_KHR =- VkExternalFenceFeatureBitmaskKHR 2
@@ -0,0 +1,26 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Types.Enum.VkExternalFenceHandleTypeFlagBitsKHR+ (VkExternalFenceHandleTypeFlagBitsKHR(..)) where+import Data.Bits (Bits, FiniteBits)+import Data.Coerce (coerce)+import Data.Data (Data)+import Foreign.Storable (Storable)+import GHC.Generics (Generic)+import Graphics.Vulkan.Types.BaseTypes (VkFlags)++newtype VkExternalFenceHandleTypeFlagBitsKHR = VkExternalFenceHandleTypeFlagBitsKHR VkFlags+ deriving (Eq, Ord, Num, Bounded, Enum, Integral,+ Bits, FiniteBits, Storable, Real, Data,+ Generic)++instance Show VkExternalFenceHandleTypeFlagBitsKHR where+ {-# INLINE show #-}+ show (VkExternalFenceHandleTypeFlagBitsKHR x) = show x++instance Read VkExternalFenceHandleTypeFlagBitsKHR where+ {-# INLINE readsPrec #-}+ readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags)
@@ -0,0 +1,129 @@+{-# OPTIONS_HADDOCK ignore-exports#-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE KindSignatures #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StandaloneDeriving #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeSynonymInstances #-}+module Graphics.Vulkan.Types.Enum.VkExternalFenceHandleTypeFlags+ (VkExternalFenceHandleTypeBitmask(VkExternalFenceHandleTypeBitmask,+ VkExternalFenceHandleTypeFlags,+ VkExternalFenceHandleTypeFlagBits,+ VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT,+ VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT,+ VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT,+ VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT),+ VkExternalFenceHandleTypeFlags, VkExternalFenceHandleTypeFlagBits)+ where+import Data.Bits (Bits, FiniteBits)+import Data.Data (Data)+import Foreign.Storable (Storable)+import GHC.Generics (Generic)+import GHC.Read (choose, expectP)+import Graphics.Vulkan.Marshal (FlagBit, FlagMask, FlagType)+import Graphics.Vulkan.Types.BaseTypes (VkFlags (..))+import Text.ParserCombinators.ReadPrec (prec, step, (+++))+import Text.Read (Read (..), parens)+import Text.Read.Lex (Lexeme (..))++newtype VkExternalFenceHandleTypeBitmask (a ::+ FlagType) = VkExternalFenceHandleTypeBitmask VkFlags+ deriving (Eq, Ord, Storable, Data,+ Generic)++type VkExternalFenceHandleTypeFlags =+ VkExternalFenceHandleTypeBitmask FlagMask++type VkExternalFenceHandleTypeFlagBits =+ VkExternalFenceHandleTypeBitmask FlagBit++pattern VkExternalFenceHandleTypeFlagBits ::+ VkFlags -> VkExternalFenceHandleTypeBitmask FlagBit++pattern VkExternalFenceHandleTypeFlagBits n =+ VkExternalFenceHandleTypeBitmask n++pattern VkExternalFenceHandleTypeFlags ::+ VkFlags -> VkExternalFenceHandleTypeBitmask FlagMask++pattern VkExternalFenceHandleTypeFlags n =+ VkExternalFenceHandleTypeBitmask n++deriving instance Bits (VkExternalFenceHandleTypeBitmask FlagMask)++deriving instance+ FiniteBits (VkExternalFenceHandleTypeBitmask FlagMask)++deriving instance+ Integral (VkExternalFenceHandleTypeBitmask FlagMask)++deriving instance Num (VkExternalFenceHandleTypeBitmask FlagMask)++deriving instance+ Bounded (VkExternalFenceHandleTypeBitmask FlagMask)++deriving instance Enum (VkExternalFenceHandleTypeBitmask FlagMask)++deriving instance Real (VkExternalFenceHandleTypeBitmask FlagMask)++instance Show (VkExternalFenceHandleTypeBitmask a) where+ showsPrec _ VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT+ = showString "VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT"+ showsPrec _ VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT+ = showString "VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT"+ showsPrec _ VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT+ = showString "VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT"+ showsPrec _ VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT+ = showString "VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT"+ showsPrec p (VkExternalFenceHandleTypeBitmask x)+ = showParen (p >= 11)+ (showString "VkExternalFenceHandleTypeBitmask " . showsPrec 11 x)++instance Read (VkExternalFenceHandleTypeBitmask a) where+ readPrec+ = parens+ (choose+ [("VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT",+ pure VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT),+ ("VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT",+ pure VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT),+ ("VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT",+ pure VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT),+ ("VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT",+ pure VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT)]+ ++++ prec 10+ (expectP (Ident "VkExternalFenceHandleTypeBitmask") >>+ (VkExternalFenceHandleTypeBitmask <$> step readPrec)))++-- | bitpos = @0@+pattern VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT ::+ VkExternalFenceHandleTypeBitmask a++pattern VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT =+ VkExternalFenceHandleTypeBitmask 1++-- | bitpos = @1@+pattern VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT ::+ VkExternalFenceHandleTypeBitmask a++pattern VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT =+ VkExternalFenceHandleTypeBitmask 2++-- | bitpos = @2@+pattern VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT ::+ VkExternalFenceHandleTypeBitmask a++pattern VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT =+ VkExternalFenceHandleTypeBitmask 4++-- | bitpos = @3@+pattern VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT ::+ VkExternalFenceHandleTypeBitmask a++pattern VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT =+ VkExternalFenceHandleTypeBitmask 8
@@ -1,136 +0,0 @@-{-# OPTIONS_HADDOCK ignore-exports#-}-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE KindSignatures #-}-{-# LANGUAGE PatternSynonyms #-}-{-# LANGUAGE StandaloneDeriving #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE TypeSynonymInstances #-}-module Graphics.Vulkan.Types.Enum.VkExternalFenceHandleTypeFlagsKHR- (VkExternalFenceHandleTypeBitmaskKHR(VkExternalFenceHandleTypeBitmaskKHR,- VkExternalFenceHandleTypeFlagsKHR,- VkExternalFenceHandleTypeFlagBitsKHR,- VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR,- VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR,- VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR,- VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT_KHR),- VkExternalFenceHandleTypeFlagsKHR,- VkExternalFenceHandleTypeFlagBitsKHR)- where-import Data.Bits (Bits, FiniteBits)-import Data.Data (Data)-import Foreign.Storable (Storable)-import GHC.Generics (Generic)-import GHC.Read (choose, expectP)-import Graphics.Vulkan.Marshal (FlagBit, FlagMask, FlagType)-import Graphics.Vulkan.Types.BaseTypes (VkFlags (..))-import Text.ParserCombinators.ReadPrec (prec, step, (+++))-import Text.Read (Read (..), parens)-import Text.Read.Lex (Lexeme (..))--newtype VkExternalFenceHandleTypeBitmaskKHR (a ::- FlagType) = VkExternalFenceHandleTypeBitmaskKHR VkFlags- deriving (Eq, Ord, Storable, Data,- Generic)--type VkExternalFenceHandleTypeFlagsKHR =- VkExternalFenceHandleTypeBitmaskKHR FlagMask--type VkExternalFenceHandleTypeFlagBitsKHR =- VkExternalFenceHandleTypeBitmaskKHR FlagBit--pattern VkExternalFenceHandleTypeFlagBitsKHR ::- VkFlags -> VkExternalFenceHandleTypeBitmaskKHR FlagBit--pattern VkExternalFenceHandleTypeFlagBitsKHR n =- VkExternalFenceHandleTypeBitmaskKHR n--pattern VkExternalFenceHandleTypeFlagsKHR ::- VkFlags -> VkExternalFenceHandleTypeBitmaskKHR FlagMask--pattern VkExternalFenceHandleTypeFlagsKHR n =- VkExternalFenceHandleTypeBitmaskKHR n--deriving instance- Bits (VkExternalFenceHandleTypeBitmaskKHR FlagMask)--deriving instance- FiniteBits (VkExternalFenceHandleTypeBitmaskKHR FlagMask)--deriving instance- Integral (VkExternalFenceHandleTypeBitmaskKHR FlagMask)--deriving instance- Num (VkExternalFenceHandleTypeBitmaskKHR FlagMask)--deriving instance- Bounded (VkExternalFenceHandleTypeBitmaskKHR FlagMask)--deriving instance- Enum (VkExternalFenceHandleTypeBitmaskKHR FlagMask)--deriving instance- Real (VkExternalFenceHandleTypeBitmaskKHR FlagMask)--instance Show (VkExternalFenceHandleTypeBitmaskKHR a) where- showsPrec _ VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR- = showString "VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR"- showsPrec _ VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR- = showString "VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR"- showsPrec _ VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR- = showString- "VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR"- showsPrec _ VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT_KHR- = showString "VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT_KHR"- showsPrec p (VkExternalFenceHandleTypeBitmaskKHR x)- = showParen (p >= 11)- (showString "VkExternalFenceHandleTypeBitmaskKHR " .- showsPrec 11 x)--instance Read (VkExternalFenceHandleTypeBitmaskKHR a) where- readPrec- = parens- (choose- [("VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR",- pure VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR),- ("VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR",- pure VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR),- ("VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR",- pure VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR),- ("VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT_KHR",- pure VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT_KHR)]- +++- prec 10- (expectP (Ident "VkExternalFenceHandleTypeBitmaskKHR") >>- (VkExternalFenceHandleTypeBitmaskKHR <$> step readPrec)))---- | bitpos = @0@-pattern VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR ::- VkExternalFenceHandleTypeBitmaskKHR a--pattern VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR =- VkExternalFenceHandleTypeBitmaskKHR 1---- | bitpos = @1@-pattern VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR ::- VkExternalFenceHandleTypeBitmaskKHR a--pattern VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR =- VkExternalFenceHandleTypeBitmaskKHR 2---- | bitpos = @2@-pattern VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR ::- VkExternalFenceHandleTypeBitmaskKHR a--pattern VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR =- VkExternalFenceHandleTypeBitmaskKHR 4---- | bitpos = @3@-pattern VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT_KHR ::- VkExternalFenceHandleTypeBitmaskKHR a--pattern VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT_KHR =- VkExternalFenceHandleTypeBitmaskKHR 8
@@ -0,0 +1,26 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Types.Enum.VkExternalMemoryFeatureFlagBitsKHR+ (VkExternalMemoryFeatureFlagBitsKHR(..)) where+import Data.Bits (Bits, FiniteBits)+import Data.Coerce (coerce)+import Data.Data (Data)+import Foreign.Storable (Storable)+import GHC.Generics (Generic)+import Graphics.Vulkan.Types.BaseTypes (VkFlags)++newtype VkExternalMemoryFeatureFlagBitsKHR = VkExternalMemoryFeatureFlagBitsKHR VkFlags+ deriving (Eq, Ord, Num, Bounded, Enum, Integral,+ Bits, FiniteBits, Storable, Real, Data,+ Generic)++instance Show VkExternalMemoryFeatureFlagBitsKHR where+ {-# INLINE show #-}+ show (VkExternalMemoryFeatureFlagBitsKHR x) = show x++instance Read VkExternalMemoryFeatureFlagBitsKHR where+ {-# INLINE readsPrec #-}+ readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags)
@@ -0,0 +1,115 @@+{-# OPTIONS_HADDOCK ignore-exports#-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE KindSignatures #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StandaloneDeriving #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeSynonymInstances #-}+module Graphics.Vulkan.Types.Enum.VkExternalMemoryFeatureFlags+ (VkExternalMemoryFeatureBitmask(VkExternalMemoryFeatureBitmask,+ VkExternalMemoryFeatureFlags,+ VkExternalMemoryFeatureFlagBits,+ VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT,+ VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT,+ VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT),+ VkExternalMemoryFeatureFlags, VkExternalMemoryFeatureFlagBits)+ where+import Data.Bits (Bits, FiniteBits)+import Data.Data (Data)+import Foreign.Storable (Storable)+import GHC.Generics (Generic)+import GHC.Read (choose, expectP)+import Graphics.Vulkan.Marshal (FlagBit, FlagMask, FlagType)+import Graphics.Vulkan.Types.BaseTypes (VkFlags (..))+import Text.ParserCombinators.ReadPrec (prec, step, (+++))+import Text.Read (Read (..), parens)+import Text.Read.Lex (Lexeme (..))++newtype VkExternalMemoryFeatureBitmask (a ::+ FlagType) = VkExternalMemoryFeatureBitmask VkFlags+ deriving (Eq, Ord, Storable, Data, Generic)++type VkExternalMemoryFeatureFlags =+ VkExternalMemoryFeatureBitmask FlagMask++type VkExternalMemoryFeatureFlagBits =+ VkExternalMemoryFeatureBitmask FlagBit++pattern VkExternalMemoryFeatureFlagBits ::+ VkFlags -> VkExternalMemoryFeatureBitmask FlagBit++pattern VkExternalMemoryFeatureFlagBits n =+ VkExternalMemoryFeatureBitmask n++pattern VkExternalMemoryFeatureFlags ::+ VkFlags -> VkExternalMemoryFeatureBitmask FlagMask++pattern VkExternalMemoryFeatureFlags n =+ VkExternalMemoryFeatureBitmask n++deriving instance Bits (VkExternalMemoryFeatureBitmask FlagMask)++deriving instance+ FiniteBits (VkExternalMemoryFeatureBitmask FlagMask)++deriving instance+ Integral (VkExternalMemoryFeatureBitmask FlagMask)++deriving instance Num (VkExternalMemoryFeatureBitmask FlagMask)++deriving instance Bounded (VkExternalMemoryFeatureBitmask FlagMask)++deriving instance Enum (VkExternalMemoryFeatureBitmask FlagMask)++deriving instance Real (VkExternalMemoryFeatureBitmask FlagMask)++instance Show (VkExternalMemoryFeatureBitmask a) where+ showsPrec _ VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT+ = showString "VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT"+ showsPrec _ VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT+ = showString "VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT"+ showsPrec _ VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT+ = showString "VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT"+ showsPrec p (VkExternalMemoryFeatureBitmask x)+ = showParen (p >= 11)+ (showString "VkExternalMemoryFeatureBitmask " . showsPrec 11 x)++instance Read (VkExternalMemoryFeatureBitmask a) where+ readPrec+ = parens+ (choose+ [("VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT",+ pure VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT),+ ("VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT",+ pure VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT),+ ("VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT",+ pure VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT)]+ ++++ prec 10+ (expectP (Ident "VkExternalMemoryFeatureBitmask") >>+ (VkExternalMemoryFeatureBitmask <$> step readPrec)))++-- | bitpos = @0@+pattern VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT ::+ VkExternalMemoryFeatureBitmask a++pattern VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT =+ VkExternalMemoryFeatureBitmask 1++-- | bitpos = @1@+pattern VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT ::+ VkExternalMemoryFeatureBitmask a++pattern VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT =+ VkExternalMemoryFeatureBitmask 2++-- | bitpos = @2@+pattern VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT ::+ VkExternalMemoryFeatureBitmask a++pattern VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT =+ VkExternalMemoryFeatureBitmask 4
@@ -1,118 +0,0 @@-{-# OPTIONS_HADDOCK ignore-exports#-}-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE KindSignatures #-}-{-# LANGUAGE PatternSynonyms #-}-{-# LANGUAGE StandaloneDeriving #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE TypeSynonymInstances #-}-module Graphics.Vulkan.Types.Enum.VkExternalMemoryFeatureFlagsKHR- (VkExternalMemoryFeatureBitmaskKHR(VkExternalMemoryFeatureBitmaskKHR,- VkExternalMemoryFeatureFlagsKHR,- VkExternalMemoryFeatureFlagBitsKHR,- VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_KHR,- VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_KHR,- VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_KHR),- VkExternalMemoryFeatureFlagsKHR,- VkExternalMemoryFeatureFlagBitsKHR)- where-import Data.Bits (Bits, FiniteBits)-import Data.Data (Data)-import Foreign.Storable (Storable)-import GHC.Generics (Generic)-import GHC.Read (choose, expectP)-import Graphics.Vulkan.Marshal (FlagBit, FlagMask, FlagType)-import Graphics.Vulkan.Types.BaseTypes (VkFlags (..))-import Text.ParserCombinators.ReadPrec (prec, step, (+++))-import Text.Read (Read (..), parens)-import Text.Read.Lex (Lexeme (..))--newtype VkExternalMemoryFeatureBitmaskKHR (a ::- FlagType) = VkExternalMemoryFeatureBitmaskKHR VkFlags- deriving (Eq, Ord, Storable, Data,- Generic)--type VkExternalMemoryFeatureFlagsKHR =- VkExternalMemoryFeatureBitmaskKHR FlagMask--type VkExternalMemoryFeatureFlagBitsKHR =- VkExternalMemoryFeatureBitmaskKHR FlagBit--pattern VkExternalMemoryFeatureFlagBitsKHR ::- VkFlags -> VkExternalMemoryFeatureBitmaskKHR FlagBit--pattern VkExternalMemoryFeatureFlagBitsKHR n =- VkExternalMemoryFeatureBitmaskKHR n--pattern VkExternalMemoryFeatureFlagsKHR ::- VkFlags -> VkExternalMemoryFeatureBitmaskKHR FlagMask--pattern VkExternalMemoryFeatureFlagsKHR n =- VkExternalMemoryFeatureBitmaskKHR n--deriving instance Bits (VkExternalMemoryFeatureBitmaskKHR FlagMask)--deriving instance- FiniteBits (VkExternalMemoryFeatureBitmaskKHR FlagMask)--deriving instance- Integral (VkExternalMemoryFeatureBitmaskKHR FlagMask)--deriving instance Num (VkExternalMemoryFeatureBitmaskKHR FlagMask)--deriving instance- Bounded (VkExternalMemoryFeatureBitmaskKHR FlagMask)--deriving instance Enum (VkExternalMemoryFeatureBitmaskKHR FlagMask)--deriving instance Real (VkExternalMemoryFeatureBitmaskKHR FlagMask)--instance Show (VkExternalMemoryFeatureBitmaskKHR a) where- showsPrec _ VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_KHR- = showString "VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_KHR"- showsPrec _ VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_KHR- = showString "VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_KHR"- showsPrec _ VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_KHR- = showString "VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_KHR"- showsPrec p (VkExternalMemoryFeatureBitmaskKHR x)- = showParen (p >= 11)- (showString "VkExternalMemoryFeatureBitmaskKHR " . showsPrec 11 x)--instance Read (VkExternalMemoryFeatureBitmaskKHR a) where- readPrec- = parens- (choose- [("VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_KHR",- pure VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_KHR),- ("VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_KHR",- pure VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_KHR),- ("VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_KHR",- pure VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_KHR)]- +++- prec 10- (expectP (Ident "VkExternalMemoryFeatureBitmaskKHR") >>- (VkExternalMemoryFeatureBitmaskKHR <$> step readPrec)))---- | bitpos = @0@-pattern VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_KHR ::- VkExternalMemoryFeatureBitmaskKHR a--pattern VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_KHR =- VkExternalMemoryFeatureBitmaskKHR 1---- | bitpos = @1@-pattern VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_KHR ::- VkExternalMemoryFeatureBitmaskKHR a--pattern VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_KHR =- VkExternalMemoryFeatureBitmaskKHR 2---- | bitpos = @2@-pattern VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_KHR ::- VkExternalMemoryFeatureBitmaskKHR a--pattern VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_KHR =- VkExternalMemoryFeatureBitmaskKHR 4
@@ -0,0 +1,26 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlagBitsKHR+ (VkExternalMemoryHandleTypeFlagBitsKHR(..)) where+import Data.Bits (Bits, FiniteBits)+import Data.Coerce (coerce)+import Data.Data (Data)+import Foreign.Storable (Storable)+import GHC.Generics (Generic)+import Graphics.Vulkan.Types.BaseTypes (VkFlags)++newtype VkExternalMemoryHandleTypeFlagBitsKHR = VkExternalMemoryHandleTypeFlagBitsKHR VkFlags+ deriving (Eq, Ord, Num, Bounded, Enum, Integral,+ Bits, FiniteBits, Storable, Real, Data,+ Generic)++instance Show VkExternalMemoryHandleTypeFlagBitsKHR where+ {-# INLINE show #-}+ show (VkExternalMemoryHandleTypeFlagBitsKHR x) = show x++instance Read VkExternalMemoryHandleTypeFlagBitsKHR where+ {-# INLINE readsPrec #-}+ readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags)
@@ -0,0 +1,166 @@+{-# OPTIONS_HADDOCK ignore-exports#-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE KindSignatures #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StandaloneDeriving #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeSynonymInstances #-}+module Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlags+ (VkExternalMemoryHandleTypeBitmask(VkExternalMemoryHandleTypeBitmask,+ VkExternalMemoryHandleTypeFlags,+ VkExternalMemoryHandleTypeFlagBits,+ VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT,+ VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT,+ VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT,+ VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT,+ VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT,+ VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT,+ VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT),+ VkExternalMemoryHandleTypeFlags,+ VkExternalMemoryHandleTypeFlagBits)+ where+import Data.Bits (Bits, FiniteBits)+import Data.Data (Data)+import Foreign.Storable (Storable)+import GHC.Generics (Generic)+import GHC.Read (choose, expectP)+import Graphics.Vulkan.Marshal (FlagBit, FlagMask, FlagType)+import Graphics.Vulkan.Types.BaseTypes (VkFlags (..))+import Text.ParserCombinators.ReadPrec (prec, step, (+++))+import Text.Read (Read (..), parens)+import Text.Read.Lex (Lexeme (..))++newtype VkExternalMemoryHandleTypeBitmask (a ::+ FlagType) = VkExternalMemoryHandleTypeBitmask VkFlags+ deriving (Eq, Ord, Storable, Data,+ Generic)++type VkExternalMemoryHandleTypeFlags =+ VkExternalMemoryHandleTypeBitmask FlagMask++type VkExternalMemoryHandleTypeFlagBits =+ VkExternalMemoryHandleTypeBitmask FlagBit++pattern VkExternalMemoryHandleTypeFlagBits ::+ VkFlags -> VkExternalMemoryHandleTypeBitmask FlagBit++pattern VkExternalMemoryHandleTypeFlagBits n =+ VkExternalMemoryHandleTypeBitmask n++pattern VkExternalMemoryHandleTypeFlags ::+ VkFlags -> VkExternalMemoryHandleTypeBitmask FlagMask++pattern VkExternalMemoryHandleTypeFlags n =+ VkExternalMemoryHandleTypeBitmask n++deriving instance Bits (VkExternalMemoryHandleTypeBitmask FlagMask)++deriving instance+ FiniteBits (VkExternalMemoryHandleTypeBitmask FlagMask)++deriving instance+ Integral (VkExternalMemoryHandleTypeBitmask FlagMask)++deriving instance Num (VkExternalMemoryHandleTypeBitmask FlagMask)++deriving instance+ Bounded (VkExternalMemoryHandleTypeBitmask FlagMask)++deriving instance Enum (VkExternalMemoryHandleTypeBitmask FlagMask)++deriving instance Real (VkExternalMemoryHandleTypeBitmask FlagMask)++instance Show (VkExternalMemoryHandleTypeBitmask a) where+ showsPrec _ VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT+ = showString "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT"+ showsPrec _ VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT+ = showString "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT"+ showsPrec _ VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT+ = showString "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT"+ showsPrec _ VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT+ = showString "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT"+ showsPrec _ VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT+ = showString "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT"+ showsPrec _ VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT+ = showString "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT"+ showsPrec _ VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT+ = showString "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT"+ showsPrec p (VkExternalMemoryHandleTypeBitmask x)+ = showParen (p >= 11)+ (showString "VkExternalMemoryHandleTypeBitmask " . showsPrec 11 x)++instance Read (VkExternalMemoryHandleTypeBitmask a) where+ readPrec+ = parens+ (choose+ [("VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT",+ pure VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT),+ ("VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT",+ pure VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT),+ ("VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT",+ pure VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT),+ ("VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT",+ pure VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT),+ ("VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT",+ pure VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT),+ ("VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT",+ pure VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT),+ ("VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT",+ pure VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT)]+ ++++ prec 10+ (expectP (Ident "VkExternalMemoryHandleTypeBitmask") >>+ (VkExternalMemoryHandleTypeBitmask <$> step readPrec)))++-- | bitpos = @0@+pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT ::+ VkExternalMemoryHandleTypeBitmask a++pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT =+ VkExternalMemoryHandleTypeBitmask 1++-- | bitpos = @1@+pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT ::+ VkExternalMemoryHandleTypeBitmask a++pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT =+ VkExternalMemoryHandleTypeBitmask 2++-- | bitpos = @2@+pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT ::+ VkExternalMemoryHandleTypeBitmask a++pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT =+ VkExternalMemoryHandleTypeBitmask 4++-- | bitpos = @3@+pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT ::+ VkExternalMemoryHandleTypeBitmask a++pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT =+ VkExternalMemoryHandleTypeBitmask 8++-- | bitpos = @4@+pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT ::+ VkExternalMemoryHandleTypeBitmask a++pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT =+ VkExternalMemoryHandleTypeBitmask 16++-- | bitpos = @5@+pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT ::+ VkExternalMemoryHandleTypeBitmask a++pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT =+ VkExternalMemoryHandleTypeBitmask 32++-- | bitpos = @6@+pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT ::+ VkExternalMemoryHandleTypeBitmask a++pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT =+ VkExternalMemoryHandleTypeBitmask 64
@@ -1,175 +0,0 @@-{-# OPTIONS_HADDOCK ignore-exports#-}-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE KindSignatures #-}-{-# LANGUAGE PatternSynonyms #-}-{-# LANGUAGE StandaloneDeriving #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE TypeSynonymInstances #-}-module Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlagsKHR- (VkExternalMemoryHandleTypeBitmaskKHR(VkExternalMemoryHandleTypeBitmaskKHR,- VkExternalMemoryHandleTypeFlagsKHR,- VkExternalMemoryHandleTypeFlagBitsKHR,- VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT_KHR,- VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR,- VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR,- VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT_KHR,- VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT_KHR,- VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT_KHR,- VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT_KHR),- VkExternalMemoryHandleTypeFlagsKHR,- VkExternalMemoryHandleTypeFlagBitsKHR)- where-import Data.Bits (Bits, FiniteBits)-import Data.Data (Data)-import Foreign.Storable (Storable)-import GHC.Generics (Generic)-import GHC.Read (choose, expectP)-import Graphics.Vulkan.Marshal (FlagBit, FlagMask, FlagType)-import Graphics.Vulkan.Types.BaseTypes (VkFlags (..))-import Text.ParserCombinators.ReadPrec (prec, step, (+++))-import Text.Read (Read (..), parens)-import Text.Read.Lex (Lexeme (..))--newtype VkExternalMemoryHandleTypeBitmaskKHR (a ::- FlagType) = VkExternalMemoryHandleTypeBitmaskKHR VkFlags- deriving (Eq, Ord, Storable, Data,- Generic)--type VkExternalMemoryHandleTypeFlagsKHR =- VkExternalMemoryHandleTypeBitmaskKHR FlagMask--type VkExternalMemoryHandleTypeFlagBitsKHR =- VkExternalMemoryHandleTypeBitmaskKHR FlagBit--pattern VkExternalMemoryHandleTypeFlagBitsKHR ::- VkFlags -> VkExternalMemoryHandleTypeBitmaskKHR FlagBit--pattern VkExternalMemoryHandleTypeFlagBitsKHR n =- VkExternalMemoryHandleTypeBitmaskKHR n--pattern VkExternalMemoryHandleTypeFlagsKHR ::- VkFlags -> VkExternalMemoryHandleTypeBitmaskKHR FlagMask--pattern VkExternalMemoryHandleTypeFlagsKHR n =- VkExternalMemoryHandleTypeBitmaskKHR n--deriving instance- Bits (VkExternalMemoryHandleTypeBitmaskKHR FlagMask)--deriving instance- FiniteBits (VkExternalMemoryHandleTypeBitmaskKHR FlagMask)--deriving instance- Integral (VkExternalMemoryHandleTypeBitmaskKHR FlagMask)--deriving instance- Num (VkExternalMemoryHandleTypeBitmaskKHR FlagMask)--deriving instance- Bounded (VkExternalMemoryHandleTypeBitmaskKHR FlagMask)--deriving instance- Enum (VkExternalMemoryHandleTypeBitmaskKHR FlagMask)--deriving instance- Real (VkExternalMemoryHandleTypeBitmaskKHR FlagMask)--instance Show (VkExternalMemoryHandleTypeBitmaskKHR a) where- showsPrec _ VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT_KHR- = showString "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT_KHR"- showsPrec _ VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR- = showString "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR"- showsPrec _ VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR- = showString- "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR"- showsPrec _ VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT_KHR- = showString "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT_KHR"- showsPrec _- VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT_KHR- = showString- "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT_KHR"- showsPrec _ VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT_KHR- = showString "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT_KHR"- showsPrec _ VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT_KHR- = showString- "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT_KHR"- showsPrec p (VkExternalMemoryHandleTypeBitmaskKHR x)- = showParen (p >= 11)- (showString "VkExternalMemoryHandleTypeBitmaskKHR " .- showsPrec 11 x)--instance Read (VkExternalMemoryHandleTypeBitmaskKHR a) where- readPrec- = parens- (choose- [("VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT_KHR",- pure VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT_KHR),- ("VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR",- pure VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR),- ("VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR",- pure VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR),- ("VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT_KHR",- pure VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT_KHR),- ("VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT_KHR",- pure VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT_KHR),- ("VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT_KHR",- pure VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT_KHR),- ("VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT_KHR",- pure VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT_KHR)]- +++- prec 10- (expectP (Ident "VkExternalMemoryHandleTypeBitmaskKHR") >>- (VkExternalMemoryHandleTypeBitmaskKHR <$> step readPrec)))---- | bitpos = @0@-pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT_KHR ::- VkExternalMemoryHandleTypeBitmaskKHR a--pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT_KHR =- VkExternalMemoryHandleTypeBitmaskKHR 1---- | bitpos = @1@-pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR ::- VkExternalMemoryHandleTypeBitmaskKHR a--pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR =- VkExternalMemoryHandleTypeBitmaskKHR 2---- | bitpos = @2@-pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR ::- VkExternalMemoryHandleTypeBitmaskKHR a--pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR =- VkExternalMemoryHandleTypeBitmaskKHR 4---- | bitpos = @3@-pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT_KHR ::- VkExternalMemoryHandleTypeBitmaskKHR a--pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT_KHR =- VkExternalMemoryHandleTypeBitmaskKHR 8---- | bitpos = @4@-pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT_KHR ::- VkExternalMemoryHandleTypeBitmaskKHR a--pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT_KHR =- VkExternalMemoryHandleTypeBitmaskKHR 16---- | bitpos = @5@-pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT_KHR ::- VkExternalMemoryHandleTypeBitmaskKHR a--pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT_KHR =- VkExternalMemoryHandleTypeBitmaskKHR 32---- | bitpos = @6@-pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT_KHR ::- VkExternalMemoryHandleTypeBitmaskKHR a--pattern VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT_KHR =- VkExternalMemoryHandleTypeBitmaskKHR 64
@@ -0,0 +1,26 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Types.Enum.VkExternalSemaphoreFeatureFlagBitsKHR+ (VkExternalSemaphoreFeatureFlagBitsKHR(..)) where+import Data.Bits (Bits, FiniteBits)+import Data.Coerce (coerce)+import Data.Data (Data)+import Foreign.Storable (Storable)+import GHC.Generics (Generic)+import Graphics.Vulkan.Types.BaseTypes (VkFlags)++newtype VkExternalSemaphoreFeatureFlagBitsKHR = VkExternalSemaphoreFeatureFlagBitsKHR VkFlags+ deriving (Eq, Ord, Num, Bounded, Enum, Integral,+ Bits, FiniteBits, Storable, Real, Data,+ Generic)++instance Show VkExternalSemaphoreFeatureFlagBitsKHR where+ {-# INLINE show #-}+ show (VkExternalSemaphoreFeatureFlagBitsKHR x) = show x++instance Read VkExternalSemaphoreFeatureFlagBitsKHR where+ {-# INLINE readsPrec #-}+ readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags)
@@ -0,0 +1,106 @@+{-# OPTIONS_HADDOCK ignore-exports#-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE KindSignatures #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StandaloneDeriving #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeSynonymInstances #-}+module Graphics.Vulkan.Types.Enum.VkExternalSemaphoreFeatureFlags+ (VkExternalSemaphoreFeatureBitmask(VkExternalSemaphoreFeatureBitmask,+ VkExternalSemaphoreFeatureFlags,+ VkExternalSemaphoreFeatureFlagBits,+ VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT,+ VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT),+ VkExternalSemaphoreFeatureFlags,+ VkExternalSemaphoreFeatureFlagBits)+ where+import Data.Bits (Bits, FiniteBits)+import Data.Data (Data)+import Foreign.Storable (Storable)+import GHC.Generics (Generic)+import GHC.Read (choose, expectP)+import Graphics.Vulkan.Marshal (FlagBit, FlagMask, FlagType)+import Graphics.Vulkan.Types.BaseTypes (VkFlags (..))+import Text.ParserCombinators.ReadPrec (prec, step, (+++))+import Text.Read (Read (..), parens)+import Text.Read.Lex (Lexeme (..))++newtype VkExternalSemaphoreFeatureBitmask (a ::+ FlagType) = VkExternalSemaphoreFeatureBitmask VkFlags+ deriving (Eq, Ord, Storable, Data,+ Generic)++type VkExternalSemaphoreFeatureFlags =+ VkExternalSemaphoreFeatureBitmask FlagMask++type VkExternalSemaphoreFeatureFlagBits =+ VkExternalSemaphoreFeatureBitmask FlagBit++pattern VkExternalSemaphoreFeatureFlagBits ::+ VkFlags -> VkExternalSemaphoreFeatureBitmask FlagBit++pattern VkExternalSemaphoreFeatureFlagBits n =+ VkExternalSemaphoreFeatureBitmask n++pattern VkExternalSemaphoreFeatureFlags ::+ VkFlags -> VkExternalSemaphoreFeatureBitmask FlagMask++pattern VkExternalSemaphoreFeatureFlags n =+ VkExternalSemaphoreFeatureBitmask n++deriving instance Bits (VkExternalSemaphoreFeatureBitmask FlagMask)++deriving instance+ FiniteBits (VkExternalSemaphoreFeatureBitmask FlagMask)++deriving instance+ Integral (VkExternalSemaphoreFeatureBitmask FlagMask)++deriving instance Num (VkExternalSemaphoreFeatureBitmask FlagMask)++deriving instance+ Bounded (VkExternalSemaphoreFeatureBitmask FlagMask)++deriving instance Enum (VkExternalSemaphoreFeatureBitmask FlagMask)++deriving instance Real (VkExternalSemaphoreFeatureBitmask FlagMask)++instance Show (VkExternalSemaphoreFeatureBitmask a) where+ showsPrec _ VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT+ = showString "VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT"+ showsPrec _ VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT+ = showString "VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT"+ showsPrec p (VkExternalSemaphoreFeatureBitmask x)+ = showParen (p >= 11)+ (showString "VkExternalSemaphoreFeatureBitmask " . showsPrec 11 x)++instance Read (VkExternalSemaphoreFeatureBitmask a) where+ readPrec+ = parens+ (choose+ [("VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT",+ pure VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT),+ ("VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT",+ pure VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT)]+ ++++ prec 10+ (expectP (Ident "VkExternalSemaphoreFeatureBitmask") >>+ (VkExternalSemaphoreFeatureBitmask <$> step readPrec)))++-- | bitpos = @0@+pattern VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT ::+ VkExternalSemaphoreFeatureBitmask a++pattern VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT =+ VkExternalSemaphoreFeatureBitmask 1++-- | bitpos = @1@+pattern VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT ::+ VkExternalSemaphoreFeatureBitmask a++pattern VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT =+ VkExternalSemaphoreFeatureBitmask 2
@@ -1,111 +0,0 @@-{-# OPTIONS_HADDOCK ignore-exports#-}-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE KindSignatures #-}-{-# LANGUAGE PatternSynonyms #-}-{-# LANGUAGE StandaloneDeriving #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE TypeSynonymInstances #-}-module Graphics.Vulkan.Types.Enum.VkExternalSemaphoreFeatureFlagsKHR- (VkExternalSemaphoreFeatureBitmaskKHR(VkExternalSemaphoreFeatureBitmaskKHR,- VkExternalSemaphoreFeatureFlagsKHR,- VkExternalSemaphoreFeatureFlagBitsKHR,- VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT_KHR,- VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT_KHR),- VkExternalSemaphoreFeatureFlagsKHR,- VkExternalSemaphoreFeatureFlagBitsKHR)- where-import Data.Bits (Bits, FiniteBits)-import Data.Data (Data)-import Foreign.Storable (Storable)-import GHC.Generics (Generic)-import GHC.Read (choose, expectP)-import Graphics.Vulkan.Marshal (FlagBit, FlagMask, FlagType)-import Graphics.Vulkan.Types.BaseTypes (VkFlags (..))-import Text.ParserCombinators.ReadPrec (prec, step, (+++))-import Text.Read (Read (..), parens)-import Text.Read.Lex (Lexeme (..))--newtype VkExternalSemaphoreFeatureBitmaskKHR (a ::- FlagType) = VkExternalSemaphoreFeatureBitmaskKHR VkFlags- deriving (Eq, Ord, Storable, Data,- Generic)--type VkExternalSemaphoreFeatureFlagsKHR =- VkExternalSemaphoreFeatureBitmaskKHR FlagMask--type VkExternalSemaphoreFeatureFlagBitsKHR =- VkExternalSemaphoreFeatureBitmaskKHR FlagBit--pattern VkExternalSemaphoreFeatureFlagBitsKHR ::- VkFlags -> VkExternalSemaphoreFeatureBitmaskKHR FlagBit--pattern VkExternalSemaphoreFeatureFlagBitsKHR n =- VkExternalSemaphoreFeatureBitmaskKHR n--pattern VkExternalSemaphoreFeatureFlagsKHR ::- VkFlags -> VkExternalSemaphoreFeatureBitmaskKHR FlagMask--pattern VkExternalSemaphoreFeatureFlagsKHR n =- VkExternalSemaphoreFeatureBitmaskKHR n--deriving instance- Bits (VkExternalSemaphoreFeatureBitmaskKHR FlagMask)--deriving instance- FiniteBits (VkExternalSemaphoreFeatureBitmaskKHR FlagMask)--deriving instance- Integral (VkExternalSemaphoreFeatureBitmaskKHR FlagMask)--deriving instance- Num (VkExternalSemaphoreFeatureBitmaskKHR FlagMask)--deriving instance- Bounded (VkExternalSemaphoreFeatureBitmaskKHR FlagMask)--deriving instance- Enum (VkExternalSemaphoreFeatureBitmaskKHR FlagMask)--deriving instance- Real (VkExternalSemaphoreFeatureBitmaskKHR FlagMask)--instance Show (VkExternalSemaphoreFeatureBitmaskKHR a) where- showsPrec _ VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT_KHR- = showString "VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT_KHR"- showsPrec _ VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT_KHR- = showString "VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT_KHR"- showsPrec p (VkExternalSemaphoreFeatureBitmaskKHR x)- = showParen (p >= 11)- (showString "VkExternalSemaphoreFeatureBitmaskKHR " .- showsPrec 11 x)--instance Read (VkExternalSemaphoreFeatureBitmaskKHR a) where- readPrec- = parens- (choose- [("VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT_KHR",- pure VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT_KHR),- ("VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT_KHR",- pure VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT_KHR)]- +++- prec 10- (expectP (Ident "VkExternalSemaphoreFeatureBitmaskKHR") >>- (VkExternalSemaphoreFeatureBitmaskKHR <$> step readPrec)))---- | bitpos = @0@-pattern VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT_KHR ::- VkExternalSemaphoreFeatureBitmaskKHR a--pattern VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT_KHR =- VkExternalSemaphoreFeatureBitmaskKHR 1---- | bitpos = @1@-pattern VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT_KHR ::- VkExternalSemaphoreFeatureBitmaskKHR a--pattern VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT_KHR =- VkExternalSemaphoreFeatureBitmaskKHR 2
@@ -0,0 +1,26 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Types.Enum.VkExternalSemaphoreHandleTypeFlagBitsKHR+ (VkExternalSemaphoreHandleTypeFlagBitsKHR(..)) where+import Data.Bits (Bits, FiniteBits)+import Data.Coerce (coerce)+import Data.Data (Data)+import Foreign.Storable (Storable)+import GHC.Generics (Generic)+import Graphics.Vulkan.Types.BaseTypes (VkFlags)++newtype VkExternalSemaphoreHandleTypeFlagBitsKHR = VkExternalSemaphoreHandleTypeFlagBitsKHR VkFlags+ deriving (Eq, Ord, Num, Bounded, Enum,+ Integral, Bits, FiniteBits, Storable,+ Real, Data, Generic)++instance Show VkExternalSemaphoreHandleTypeFlagBitsKHR where+ {-# INLINE show #-}+ show (VkExternalSemaphoreHandleTypeFlagBitsKHR x) = show x++instance Read VkExternalSemaphoreHandleTypeFlagBitsKHR where+ {-# INLINE readsPrec #-}+ readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags)
@@ -0,0 +1,148 @@+{-# OPTIONS_HADDOCK ignore-exports#-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE KindSignatures #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StandaloneDeriving #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeSynonymInstances #-}+module Graphics.Vulkan.Types.Enum.VkExternalSemaphoreHandleTypeFlags+ (VkExternalSemaphoreHandleTypeBitmask(VkExternalSemaphoreHandleTypeBitmask,+ VkExternalSemaphoreHandleTypeFlags,+ VkExternalSemaphoreHandleTypeFlagBits,+ VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT,+ VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT,+ VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT,+ VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT,+ VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT),+ VkExternalSemaphoreHandleTypeFlags,+ VkExternalSemaphoreHandleTypeFlagBits)+ where+import Data.Bits (Bits, FiniteBits)+import Data.Data (Data)+import Foreign.Storable (Storable)+import GHC.Generics (Generic)+import GHC.Read (choose, expectP)+import Graphics.Vulkan.Marshal (FlagBit, FlagMask, FlagType)+import Graphics.Vulkan.Types.BaseTypes (VkFlags (..))+import Text.ParserCombinators.ReadPrec (prec, step, (+++))+import Text.Read (Read (..), parens)+import Text.Read.Lex (Lexeme (..))++newtype VkExternalSemaphoreHandleTypeBitmask (a ::+ FlagType) = VkExternalSemaphoreHandleTypeBitmask VkFlags+ deriving (Eq, Ord, Storable, Data,+ Generic)++type VkExternalSemaphoreHandleTypeFlags =+ VkExternalSemaphoreHandleTypeBitmask FlagMask++type VkExternalSemaphoreHandleTypeFlagBits =+ VkExternalSemaphoreHandleTypeBitmask FlagBit++pattern VkExternalSemaphoreHandleTypeFlagBits ::+ VkFlags -> VkExternalSemaphoreHandleTypeBitmask FlagBit++pattern VkExternalSemaphoreHandleTypeFlagBits n =+ VkExternalSemaphoreHandleTypeBitmask n++pattern VkExternalSemaphoreHandleTypeFlags ::+ VkFlags -> VkExternalSemaphoreHandleTypeBitmask FlagMask++pattern VkExternalSemaphoreHandleTypeFlags n =+ VkExternalSemaphoreHandleTypeBitmask n++deriving instance+ Bits (VkExternalSemaphoreHandleTypeBitmask FlagMask)++deriving instance+ FiniteBits (VkExternalSemaphoreHandleTypeBitmask FlagMask)++deriving instance+ Integral (VkExternalSemaphoreHandleTypeBitmask FlagMask)++deriving instance+ Num (VkExternalSemaphoreHandleTypeBitmask FlagMask)++deriving instance+ Bounded (VkExternalSemaphoreHandleTypeBitmask FlagMask)++deriving instance+ Enum (VkExternalSemaphoreHandleTypeBitmask FlagMask)++deriving instance+ Real (VkExternalSemaphoreHandleTypeBitmask FlagMask)++instance Show (VkExternalSemaphoreHandleTypeBitmask a) where+ showsPrec _ VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT+ = showString "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT"+ showsPrec _ VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT+ = showString "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT"+ showsPrec _ VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT+ = showString+ "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT"+ showsPrec _ VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT+ = showString "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT"+ showsPrec _ VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT+ = showString "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT"+ showsPrec p (VkExternalSemaphoreHandleTypeBitmask x)+ = showParen (p >= 11)+ (showString "VkExternalSemaphoreHandleTypeBitmask " .+ showsPrec 11 x)++instance Read (VkExternalSemaphoreHandleTypeBitmask a) where+ readPrec+ = parens+ (choose+ [("VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT",+ pure VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT),+ ("VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT",+ pure VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT),+ ("VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT",+ pure VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT),+ ("VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT",+ pure VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT),+ ("VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT",+ pure VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT)]+ ++++ prec 10+ (expectP (Ident "VkExternalSemaphoreHandleTypeBitmask") >>+ (VkExternalSemaphoreHandleTypeBitmask <$> step readPrec)))++-- | bitpos = @0@+pattern VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT ::+ VkExternalSemaphoreHandleTypeBitmask a++pattern VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT =+ VkExternalSemaphoreHandleTypeBitmask 1++-- | bitpos = @1@+pattern VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT ::+ VkExternalSemaphoreHandleTypeBitmask a++pattern VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT =+ VkExternalSemaphoreHandleTypeBitmask 2++-- | bitpos = @2@+pattern VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT ::+ VkExternalSemaphoreHandleTypeBitmask a++pattern VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT =+ VkExternalSemaphoreHandleTypeBitmask 4++-- | bitpos = @3@+pattern VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT ::+ VkExternalSemaphoreHandleTypeBitmask a++pattern VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT =+ VkExternalSemaphoreHandleTypeBitmask 8++-- | bitpos = @4@+pattern VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT ::+ VkExternalSemaphoreHandleTypeBitmask a++pattern VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT =+ VkExternalSemaphoreHandleTypeBitmask 16
@@ -1,151 +0,0 @@-{-# OPTIONS_HADDOCK ignore-exports#-}-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE KindSignatures #-}-{-# LANGUAGE PatternSynonyms #-}-{-# LANGUAGE StandaloneDeriving #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE TypeSynonymInstances #-}-module Graphics.Vulkan.Types.Enum.VkExternalSemaphoreHandleTypeFlagsKHR- (VkExternalSemaphoreHandleTypeBitmaskKHR(VkExternalSemaphoreHandleTypeBitmaskKHR,- VkExternalSemaphoreHandleTypeFlagsKHR,- VkExternalSemaphoreHandleTypeFlagBitsKHR,- VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR,- VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR,- VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR,- VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT_KHR,- VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT_KHR),- VkExternalSemaphoreHandleTypeFlagsKHR,- VkExternalSemaphoreHandleTypeFlagBitsKHR)- where-import Data.Bits (Bits, FiniteBits)-import Data.Data (Data)-import Foreign.Storable (Storable)-import GHC.Generics (Generic)-import GHC.Read (choose, expectP)-import Graphics.Vulkan.Marshal (FlagBit, FlagMask, FlagType)-import Graphics.Vulkan.Types.BaseTypes (VkFlags (..))-import Text.ParserCombinators.ReadPrec (prec, step, (+++))-import Text.Read (Read (..), parens)-import Text.Read.Lex (Lexeme (..))--newtype VkExternalSemaphoreHandleTypeBitmaskKHR (a ::- FlagType) = VkExternalSemaphoreHandleTypeBitmaskKHR VkFlags- deriving (Eq, Ord, Storable, Data,- Generic)--type VkExternalSemaphoreHandleTypeFlagsKHR =- VkExternalSemaphoreHandleTypeBitmaskKHR FlagMask--type VkExternalSemaphoreHandleTypeFlagBitsKHR =- VkExternalSemaphoreHandleTypeBitmaskKHR FlagBit--pattern VkExternalSemaphoreHandleTypeFlagBitsKHR ::- VkFlags -> VkExternalSemaphoreHandleTypeBitmaskKHR FlagBit--pattern VkExternalSemaphoreHandleTypeFlagBitsKHR n =- VkExternalSemaphoreHandleTypeBitmaskKHR n--pattern VkExternalSemaphoreHandleTypeFlagsKHR ::- VkFlags -> VkExternalSemaphoreHandleTypeBitmaskKHR FlagMask--pattern VkExternalSemaphoreHandleTypeFlagsKHR n =- VkExternalSemaphoreHandleTypeBitmaskKHR n--deriving instance- Bits (VkExternalSemaphoreHandleTypeBitmaskKHR FlagMask)--deriving instance- FiniteBits (VkExternalSemaphoreHandleTypeBitmaskKHR FlagMask)--deriving instance- Integral (VkExternalSemaphoreHandleTypeBitmaskKHR FlagMask)--deriving instance- Num (VkExternalSemaphoreHandleTypeBitmaskKHR FlagMask)--deriving instance- Bounded (VkExternalSemaphoreHandleTypeBitmaskKHR FlagMask)--deriving instance- Enum (VkExternalSemaphoreHandleTypeBitmaskKHR FlagMask)--deriving instance- Real (VkExternalSemaphoreHandleTypeBitmaskKHR FlagMask)--instance Show (VkExternalSemaphoreHandleTypeBitmaskKHR a) where- showsPrec _ VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR- = showString "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR"- showsPrec _ VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR- = showString- "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR"- showsPrec _- VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR- = showString- "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR"- showsPrec _ VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT_KHR- = showString- "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT_KHR"- showsPrec _ VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT_KHR- = showString "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT_KHR"- showsPrec p (VkExternalSemaphoreHandleTypeBitmaskKHR x)- = showParen (p >= 11)- (showString "VkExternalSemaphoreHandleTypeBitmaskKHR " .- showsPrec 11 x)--instance Read (VkExternalSemaphoreHandleTypeBitmaskKHR a) where- readPrec- = parens- (choose- [("VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR",- pure VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR),- ("VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR",- pure VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR),- ("VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR",- pure VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR),- ("VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT_KHR",- pure VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT_KHR),- ("VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT_KHR",- pure VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT_KHR)]- +++- prec 10- (expectP (Ident "VkExternalSemaphoreHandleTypeBitmaskKHR") >>- (VkExternalSemaphoreHandleTypeBitmaskKHR <$> step readPrec)))---- | bitpos = @0@-pattern VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR ::- VkExternalSemaphoreHandleTypeBitmaskKHR a--pattern VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR =- VkExternalSemaphoreHandleTypeBitmaskKHR 1---- | bitpos = @1@-pattern VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR ::- VkExternalSemaphoreHandleTypeBitmaskKHR a--pattern VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR =- VkExternalSemaphoreHandleTypeBitmaskKHR 2---- | bitpos = @2@-pattern VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR- :: VkExternalSemaphoreHandleTypeBitmaskKHR a--pattern VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR- = VkExternalSemaphoreHandleTypeBitmaskKHR 4---- | bitpos = @3@-pattern VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT_KHR ::- VkExternalSemaphoreHandleTypeBitmaskKHR a--pattern VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT_KHR =- VkExternalSemaphoreHandleTypeBitmaskKHR 8---- | bitpos = @4@-pattern VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT_KHR ::- VkExternalSemaphoreHandleTypeBitmaskKHR a--pattern VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT_KHR =- VkExternalSemaphoreHandleTypeBitmaskKHR 16
@@ -0,0 +1,25 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Types.Enum.VkFenceImportFlagBitsKHR+ (VkFenceImportFlagBitsKHR(..)) where+import Data.Bits (Bits, FiniteBits)+import Data.Coerce (coerce)+import Data.Data (Data)+import Foreign.Storable (Storable)+import GHC.Generics (Generic)+import Graphics.Vulkan.Types.BaseTypes (VkFlags)++newtype VkFenceImportFlagBitsKHR = VkFenceImportFlagBitsKHR VkFlags+ deriving (Eq, Ord, Num, Bounded, Enum, Integral, Bits,+ FiniteBits, Storable, Real, Data, Generic)++instance Show VkFenceImportFlagBitsKHR where+ {-# INLINE show #-}+ show (VkFenceImportFlagBitsKHR x) = show x++instance Read VkFenceImportFlagBitsKHR where+ {-# INLINE readsPrec #-}+ readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags)
@@ -0,0 +1,81 @@+{-# OPTIONS_HADDOCK ignore-exports#-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE KindSignatures #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StandaloneDeriving #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeSynonymInstances #-}+module Graphics.Vulkan.Types.Enum.VkFenceImportFlags+ (VkFenceImportBitmask(VkFenceImportBitmask, VkFenceImportFlags,+ VkFenceImportFlagBits, VK_FENCE_IMPORT_TEMPORARY_BIT),+ VkFenceImportFlags, VkFenceImportFlagBits)+ where+import Data.Bits (Bits, FiniteBits)+import Data.Data (Data)+import Foreign.Storable (Storable)+import GHC.Generics (Generic)+import GHC.Read (choose, expectP)+import Graphics.Vulkan.Marshal (FlagBit, FlagMask, FlagType)+import Graphics.Vulkan.Types.BaseTypes (VkFlags (..))+import Text.ParserCombinators.ReadPrec (prec, step, (+++))+import Text.Read (Read (..), parens)+import Text.Read.Lex (Lexeme (..))++newtype VkFenceImportBitmask (a ::+ FlagType) = VkFenceImportBitmask VkFlags+ deriving (Eq, Ord, Storable, Data, Generic)++type VkFenceImportFlags = VkFenceImportBitmask FlagMask++type VkFenceImportFlagBits = VkFenceImportBitmask FlagBit++pattern VkFenceImportFlagBits ::+ VkFlags -> VkFenceImportBitmask FlagBit++pattern VkFenceImportFlagBits n = VkFenceImportBitmask n++pattern VkFenceImportFlags ::+ VkFlags -> VkFenceImportBitmask FlagMask++pattern VkFenceImportFlags n = VkFenceImportBitmask n++deriving instance Bits (VkFenceImportBitmask FlagMask)++deriving instance FiniteBits (VkFenceImportBitmask FlagMask)++deriving instance Integral (VkFenceImportBitmask FlagMask)++deriving instance Num (VkFenceImportBitmask FlagMask)++deriving instance Bounded (VkFenceImportBitmask FlagMask)++deriving instance Enum (VkFenceImportBitmask FlagMask)++deriving instance Real (VkFenceImportBitmask FlagMask)++instance Show (VkFenceImportBitmask a) where+ showsPrec _ VK_FENCE_IMPORT_TEMPORARY_BIT+ = showString "VK_FENCE_IMPORT_TEMPORARY_BIT"+ showsPrec p (VkFenceImportBitmask x)+ = showParen (p >= 11)+ (showString "VkFenceImportBitmask " . showsPrec 11 x)++instance Read (VkFenceImportBitmask a) where+ readPrec+ = parens+ (choose+ [("VK_FENCE_IMPORT_TEMPORARY_BIT",+ pure VK_FENCE_IMPORT_TEMPORARY_BIT)]+ ++++ prec 10+ (expectP (Ident "VkFenceImportBitmask") >>+ (VkFenceImportBitmask <$> step readPrec)))++-- | bitpos = @0@+pattern VK_FENCE_IMPORT_TEMPORARY_BIT :: VkFenceImportBitmask a++pattern VK_FENCE_IMPORT_TEMPORARY_BIT = VkFenceImportBitmask 1
@@ -1,84 +0,0 @@-{-# OPTIONS_HADDOCK ignore-exports#-}-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE KindSignatures #-}-{-# LANGUAGE PatternSynonyms #-}-{-# LANGUAGE StandaloneDeriving #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE TypeSynonymInstances #-}-module Graphics.Vulkan.Types.Enum.VkFenceImportFlagsKHR- (VkFenceImportBitmaskKHR(VkFenceImportBitmaskKHR,- VkFenceImportFlagsKHR, VkFenceImportFlagBitsKHR,- VK_FENCE_IMPORT_TEMPORARY_BIT_KHR),- VkFenceImportFlagsKHR, VkFenceImportFlagBitsKHR)- where-import Data.Bits (Bits, FiniteBits)-import Data.Data (Data)-import Foreign.Storable (Storable)-import GHC.Generics (Generic)-import GHC.Read (choose, expectP)-import Graphics.Vulkan.Marshal (FlagBit, FlagMask, FlagType)-import Graphics.Vulkan.Types.BaseTypes (VkFlags (..))-import Text.ParserCombinators.ReadPrec (prec, step, (+++))-import Text.Read (Read (..), parens)-import Text.Read.Lex (Lexeme (..))--newtype VkFenceImportBitmaskKHR (a ::- FlagType) = VkFenceImportBitmaskKHR VkFlags- deriving (Eq, Ord, Storable, Data, Generic)--type VkFenceImportFlagsKHR = VkFenceImportBitmaskKHR FlagMask--type VkFenceImportFlagBitsKHR = VkFenceImportBitmaskKHR FlagBit--pattern VkFenceImportFlagBitsKHR ::- VkFlags -> VkFenceImportBitmaskKHR FlagBit--pattern VkFenceImportFlagBitsKHR n = VkFenceImportBitmaskKHR n--pattern VkFenceImportFlagsKHR ::- VkFlags -> VkFenceImportBitmaskKHR FlagMask--pattern VkFenceImportFlagsKHR n = VkFenceImportBitmaskKHR n--deriving instance Bits (VkFenceImportBitmaskKHR FlagMask)--deriving instance FiniteBits (VkFenceImportBitmaskKHR FlagMask)--deriving instance Integral (VkFenceImportBitmaskKHR FlagMask)--deriving instance Num (VkFenceImportBitmaskKHR FlagMask)--deriving instance Bounded (VkFenceImportBitmaskKHR FlagMask)--deriving instance Enum (VkFenceImportBitmaskKHR FlagMask)--deriving instance Real (VkFenceImportBitmaskKHR FlagMask)--instance Show (VkFenceImportBitmaskKHR a) where- showsPrec _ VK_FENCE_IMPORT_TEMPORARY_BIT_KHR- = showString "VK_FENCE_IMPORT_TEMPORARY_BIT_KHR"- showsPrec p (VkFenceImportBitmaskKHR x)- = showParen (p >= 11)- (showString "VkFenceImportBitmaskKHR " . showsPrec 11 x)--instance Read (VkFenceImportBitmaskKHR a) where- readPrec- = parens- (choose- [("VK_FENCE_IMPORT_TEMPORARY_BIT_KHR",- pure VK_FENCE_IMPORT_TEMPORARY_BIT_KHR)]- +++- prec 10- (expectP (Ident "VkFenceImportBitmaskKHR") >>- (VkFenceImportBitmaskKHR <$> step readPrec)))---- | bitpos = @0@-pattern VK_FENCE_IMPORT_TEMPORARY_BIT_KHR ::- VkFenceImportBitmaskKHR a--pattern VK_FENCE_IMPORT_TEMPORARY_BIT_KHR =- VkFenceImportBitmaskKHR 1
@@ -18,7 +18,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkFilter.html VkFilter registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkFilter.html VkFilter registry at www.khronos.org> newtype VkFilter = VkFilter Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -119,7 +119,7 @@ -- type = @enum@ -- ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkFormat.html VkFormat registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkFormat.html VkFormat registry at www.khronos.org> newtype VkFormat = VkFormat Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -20,7 +20,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkFrontFace.html VkFrontFace registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkFrontFace.html VkFrontFace registry at www.khronos.org> newtype VkFrontFace = VkFrontFace Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -26,7 +26,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkImageLayout.html VkImageLayout registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkImageLayout.html VkImageLayout registry at www.khronos.org> newtype VkImageLayout = VkImageLayout Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -20,7 +20,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkImageTiling.html VkImageTiling registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkImageTiling.html VkImageTiling registry at www.khronos.org> newtype VkImageTiling = VkImageTiling Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -20,7 +20,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkImageType.html VkImageType registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkImageType.html VkImageType registry at www.khronos.org> newtype VkImageType = VkImageType Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -22,7 +22,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkImageViewType.html VkImageViewType registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkImageViewType.html VkImageViewType registry at www.khronos.org> newtype VkImageViewType = VkImageViewType Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -20,7 +20,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkIndexType.html VkIndexType registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkIndexType.html VkIndexType registry at www.khronos.org> newtype VkIndexType = VkIndexType Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -27,7 +27,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkIndirectCommandsTokenTypeNVX.html VkIndirectCommandsTokenTypeNVX registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkIndirectCommandsTokenTypeNVX.html VkIndirectCommandsTokenTypeNVX registry at www.khronos.org> newtype VkIndirectCommandsTokenTypeNVX = VkIndirectCommandsTokenTypeNVX Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -20,7 +20,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkInternalAllocationType.html VkInternalAllocationType registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkInternalAllocationType.html VkInternalAllocationType registry at www.khronos.org> newtype VkInternalAllocationType = VkInternalAllocationType Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -25,7 +25,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkLogicOp.html VkLogicOp registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkLogicOp.html VkLogicOp registry at www.khronos.org> newtype VkLogicOp = VkLogicOp Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -0,0 +1,25 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Types.Enum.VkMemoryAllocateFlagBitsKHR+ (VkMemoryAllocateFlagBitsKHR(..)) where+import Data.Bits (Bits, FiniteBits)+import Data.Coerce (coerce)+import Data.Data (Data)+import Foreign.Storable (Storable)+import GHC.Generics (Generic)+import Graphics.Vulkan.Types.BaseTypes (VkFlags)++newtype VkMemoryAllocateFlagBitsKHR = VkMemoryAllocateFlagBitsKHR VkFlags+ deriving (Eq, Ord, Num, Bounded, Enum, Integral, Bits,+ FiniteBits, Storable, Real, Data, Generic)++instance Show VkMemoryAllocateFlagBitsKHR where+ {-# INLINE show #-}+ show (VkMemoryAllocateFlagBitsKHR x) = show x++instance Read VkMemoryAllocateFlagBitsKHR where+ {-# INLINE readsPrec #-}+ readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags)
@@ -0,0 +1,86 @@+{-# OPTIONS_HADDOCK ignore-exports#-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE KindSignatures #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StandaloneDeriving #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeSynonymInstances #-}+module Graphics.Vulkan.Types.Enum.VkMemoryAllocateFlags+ (VkMemoryAllocateBitmask(VkMemoryAllocateBitmask,+ VkMemoryAllocateFlags, VkMemoryAllocateFlagBits,+ VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT),+ VkMemoryAllocateFlags, VkMemoryAllocateFlagBits)+ where+import Data.Bits (Bits, FiniteBits)+import Data.Data (Data)+import Foreign.Storable (Storable)+import GHC.Generics (Generic)+import GHC.Read (choose, expectP)+import Graphics.Vulkan.Marshal (FlagBit, FlagMask, FlagType)+import Graphics.Vulkan.Types.BaseTypes (VkFlags (..))+import Text.ParserCombinators.ReadPrec (prec, step, (+++))+import Text.Read (Read (..), parens)+import Text.Read.Lex (Lexeme (..))++newtype VkMemoryAllocateBitmask (a ::+ FlagType) = VkMemoryAllocateBitmask VkFlags+ deriving (Eq, Ord, Storable, Data, Generic)++type VkMemoryAllocateFlags = VkMemoryAllocateBitmask FlagMask++type VkMemoryAllocateFlagBits = VkMemoryAllocateBitmask FlagBit++pattern VkMemoryAllocateFlagBits ::+ VkFlags -> VkMemoryAllocateBitmask FlagBit++pattern VkMemoryAllocateFlagBits n = VkMemoryAllocateBitmask n++pattern VkMemoryAllocateFlags ::+ VkFlags -> VkMemoryAllocateBitmask FlagMask++pattern VkMemoryAllocateFlags n = VkMemoryAllocateBitmask n++deriving instance Bits (VkMemoryAllocateBitmask FlagMask)++deriving instance FiniteBits (VkMemoryAllocateBitmask FlagMask)++deriving instance Integral (VkMemoryAllocateBitmask FlagMask)++deriving instance Num (VkMemoryAllocateBitmask FlagMask)++deriving instance Bounded (VkMemoryAllocateBitmask FlagMask)++deriving instance Enum (VkMemoryAllocateBitmask FlagMask)++deriving instance Real (VkMemoryAllocateBitmask FlagMask)++instance Show (VkMemoryAllocateBitmask a) where+ showsPrec _ VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT+ = showString "VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT"+ showsPrec p (VkMemoryAllocateBitmask x)+ = showParen (p >= 11)+ (showString "VkMemoryAllocateBitmask " . showsPrec 11 x)++instance Read (VkMemoryAllocateBitmask a) where+ readPrec+ = parens+ (choose+ [("VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT",+ pure VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT)]+ ++++ prec 10+ (expectP (Ident "VkMemoryAllocateBitmask") >>+ (VkMemoryAllocateBitmask <$> step readPrec)))++-- | Force allocation on specific devices+--+-- bitpos = @0@+pattern VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT ::+ VkMemoryAllocateBitmask a++pattern VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT =+ VkMemoryAllocateBitmask 1
@@ -1,88 +0,0 @@-{-# OPTIONS_HADDOCK ignore-exports#-}-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE KindSignatures #-}-{-# LANGUAGE PatternSynonyms #-}-{-# LANGUAGE StandaloneDeriving #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE TypeSynonymInstances #-}-module Graphics.Vulkan.Types.Enum.VkMemoryAllocateFlagsKHX- (VkMemoryAllocateBitmaskKHX(VkMemoryAllocateBitmaskKHX,- VkMemoryAllocateFlagsKHX, VkMemoryAllocateFlagBitsKHX,- VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT_KHX),- VkMemoryAllocateFlagsKHX, VkMemoryAllocateFlagBitsKHX)- where-import Data.Bits (Bits, FiniteBits)-import Data.Data (Data)-import Foreign.Storable (Storable)-import GHC.Generics (Generic)-import GHC.Read (choose, expectP)-import Graphics.Vulkan.Marshal (FlagBit, FlagMask, FlagType)-import Graphics.Vulkan.Types.BaseTypes (VkFlags (..))-import Text.ParserCombinators.ReadPrec (prec, step, (+++))-import Text.Read (Read (..), parens)-import Text.Read.Lex (Lexeme (..))--newtype VkMemoryAllocateBitmaskKHX (a ::- FlagType) = VkMemoryAllocateBitmaskKHX VkFlags- deriving (Eq, Ord, Storable, Data, Generic)--type VkMemoryAllocateFlagsKHX = VkMemoryAllocateBitmaskKHX FlagMask--type VkMemoryAllocateFlagBitsKHX =- VkMemoryAllocateBitmaskKHX FlagBit--pattern VkMemoryAllocateFlagBitsKHX ::- VkFlags -> VkMemoryAllocateBitmaskKHX FlagBit--pattern VkMemoryAllocateFlagBitsKHX n =- VkMemoryAllocateBitmaskKHX n--pattern VkMemoryAllocateFlagsKHX ::- VkFlags -> VkMemoryAllocateBitmaskKHX FlagMask--pattern VkMemoryAllocateFlagsKHX n = VkMemoryAllocateBitmaskKHX n--deriving instance Bits (VkMemoryAllocateBitmaskKHX FlagMask)--deriving instance FiniteBits (VkMemoryAllocateBitmaskKHX FlagMask)--deriving instance Integral (VkMemoryAllocateBitmaskKHX FlagMask)--deriving instance Num (VkMemoryAllocateBitmaskKHX FlagMask)--deriving instance Bounded (VkMemoryAllocateBitmaskKHX FlagMask)--deriving instance Enum (VkMemoryAllocateBitmaskKHX FlagMask)--deriving instance Real (VkMemoryAllocateBitmaskKHX FlagMask)--instance Show (VkMemoryAllocateBitmaskKHX a) where- showsPrec _ VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT_KHX- = showString "VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT_KHX"- showsPrec p (VkMemoryAllocateBitmaskKHX x)- = showParen (p >= 11)- (showString "VkMemoryAllocateBitmaskKHX " . showsPrec 11 x)--instance Read (VkMemoryAllocateBitmaskKHX a) where- readPrec- = parens- (choose- [("VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT_KHX",- pure VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT_KHX)]- +++- prec 10- (expectP (Ident "VkMemoryAllocateBitmaskKHX") >>- (VkMemoryAllocateBitmaskKHX <$> step readPrec)))---- | Force allocation on specific devices------ bitpos = @0@-pattern VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT_KHX ::- VkMemoryAllocateBitmaskKHX a--pattern VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT_KHX =- VkMemoryAllocateBitmaskKHX 1
@@ -24,7 +24,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkObjectEntryTypeNVX.html VkObjectEntryTypeNVX registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkObjectEntryTypeNVX.html VkObjectEntryTypeNVX registry at www.khronos.org> newtype VkObjectEntryTypeNVX = VkObjectEntryTypeNVX Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -34,7 +34,7 @@ -- type = @enum@ -- ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkObjectType.html VkObjectType registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkObjectType.html VkObjectType registry at www.khronos.org> newtype VkObjectType = VkObjectType Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -0,0 +1,25 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Types.Enum.VkPeerMemoryFeatureFlagBitsKHR+ (VkPeerMemoryFeatureFlagBitsKHR(..)) where+import Data.Bits (Bits, FiniteBits)+import Data.Coerce (coerce)+import Data.Data (Data)+import Foreign.Storable (Storable)+import GHC.Generics (Generic)+import Graphics.Vulkan.Types.BaseTypes (VkFlags)++newtype VkPeerMemoryFeatureFlagBitsKHR = VkPeerMemoryFeatureFlagBitsKHR VkFlags+ deriving (Eq, Ord, Num, Bounded, Enum, Integral, Bits,+ FiniteBits, Storable, Real, Data, Generic)++instance Show VkPeerMemoryFeatureFlagBitsKHR where+ {-# INLINE show #-}+ show (VkPeerMemoryFeatureFlagBitsKHR x) = show x++instance Read VkPeerMemoryFeatureFlagBitsKHR where+ {-# INLINE readsPrec #-}+ readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags)
@@ -0,0 +1,130 @@+{-# OPTIONS_HADDOCK ignore-exports#-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE KindSignatures #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StandaloneDeriving #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeSynonymInstances #-}+module Graphics.Vulkan.Types.Enum.VkPeerMemoryFeatureFlags+ (VkPeerMemoryFeatureBitmask(VkPeerMemoryFeatureBitmask,+ VkPeerMemoryFeatureFlags, VkPeerMemoryFeatureFlagBits,+ VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT,+ VK_PEER_MEMORY_FEATURE_COPY_DST_BIT,+ VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT,+ VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT),+ VkPeerMemoryFeatureFlags, VkPeerMemoryFeatureFlagBits)+ where+import Data.Bits (Bits, FiniteBits)+import Data.Data (Data)+import Foreign.Storable (Storable)+import GHC.Generics (Generic)+import GHC.Read (choose, expectP)+import Graphics.Vulkan.Marshal (FlagBit, FlagMask, FlagType)+import Graphics.Vulkan.Types.BaseTypes (VkFlags (..))+import Text.ParserCombinators.ReadPrec (prec, step, (+++))+import Text.Read (Read (..), parens)+import Text.Read.Lex (Lexeme (..))++newtype VkPeerMemoryFeatureBitmask (a ::+ FlagType) = VkPeerMemoryFeatureBitmask VkFlags+ deriving (Eq, Ord, Storable, Data, Generic)++type VkPeerMemoryFeatureFlags = VkPeerMemoryFeatureBitmask FlagMask++type VkPeerMemoryFeatureFlagBits =+ VkPeerMemoryFeatureBitmask FlagBit++pattern VkPeerMemoryFeatureFlagBits ::+ VkFlags -> VkPeerMemoryFeatureBitmask FlagBit++pattern VkPeerMemoryFeatureFlagBits n =+ VkPeerMemoryFeatureBitmask n++pattern VkPeerMemoryFeatureFlags ::+ VkFlags -> VkPeerMemoryFeatureBitmask FlagMask++pattern VkPeerMemoryFeatureFlags n = VkPeerMemoryFeatureBitmask n++deriving instance Bits (VkPeerMemoryFeatureBitmask FlagMask)++deriving instance FiniteBits (VkPeerMemoryFeatureBitmask FlagMask)++deriving instance Integral (VkPeerMemoryFeatureBitmask FlagMask)++deriving instance Num (VkPeerMemoryFeatureBitmask FlagMask)++deriving instance Bounded (VkPeerMemoryFeatureBitmask FlagMask)++deriving instance Enum (VkPeerMemoryFeatureBitmask FlagMask)++deriving instance Real (VkPeerMemoryFeatureBitmask FlagMask)++instance Show (VkPeerMemoryFeatureBitmask a) where+ showsPrec _ VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT+ = showString "VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT"+ showsPrec _ VK_PEER_MEMORY_FEATURE_COPY_DST_BIT+ = showString "VK_PEER_MEMORY_FEATURE_COPY_DST_BIT"+ showsPrec _ VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT+ = showString "VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT"+ showsPrec _ VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT+ = showString "VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT"+ showsPrec p (VkPeerMemoryFeatureBitmask x)+ = showParen (p >= 11)+ (showString "VkPeerMemoryFeatureBitmask " . showsPrec 11 x)++instance Read (VkPeerMemoryFeatureBitmask a) where+ readPrec+ = parens+ (choose+ [("VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT",+ pure VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT),+ ("VK_PEER_MEMORY_FEATURE_COPY_DST_BIT",+ pure VK_PEER_MEMORY_FEATURE_COPY_DST_BIT),+ ("VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT",+ pure VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT),+ ("VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT",+ pure VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT)]+ ++++ prec 10+ (expectP (Ident "VkPeerMemoryFeatureBitmask") >>+ (VkPeerMemoryFeatureBitmask <$> step readPrec)))++-- | Can read with vkCmdCopy commands+--+-- bitpos = @0@+pattern VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT ::+ VkPeerMemoryFeatureBitmask a++pattern VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT =+ VkPeerMemoryFeatureBitmask 1++-- | Can write with vkCmdCopy commands+--+-- bitpos = @1@+pattern VK_PEER_MEMORY_FEATURE_COPY_DST_BIT ::+ VkPeerMemoryFeatureBitmask a++pattern VK_PEER_MEMORY_FEATURE_COPY_DST_BIT =+ VkPeerMemoryFeatureBitmask 2++-- | Can read with any access type/command+--+-- bitpos = @2@+pattern VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT ::+ VkPeerMemoryFeatureBitmask a++pattern VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT =+ VkPeerMemoryFeatureBitmask 4++-- | Can write with and access type/command+--+-- bitpos = @3@+pattern VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT ::+ VkPeerMemoryFeatureBitmask a++pattern VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT =+ VkPeerMemoryFeatureBitmask 8
@@ -1,133 +0,0 @@-{-# OPTIONS_HADDOCK ignore-exports#-}-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE KindSignatures #-}-{-# LANGUAGE PatternSynonyms #-}-{-# LANGUAGE StandaloneDeriving #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE TypeSynonymInstances #-}-module Graphics.Vulkan.Types.Enum.VkPeerMemoryFeatureFlagsKHX- (VkPeerMemoryFeatureBitmaskKHX(VkPeerMemoryFeatureBitmaskKHX,- VkPeerMemoryFeatureFlagsKHX, VkPeerMemoryFeatureFlagBitsKHX,- VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT_KHX,- VK_PEER_MEMORY_FEATURE_COPY_DST_BIT_KHX,- VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT_KHX,- VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT_KHX),- VkPeerMemoryFeatureFlagsKHX, VkPeerMemoryFeatureFlagBitsKHX)- where-import Data.Bits (Bits, FiniteBits)-import Data.Data (Data)-import Foreign.Storable (Storable)-import GHC.Generics (Generic)-import GHC.Read (choose, expectP)-import Graphics.Vulkan.Marshal (FlagBit, FlagMask, FlagType)-import Graphics.Vulkan.Types.BaseTypes (VkFlags (..))-import Text.ParserCombinators.ReadPrec (prec, step, (+++))-import Text.Read (Read (..), parens)-import Text.Read.Lex (Lexeme (..))--newtype VkPeerMemoryFeatureBitmaskKHX (a ::- FlagType) = VkPeerMemoryFeatureBitmaskKHX VkFlags- deriving (Eq, Ord, Storable, Data, Generic)--type VkPeerMemoryFeatureFlagsKHX =- VkPeerMemoryFeatureBitmaskKHX FlagMask--type VkPeerMemoryFeatureFlagBitsKHX =- VkPeerMemoryFeatureBitmaskKHX FlagBit--pattern VkPeerMemoryFeatureFlagBitsKHX ::- VkFlags -> VkPeerMemoryFeatureBitmaskKHX FlagBit--pattern VkPeerMemoryFeatureFlagBitsKHX n =- VkPeerMemoryFeatureBitmaskKHX n--pattern VkPeerMemoryFeatureFlagsKHX ::- VkFlags -> VkPeerMemoryFeatureBitmaskKHX FlagMask--pattern VkPeerMemoryFeatureFlagsKHX n =- VkPeerMemoryFeatureBitmaskKHX n--deriving instance Bits (VkPeerMemoryFeatureBitmaskKHX FlagMask)--deriving instance- FiniteBits (VkPeerMemoryFeatureBitmaskKHX FlagMask)--deriving instance Integral (VkPeerMemoryFeatureBitmaskKHX FlagMask)--deriving instance Num (VkPeerMemoryFeatureBitmaskKHX FlagMask)--deriving instance Bounded (VkPeerMemoryFeatureBitmaskKHX FlagMask)--deriving instance Enum (VkPeerMemoryFeatureBitmaskKHX FlagMask)--deriving instance Real (VkPeerMemoryFeatureBitmaskKHX FlagMask)--instance Show (VkPeerMemoryFeatureBitmaskKHX a) where- showsPrec _ VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT_KHX- = showString "VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT_KHX"- showsPrec _ VK_PEER_MEMORY_FEATURE_COPY_DST_BIT_KHX- = showString "VK_PEER_MEMORY_FEATURE_COPY_DST_BIT_KHX"- showsPrec _ VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT_KHX- = showString "VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT_KHX"- showsPrec _ VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT_KHX- = showString "VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT_KHX"- showsPrec p (VkPeerMemoryFeatureBitmaskKHX x)- = showParen (p >= 11)- (showString "VkPeerMemoryFeatureBitmaskKHX " . showsPrec 11 x)--instance Read (VkPeerMemoryFeatureBitmaskKHX a) where- readPrec- = parens- (choose- [("VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT_KHX",- pure VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT_KHX),- ("VK_PEER_MEMORY_FEATURE_COPY_DST_BIT_KHX",- pure VK_PEER_MEMORY_FEATURE_COPY_DST_BIT_KHX),- ("VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT_KHX",- pure VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT_KHX),- ("VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT_KHX",- pure VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT_KHX)]- +++- prec 10- (expectP (Ident "VkPeerMemoryFeatureBitmaskKHX") >>- (VkPeerMemoryFeatureBitmaskKHX <$> step readPrec)))---- | Can read with vkCmdCopy commands------ bitpos = @0@-pattern VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT_KHX ::- VkPeerMemoryFeatureBitmaskKHX a--pattern VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT_KHX =- VkPeerMemoryFeatureBitmaskKHX 1---- | Can write with vkCmdCopy commands------ bitpos = @1@-pattern VK_PEER_MEMORY_FEATURE_COPY_DST_BIT_KHX ::- VkPeerMemoryFeatureBitmaskKHX a--pattern VK_PEER_MEMORY_FEATURE_COPY_DST_BIT_KHX =- VkPeerMemoryFeatureBitmaskKHX 2---- | Can read with any access type/command------ bitpos = @2@-pattern VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT_KHX ::- VkPeerMemoryFeatureBitmaskKHX a--pattern VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT_KHX =- VkPeerMemoryFeatureBitmaskKHX 4---- | Can write with and access type/command------ bitpos = @3@-pattern VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT_KHX ::- VkPeerMemoryFeatureBitmaskKHX a--pattern VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT_KHX =- VkPeerMemoryFeatureBitmaskKHX 8
@@ -23,7 +23,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkPhysicalDeviceType.html VkPhysicalDeviceType registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkPhysicalDeviceType.html VkPhysicalDeviceType registry at www.khronos.org> newtype VkPhysicalDeviceType = VkPhysicalDeviceType Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -20,7 +20,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkPipelineBindPoint.html VkPipelineBindPoint registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkPipelineBindPoint.html VkPipelineBindPoint registry at www.khronos.org> newtype VkPipelineBindPoint = VkPipelineBindPoint Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -20,7 +20,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkPipelineCacheHeaderVersion.html VkPipelineCacheHeaderVersion registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkPipelineCacheHeaderVersion.html VkPipelineCacheHeaderVersion registry at www.khronos.org> newtype VkPipelineCacheHeaderVersion = VkPipelineCacheHeaderVersion Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -0,0 +1,60 @@+{-# OPTIONS_HADDOCK ignore-exports#-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Types.Enum.VkPointClippingBehavior+ (VkPointClippingBehavior(VkPointClippingBehavior,+ VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES,+ VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY))+ where+import Data.Data (Data)+import Foreign.Storable (Storable)+import GHC.Generics (Generic)+import GHC.Read (choose, expectP)+import Graphics.Vulkan.Marshal (Int32)+import Text.ParserCombinators.ReadPrec (prec, step, (+++))+import Text.Read (Read (..), parens)+import Text.Read.Lex (Lexeme (..))++-- | type = @enum@+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkPointClippingBehavior.html VkPointClippingBehavior registry at www.khronos.org>+newtype VkPointClippingBehavior = VkPointClippingBehavior Int32+ deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)++instance Show VkPointClippingBehavior where+ showsPrec _ VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES+ = showString "VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES"+ showsPrec _ VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY+ = showString "VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY"+ showsPrec p (VkPointClippingBehavior x)+ = showParen (p >= 11)+ (showString "VkPointClippingBehavior " . showsPrec 11 x)++instance Read VkPointClippingBehavior where+ readPrec+ = parens+ (choose+ [("VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES",+ pure VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES),+ ("VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY",+ pure VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY)]+ ++++ prec 10+ (expectP (Ident "VkPointClippingBehavior") >>+ (VkPointClippingBehavior <$> step readPrec)))++pattern VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES ::+ VkPointClippingBehavior++pattern VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES =+ VkPointClippingBehavior 0++pattern VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY ::+ VkPointClippingBehavior++pattern VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY =+ VkPointClippingBehavior 1
@@ -1,61 +1,25 @@-{-# OPTIONS_HADDOCK ignore-exports#-} {-# LANGUAGE DataKinds #-} {-# LANGUAGE DeriveDataTypeable #-} {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE PatternSynonyms #-} {-# LANGUAGE Strict #-} module Graphics.Vulkan.Types.Enum.VkPointClippingBehaviorKHR- (VkPointClippingBehaviorKHR(VkPointClippingBehaviorKHR,- VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES_KHR,- VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY_KHR))- where+ (VkPointClippingBehaviorKHR(..)) where+import Data.Bits (Bits, FiniteBits)+import Data.Coerce (coerce) import Data.Data (Data) import Foreign.Storable (Storable) import GHC.Generics (Generic)-import GHC.Read (choose, expectP)-import Graphics.Vulkan.Marshal (Int32)-import Text.ParserCombinators.ReadPrec (prec, step, (+++))-import Text.Read (Read (..), parens)-import Text.Read.Lex (Lexeme (..))+import Graphics.Vulkan.Types.BaseTypes (VkFlags) --- | type = @enum@------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkPointClippingBehaviorKHR.html VkPointClippingBehaviorKHR registry at www.khronos.org>-newtype VkPointClippingBehaviorKHR = VkPointClippingBehaviorKHR Int32- deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data,- Generic)+newtype VkPointClippingBehaviorKHR = VkPointClippingBehaviorKHR VkFlags+ deriving (Eq, Ord, Num, Bounded, Enum, Integral, Bits,+ FiniteBits, Storable, Real, Data, Generic) instance Show VkPointClippingBehaviorKHR where- showsPrec _ VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES_KHR- = showString "VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES_KHR"- showsPrec _ VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY_KHR- = showString "VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY_KHR"- showsPrec p (VkPointClippingBehaviorKHR x)- = showParen (p >= 11)- (showString "VkPointClippingBehaviorKHR " . showsPrec 11 x)+ {-# INLINE show #-}+ show (VkPointClippingBehaviorKHR x) = show x instance Read VkPointClippingBehaviorKHR where- readPrec- = parens- (choose- [("VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES_KHR",- pure VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES_KHR),- ("VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY_KHR",- pure VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY_KHR)]- +++- prec 10- (expectP (Ident "VkPointClippingBehaviorKHR") >>- (VkPointClippingBehaviorKHR <$> step readPrec)))--pattern VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES_KHR ::- VkPointClippingBehaviorKHR--pattern VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES_KHR =- VkPointClippingBehaviorKHR 0--pattern VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY_KHR ::- VkPointClippingBehaviorKHR--pattern VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY_KHR =- VkPointClippingBehaviorKHR 1+ {-# INLINE readsPrec #-}+ readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags)
@@ -20,7 +20,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkPolygonMode.html VkPolygonMode registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkPolygonMode.html VkPolygonMode registry at www.khronos.org> newtype VkPolygonMode = VkPolygonMode Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -21,7 +21,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkPresentModeKHR.html VkPresentModeKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkPresentModeKHR.html VkPresentModeKHR registry at www.khronos.org> newtype VkPresentModeKHR = VkPresentModeKHR Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -29,7 +29,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkPrimitiveTopology.html VkPrimitiveTopology registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkPrimitiveTopology.html VkPrimitiveTopology registry at www.khronos.org> newtype VkPrimitiveTopology = VkPrimitiveTopology Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -20,7 +20,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkQueryType.html VkQueryType registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkQueryType.html VkQueryType registry at www.khronos.org> newtype VkQueryType = VkQueryType Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -23,7 +23,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkQueueGlobalPriorityEXT.html VkQueueGlobalPriorityEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkQueueGlobalPriorityEXT.html VkQueueGlobalPriorityEXT registry at www.khronos.org> newtype VkQueueGlobalPriorityEXT = VkQueueGlobalPriorityEXT Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -21,7 +21,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkRasterizationOrderAMD.html VkRasterizationOrderAMD registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkRasterizationOrderAMD.html VkRasterizationOrderAMD registry at www.khronos.org> newtype VkRasterizationOrderAMD = VkRasterizationOrderAMD Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -29,7 +29,7 @@ -- type = @enum@ -- ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkResult.html VkResult registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkResult.html VkResult registry at www.khronos.org> newtype VkResult = VkResult Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -23,7 +23,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkSamplerAddressMode.html VkSamplerAddressMode registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkSamplerAddressMode.html VkSamplerAddressMode registry at www.khronos.org> newtype VkSamplerAddressMode = VkSamplerAddressMode Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -20,7 +20,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkSamplerMipmapMode.html VkSamplerMipmapMode registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkSamplerMipmapMode.html VkSamplerMipmapMode registry at www.khronos.org> newtype VkSamplerMipmapMode = VkSamplerMipmapMode Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -22,7 +22,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkSamplerReductionModeEXT.html VkSamplerReductionModeEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkSamplerReductionModeEXT.html VkSamplerReductionModeEXT registry at www.khronos.org> newtype VkSamplerReductionModeEXT = VkSamplerReductionModeEXT Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -0,0 +1,98 @@+{-# OPTIONS_HADDOCK ignore-exports#-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Types.Enum.VkSamplerYcbcrModelConversion+ (VkSamplerYcbcrModelConversion(VkSamplerYcbcrModelConversion,+ VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY,+ VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY,+ VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709,+ VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601,+ VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020))+ where+import Data.Data (Data)+import Foreign.Storable (Storable)+import GHC.Generics (Generic)+import GHC.Read (choose, expectP)+import Graphics.Vulkan.Marshal (Int32)+import Text.ParserCombinators.ReadPrec (prec, step, (+++))+import Text.Read (Read (..), parens)+import Text.Read.Lex (Lexeme (..))++-- | type = @enum@+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkSamplerYcbcrModelConversion.html VkSamplerYcbcrModelConversion registry at www.khronos.org>+newtype VkSamplerYcbcrModelConversion = VkSamplerYcbcrModelConversion Int32+ deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data,+ Generic)++instance Show VkSamplerYcbcrModelConversion where+ showsPrec _ VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY+ = showString "VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY"+ showsPrec _ VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY+ = showString "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY"+ showsPrec _ VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709+ = showString "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709"+ showsPrec _ VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601+ = showString "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601"+ showsPrec _ VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020+ = showString "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020"+ showsPrec p (VkSamplerYcbcrModelConversion x)+ = showParen (p >= 11)+ (showString "VkSamplerYcbcrModelConversion " . showsPrec 11 x)++instance Read VkSamplerYcbcrModelConversion where+ readPrec+ = parens+ (choose+ [("VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY",+ pure VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY),+ ("VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY",+ pure VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY),+ ("VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709",+ pure VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709),+ ("VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601",+ pure VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601),+ ("VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020",+ pure VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020)]+ ++++ prec 10+ (expectP (Ident "VkSamplerYcbcrModelConversion") >>+ (VkSamplerYcbcrModelConversion <$> step readPrec)))++pattern VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY ::+ VkSamplerYcbcrModelConversion++pattern VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY =+ VkSamplerYcbcrModelConversion 0++-- | just range expansion+pattern VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY ::+ VkSamplerYcbcrModelConversion++pattern VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY =+ VkSamplerYcbcrModelConversion 1++-- | aka HD YUV+pattern VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709 ::+ VkSamplerYcbcrModelConversion++pattern VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709 =+ VkSamplerYcbcrModelConversion 2++-- | aka SD YUV+pattern VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601 ::+ VkSamplerYcbcrModelConversion++pattern VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601 =+ VkSamplerYcbcrModelConversion 3++-- | aka UHD YUV+pattern VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020 ::+ VkSamplerYcbcrModelConversion++pattern VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020 =+ VkSamplerYcbcrModelConversion 4
@@ -1,98 +1,25 @@-{-# OPTIONS_HADDOCK ignore-exports#-} {-# LANGUAGE DataKinds #-} {-# LANGUAGE DeriveDataTypeable #-} {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE PatternSynonyms #-} {-# LANGUAGE Strict #-} module Graphics.Vulkan.Types.Enum.VkSamplerYcbcrModelConversionKHR- (VkSamplerYcbcrModelConversionKHR(VkSamplerYcbcrModelConversionKHR,- VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY_KHR,- VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY_KHR,- VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709_KHR,- VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601_KHR,- VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020_KHR))- where+ (VkSamplerYcbcrModelConversionKHR(..)) where+import Data.Bits (Bits, FiniteBits)+import Data.Coerce (coerce) import Data.Data (Data) import Foreign.Storable (Storable) import GHC.Generics (Generic)-import GHC.Read (choose, expectP)-import Graphics.Vulkan.Marshal (Int32)-import Text.ParserCombinators.ReadPrec (prec, step, (+++))-import Text.Read (Read (..), parens)-import Text.Read.Lex (Lexeme (..))+import Graphics.Vulkan.Types.BaseTypes (VkFlags) --- | type = @enum@------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkSamplerYcbcrModelConversionKHR.html VkSamplerYcbcrModelConversionKHR registry at www.khronos.org>-newtype VkSamplerYcbcrModelConversionKHR = VkSamplerYcbcrModelConversionKHR Int32- deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data,- Generic)+newtype VkSamplerYcbcrModelConversionKHR = VkSamplerYcbcrModelConversionKHR VkFlags+ deriving (Eq, Ord, Num, Bounded, Enum, Integral, Bits,+ FiniteBits, Storable, Real, Data, Generic) instance Show VkSamplerYcbcrModelConversionKHR where- showsPrec _ VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY_KHR- = showString "VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY_KHR"- showsPrec _ VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY_KHR- = showString "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY_KHR"- showsPrec _ VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709_KHR- = showString "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709_KHR"- showsPrec _ VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601_KHR- = showString "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601_KHR"- showsPrec _ VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020_KHR- = showString "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020_KHR"- showsPrec p (VkSamplerYcbcrModelConversionKHR x)- = showParen (p >= 11)- (showString "VkSamplerYcbcrModelConversionKHR " . showsPrec 11 x)+ {-# INLINE show #-}+ show (VkSamplerYcbcrModelConversionKHR x) = show x instance Read VkSamplerYcbcrModelConversionKHR where- readPrec- = parens- (choose- [("VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY_KHR",- pure VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY_KHR),- ("VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY_KHR",- pure VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY_KHR),- ("VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709_KHR",- pure VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709_KHR),- ("VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601_KHR",- pure VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601_KHR),- ("VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020_KHR",- pure VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020_KHR)]- +++- prec 10- (expectP (Ident "VkSamplerYcbcrModelConversionKHR") >>- (VkSamplerYcbcrModelConversionKHR <$> step readPrec)))--pattern VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY_KHR ::- VkSamplerYcbcrModelConversionKHR--pattern VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY_KHR =- VkSamplerYcbcrModelConversionKHR 0---- | just range expansion-pattern VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY_KHR ::- VkSamplerYcbcrModelConversionKHR--pattern VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY_KHR =- VkSamplerYcbcrModelConversionKHR 1---- | aka HD YUV-pattern VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709_KHR ::- VkSamplerYcbcrModelConversionKHR--pattern VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709_KHR =- VkSamplerYcbcrModelConversionKHR 2---- | aka SD YUV-pattern VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601_KHR ::- VkSamplerYcbcrModelConversionKHR--pattern VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601_KHR =- VkSamplerYcbcrModelConversionKHR 3---- | aka UHD YUV-pattern VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020_KHR ::- VkSamplerYcbcrModelConversionKHR--pattern VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020_KHR =- VkSamplerYcbcrModelConversionKHR 4+ {-# INLINE readsPrec #-}+ readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags)
@@ -0,0 +1,58 @@+{-# OPTIONS_HADDOCK ignore-exports#-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Types.Enum.VkSamplerYcbcrRange+ (VkSamplerYcbcrRange(VkSamplerYcbcrRange,+ VK_SAMPLER_YCBCR_RANGE_ITU_FULL,+ VK_SAMPLER_YCBCR_RANGE_ITU_NARROW))+ where+import Data.Data (Data)+import Foreign.Storable (Storable)+import GHC.Generics (Generic)+import GHC.Read (choose, expectP)+import Graphics.Vulkan.Marshal (Int32)+import Text.ParserCombinators.ReadPrec (prec, step, (+++))+import Text.Read (Read (..), parens)+import Text.Read.Lex (Lexeme (..))++-- | type = @enum@+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkSamplerYcbcrRange.html VkSamplerYcbcrRange registry at www.khronos.org>+newtype VkSamplerYcbcrRange = VkSamplerYcbcrRange Int32+ deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)++instance Show VkSamplerYcbcrRange where+ showsPrec _ VK_SAMPLER_YCBCR_RANGE_ITU_FULL+ = showString "VK_SAMPLER_YCBCR_RANGE_ITU_FULL"+ showsPrec _ VK_SAMPLER_YCBCR_RANGE_ITU_NARROW+ = showString "VK_SAMPLER_YCBCR_RANGE_ITU_NARROW"+ showsPrec p (VkSamplerYcbcrRange x)+ = showParen (p >= 11)+ (showString "VkSamplerYcbcrRange " . showsPrec 11 x)++instance Read VkSamplerYcbcrRange where+ readPrec+ = parens+ (choose+ [("VK_SAMPLER_YCBCR_RANGE_ITU_FULL",+ pure VK_SAMPLER_YCBCR_RANGE_ITU_FULL),+ ("VK_SAMPLER_YCBCR_RANGE_ITU_NARROW",+ pure VK_SAMPLER_YCBCR_RANGE_ITU_NARROW)]+ ++++ prec 10+ (expectP (Ident "VkSamplerYcbcrRange") >>+ (VkSamplerYcbcrRange <$> step readPrec)))++-- | Luma 0..1 maps to 0..255, chroma -0.5..0.5 to 1..255 (clamped)+pattern VK_SAMPLER_YCBCR_RANGE_ITU_FULL :: VkSamplerYcbcrRange++pattern VK_SAMPLER_YCBCR_RANGE_ITU_FULL = VkSamplerYcbcrRange 0++-- | Luma 0..1 maps to 16..235, chroma -0.5..0.5 to 16..240+pattern VK_SAMPLER_YCBCR_RANGE_ITU_NARROW :: VkSamplerYcbcrRange++pattern VK_SAMPLER_YCBCR_RANGE_ITU_NARROW = VkSamplerYcbcrRange 1
@@ -1,62 +1,25 @@-{-# OPTIONS_HADDOCK ignore-exports#-} {-# LANGUAGE DataKinds #-} {-# LANGUAGE DeriveDataTypeable #-} {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE PatternSynonyms #-} {-# LANGUAGE Strict #-} module Graphics.Vulkan.Types.Enum.VkSamplerYcbcrRangeKHR- (VkSamplerYcbcrRangeKHR(VkSamplerYcbcrRangeKHR,- VK_SAMPLER_YCBCR_RANGE_ITU_FULL_KHR,- VK_SAMPLER_YCBCR_RANGE_ITU_NARROW_KHR))- where+ (VkSamplerYcbcrRangeKHR(..)) where+import Data.Bits (Bits, FiniteBits)+import Data.Coerce (coerce) import Data.Data (Data) import Foreign.Storable (Storable) import GHC.Generics (Generic)-import GHC.Read (choose, expectP)-import Graphics.Vulkan.Marshal (Int32)-import Text.ParserCombinators.ReadPrec (prec, step, (+++))-import Text.Read (Read (..), parens)-import Text.Read.Lex (Lexeme (..))+import Graphics.Vulkan.Types.BaseTypes (VkFlags) --- | type = @enum@------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkSamplerYcbcrRangeKHR.html VkSamplerYcbcrRangeKHR registry at www.khronos.org>-newtype VkSamplerYcbcrRangeKHR = VkSamplerYcbcrRangeKHR Int32- deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)+newtype VkSamplerYcbcrRangeKHR = VkSamplerYcbcrRangeKHR VkFlags+ deriving (Eq, Ord, Num, Bounded, Enum, Integral, Bits,+ FiniteBits, Storable, Real, Data, Generic) instance Show VkSamplerYcbcrRangeKHR where- showsPrec _ VK_SAMPLER_YCBCR_RANGE_ITU_FULL_KHR- = showString "VK_SAMPLER_YCBCR_RANGE_ITU_FULL_KHR"- showsPrec _ VK_SAMPLER_YCBCR_RANGE_ITU_NARROW_KHR- = showString "VK_SAMPLER_YCBCR_RANGE_ITU_NARROW_KHR"- showsPrec p (VkSamplerYcbcrRangeKHR x)- = showParen (p >= 11)- (showString "VkSamplerYcbcrRangeKHR " . showsPrec 11 x)+ {-# INLINE show #-}+ show (VkSamplerYcbcrRangeKHR x) = show x instance Read VkSamplerYcbcrRangeKHR where- readPrec- = parens- (choose- [("VK_SAMPLER_YCBCR_RANGE_ITU_FULL_KHR",- pure VK_SAMPLER_YCBCR_RANGE_ITU_FULL_KHR),- ("VK_SAMPLER_YCBCR_RANGE_ITU_NARROW_KHR",- pure VK_SAMPLER_YCBCR_RANGE_ITU_NARROW_KHR)]- +++- prec 10- (expectP (Ident "VkSamplerYcbcrRangeKHR") >>- (VkSamplerYcbcrRangeKHR <$> step readPrec)))---- | Luma 0..1 maps to 0..255, chroma -0.5..0.5 to 1..255 (clamped)-pattern VK_SAMPLER_YCBCR_RANGE_ITU_FULL_KHR ::- VkSamplerYcbcrRangeKHR--pattern VK_SAMPLER_YCBCR_RANGE_ITU_FULL_KHR =- VkSamplerYcbcrRangeKHR 0---- | Luma 0..1 maps to 16..235, chroma -0.5..0.5 to 16..240-pattern VK_SAMPLER_YCBCR_RANGE_ITU_NARROW_KHR ::- VkSamplerYcbcrRangeKHR--pattern VK_SAMPLER_YCBCR_RANGE_ITU_NARROW_KHR =- VkSamplerYcbcrRangeKHR 1+ {-# INLINE readsPrec #-}+ readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags)
@@ -0,0 +1,25 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Types.Enum.VkSemaphoreImportFlagBitsKHR+ (VkSemaphoreImportFlagBitsKHR(..)) where+import Data.Bits (Bits, FiniteBits)+import Data.Coerce (coerce)+import Data.Data (Data)+import Foreign.Storable (Storable)+import GHC.Generics (Generic)+import Graphics.Vulkan.Types.BaseTypes (VkFlags)++newtype VkSemaphoreImportFlagBitsKHR = VkSemaphoreImportFlagBitsKHR VkFlags+ deriving (Eq, Ord, Num, Bounded, Enum, Integral, Bits,+ FiniteBits, Storable, Real, Data, Generic)++instance Show VkSemaphoreImportFlagBitsKHR where+ {-# INLINE show #-}+ show (VkSemaphoreImportFlagBitsKHR x) = show x++instance Read VkSemaphoreImportFlagBitsKHR where+ {-# INLINE readsPrec #-}+ readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags)
@@ -0,0 +1,84 @@+{-# OPTIONS_HADDOCK ignore-exports#-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE KindSignatures #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StandaloneDeriving #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeSynonymInstances #-}+module Graphics.Vulkan.Types.Enum.VkSemaphoreImportFlags+ (VkSemaphoreImportBitmask(VkSemaphoreImportBitmask,+ VkSemaphoreImportFlags, VkSemaphoreImportFlagBits,+ VK_SEMAPHORE_IMPORT_TEMPORARY_BIT),+ VkSemaphoreImportFlags, VkSemaphoreImportFlagBits)+ where+import Data.Bits (Bits, FiniteBits)+import Data.Data (Data)+import Foreign.Storable (Storable)+import GHC.Generics (Generic)+import GHC.Read (choose, expectP)+import Graphics.Vulkan.Marshal (FlagBit, FlagMask, FlagType)+import Graphics.Vulkan.Types.BaseTypes (VkFlags (..))+import Text.ParserCombinators.ReadPrec (prec, step, (+++))+import Text.Read (Read (..), parens)+import Text.Read.Lex (Lexeme (..))++newtype VkSemaphoreImportBitmask (a ::+ FlagType) = VkSemaphoreImportBitmask VkFlags+ deriving (Eq, Ord, Storable, Data, Generic)++type VkSemaphoreImportFlags = VkSemaphoreImportBitmask FlagMask++type VkSemaphoreImportFlagBits = VkSemaphoreImportBitmask FlagBit++pattern VkSemaphoreImportFlagBits ::+ VkFlags -> VkSemaphoreImportBitmask FlagBit++pattern VkSemaphoreImportFlagBits n = VkSemaphoreImportBitmask n++pattern VkSemaphoreImportFlags ::+ VkFlags -> VkSemaphoreImportBitmask FlagMask++pattern VkSemaphoreImportFlags n = VkSemaphoreImportBitmask n++deriving instance Bits (VkSemaphoreImportBitmask FlagMask)++deriving instance FiniteBits (VkSemaphoreImportBitmask FlagMask)++deriving instance Integral (VkSemaphoreImportBitmask FlagMask)++deriving instance Num (VkSemaphoreImportBitmask FlagMask)++deriving instance Bounded (VkSemaphoreImportBitmask FlagMask)++deriving instance Enum (VkSemaphoreImportBitmask FlagMask)++deriving instance Real (VkSemaphoreImportBitmask FlagMask)++instance Show (VkSemaphoreImportBitmask a) where+ showsPrec _ VK_SEMAPHORE_IMPORT_TEMPORARY_BIT+ = showString "VK_SEMAPHORE_IMPORT_TEMPORARY_BIT"+ showsPrec p (VkSemaphoreImportBitmask x)+ = showParen (p >= 11)+ (showString "VkSemaphoreImportBitmask " . showsPrec 11 x)++instance Read (VkSemaphoreImportBitmask a) where+ readPrec+ = parens+ (choose+ [("VK_SEMAPHORE_IMPORT_TEMPORARY_BIT",+ pure VK_SEMAPHORE_IMPORT_TEMPORARY_BIT)]+ ++++ prec 10+ (expectP (Ident "VkSemaphoreImportBitmask") >>+ (VkSemaphoreImportBitmask <$> step readPrec)))++-- | bitpos = @0@+pattern VK_SEMAPHORE_IMPORT_TEMPORARY_BIT ::+ VkSemaphoreImportBitmask a++pattern VK_SEMAPHORE_IMPORT_TEMPORARY_BIT =+ VkSemaphoreImportBitmask 1
@@ -1,87 +0,0 @@-{-# OPTIONS_HADDOCK ignore-exports#-}-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE KindSignatures #-}-{-# LANGUAGE PatternSynonyms #-}-{-# LANGUAGE StandaloneDeriving #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE TypeSynonymInstances #-}-module Graphics.Vulkan.Types.Enum.VkSemaphoreImportFlagsKHR- (VkSemaphoreImportBitmaskKHR(VkSemaphoreImportBitmaskKHR,- VkSemaphoreImportFlagsKHR, VkSemaphoreImportFlagBitsKHR,- VK_SEMAPHORE_IMPORT_TEMPORARY_BIT_KHR),- VkSemaphoreImportFlagsKHR, VkSemaphoreImportFlagBitsKHR)- where-import Data.Bits (Bits, FiniteBits)-import Data.Data (Data)-import Foreign.Storable (Storable)-import GHC.Generics (Generic)-import GHC.Read (choose, expectP)-import Graphics.Vulkan.Marshal (FlagBit, FlagMask, FlagType)-import Graphics.Vulkan.Types.BaseTypes (VkFlags (..))-import Text.ParserCombinators.ReadPrec (prec, step, (+++))-import Text.Read (Read (..), parens)-import Text.Read.Lex (Lexeme (..))--newtype VkSemaphoreImportBitmaskKHR (a ::- FlagType) = VkSemaphoreImportBitmaskKHR VkFlags- deriving (Eq, Ord, Storable, Data, Generic)--type VkSemaphoreImportFlagsKHR =- VkSemaphoreImportBitmaskKHR FlagMask--type VkSemaphoreImportFlagBitsKHR =- VkSemaphoreImportBitmaskKHR FlagBit--pattern VkSemaphoreImportFlagBitsKHR ::- VkFlags -> VkSemaphoreImportBitmaskKHR FlagBit--pattern VkSemaphoreImportFlagBitsKHR n =- VkSemaphoreImportBitmaskKHR n--pattern VkSemaphoreImportFlagsKHR ::- VkFlags -> VkSemaphoreImportBitmaskKHR FlagMask--pattern VkSemaphoreImportFlagsKHR n = VkSemaphoreImportBitmaskKHR n--deriving instance Bits (VkSemaphoreImportBitmaskKHR FlagMask)--deriving instance FiniteBits (VkSemaphoreImportBitmaskKHR FlagMask)--deriving instance Integral (VkSemaphoreImportBitmaskKHR FlagMask)--deriving instance Num (VkSemaphoreImportBitmaskKHR FlagMask)--deriving instance Bounded (VkSemaphoreImportBitmaskKHR FlagMask)--deriving instance Enum (VkSemaphoreImportBitmaskKHR FlagMask)--deriving instance Real (VkSemaphoreImportBitmaskKHR FlagMask)--instance Show (VkSemaphoreImportBitmaskKHR a) where- showsPrec _ VK_SEMAPHORE_IMPORT_TEMPORARY_BIT_KHR- = showString "VK_SEMAPHORE_IMPORT_TEMPORARY_BIT_KHR"- showsPrec p (VkSemaphoreImportBitmaskKHR x)- = showParen (p >= 11)- (showString "VkSemaphoreImportBitmaskKHR " . showsPrec 11 x)--instance Read (VkSemaphoreImportBitmaskKHR a) where- readPrec- = parens- (choose- [("VK_SEMAPHORE_IMPORT_TEMPORARY_BIT_KHR",- pure VK_SEMAPHORE_IMPORT_TEMPORARY_BIT_KHR)]- +++- prec 10- (expectP (Ident "VkSemaphoreImportBitmaskKHR") >>- (VkSemaphoreImportBitmaskKHR <$> step readPrec)))---- | bitpos = @0@-pattern VK_SEMAPHORE_IMPORT_TEMPORARY_BIT_KHR ::- VkSemaphoreImportBitmaskKHR a--pattern VK_SEMAPHORE_IMPORT_TEMPORARY_BIT_KHR =- VkSemaphoreImportBitmaskKHR 1
@@ -21,7 +21,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkShaderInfoTypeAMD.html VkShaderInfoTypeAMD registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkShaderInfoTypeAMD.html VkShaderInfoTypeAMD registry at www.khronos.org> newtype VkShaderInfoTypeAMD = VkShaderInfoTypeAMD Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -20,7 +20,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkSharingMode.html VkSharingMode registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkSharingMode.html VkSharingMode registry at www.khronos.org> newtype VkSharingMode = VkSharingMode Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -23,7 +23,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkStencilOp.html VkStencilOp registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkStencilOp.html VkStencilOp registry at www.khronos.org> newtype VkStencilOp = VkStencilOp Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -71,7 +71,7 @@ -- type = @enum@ -- ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkStructureType.html VkStructureType registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkStructureType.html VkStructureType registry at www.khronos.org> newtype VkStructureType = VkStructureType Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -0,0 +1,174 @@+{-# OPTIONS_HADDOCK ignore-exports#-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE KindSignatures #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StandaloneDeriving #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeSynonymInstances #-}+module Graphics.Vulkan.Types.Enum.VkSubgroupFeatureFlags+ (VkSubgroupFeatureBitmask(VkSubgroupFeatureBitmask,+ VkSubgroupFeatureFlags, VkSubgroupFeatureFlagBits,+ VK_SUBGROUP_FEATURE_BASIC_BIT, VK_SUBGROUP_FEATURE_VOTE_BIT,+ VK_SUBGROUP_FEATURE_ARITHMETIC_BIT, VK_SUBGROUP_FEATURE_BALLOT_BIT,+ VK_SUBGROUP_FEATURE_SHUFFLE_BIT,+ VK_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT,+ VK_SUBGROUP_FEATURE_CLUSTERED_BIT, VK_SUBGROUP_FEATURE_QUAD_BIT),+ VkSubgroupFeatureFlags, VkSubgroupFeatureFlagBits)+ where+import Data.Bits (Bits, FiniteBits)+import Data.Data (Data)+import Foreign.Storable (Storable)+import GHC.Generics (Generic)+import GHC.Read (choose, expectP)+import Graphics.Vulkan.Marshal (FlagBit, FlagMask, FlagType)+import Graphics.Vulkan.Types.BaseTypes (VkFlags (..))+import Text.ParserCombinators.ReadPrec (prec, step, (+++))+import Text.Read (Read (..), parens)+import Text.Read.Lex (Lexeme (..))++newtype VkSubgroupFeatureBitmask (a ::+ FlagType) = VkSubgroupFeatureBitmask VkFlags+ deriving (Eq, Ord, Storable, Data, Generic)++type VkSubgroupFeatureFlags = VkSubgroupFeatureBitmask FlagMask++type VkSubgroupFeatureFlagBits = VkSubgroupFeatureBitmask FlagBit++pattern VkSubgroupFeatureFlagBits ::+ VkFlags -> VkSubgroupFeatureBitmask FlagBit++pattern VkSubgroupFeatureFlagBits n = VkSubgroupFeatureBitmask n++pattern VkSubgroupFeatureFlags ::+ VkFlags -> VkSubgroupFeatureBitmask FlagMask++pattern VkSubgroupFeatureFlags n = VkSubgroupFeatureBitmask n++deriving instance Bits (VkSubgroupFeatureBitmask FlagMask)++deriving instance FiniteBits (VkSubgroupFeatureBitmask FlagMask)++deriving instance Integral (VkSubgroupFeatureBitmask FlagMask)++deriving instance Num (VkSubgroupFeatureBitmask FlagMask)++deriving instance Bounded (VkSubgroupFeatureBitmask FlagMask)++deriving instance Enum (VkSubgroupFeatureBitmask FlagMask)++deriving instance Real (VkSubgroupFeatureBitmask FlagMask)++instance Show (VkSubgroupFeatureBitmask a) where+ showsPrec _ VK_SUBGROUP_FEATURE_BASIC_BIT+ = showString "VK_SUBGROUP_FEATURE_BASIC_BIT"+ showsPrec _ VK_SUBGROUP_FEATURE_VOTE_BIT+ = showString "VK_SUBGROUP_FEATURE_VOTE_BIT"+ showsPrec _ VK_SUBGROUP_FEATURE_ARITHMETIC_BIT+ = showString "VK_SUBGROUP_FEATURE_ARITHMETIC_BIT"+ showsPrec _ VK_SUBGROUP_FEATURE_BALLOT_BIT+ = showString "VK_SUBGROUP_FEATURE_BALLOT_BIT"+ showsPrec _ VK_SUBGROUP_FEATURE_SHUFFLE_BIT+ = showString "VK_SUBGROUP_FEATURE_SHUFFLE_BIT"+ showsPrec _ VK_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT+ = showString "VK_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT"+ showsPrec _ VK_SUBGROUP_FEATURE_CLUSTERED_BIT+ = showString "VK_SUBGROUP_FEATURE_CLUSTERED_BIT"+ showsPrec _ VK_SUBGROUP_FEATURE_QUAD_BIT+ = showString "VK_SUBGROUP_FEATURE_QUAD_BIT"+ showsPrec p (VkSubgroupFeatureBitmask x)+ = showParen (p >= 11)+ (showString "VkSubgroupFeatureBitmask " . showsPrec 11 x)++instance Read (VkSubgroupFeatureBitmask a) where+ readPrec+ = parens+ (choose+ [("VK_SUBGROUP_FEATURE_BASIC_BIT",+ pure VK_SUBGROUP_FEATURE_BASIC_BIT),+ ("VK_SUBGROUP_FEATURE_VOTE_BIT",+ pure VK_SUBGROUP_FEATURE_VOTE_BIT),+ ("VK_SUBGROUP_FEATURE_ARITHMETIC_BIT",+ pure VK_SUBGROUP_FEATURE_ARITHMETIC_BIT),+ ("VK_SUBGROUP_FEATURE_BALLOT_BIT",+ pure VK_SUBGROUP_FEATURE_BALLOT_BIT),+ ("VK_SUBGROUP_FEATURE_SHUFFLE_BIT",+ pure VK_SUBGROUP_FEATURE_SHUFFLE_BIT),+ ("VK_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT",+ pure VK_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT),+ ("VK_SUBGROUP_FEATURE_CLUSTERED_BIT",+ pure VK_SUBGROUP_FEATURE_CLUSTERED_BIT),+ ("VK_SUBGROUP_FEATURE_QUAD_BIT",+ pure VK_SUBGROUP_FEATURE_QUAD_BIT)]+ ++++ prec 10+ (expectP (Ident "VkSubgroupFeatureBitmask") >>+ (VkSubgroupFeatureBitmask <$> step readPrec)))++-- | Basic subgroup operations+--+-- bitpos = @0@+pattern VK_SUBGROUP_FEATURE_BASIC_BIT :: VkSubgroupFeatureBitmask a++pattern VK_SUBGROUP_FEATURE_BASIC_BIT = VkSubgroupFeatureBitmask 1++-- | Vote subgroup operations+--+-- bitpos = @1@+pattern VK_SUBGROUP_FEATURE_VOTE_BIT :: VkSubgroupFeatureBitmask a++pattern VK_SUBGROUP_FEATURE_VOTE_BIT = VkSubgroupFeatureBitmask 2++-- | Arithmetic subgroup operations+--+-- bitpos = @2@+pattern VK_SUBGROUP_FEATURE_ARITHMETIC_BIT ::+ VkSubgroupFeatureBitmask a++pattern VK_SUBGROUP_FEATURE_ARITHMETIC_BIT =+ VkSubgroupFeatureBitmask 4++-- | Ballot subgroup operations+--+-- bitpos = @3@+pattern VK_SUBGROUP_FEATURE_BALLOT_BIT ::+ VkSubgroupFeatureBitmask a++pattern VK_SUBGROUP_FEATURE_BALLOT_BIT = VkSubgroupFeatureBitmask 8++-- | Shuffle subgroup operations+--+-- bitpos = @4@+pattern VK_SUBGROUP_FEATURE_SHUFFLE_BIT ::+ VkSubgroupFeatureBitmask a++pattern VK_SUBGROUP_FEATURE_SHUFFLE_BIT =+ VkSubgroupFeatureBitmask 16++-- | Shuffle relative subgroup operations+--+-- bitpos = @5@+pattern VK_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT ::+ VkSubgroupFeatureBitmask a++pattern VK_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT =+ VkSubgroupFeatureBitmask 32++-- | Clustered subgroup operations+--+-- bitpos = @6@+pattern VK_SUBGROUP_FEATURE_CLUSTERED_BIT ::+ VkSubgroupFeatureBitmask a++pattern VK_SUBGROUP_FEATURE_CLUSTERED_BIT =+ VkSubgroupFeatureBitmask 64++-- | Quad subgroup operations+--+-- bitpos = @7@+pattern VK_SUBGROUP_FEATURE_QUAD_BIT :: VkSubgroupFeatureBitmask a++pattern VK_SUBGROUP_FEATURE_QUAD_BIT = VkSubgroupFeatureBitmask 128
@@ -20,7 +20,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkSubpassContents.html VkSubpassContents registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkSubpassContents.html VkSubpassContents registry at www.khronos.org> newtype VkSubpassContents = VkSubpassContents Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -24,7 +24,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkSystemAllocationScope.html VkSystemAllocationScope registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkSystemAllocationScope.html VkSystemAllocationScope registry at www.khronos.org> newtype VkSystemAllocationScope = VkSystemAllocationScope Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -0,0 +1,61 @@+{-# OPTIONS_HADDOCK ignore-exports#-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Types.Enum.VkTessellationDomainOrigin+ (VkTessellationDomainOrigin(VkTessellationDomainOrigin,+ VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT,+ VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT))+ where+import Data.Data (Data)+import Foreign.Storable (Storable)+import GHC.Generics (Generic)+import GHC.Read (choose, expectP)+import Graphics.Vulkan.Marshal (Int32)+import Text.ParserCombinators.ReadPrec (prec, step, (+++))+import Text.Read (Read (..), parens)+import Text.Read.Lex (Lexeme (..))++-- | type = @enum@+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkTessellationDomainOrigin.html VkTessellationDomainOrigin registry at www.khronos.org>+newtype VkTessellationDomainOrigin = VkTessellationDomainOrigin Int32+ deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data,+ Generic)++instance Show VkTessellationDomainOrigin where+ showsPrec _ VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT+ = showString "VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT"+ showsPrec _ VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT+ = showString "VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT"+ showsPrec p (VkTessellationDomainOrigin x)+ = showParen (p >= 11)+ (showString "VkTessellationDomainOrigin " . showsPrec 11 x)++instance Read VkTessellationDomainOrigin where+ readPrec+ = parens+ (choose+ [("VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT",+ pure VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT),+ ("VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT",+ pure VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT)]+ ++++ prec 10+ (expectP (Ident "VkTessellationDomainOrigin") >>+ (VkTessellationDomainOrigin <$> step readPrec)))++pattern VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT ::+ VkTessellationDomainOrigin++pattern VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT =+ VkTessellationDomainOrigin 0++pattern VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT ::+ VkTessellationDomainOrigin++pattern VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT =+ VkTessellationDomainOrigin 1
@@ -1,61 +1,25 @@-{-# OPTIONS_HADDOCK ignore-exports#-} {-# LANGUAGE DataKinds #-} {-# LANGUAGE DeriveDataTypeable #-} {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE PatternSynonyms #-} {-# LANGUAGE Strict #-} module Graphics.Vulkan.Types.Enum.VkTessellationDomainOriginKHR- (VkTessellationDomainOriginKHR(VkTessellationDomainOriginKHR,- VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT_KHR,- VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT_KHR))- where+ (VkTessellationDomainOriginKHR(..)) where+import Data.Bits (Bits, FiniteBits)+import Data.Coerce (coerce) import Data.Data (Data) import Foreign.Storable (Storable) import GHC.Generics (Generic)-import GHC.Read (choose, expectP)-import Graphics.Vulkan.Marshal (Int32)-import Text.ParserCombinators.ReadPrec (prec, step, (+++))-import Text.Read (Read (..), parens)-import Text.Read.Lex (Lexeme (..))+import Graphics.Vulkan.Types.BaseTypes (VkFlags) --- | type = @enum@------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkTessellationDomainOriginKHR.html VkTessellationDomainOriginKHR registry at www.khronos.org>-newtype VkTessellationDomainOriginKHR = VkTessellationDomainOriginKHR Int32- deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data,- Generic)+newtype VkTessellationDomainOriginKHR = VkTessellationDomainOriginKHR VkFlags+ deriving (Eq, Ord, Num, Bounded, Enum, Integral, Bits,+ FiniteBits, Storable, Real, Data, Generic) instance Show VkTessellationDomainOriginKHR where- showsPrec _ VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT_KHR- = showString "VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT_KHR"- showsPrec _ VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT_KHR- = showString "VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT_KHR"- showsPrec p (VkTessellationDomainOriginKHR x)- = showParen (p >= 11)- (showString "VkTessellationDomainOriginKHR " . showsPrec 11 x)+ {-# INLINE show #-}+ show (VkTessellationDomainOriginKHR x) = show x instance Read VkTessellationDomainOriginKHR where- readPrec- = parens- (choose- [("VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT_KHR",- pure VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT_KHR),- ("VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT_KHR",- pure VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT_KHR)]- +++- prec 10- (expectP (Ident "VkTessellationDomainOriginKHR") >>- (VkTessellationDomainOriginKHR <$> step readPrec)))--pattern VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT_KHR ::- VkTessellationDomainOriginKHR--pattern VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT_KHR =- VkTessellationDomainOriginKHR 0--pattern VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT_KHR ::- VkTessellationDomainOriginKHR--pattern VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT_KHR =- VkTessellationDomainOriginKHR 1+ {-# INLINE readsPrec #-}+ readsPrec = coerce (readsPrec :: Int -> ReadS VkFlags)
@@ -20,7 +20,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkValidationCacheHeaderVersionEXT.html VkValidationCacheHeaderVersionEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkValidationCacheHeaderVersionEXT.html VkValidationCacheHeaderVersionEXT registry at www.khronos.org> newtype VkValidationCacheHeaderVersionEXT = VkValidationCacheHeaderVersionEXT Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -20,7 +20,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkValidationCheckEXT.html VkValidationCheckEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkValidationCheckEXT.html VkValidationCheckEXT registry at www.khronos.org> newtype VkValidationCheckEXT = VkValidationCheckEXT Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -20,7 +20,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkVertexInputRate.html VkVertexInputRate registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkVertexInputRate.html VkVertexInputRate registry at www.khronos.org> newtype VkVertexInputRate = VkVertexInputRate Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -27,7 +27,7 @@ -- | type = @enum@ ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkViewportCoordinateSwizzleNV.html VkViewportCoordinateSwizzleNV registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkViewportCoordinateSwizzleNV.html VkViewportCoordinateSwizzleNV registry at www.khronos.org> newtype VkViewportCoordinateSwizzleNV = VkViewportCoordinateSwizzleNV Int32 deriving (Eq, Ord, Num, Bounded, Storable, Enum, Data, Generic)
@@ -5,8 +5,12 @@ newVkAllocationFunction, unwrapVkAllocationFunction, PFN_vkDebugReportCallbackEXT, HS_vkDebugReportCallbackEXT, newVkDebugReportCallbackEXT, unwrapVkDebugReportCallbackEXT,- PFN_vkFreeFunction, HS_vkFreeFunction, newVkFreeFunction,- unwrapVkFreeFunction, PFN_vkInternalAllocationNotification,+ PFN_vkDebugUtilsMessengerCallbackEXT,+ HS_vkDebugUtilsMessengerCallbackEXT,+ newVkDebugUtilsMessengerCallbackEXT,+ unwrapVkDebugUtilsMessengerCallbackEXT, PFN_vkFreeFunction,+ HS_vkFreeFunction, newVkFreeFunction, unwrapVkFreeFunction,+ PFN_vkInternalAllocationNotification, HS_vkInternalAllocationNotification, newVkInternalAllocationNotification, unwrapVkInternalAllocationNotification,@@ -18,13 +22,26 @@ unwrapVkVoidFunction) where import Graphics.Vulkan.Marshal-import Graphics.Vulkan.Types.BaseTypes (VkBool32 (..),- VkFlags (..))-import Graphics.Vulkan.Types.Enum.VkDebugReportFlagsEXT (VkDebugReportBitmaskEXT (..),- VkDebugReportFlagsEXT)-import Graphics.Vulkan.Types.Enum.VkDebugReportObjectTypeEXT (VkDebugReportObjectTypeEXT (..))-import Graphics.Vulkan.Types.Enum.VkInternalAllocationType (VkInternalAllocationType (..))-import Graphics.Vulkan.Types.Enum.VkSystemAllocationScope (VkSystemAllocationScope (..))+import Graphics.Vulkan.Types.BaseTypes+ (VkBool32 (..),+ VkFlags (..))+import Graphics.Vulkan.Types.Enum.VkDebugReportFlagsEXT+ (VkDebugReportBitmaskEXT (..),+ VkDebugReportFlagsEXT)+import Graphics.Vulkan.Types.Enum.VkDebugReportObjectTypeEXT+ (VkDebugReportObjectTypeEXT (..))+import Graphics.Vulkan.Types.Enum.VkDebugUtilsMessageSeverityFlagsEXT+ (VkDebugUtilsMessageSeverityBitmaskEXT (..),+ VkDebugUtilsMessageSeverityFlagBitsEXT)+import Graphics.Vulkan.Types.Enum.VkDebugUtilsMessageTypeFlagsEXT+ (VkDebugUtilsMessageTypeBitmaskEXT (..),+ VkDebugUtilsMessageTypeFlagsEXT)+import Graphics.Vulkan.Types.Enum.VkInternalAllocationType+ (VkInternalAllocationType (..))+import Graphics.Vulkan.Types.Enum.VkSystemAllocationScope+ (VkSystemAllocationScope (..))+import Graphics.Vulkan.Types.Struct.VkDebugUtilsMessengerCallbackDataEXT+ (VkDebugUtilsMessengerCallbackDataEXT (..)) type HS_vkAllocationFunction = Ptr Void ->@@ -70,6 +87,31 @@ foreign import ccall "dynamic" unwrapVkDebugReportCallbackEXT :: PFN_vkDebugReportCallbackEXT -> HS_vkDebugReportCallbackEXT++type HS_vkDebugUtilsMessengerCallbackEXT =+ VkDebugUtilsMessageSeverityFlagBitsEXT ->+ VkDebugUtilsMessageTypeFlagsEXT ->+ Ptr VkDebugUtilsMessengerCallbackDataEXT -> Ptr Void -> IO VkBool32++-- | > typedef VkBool32 (VKAPI_PTR *PFN_vkDebugUtilsMessengerCallbackEXT)(+-- > VkDebugUtilsMessageSeverityFlagBitsEXT messageSeverity,+-- > VkDebugUtilsMessageTypeFlagsEXT messageType,+-- > const VkDebugUtilsMessengerCallbackDataEXT* pCallbackData,+-- > void* pUserData);+type PFN_vkDebugUtilsMessengerCallbackEXT =+ FunPtr HS_vkDebugUtilsMessengerCallbackEXT++-- | Wrap haskell function into C-callable FunPtr.+-- Note, you need to free resources after using it.+foreign import ccall "wrapper" newVkDebugUtilsMessengerCallbackEXT+ ::+ HS_vkDebugUtilsMessengerCallbackEXT ->+ IO PFN_vkDebugUtilsMessengerCallbackEXT++foreign import ccall "dynamic"+ unwrapVkDebugUtilsMessengerCallbackEXT ::+ PFN_vkDebugUtilsMessengerCallbackEXT ->+ HS_vkDebugUtilsMessengerCallbackEXT type HS_vkFreeFunction = Ptr Void -> Ptr Void -> IO ()
@@ -5,9 +5,11 @@ (VkBuffer, VkBuffer_T(), VkBufferView, VkBufferView_T(), VkCommandBuffer, VkCommandBuffer_T(), VkCommandPool, VkCommandPool_T(), VkDebugReportCallbackEXT,- VkDebugReportCallbackEXT_T(), VkDescriptorPool,+ VkDebugReportCallbackEXT_T(), VkDebugUtilsMessengerEXT,+ VkDebugUtilsMessengerEXT_T(), VkDescriptorPool, VkDescriptorPool_T(), VkDescriptorSet, VkDescriptorSet_T(), VkDescriptorSetLayout, VkDescriptorSetLayout_T(),+ VkDescriptorUpdateTemplate, VkDescriptorUpdateTemplate_T(), VkDescriptorUpdateTemplateKHR, VkDescriptorUpdateTemplateKHR_T(), VkDevice, VkDevice_T(), VkDeviceMemory, VkDeviceMemory_T(), VkDisplayKHR, VkDisplayKHR_T(), VkDisplayModeKHR,@@ -20,6 +22,7 @@ VkPipelineCache_T(), VkPipelineLayout, VkPipelineLayout_T(), VkQueryPool, VkQueryPool_T(), VkQueue, VkQueue_T(), VkRenderPass, VkRenderPass_T(), VkSampler, VkSampler_T(),+ VkSamplerYcbcrConversion, VkSamplerYcbcrConversion_T(), VkSamplerYcbcrConversionKHR, VkSamplerYcbcrConversionKHR_T(), VkSemaphore, VkSemaphore_T(), VkShaderModule, VkShaderModule_T(), VkSurfaceKHR, VkSurfaceKHR_T(), VkSwapchainKHR, VkSwapchainKHR_T(),@@ -52,6 +55,11 @@ -- | Opaque data type referenced by VkDebugReportCallbackEXT data VkDebugReportCallbackEXT_T +type VkDebugUtilsMessengerEXT = VkPtr VkDebugUtilsMessengerEXT_T++-- | Opaque data type referenced by VkDebugUtilsMessengerEXT+data VkDebugUtilsMessengerEXT_T+ type VkDescriptorPool = VkPtr VkDescriptorPool_T -- | Opaque data type referenced by VkDescriptorPool@@ -67,6 +75,12 @@ -- | Opaque data type referenced by VkDescriptorSetLayout data VkDescriptorSetLayout_T +type VkDescriptorUpdateTemplate =+ VkPtr VkDescriptorUpdateTemplate_T++-- | Opaque data type referenced by VkDescriptorUpdateTemplate+data VkDescriptorUpdateTemplate_T+ type VkDescriptorUpdateTemplateKHR = VkPtr VkDescriptorUpdateTemplateKHR_T @@ -173,6 +187,11 @@ -- | Opaque data type referenced by VkSampler data VkSampler_T++type VkSamplerYcbcrConversion = VkPtr VkSamplerYcbcrConversion_T++-- | Opaque data type referenced by VkSamplerYcbcrConversion+data VkSamplerYcbcrConversion_T type VkSamplerYcbcrConversionKHR = VkPtr VkSamplerYcbcrConversionKHR_T
@@ -3,31 +3,11 @@ {-# LANGUAGE Strict #-} module Graphics.Vulkan.Types.Include (-- > #include "vk_platform.h"- --- -- > #include <X11/Xlib.h>- --- -- > #include <X11/extensions/Xrandr.h>- --- -- > #include <android/native_window.h>- --- -- > #include <mir_toolkit/client_types.h>- --- -- > #include "vulkan.h"- --- -- > #include <wayland-client.h>- --- -- > #include <windows.h>- --- -- > #include <xcb/xcb.h>- ANativeWindow, DWORD, Display, HANDLE, HINSTANCE, HWND, LPCWSTR,- MirConnection, MirSurface, RROutput, SECURITY_ATTRIBUTES, VisualID,- Window, WlDisplay, WlSurface, XcbConnectionT, XcbVisualidT,- XcbWindowT)+ DWORD, Display, HANDLE, HINSTANCE, HWND, LPCWSTR, MirConnection,+ MirSurface, RROutput, SECURITY_ATTRIBUTES, VisualID, Window,+ WlDisplay, WlSurface, XcbConnectionT, XcbVisualidT, XcbWindowT) where import Graphics.Vulkan.Marshal (CULong (..), CWchar (..), Ptr, Word32)---- | Requires @android/native_window.h@-data ANativeWindow -- | Requires @windows.h@ type DWORD = Word32
@@ -0,0 +1,331 @@+#include "vulkan/vulkan.h"++{-# LANGUAGE DataKinds #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-}+{-# LANGUAGE TypeFamilies #-}+module Graphics.Vulkan.Types.Struct.VkAcquireNextImageInfoKHR+ (VkAcquireNextImageInfoKHR(..)) where+import Foreign.Storable (Storable (..))+import GHC.Prim+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Marshal.Internal+import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)+import Graphics.Vulkan.Types.Handles (VkFence,+ VkSemaphore,+ VkSwapchainKHR)+import System.IO.Unsafe (unsafeDupablePerformIO)++-- | > typedef struct VkAcquireNextImageInfoKHR {+-- > VkStructureType sType;+-- > const void* pNext;+-- > VkSwapchainKHR swapchain;+-- > uint64_t timeout;+-- > VkSemaphore semaphore;+-- > VkFence fence;+-- > uint32_t deviceMask;+-- > } VkAcquireNextImageInfoKHR;+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkAcquireNextImageInfoKHR.html VkAcquireNextImageInfoKHR registry at www.khronos.org>+data VkAcquireNextImageInfoKHR = VkAcquireNextImageInfoKHR## Addr##+ ByteArray##++instance Eq VkAcquireNextImageInfoKHR where+ (VkAcquireNextImageInfoKHR## a _) ==+ x@(VkAcquireNextImageInfoKHR## b _) = EQ == cmpBytes## (sizeOf x) a b++ {-# INLINE (==) #-}++instance Ord VkAcquireNextImageInfoKHR where+ (VkAcquireNextImageInfoKHR## a _) `compare`+ x@(VkAcquireNextImageInfoKHR## b _) = cmpBytes## (sizeOf x) a b++ {-# INLINE compare #-}++instance Storable VkAcquireNextImageInfoKHR where+ sizeOf ~_ = #{size VkAcquireNextImageInfoKHR}++ {-# INLINE sizeOf #-}+ alignment ~_ = #{alignment VkAcquireNextImageInfoKHR}++ {-# INLINE alignment #-}+ peek = peekVkData##++ {-# INLINE peek #-}+ poke = pokeVkData##++ {-# INLINE poke #-}++instance VulkanMarshalPrim VkAcquireNextImageInfoKHR where+ unsafeAddr (VkAcquireNextImageInfoKHR## a _) = a++ {-# INLINE unsafeAddr #-}+ unsafeByteArray (VkAcquireNextImageInfoKHR## _ b) = b++ {-# INLINE unsafeByteArray #-}+ unsafeFromByteArrayOffset off b+ = VkAcquireNextImageInfoKHR## (plusAddr## (byteArrayContents## b) off)+ b++ {-# INLINE unsafeFromByteArrayOffset #-}++instance VulkanMarshal VkAcquireNextImageInfoKHR where+ type StructFields VkAcquireNextImageInfoKHR =+ '["sType", "pNext", "swapchain", "timeout", "semaphore", "fence", -- ' closing tick for hsc2hs+ "deviceMask"]+ type CUnionType VkAcquireNextImageInfoKHR = 'False -- ' closing tick for hsc2hs+ type ReturnedOnly VkAcquireNextImageInfoKHR = 'False -- ' closing tick for hsc2hs+ type StructExtends VkAcquireNextImageInfoKHR = '[] -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-}+ HasField "sType" VkAcquireNextImageInfoKHR where+ type FieldType "sType" VkAcquireNextImageInfoKHR = VkStructureType+ type FieldOptional "sType" VkAcquireNextImageInfoKHR = 'False -- ' closing tick for hsc2hs+ type FieldOffset "sType" VkAcquireNextImageInfoKHR =+ #{offset VkAcquireNextImageInfoKHR, sType}+ type FieldIsArray "sType" VkAcquireNextImageInfoKHR = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkAcquireNextImageInfoKHR, sType}++instance {-# OVERLAPPING #-}+ CanReadField "sType" VkAcquireNextImageInfoKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkAcquireNextImageInfoKHR, sType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkAcquireNextImageInfoKHR, sType}++instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkAcquireNextImageInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkAcquireNextImageInfoKHR, sType}++instance {-# OVERLAPPING #-}+ HasField "pNext" VkAcquireNextImageInfoKHR where+ type FieldType "pNext" VkAcquireNextImageInfoKHR = Ptr Void+ type FieldOptional "pNext" VkAcquireNextImageInfoKHR = 'False -- ' closing tick for hsc2hs+ type FieldOffset "pNext" VkAcquireNextImageInfoKHR =+ #{offset VkAcquireNextImageInfoKHR, pNext}+ type FieldIsArray "pNext" VkAcquireNextImageInfoKHR = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkAcquireNextImageInfoKHR, pNext}++instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkAcquireNextImageInfoKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkAcquireNextImageInfoKHR, pNext})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkAcquireNextImageInfoKHR, pNext}++instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkAcquireNextImageInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkAcquireNextImageInfoKHR, pNext}++instance {-# OVERLAPPING #-}+ HasField "swapchain" VkAcquireNextImageInfoKHR where+ type FieldType "swapchain" VkAcquireNextImageInfoKHR =+ VkSwapchainKHR+ type FieldOptional "swapchain" VkAcquireNextImageInfoKHR = 'False -- ' closing tick for hsc2hs+ type FieldOffset "swapchain" VkAcquireNextImageInfoKHR =+ #{offset VkAcquireNextImageInfoKHR, swapchain}+ type FieldIsArray "swapchain" VkAcquireNextImageInfoKHR = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkAcquireNextImageInfoKHR, swapchain}++instance {-# OVERLAPPING #-}+ CanReadField "swapchain" VkAcquireNextImageInfoKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkAcquireNextImageInfoKHR, swapchain})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkAcquireNextImageInfoKHR, swapchain}++instance {-# OVERLAPPING #-}+ CanWriteField "swapchain" VkAcquireNextImageInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkAcquireNextImageInfoKHR, swapchain}++instance {-# OVERLAPPING #-}+ HasField "timeout" VkAcquireNextImageInfoKHR where+ type FieldType "timeout" VkAcquireNextImageInfoKHR = Word64+ type FieldOptional "timeout" VkAcquireNextImageInfoKHR = 'False -- ' closing tick for hsc2hs+ type FieldOffset "timeout" VkAcquireNextImageInfoKHR =+ #{offset VkAcquireNextImageInfoKHR, timeout}+ type FieldIsArray "timeout" VkAcquireNextImageInfoKHR = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkAcquireNextImageInfoKHR, timeout}++instance {-# OVERLAPPING #-}+ CanReadField "timeout" VkAcquireNextImageInfoKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkAcquireNextImageInfoKHR, timeout})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkAcquireNextImageInfoKHR, timeout}++instance {-# OVERLAPPING #-}+ CanWriteField "timeout" VkAcquireNextImageInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkAcquireNextImageInfoKHR, timeout}++instance {-# OVERLAPPING #-}+ HasField "semaphore" VkAcquireNextImageInfoKHR where+ type FieldType "semaphore" VkAcquireNextImageInfoKHR = VkSemaphore+ type FieldOptional "semaphore" VkAcquireNextImageInfoKHR = 'True -- ' closing tick for hsc2hs+ type FieldOffset "semaphore" VkAcquireNextImageInfoKHR =+ #{offset VkAcquireNextImageInfoKHR, semaphore}+ type FieldIsArray "semaphore" VkAcquireNextImageInfoKHR = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = True++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkAcquireNextImageInfoKHR, semaphore}++instance {-# OVERLAPPING #-}+ CanReadField "semaphore" VkAcquireNextImageInfoKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkAcquireNextImageInfoKHR, semaphore})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkAcquireNextImageInfoKHR, semaphore}++instance {-# OVERLAPPING #-}+ CanWriteField "semaphore" VkAcquireNextImageInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkAcquireNextImageInfoKHR, semaphore}++instance {-# OVERLAPPING #-}+ HasField "fence" VkAcquireNextImageInfoKHR where+ type FieldType "fence" VkAcquireNextImageInfoKHR = VkFence+ type FieldOptional "fence" VkAcquireNextImageInfoKHR = 'True -- ' closing tick for hsc2hs+ type FieldOffset "fence" VkAcquireNextImageInfoKHR =+ #{offset VkAcquireNextImageInfoKHR, fence}+ type FieldIsArray "fence" VkAcquireNextImageInfoKHR = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = True++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkAcquireNextImageInfoKHR, fence}++instance {-# OVERLAPPING #-}+ CanReadField "fence" VkAcquireNextImageInfoKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkAcquireNextImageInfoKHR, fence})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkAcquireNextImageInfoKHR, fence}++instance {-# OVERLAPPING #-}+ CanWriteField "fence" VkAcquireNextImageInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkAcquireNextImageInfoKHR, fence}++instance {-# OVERLAPPING #-}+ HasField "deviceMask" VkAcquireNextImageInfoKHR where+ type FieldType "deviceMask" VkAcquireNextImageInfoKHR = Word32+ type FieldOptional "deviceMask" VkAcquireNextImageInfoKHR = 'False -- ' closing tick for hsc2hs+ type FieldOffset "deviceMask" VkAcquireNextImageInfoKHR =+ #{offset VkAcquireNextImageInfoKHR, deviceMask}+ type FieldIsArray "deviceMask" VkAcquireNextImageInfoKHR = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkAcquireNextImageInfoKHR, deviceMask}++instance {-# OVERLAPPING #-}+ CanReadField "deviceMask" VkAcquireNextImageInfoKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkAcquireNextImageInfoKHR, deviceMask})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkAcquireNextImageInfoKHR, deviceMask}++instance {-# OVERLAPPING #-}+ CanWriteField "deviceMask" VkAcquireNextImageInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkAcquireNextImageInfoKHR, deviceMask}++instance Show VkAcquireNextImageInfoKHR where+ showsPrec d x+ = showString "VkAcquireNextImageInfoKHR {" .+ showString "sType = " .+ showsPrec d (getField @"sType" x) .+ showString ", " .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) .+ showString ", " .+ showString "swapchain = " .+ showsPrec d (getField @"swapchain" x) .+ showString ", " .+ showString "timeout = " .+ showsPrec d (getField @"timeout" x) .+ showString ", " .+ showString "semaphore = " .+ showsPrec d (getField @"semaphore" x) .+ showString ", " .+ showString "fence = " .+ showsPrec d (getField @"fence" x) .+ showString ", " .+ showString "deviceMask = " .+ showsPrec d (getField @"deviceMask" x) .+ showChar '}'
@@ -1,435 +0,0 @@-#include "vulkan/vulkan.h"--{-# LANGUAGE DataKinds #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE MagicHash #-}-{-# LANGUAGE MultiParamTypeClasses #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE TypeFamilies #-}-module Graphics.Vulkan.Types.Struct.VkAcquireNextImageInfoKHX- (VkAcquireNextImageInfoKHX(..)) where-import Foreign.Storable (Storable (..))-import GHC.Prim-import Graphics.Vulkan.Marshal-import Graphics.Vulkan.Marshal.Internal-import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)-import Graphics.Vulkan.Types.Handles (VkFence,- VkSemaphore,- VkSwapchainKHR)-import Graphics.Vulkan.Types.StructMembers-import System.IO.Unsafe (unsafeDupablePerformIO)---- | > typedef struct VkAcquireNextImageInfoKHX {--- > VkStructureType sType;--- > const void* pNext;--- > VkSwapchainKHR swapchain;--- > uint64_t timeout;--- > VkSemaphore semaphore;--- > VkFence fence;--- > uint32_t deviceMask;--- > } VkAcquireNextImageInfoKHX;------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkAcquireNextImageInfoKHX.html VkAcquireNextImageInfoKHX registry at www.khronos.org>-data VkAcquireNextImageInfoKHX = VkAcquireNextImageInfoKHX## Addr##- ByteArray##--instance Eq VkAcquireNextImageInfoKHX where- (VkAcquireNextImageInfoKHX## a _) ==- x@(VkAcquireNextImageInfoKHX## b _) = EQ == cmpBytes## (sizeOf x) a b-- {-# INLINE (==) #-}--instance Ord VkAcquireNextImageInfoKHX where- (VkAcquireNextImageInfoKHX## a _) `compare`- x@(VkAcquireNextImageInfoKHX## b _) = cmpBytes## (sizeOf x) a b-- {-# INLINE compare #-}--instance Storable VkAcquireNextImageInfoKHX where- sizeOf ~_ = #{size VkAcquireNextImageInfoKHX}-- {-# INLINE sizeOf #-}- alignment ~_ = #{alignment VkAcquireNextImageInfoKHX}-- {-# INLINE alignment #-}- peek = peekVkData##-- {-# INLINE peek #-}- poke = pokeVkData##-- {-# INLINE poke #-}--instance VulkanMarshalPrim VkAcquireNextImageInfoKHX where- unsafeAddr (VkAcquireNextImageInfoKHX## a _) = a-- {-# INLINE unsafeAddr #-}- unsafeByteArray (VkAcquireNextImageInfoKHX## _ b) = b-- {-# INLINE unsafeByteArray #-}- unsafeFromByteArrayOffset off b- = VkAcquireNextImageInfoKHX## (plusAddr## (byteArrayContents## b) off)- b-- {-# INLINE unsafeFromByteArrayOffset #-}--instance VulkanMarshal VkAcquireNextImageInfoKHX where- type StructFields VkAcquireNextImageInfoKHX =- '["sType", "pNext", "swapchain", "timeout", "semaphore", "fence", -- ' closing tick for hsc2hs- "deviceMask"]- type CUnionType VkAcquireNextImageInfoKHX = 'False -- ' closing tick for hsc2hs- type ReturnedOnly VkAcquireNextImageInfoKHX = 'False -- ' closing tick for hsc2hs- type StructExtends VkAcquireNextImageInfoKHX = '[] -- ' closing tick for hsc2hs--instance {-# OVERLAPPING #-} HasVkSType VkAcquireNextImageInfoKHX- where- type VkSTypeMType VkAcquireNextImageInfoKHX = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkAcquireNextImageInfoKHX, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkAcquireNextImageInfoKHX, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkAcquireNextImageInfoKHX, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkAcquireNextImageInfoKHX, sType}--instance {-# OVERLAPPING #-}- HasField "sType" VkAcquireNextImageInfoKHX where- type FieldType "sType" VkAcquireNextImageInfoKHX = VkStructureType- type FieldOptional "sType" VkAcquireNextImageInfoKHX = 'False -- ' closing tick for hsc2hs- type FieldOffset "sType" VkAcquireNextImageInfoKHX =- #{offset VkAcquireNextImageInfoKHX, sType}- type FieldIsArray "sType" VkAcquireNextImageInfoKHX = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkAcquireNextImageInfoKHX, sType}--instance CanReadField "sType" VkAcquireNextImageInfoKHX where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance CanWriteField "sType" VkAcquireNextImageInfoKHX where- {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-} HasVkPNext VkAcquireNextImageInfoKHX- where- type VkPNextMType VkAcquireNextImageInfoKHX = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkAcquireNextImageInfoKHX, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkAcquireNextImageInfoKHX, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkAcquireNextImageInfoKHX, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkAcquireNextImageInfoKHX, pNext}--instance {-# OVERLAPPING #-}- HasField "pNext" VkAcquireNextImageInfoKHX where- type FieldType "pNext" VkAcquireNextImageInfoKHX = Ptr Void- type FieldOptional "pNext" VkAcquireNextImageInfoKHX = 'False -- ' closing tick for hsc2hs- type FieldOffset "pNext" VkAcquireNextImageInfoKHX =- #{offset VkAcquireNextImageInfoKHX, pNext}- type FieldIsArray "pNext" VkAcquireNextImageInfoKHX = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkAcquireNextImageInfoKHX, pNext}--instance CanReadField "pNext" VkAcquireNextImageInfoKHX where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkAcquireNextImageInfoKHX where- {-# INLINE writeField #-}- writeField = writeVkPNext--instance {-# OVERLAPPING #-}- HasVkSwapchain VkAcquireNextImageInfoKHX where- type VkSwapchainMType VkAcquireNextImageInfoKHX = VkSwapchainKHR-- {-# NOINLINE vkSwapchain #-}- vkSwapchain x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkAcquireNextImageInfoKHX, swapchain})-- {-# INLINE vkSwapchainByteOffset #-}- vkSwapchainByteOffset ~_- = #{offset VkAcquireNextImageInfoKHX, swapchain}-- {-# INLINE readVkSwapchain #-}- readVkSwapchain p- = peekByteOff p #{offset VkAcquireNextImageInfoKHX, swapchain}-- {-# INLINE writeVkSwapchain #-}- writeVkSwapchain p- = pokeByteOff p #{offset VkAcquireNextImageInfoKHX, swapchain}--instance {-# OVERLAPPING #-}- HasField "swapchain" VkAcquireNextImageInfoKHX where- type FieldType "swapchain" VkAcquireNextImageInfoKHX =- VkSwapchainKHR- type FieldOptional "swapchain" VkAcquireNextImageInfoKHX = 'False -- ' closing tick for hsc2hs- type FieldOffset "swapchain" VkAcquireNextImageInfoKHX =- #{offset VkAcquireNextImageInfoKHX, swapchain}- type FieldIsArray "swapchain" VkAcquireNextImageInfoKHX = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkAcquireNextImageInfoKHX, swapchain}--instance CanReadField "swapchain" VkAcquireNextImageInfoKHX where- {-# INLINE getField #-}- getField = vkSwapchain-- {-# INLINE readField #-}- readField = readVkSwapchain--instance CanWriteField "swapchain" VkAcquireNextImageInfoKHX where- {-# INLINE writeField #-}- writeField = writeVkSwapchain--instance {-# OVERLAPPING #-} HasVkTimeout VkAcquireNextImageInfoKHX- where- type VkTimeoutMType VkAcquireNextImageInfoKHX = Word64-- {-# NOINLINE vkTimeout #-}- vkTimeout x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkAcquireNextImageInfoKHX, timeout})-- {-# INLINE vkTimeoutByteOffset #-}- vkTimeoutByteOffset ~_- = #{offset VkAcquireNextImageInfoKHX, timeout}-- {-# INLINE readVkTimeout #-}- readVkTimeout p- = peekByteOff p #{offset VkAcquireNextImageInfoKHX, timeout}-- {-# INLINE writeVkTimeout #-}- writeVkTimeout p- = pokeByteOff p #{offset VkAcquireNextImageInfoKHX, timeout}--instance {-# OVERLAPPING #-}- HasField "timeout" VkAcquireNextImageInfoKHX where- type FieldType "timeout" VkAcquireNextImageInfoKHX = Word64- type FieldOptional "timeout" VkAcquireNextImageInfoKHX = 'False -- ' closing tick for hsc2hs- type FieldOffset "timeout" VkAcquireNextImageInfoKHX =- #{offset VkAcquireNextImageInfoKHX, timeout}- type FieldIsArray "timeout" VkAcquireNextImageInfoKHX = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkAcquireNextImageInfoKHX, timeout}--instance CanReadField "timeout" VkAcquireNextImageInfoKHX where- {-# INLINE getField #-}- getField = vkTimeout-- {-# INLINE readField #-}- readField = readVkTimeout--instance CanWriteField "timeout" VkAcquireNextImageInfoKHX where- {-# INLINE writeField #-}- writeField = writeVkTimeout--instance {-# OVERLAPPING #-}- HasVkSemaphore VkAcquireNextImageInfoKHX where- type VkSemaphoreMType VkAcquireNextImageInfoKHX = VkSemaphore-- {-# NOINLINE vkSemaphore #-}- vkSemaphore x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkAcquireNextImageInfoKHX, semaphore})-- {-# INLINE vkSemaphoreByteOffset #-}- vkSemaphoreByteOffset ~_- = #{offset VkAcquireNextImageInfoKHX, semaphore}-- {-# INLINE readVkSemaphore #-}- readVkSemaphore p- = peekByteOff p #{offset VkAcquireNextImageInfoKHX, semaphore}-- {-# INLINE writeVkSemaphore #-}- writeVkSemaphore p- = pokeByteOff p #{offset VkAcquireNextImageInfoKHX, semaphore}--instance {-# OVERLAPPING #-}- HasField "semaphore" VkAcquireNextImageInfoKHX where- type FieldType "semaphore" VkAcquireNextImageInfoKHX = VkSemaphore- type FieldOptional "semaphore" VkAcquireNextImageInfoKHX = 'True -- ' closing tick for hsc2hs- type FieldOffset "semaphore" VkAcquireNextImageInfoKHX =- #{offset VkAcquireNextImageInfoKHX, semaphore}- type FieldIsArray "semaphore" VkAcquireNextImageInfoKHX = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = True-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkAcquireNextImageInfoKHX, semaphore}--instance CanReadField "semaphore" VkAcquireNextImageInfoKHX where- {-# INLINE getField #-}- getField = vkSemaphore-- {-# INLINE readField #-}- readField = readVkSemaphore--instance CanWriteField "semaphore" VkAcquireNextImageInfoKHX where- {-# INLINE writeField #-}- writeField = writeVkSemaphore--instance {-# OVERLAPPING #-} HasVkFence VkAcquireNextImageInfoKHX- where- type VkFenceMType VkAcquireNextImageInfoKHX = VkFence-- {-# NOINLINE vkFence #-}- vkFence x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkAcquireNextImageInfoKHX, fence})-- {-# INLINE vkFenceByteOffset #-}- vkFenceByteOffset ~_- = #{offset VkAcquireNextImageInfoKHX, fence}-- {-# INLINE readVkFence #-}- readVkFence p- = peekByteOff p #{offset VkAcquireNextImageInfoKHX, fence}-- {-# INLINE writeVkFence #-}- writeVkFence p- = pokeByteOff p #{offset VkAcquireNextImageInfoKHX, fence}--instance {-# OVERLAPPING #-}- HasField "fence" VkAcquireNextImageInfoKHX where- type FieldType "fence" VkAcquireNextImageInfoKHX = VkFence- type FieldOptional "fence" VkAcquireNextImageInfoKHX = 'True -- ' closing tick for hsc2hs- type FieldOffset "fence" VkAcquireNextImageInfoKHX =- #{offset VkAcquireNextImageInfoKHX, fence}- type FieldIsArray "fence" VkAcquireNextImageInfoKHX = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = True-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkAcquireNextImageInfoKHX, fence}--instance CanReadField "fence" VkAcquireNextImageInfoKHX where- {-# INLINE getField #-}- getField = vkFence-- {-# INLINE readField #-}- readField = readVkFence--instance CanWriteField "fence" VkAcquireNextImageInfoKHX where- {-# INLINE writeField #-}- writeField = writeVkFence--instance {-# OVERLAPPING #-}- HasVkDeviceMask VkAcquireNextImageInfoKHX where- type VkDeviceMaskMType VkAcquireNextImageInfoKHX = Word32-- {-# NOINLINE vkDeviceMask #-}- vkDeviceMask x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkAcquireNextImageInfoKHX, deviceMask})-- {-# INLINE vkDeviceMaskByteOffset #-}- vkDeviceMaskByteOffset ~_- = #{offset VkAcquireNextImageInfoKHX, deviceMask}-- {-# INLINE readVkDeviceMask #-}- readVkDeviceMask p- = peekByteOff p #{offset VkAcquireNextImageInfoKHX, deviceMask}-- {-# INLINE writeVkDeviceMask #-}- writeVkDeviceMask p- = pokeByteOff p #{offset VkAcquireNextImageInfoKHX, deviceMask}--instance {-# OVERLAPPING #-}- HasField "deviceMask" VkAcquireNextImageInfoKHX where- type FieldType "deviceMask" VkAcquireNextImageInfoKHX = Word32- type FieldOptional "deviceMask" VkAcquireNextImageInfoKHX = 'False -- ' closing tick for hsc2hs- type FieldOffset "deviceMask" VkAcquireNextImageInfoKHX =- #{offset VkAcquireNextImageInfoKHX, deviceMask}- type FieldIsArray "deviceMask" VkAcquireNextImageInfoKHX = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkAcquireNextImageInfoKHX, deviceMask}--instance CanReadField "deviceMask" VkAcquireNextImageInfoKHX where- {-# INLINE getField #-}- getField = vkDeviceMask-- {-# INLINE readField #-}- readField = readVkDeviceMask--instance CanWriteField "deviceMask" VkAcquireNextImageInfoKHX where- {-# INLINE writeField #-}- writeField = writeVkDeviceMask--instance Show VkAcquireNextImageInfoKHX where- showsPrec d x- = showString "VkAcquireNextImageInfoKHX {" .- showString "vkSType = " .- showsPrec d (vkSType x) .- showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .- showString ", " .- showString "vkSwapchain = " .- showsPrec d (vkSwapchain x) .- showString ", " .- showString "vkTimeout = " .- showsPrec d (vkTimeout x) .- showString ", " .- showString "vkSemaphore = " .- showsPrec d (vkSemaphore x) .- showString ", " .- showString "vkFence = " .- showsPrec d (vkFence x) .- showString ", " .- showString "vkDeviceMask = " .- showsPrec d (vkDeviceMask x) . showChar '}'
@@ -5,20 +5,20 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkAllocationCallbacks (VkAllocationCallbacks(..)) where-import Foreign.Storable (Storable (..))+import Foreign.Storable (Storable (..)) import GHC.Prim import Graphics.Vulkan.Marshal import Graphics.Vulkan.Marshal.Internal-import Graphics.Vulkan.Types.Funcpointers (PFN_vkAllocationFunction,- PFN_vkFreeFunction,- PFN_vkInternalAllocationNotification,- PFN_vkInternalFreeNotification,- PFN_vkReallocationFunction)-import Graphics.Vulkan.Types.StructMembers-import System.IO.Unsafe (unsafeDupablePerformIO)+import Graphics.Vulkan.Types.Funcpointers (PFN_vkAllocationFunction,+ PFN_vkFreeFunction,+ PFN_vkInternalAllocationNotification,+ PFN_vkInternalFreeNotification,+ PFN_vkReallocationFunction)+import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkAllocationCallbacks { -- > void* pUserData;@@ -29,7 +29,7 @@ -- > PFN_vkInternalFreeNotification pfnInternalFree; -- > } VkAllocationCallbacks; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkAllocationCallbacks.html VkAllocationCallbacks registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkAllocationCallbacks.html VkAllocationCallbacks registry at www.khronos.org> data VkAllocationCallbacks = VkAllocationCallbacks## Addr## ByteArray## @@ -79,27 +79,6 @@ type ReturnedOnly VkAllocationCallbacks = 'False -- ' closing tick for hsc2hs type StructExtends VkAllocationCallbacks = '[] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkPUserData VkAllocationCallbacks- where- type VkPUserDataMType VkAllocationCallbacks = Ptr Void-- {-# NOINLINE vkPUserData #-}- vkPUserData x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkAllocationCallbacks, pUserData})-- {-# INLINE vkPUserDataByteOffset #-}- vkPUserDataByteOffset ~_- = #{offset VkAllocationCallbacks, pUserData}-- {-# INLINE readVkPUserData #-}- readVkPUserData p- = peekByteOff p #{offset VkAllocationCallbacks, pUserData}-- {-# INLINE writeVkPUserData #-}- writeVkPUserData p- = pokeByteOff p #{offset VkAllocationCallbacks, pUserData}- instance {-# OVERLAPPING #-} HasField "pUserData" VkAllocationCallbacks where type FieldType "pUserData" VkAllocationCallbacks = Ptr Void@@ -115,38 +94,22 @@ fieldOffset = #{offset VkAllocationCallbacks, pUserData} -instance CanReadField "pUserData" VkAllocationCallbacks where- {-# INLINE getField #-}- getField = vkPUserData-- {-# INLINE readField #-}- readField = readVkPUserData--instance CanWriteField "pUserData" VkAllocationCallbacks where- {-# INLINE writeField #-}- writeField = writeVkPUserData- instance {-# OVERLAPPING #-}- HasVkPfnAllocation VkAllocationCallbacks where- type VkPfnAllocationMType VkAllocationCallbacks =- PFN_vkAllocationFunction-- {-# NOINLINE vkPfnAllocation #-}- vkPfnAllocation x+ CanReadField "pUserData" VkAllocationCallbacks where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkAllocationCallbacks, pfnAllocation})-- {-# INLINE vkPfnAllocationByteOffset #-}- vkPfnAllocationByteOffset ~_- = #{offset VkAllocationCallbacks, pfnAllocation}+ (peekByteOff (unsafePtr x) #{offset VkAllocationCallbacks, pUserData}) - {-# INLINE readVkPfnAllocation #-}- readVkPfnAllocation p- = peekByteOff p #{offset VkAllocationCallbacks, pfnAllocation}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkAllocationCallbacks, pUserData} - {-# INLINE writeVkPfnAllocation #-}- writeVkPfnAllocation p- = pokeByteOff p #{offset VkAllocationCallbacks, pfnAllocation}+instance {-# OVERLAPPING #-}+ CanWriteField "pUserData" VkAllocationCallbacks where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkAllocationCallbacks, pUserData} instance {-# OVERLAPPING #-} HasField "pfnAllocation" VkAllocationCallbacks where@@ -164,38 +127,22 @@ fieldOffset = #{offset VkAllocationCallbacks, pfnAllocation} -instance CanReadField "pfnAllocation" VkAllocationCallbacks where- {-# INLINE getField #-}- getField = vkPfnAllocation-- {-# INLINE readField #-}- readField = readVkPfnAllocation--instance CanWriteField "pfnAllocation" VkAllocationCallbacks where- {-# INLINE writeField #-}- writeField = writeVkPfnAllocation- instance {-# OVERLAPPING #-}- HasVkPfnReallocation VkAllocationCallbacks where- type VkPfnReallocationMType VkAllocationCallbacks =- PFN_vkReallocationFunction-- {-# NOINLINE vkPfnReallocation #-}- vkPfnReallocation x+ CanReadField "pfnAllocation" VkAllocationCallbacks where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkAllocationCallbacks, pfnReallocation})-- {-# INLINE vkPfnReallocationByteOffset #-}- vkPfnReallocationByteOffset ~_- = #{offset VkAllocationCallbacks, pfnReallocation}+ (peekByteOff (unsafePtr x) #{offset VkAllocationCallbacks, pfnAllocation}) - {-# INLINE readVkPfnReallocation #-}- readVkPfnReallocation p- = peekByteOff p #{offset VkAllocationCallbacks, pfnReallocation}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkAllocationCallbacks, pfnAllocation} - {-# INLINE writeVkPfnReallocation #-}- writeVkPfnReallocation p- = pokeByteOff p #{offset VkAllocationCallbacks, pfnReallocation}+instance {-# OVERLAPPING #-}+ CanWriteField "pfnAllocation" VkAllocationCallbacks where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkAllocationCallbacks, pfnAllocation} instance {-# OVERLAPPING #-} HasField "pfnReallocation" VkAllocationCallbacks where@@ -213,38 +160,22 @@ fieldOffset = #{offset VkAllocationCallbacks, pfnReallocation} -instance CanReadField "pfnReallocation" VkAllocationCallbacks where- {-# INLINE getField #-}- getField = vkPfnReallocation+instance {-# OVERLAPPING #-}+ CanReadField "pfnReallocation" VkAllocationCallbacks where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkAllocationCallbacks, pfnReallocation}) {-# INLINE readField #-}- readField = readVkPfnReallocation+ readField p+ = peekByteOff p #{offset VkAllocationCallbacks, pfnReallocation} -instance CanWriteField "pfnReallocation" VkAllocationCallbacks- where+instance {-# OVERLAPPING #-}+ CanWriteField "pfnReallocation" VkAllocationCallbacks where {-# INLINE writeField #-}- writeField = writeVkPfnReallocation--instance {-# OVERLAPPING #-} HasVkPfnFree VkAllocationCallbacks- where- type VkPfnFreeMType VkAllocationCallbacks = PFN_vkFreeFunction-- {-# NOINLINE vkPfnFree #-}- vkPfnFree x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkAllocationCallbacks, pfnFree})-- {-# INLINE vkPfnFreeByteOffset #-}- vkPfnFreeByteOffset ~_- = #{offset VkAllocationCallbacks, pfnFree}-- {-# INLINE readVkPfnFree #-}- readVkPfnFree p- = peekByteOff p #{offset VkAllocationCallbacks, pfnFree}-- {-# INLINE writeVkPfnFree #-}- writeVkPfnFree p- = pokeByteOff p #{offset VkAllocationCallbacks, pfnFree}+ writeField p+ = pokeByteOff p #{offset VkAllocationCallbacks, pfnReallocation} instance {-# OVERLAPPING #-} HasField "pfnFree" VkAllocationCallbacks where@@ -260,38 +191,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkAllocationCallbacks, pfnFree} -instance CanReadField "pfnFree" VkAllocationCallbacks where- {-# INLINE getField #-}- getField = vkPfnFree-- {-# INLINE readField #-}- readField = readVkPfnFree--instance CanWriteField "pfnFree" VkAllocationCallbacks where- {-# INLINE writeField #-}- writeField = writeVkPfnFree- instance {-# OVERLAPPING #-}- HasVkPfnInternalAllocation VkAllocationCallbacks where- type VkPfnInternalAllocationMType VkAllocationCallbacks =- PFN_vkInternalAllocationNotification-- {-# NOINLINE vkPfnInternalAllocation #-}- vkPfnInternalAllocation x+ CanReadField "pfnFree" VkAllocationCallbacks where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkAllocationCallbacks, pfnInternalAllocation})-- {-# INLINE vkPfnInternalAllocationByteOffset #-}- vkPfnInternalAllocationByteOffset ~_- = #{offset VkAllocationCallbacks, pfnInternalAllocation}+ (peekByteOff (unsafePtr x) #{offset VkAllocationCallbacks, pfnFree}) - {-# INLINE readVkPfnInternalAllocation #-}- readVkPfnInternalAllocation p- = peekByteOff p #{offset VkAllocationCallbacks, pfnInternalAllocation}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkAllocationCallbacks, pfnFree} - {-# INLINE writeVkPfnInternalAllocation #-}- writeVkPfnInternalAllocation p- = pokeByteOff p #{offset VkAllocationCallbacks, pfnInternalAllocation}+instance {-# OVERLAPPING #-}+ CanWriteField "pfnFree" VkAllocationCallbacks where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkAllocationCallbacks, pfnFree} instance {-# OVERLAPPING #-} HasField "pfnInternalAllocation" VkAllocationCallbacks where@@ -311,41 +226,22 @@ fieldOffset = #{offset VkAllocationCallbacks, pfnInternalAllocation} -instance CanReadField "pfnInternalAllocation" VkAllocationCallbacks- where- {-# INLINE getField #-}- getField = vkPfnInternalAllocation-- {-# INLINE readField #-}- readField = readVkPfnInternalAllocation--instance CanWriteField "pfnInternalAllocation"- VkAllocationCallbacks- where- {-# INLINE writeField #-}- writeField = writeVkPfnInternalAllocation- instance {-# OVERLAPPING #-}- HasVkPfnInternalFree VkAllocationCallbacks where- type VkPfnInternalFreeMType VkAllocationCallbacks =- PFN_vkInternalFreeNotification-- {-# NOINLINE vkPfnInternalFree #-}- vkPfnInternalFree x+ CanReadField "pfnInternalAllocation" VkAllocationCallbacks where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkAllocationCallbacks, pfnInternalFree})-- {-# INLINE vkPfnInternalFreeByteOffset #-}- vkPfnInternalFreeByteOffset ~_- = #{offset VkAllocationCallbacks, pfnInternalFree}+ (peekByteOff (unsafePtr x) #{offset VkAllocationCallbacks, pfnInternalAllocation}) - {-# INLINE readVkPfnInternalFree #-}- readVkPfnInternalFree p- = peekByteOff p #{offset VkAllocationCallbacks, pfnInternalFree}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkAllocationCallbacks, pfnInternalAllocation} - {-# INLINE writeVkPfnInternalFree #-}- writeVkPfnInternalFree p- = pokeByteOff p #{offset VkAllocationCallbacks, pfnInternalFree}+instance {-# OVERLAPPING #-}+ CanWriteField "pfnInternalAllocation" VkAllocationCallbacks where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkAllocationCallbacks, pfnInternalAllocation} instance {-# OVERLAPPING #-} HasField "pfnInternalFree" VkAllocationCallbacks where@@ -363,35 +259,41 @@ fieldOffset = #{offset VkAllocationCallbacks, pfnInternalFree} -instance CanReadField "pfnInternalFree" VkAllocationCallbacks where- {-# INLINE getField #-}- getField = vkPfnInternalFree+instance {-# OVERLAPPING #-}+ CanReadField "pfnInternalFree" VkAllocationCallbacks where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkAllocationCallbacks, pfnInternalFree}) {-# INLINE readField #-}- readField = readVkPfnInternalFree+ readField p+ = peekByteOff p #{offset VkAllocationCallbacks, pfnInternalFree} -instance CanWriteField "pfnInternalFree" VkAllocationCallbacks- where+instance {-# OVERLAPPING #-}+ CanWriteField "pfnInternalFree" VkAllocationCallbacks where {-# INLINE writeField #-}- writeField = writeVkPfnInternalFree+ writeField p+ = pokeByteOff p #{offset VkAllocationCallbacks, pfnInternalFree} instance Show VkAllocationCallbacks where showsPrec d x = showString "VkAllocationCallbacks {" .- showString "vkPUserData = " .- showsPrec d (vkPUserData x) .+ showString "pUserData = " .+ showsPrec d (getField @"pUserData" x) . showString ", " .- showString "vkPfnAllocation = " .- showsPrec d (vkPfnAllocation x) .+ showString "pfnAllocation = " .+ showsPrec d (getField @"pfnAllocation" x) . showString ", " .- showString "vkPfnReallocation = " .- showsPrec d (vkPfnReallocation x) .+ showString "pfnReallocation = " .+ showsPrec d (getField @"pfnReallocation" x) . showString ", " .- showString "vkPfnFree = " .- showsPrec d (vkPfnFree x) .+ showString "pfnFree = " .+ showsPrec d (getField @"pfnFree" x) . showString ", " .- showString "vkPfnInternalAllocation = " .- showsPrec d (vkPfnInternalAllocation x) .+ showString "pfnInternalAllocation = " .+ showsPrec d (getField @"pfnInternalAllocation" x) . showString ", " .- showString "vkPfnInternalFree = " .- showsPrec d (vkPfnInternalFree x) . showChar '}'+ showString "pfnInternalFree = " .+ showsPrec d (getField @"pfnInternalFree" x) .+ showChar '}'
@@ -0,0 +1,619 @@+#include "vulkan/vulkan.h"++{-# LANGUAGE DataKinds #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-}+{-# LANGUAGE TypeFamilies #-}+module Graphics.Vulkan.Types.Struct.VkAndroidHardwareBufferFormatPropertiesANDROID+ (VkAndroidHardwareBufferFormatPropertiesANDROID(..)) where+import Foreign.Storable+ (Storable (..))+import GHC.Prim+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Marshal.Internal+import Graphics.Vulkan.Types.Enum.VkChromaLocation+ (VkChromaLocation)+import Graphics.Vulkan.Types.Enum.VkFormat+ (VkFormat)+import Graphics.Vulkan.Types.Enum.VkFormatFeatureFlags+ (VkFormatFeatureFlags)+import Graphics.Vulkan.Types.Enum.VkSamplerYcbcrModelConversion+ (VkSamplerYcbcrModelConversion)+import Graphics.Vulkan.Types.Enum.VkSamplerYcbcrRange+ (VkSamplerYcbcrRange)+import Graphics.Vulkan.Types.Enum.VkStructureType+ (VkStructureType)+import Graphics.Vulkan.Types.Struct.VkAndroidHardwareBufferPropertiesANDROID+ (VkAndroidHardwareBufferPropertiesANDROID)+import Graphics.Vulkan.Types.Struct.VkComponentMapping+ (VkComponentMapping)+import System.IO.Unsafe+ (unsafeDupablePerformIO)++-- | > typedef struct VkAndroidHardwareBufferFormatPropertiesANDROID {+-- > VkStructureType sType;+-- > void* pNext;+-- > VkFormat format;+-- > uint64_t externalFormat;+-- > VkFormatFeatureFlags formatFeatures;+-- > VkComponentMapping samplerYcbcrConversionComponents;+-- > VkSamplerYcbcrModelConversion suggestedYcbcrModel;+-- > VkSamplerYcbcrRange suggestedYcbcrRange;+-- > VkChromaLocation suggestedXChromaOffset;+-- > VkChromaLocation suggestedYChromaOffset;+-- > } VkAndroidHardwareBufferFormatPropertiesANDROID;+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkAndroidHardwareBufferFormatPropertiesANDROID.html VkAndroidHardwareBufferFormatPropertiesANDROID registry at www.khronos.org>+data VkAndroidHardwareBufferFormatPropertiesANDROID = VkAndroidHardwareBufferFormatPropertiesANDROID## Addr##+ ByteArray##++instance Eq VkAndroidHardwareBufferFormatPropertiesANDROID where+ (VkAndroidHardwareBufferFormatPropertiesANDROID## a _) ==+ x@(VkAndroidHardwareBufferFormatPropertiesANDROID## b _)+ = EQ == cmpBytes## (sizeOf x) a b++ {-# INLINE (==) #-}++instance Ord VkAndroidHardwareBufferFormatPropertiesANDROID where+ (VkAndroidHardwareBufferFormatPropertiesANDROID## a _) `compare`+ x@(VkAndroidHardwareBufferFormatPropertiesANDROID## b _)+ = cmpBytes## (sizeOf x) a b++ {-# INLINE compare #-}++instance Storable VkAndroidHardwareBufferFormatPropertiesANDROID+ where+ sizeOf ~_+ = #{size VkAndroidHardwareBufferFormatPropertiesANDROID}++ {-# INLINE sizeOf #-}+ alignment ~_+ = #{alignment VkAndroidHardwareBufferFormatPropertiesANDROID}++ {-# INLINE alignment #-}+ peek = peekVkData##++ {-# INLINE peek #-}+ poke = pokeVkData##++ {-# INLINE poke #-}++instance VulkanMarshalPrim+ VkAndroidHardwareBufferFormatPropertiesANDROID+ where+ unsafeAddr (VkAndroidHardwareBufferFormatPropertiesANDROID## a _)+ = a++ {-# INLINE unsafeAddr #-}+ unsafeByteArray+ (VkAndroidHardwareBufferFormatPropertiesANDROID## _ b) = b++ {-# INLINE unsafeByteArray #-}+ unsafeFromByteArrayOffset off b+ = VkAndroidHardwareBufferFormatPropertiesANDROID##+ (plusAddr## (byteArrayContents## b) off)+ b++ {-# INLINE unsafeFromByteArrayOffset #-}++instance VulkanMarshal+ VkAndroidHardwareBufferFormatPropertiesANDROID+ where+ type StructFields VkAndroidHardwareBufferFormatPropertiesANDROID =+ '["sType", "pNext", "format", "externalFormat", "formatFeatures", -- ' closing tick for hsc2hs+ "samplerYcbcrConversionComponents", "suggestedYcbcrModel",+ "suggestedYcbcrRange", "suggestedXChromaOffset",+ "suggestedYChromaOffset"]+ type CUnionType VkAndroidHardwareBufferFormatPropertiesANDROID =+ 'False -- ' closing tick for hsc2hs+ type ReturnedOnly VkAndroidHardwareBufferFormatPropertiesANDROID =+ 'True -- ' closing tick for hsc2hs+ type StructExtends VkAndroidHardwareBufferFormatPropertiesANDROID =+ '[VkAndroidHardwareBufferPropertiesANDROID] -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-}+ HasField "sType" VkAndroidHardwareBufferFormatPropertiesANDROID+ where+ type FieldType "sType"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ = VkStructureType+ type FieldOptional "sType"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "sType"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ =+ #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, sType}+ type FieldIsArray "sType"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, sType}++instance {-# OVERLAPPING #-}+ CanReadField "sType" VkAndroidHardwareBufferFormatPropertiesANDROID+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, sType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, sType}++instance {-# OVERLAPPING #-}+ CanWriteField "sType"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, sType}++instance {-# OVERLAPPING #-}+ HasField "pNext" VkAndroidHardwareBufferFormatPropertiesANDROID+ where+ type FieldType "pNext"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ = Ptr Void+ type FieldOptional "pNext"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "pNext"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ =+ #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, pNext}+ type FieldIsArray "pNext"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, pNext}++instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkAndroidHardwareBufferFormatPropertiesANDROID+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, pNext})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, pNext}++instance {-# OVERLAPPING #-}+ CanWriteField "pNext"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, pNext}++instance {-# OVERLAPPING #-}+ HasField "format" VkAndroidHardwareBufferFormatPropertiesANDROID+ where+ type FieldType "format"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ = VkFormat+ type FieldOptional "format"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "format"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ =+ #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, format}+ type FieldIsArray "format"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, format}++instance {-# OVERLAPPING #-}+ CanReadField "format"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, format})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, format}++instance {-# OVERLAPPING #-}+ CanWriteField "format"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, format}++instance {-# OVERLAPPING #-}+ HasField "externalFormat"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ where+ type FieldType "externalFormat"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ = Word64+ type FieldOptional "externalFormat"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "externalFormat"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ =+ #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, externalFormat}+ type FieldIsArray "externalFormat"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, externalFormat}++instance {-# OVERLAPPING #-}+ CanReadField "externalFormat"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, externalFormat})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, externalFormat}++instance {-# OVERLAPPING #-}+ CanWriteField "externalFormat"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, externalFormat}++instance {-# OVERLAPPING #-}+ HasField "formatFeatures"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ where+ type FieldType "formatFeatures"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ = VkFormatFeatureFlags+ type FieldOptional "formatFeatures"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "formatFeatures"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ =+ #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, formatFeatures}+ type FieldIsArray "formatFeatures"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, formatFeatures}++instance {-# OVERLAPPING #-}+ CanReadField "formatFeatures"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, formatFeatures})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, formatFeatures}++instance {-# OVERLAPPING #-}+ CanWriteField "formatFeatures"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, formatFeatures}++instance {-# OVERLAPPING #-}+ HasField "samplerYcbcrConversionComponents"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ where+ type FieldType "samplerYcbcrConversionComponents"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ = VkComponentMapping+ type FieldOptional "samplerYcbcrConversionComponents"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "samplerYcbcrConversionComponents"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ =+ #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, samplerYcbcrConversionComponents}+ type FieldIsArray "samplerYcbcrConversionComponents"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, samplerYcbcrConversionComponents}++instance {-# OVERLAPPING #-}+ CanReadField "samplerYcbcrConversionComponents"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, samplerYcbcrConversionComponents})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, samplerYcbcrConversionComponents}++instance {-# OVERLAPPING #-}+ CanWriteField "samplerYcbcrConversionComponents"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, samplerYcbcrConversionComponents}++instance {-# OVERLAPPING #-}+ HasField "suggestedYcbcrModel"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ where+ type FieldType "suggestedYcbcrModel"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ = VkSamplerYcbcrModelConversion+ type FieldOptional "suggestedYcbcrModel"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "suggestedYcbcrModel"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ =+ #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, suggestedYcbcrModel}+ type FieldIsArray "suggestedYcbcrModel"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, suggestedYcbcrModel}++instance {-# OVERLAPPING #-}+ CanReadField "suggestedYcbcrModel"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, suggestedYcbcrModel})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, suggestedYcbcrModel}++instance {-# OVERLAPPING #-}+ CanWriteField "suggestedYcbcrModel"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, suggestedYcbcrModel}++instance {-# OVERLAPPING #-}+ HasField "suggestedYcbcrRange"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ where+ type FieldType "suggestedYcbcrRange"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ = VkSamplerYcbcrRange+ type FieldOptional "suggestedYcbcrRange"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "suggestedYcbcrRange"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ =+ #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, suggestedYcbcrRange}+ type FieldIsArray "suggestedYcbcrRange"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, suggestedYcbcrRange}++instance {-# OVERLAPPING #-}+ CanReadField "suggestedYcbcrRange"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, suggestedYcbcrRange})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, suggestedYcbcrRange}++instance {-# OVERLAPPING #-}+ CanWriteField "suggestedYcbcrRange"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, suggestedYcbcrRange}++instance {-# OVERLAPPING #-}+ HasField "suggestedXChromaOffset"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ where+ type FieldType "suggestedXChromaOffset"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ = VkChromaLocation+ type FieldOptional "suggestedXChromaOffset"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "suggestedXChromaOffset"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ =+ #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, suggestedXChromaOffset}+ type FieldIsArray "suggestedXChromaOffset"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, suggestedXChromaOffset}++instance {-# OVERLAPPING #-}+ CanReadField "suggestedXChromaOffset"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, suggestedXChromaOffset})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, suggestedXChromaOffset}++instance {-# OVERLAPPING #-}+ CanWriteField "suggestedXChromaOffset"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, suggestedXChromaOffset}++instance {-# OVERLAPPING #-}+ HasField "suggestedYChromaOffset"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ where+ type FieldType "suggestedYChromaOffset"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ = VkChromaLocation+ type FieldOptional "suggestedYChromaOffset"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "suggestedYChromaOffset"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ =+ #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, suggestedYChromaOffset}+ type FieldIsArray "suggestedYChromaOffset"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, suggestedYChromaOffset}++instance {-# OVERLAPPING #-}+ CanReadField "suggestedYChromaOffset"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, suggestedYChromaOffset})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, suggestedYChromaOffset}++instance {-# OVERLAPPING #-}+ CanWriteField "suggestedYChromaOffset"+ VkAndroidHardwareBufferFormatPropertiesANDROID+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkAndroidHardwareBufferFormatPropertiesANDROID, suggestedYChromaOffset}++instance Show VkAndroidHardwareBufferFormatPropertiesANDROID where+ showsPrec d x+ = showString "VkAndroidHardwareBufferFormatPropertiesANDROID {" .+ showString "sType = " .+ showsPrec d (getField @"sType" x) .+ showString ", " .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) .+ showString ", " .+ showString "format = " .+ showsPrec d (getField @"format" x) .+ showString ", " .+ showString "externalFormat = " .+ showsPrec d (getField @"externalFormat" x) .+ showString ", " .+ showString "formatFeatures = " .+ showsPrec d (getField @"formatFeatures" x) .+ showString ", " .+ showString "samplerYcbcrConversionComponents = " .+ showsPrec d+ (getField @"samplerYcbcrConversionComponents" x)+ .+ showString ", " .+ showString "suggestedYcbcrModel = " .+ showsPrec d (getField @"suggestedYcbcrModel" x)+ .+ showString ", " .+ showString "suggestedYcbcrRange = " .+ showsPrec d+ (getField @"suggestedYcbcrRange" x)+ .+ showString ", " .+ showString "suggestedXChromaOffset = "+ .+ showsPrec d+ (getField+ @"suggestedXChromaOffset"+ x)+ .+ showString ", " .+ showString+ "suggestedYChromaOffset = "+ .+ showsPrec d+ (getField+ @"suggestedYChromaOffset"+ x)+ . showChar '}'
@@ -0,0 +1,259 @@+#include "vulkan/vulkan.h"++{-# LANGUAGE DataKinds #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-}+{-# LANGUAGE TypeFamilies #-}+module Graphics.Vulkan.Types.Struct.VkAndroidHardwareBufferPropertiesANDROID+ (VkAndroidHardwareBufferPropertiesANDROID(..)) where+import Foreign.Storable (Storable (..))+import GHC.Prim+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Marshal.Internal+import Graphics.Vulkan.Types.BaseTypes (VkDeviceSize)+import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)+import System.IO.Unsafe (unsafeDupablePerformIO)++-- | > typedef struct VkAndroidHardwareBufferPropertiesANDROID {+-- > VkStructureType sType;+-- > void* pNext;+-- > VkDeviceSize allocationSize;+-- > uint32_t memoryTypeBits;+-- > } VkAndroidHardwareBufferPropertiesANDROID;+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkAndroidHardwareBufferPropertiesANDROID.html VkAndroidHardwareBufferPropertiesANDROID registry at www.khronos.org>+data VkAndroidHardwareBufferPropertiesANDROID = VkAndroidHardwareBufferPropertiesANDROID## Addr##+ ByteArray##++instance Eq VkAndroidHardwareBufferPropertiesANDROID where+ (VkAndroidHardwareBufferPropertiesANDROID## a _) ==+ x@(VkAndroidHardwareBufferPropertiesANDROID## b _)+ = EQ == cmpBytes## (sizeOf x) a b++ {-# INLINE (==) #-}++instance Ord VkAndroidHardwareBufferPropertiesANDROID where+ (VkAndroidHardwareBufferPropertiesANDROID## a _) `compare`+ x@(VkAndroidHardwareBufferPropertiesANDROID## b _)+ = cmpBytes## (sizeOf x) a b++ {-# INLINE compare #-}++instance Storable VkAndroidHardwareBufferPropertiesANDROID where+ sizeOf ~_+ = #{size VkAndroidHardwareBufferPropertiesANDROID}++ {-# INLINE sizeOf #-}+ alignment ~_+ = #{alignment VkAndroidHardwareBufferPropertiesANDROID}++ {-# INLINE alignment #-}+ peek = peekVkData##++ {-# INLINE peek #-}+ poke = pokeVkData##++ {-# INLINE poke #-}++instance VulkanMarshalPrim VkAndroidHardwareBufferPropertiesANDROID+ where+ unsafeAddr (VkAndroidHardwareBufferPropertiesANDROID## a _) = a++ {-# INLINE unsafeAddr #-}+ unsafeByteArray (VkAndroidHardwareBufferPropertiesANDROID## _ b) = b++ {-# INLINE unsafeByteArray #-}+ unsafeFromByteArrayOffset off b+ = VkAndroidHardwareBufferPropertiesANDROID##+ (plusAddr## (byteArrayContents## b) off)+ b++ {-# INLINE unsafeFromByteArrayOffset #-}++instance VulkanMarshal VkAndroidHardwareBufferPropertiesANDROID+ where+ type StructFields VkAndroidHardwareBufferPropertiesANDROID =+ '["sType", "pNext", "allocationSize", "memoryTypeBits"] -- ' closing tick for hsc2hs+ type CUnionType VkAndroidHardwareBufferPropertiesANDROID = 'False -- ' closing tick for hsc2hs+ type ReturnedOnly VkAndroidHardwareBufferPropertiesANDROID = 'True -- ' closing tick for hsc2hs+ type StructExtends VkAndroidHardwareBufferPropertiesANDROID = '[] -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-}+ HasField "sType" VkAndroidHardwareBufferPropertiesANDROID where+ type FieldType "sType" VkAndroidHardwareBufferPropertiesANDROID =+ VkStructureType+ type FieldOptional "sType" VkAndroidHardwareBufferPropertiesANDROID+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "sType" VkAndroidHardwareBufferPropertiesANDROID =+ #{offset VkAndroidHardwareBufferPropertiesANDROID, sType}+ type FieldIsArray "sType" VkAndroidHardwareBufferPropertiesANDROID+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkAndroidHardwareBufferPropertiesANDROID, sType}++instance {-# OVERLAPPING #-}+ CanReadField "sType" VkAndroidHardwareBufferPropertiesANDROID where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkAndroidHardwareBufferPropertiesANDROID, sType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkAndroidHardwareBufferPropertiesANDROID, sType}++instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkAndroidHardwareBufferPropertiesANDROID+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkAndroidHardwareBufferPropertiesANDROID, sType}++instance {-# OVERLAPPING #-}+ HasField "pNext" VkAndroidHardwareBufferPropertiesANDROID where+ type FieldType "pNext" VkAndroidHardwareBufferPropertiesANDROID =+ Ptr Void+ type FieldOptional "pNext" VkAndroidHardwareBufferPropertiesANDROID+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "pNext" VkAndroidHardwareBufferPropertiesANDROID =+ #{offset VkAndroidHardwareBufferPropertiesANDROID, pNext}+ type FieldIsArray "pNext" VkAndroidHardwareBufferPropertiesANDROID+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkAndroidHardwareBufferPropertiesANDROID, pNext}++instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkAndroidHardwareBufferPropertiesANDROID where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkAndroidHardwareBufferPropertiesANDROID, pNext})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkAndroidHardwareBufferPropertiesANDROID, pNext}++instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkAndroidHardwareBufferPropertiesANDROID+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkAndroidHardwareBufferPropertiesANDROID, pNext}++instance {-# OVERLAPPING #-}+ HasField "allocationSize" VkAndroidHardwareBufferPropertiesANDROID+ where+ type FieldType "allocationSize"+ VkAndroidHardwareBufferPropertiesANDROID+ = VkDeviceSize+ type FieldOptional "allocationSize"+ VkAndroidHardwareBufferPropertiesANDROID+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "allocationSize"+ VkAndroidHardwareBufferPropertiesANDROID+ =+ #{offset VkAndroidHardwareBufferPropertiesANDROID, allocationSize}+ type FieldIsArray "allocationSize"+ VkAndroidHardwareBufferPropertiesANDROID+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkAndroidHardwareBufferPropertiesANDROID, allocationSize}++instance {-# OVERLAPPING #-}+ CanReadField "allocationSize"+ VkAndroidHardwareBufferPropertiesANDROID+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkAndroidHardwareBufferPropertiesANDROID, allocationSize})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkAndroidHardwareBufferPropertiesANDROID, allocationSize}++instance {-# OVERLAPPING #-}+ CanWriteField "allocationSize"+ VkAndroidHardwareBufferPropertiesANDROID+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkAndroidHardwareBufferPropertiesANDROID, allocationSize}++instance {-# OVERLAPPING #-}+ HasField "memoryTypeBits" VkAndroidHardwareBufferPropertiesANDROID+ where+ type FieldType "memoryTypeBits"+ VkAndroidHardwareBufferPropertiesANDROID+ = Word32+ type FieldOptional "memoryTypeBits"+ VkAndroidHardwareBufferPropertiesANDROID+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "memoryTypeBits"+ VkAndroidHardwareBufferPropertiesANDROID+ =+ #{offset VkAndroidHardwareBufferPropertiesANDROID, memoryTypeBits}+ type FieldIsArray "memoryTypeBits"+ VkAndroidHardwareBufferPropertiesANDROID+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkAndroidHardwareBufferPropertiesANDROID, memoryTypeBits}++instance {-# OVERLAPPING #-}+ CanReadField "memoryTypeBits"+ VkAndroidHardwareBufferPropertiesANDROID+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkAndroidHardwareBufferPropertiesANDROID, memoryTypeBits})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkAndroidHardwareBufferPropertiesANDROID, memoryTypeBits}++instance {-# OVERLAPPING #-}+ CanWriteField "memoryTypeBits"+ VkAndroidHardwareBufferPropertiesANDROID+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkAndroidHardwareBufferPropertiesANDROID, memoryTypeBits}++instance Show VkAndroidHardwareBufferPropertiesANDROID where+ showsPrec d x+ = showString "VkAndroidHardwareBufferPropertiesANDROID {" .+ showString "sType = " .+ showsPrec d (getField @"sType" x) .+ showString ", " .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) .+ showString ", " .+ showString "allocationSize = " .+ showsPrec d (getField @"allocationSize" x) .+ showString ", " .+ showString "memoryTypeBits = " .+ showsPrec d (getField @"memoryTypeBits" x) . showChar '}'
@@ -0,0 +1,209 @@+#include "vulkan/vulkan.h"++{-# LANGUAGE DataKinds #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-}+{-# LANGUAGE TypeFamilies #-}+module Graphics.Vulkan.Types.Struct.VkAndroidHardwareBufferUsageANDROID+ (VkAndroidHardwareBufferUsageANDROID(..)) where+import Foreign.Storable (Storable (..))+import GHC.Prim+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Marshal.Internal+import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)+import Graphics.Vulkan.Types.Struct.VkImageFormatProperties2 (VkImageFormatProperties2)+import System.IO.Unsafe (unsafeDupablePerformIO)++-- | > typedef struct VkAndroidHardwareBufferUsageANDROID {+-- > VkStructureType sType;+-- > void* pNext;+-- > uint64_t androidHardwareBufferUsage;+-- > } VkAndroidHardwareBufferUsageANDROID;+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkAndroidHardwareBufferUsageANDROID.html VkAndroidHardwareBufferUsageANDROID registry at www.khronos.org>+data VkAndroidHardwareBufferUsageANDROID = VkAndroidHardwareBufferUsageANDROID## Addr##+ ByteArray##++instance Eq VkAndroidHardwareBufferUsageANDROID where+ (VkAndroidHardwareBufferUsageANDROID## a _) ==+ x@(VkAndroidHardwareBufferUsageANDROID## b _)+ = EQ == cmpBytes## (sizeOf x) a b++ {-# INLINE (==) #-}++instance Ord VkAndroidHardwareBufferUsageANDROID where+ (VkAndroidHardwareBufferUsageANDROID## a _) `compare`+ x@(VkAndroidHardwareBufferUsageANDROID## b _)+ = cmpBytes## (sizeOf x) a b++ {-# INLINE compare #-}++instance Storable VkAndroidHardwareBufferUsageANDROID where+ sizeOf ~_ = #{size VkAndroidHardwareBufferUsageANDROID}++ {-# INLINE sizeOf #-}+ alignment ~_+ = #{alignment VkAndroidHardwareBufferUsageANDROID}++ {-# INLINE alignment #-}+ peek = peekVkData##++ {-# INLINE peek #-}+ poke = pokeVkData##++ {-# INLINE poke #-}++instance VulkanMarshalPrim VkAndroidHardwareBufferUsageANDROID+ where+ unsafeAddr (VkAndroidHardwareBufferUsageANDROID## a _) = a++ {-# INLINE unsafeAddr #-}+ unsafeByteArray (VkAndroidHardwareBufferUsageANDROID## _ b) = b++ {-# INLINE unsafeByteArray #-}+ unsafeFromByteArrayOffset off b+ = VkAndroidHardwareBufferUsageANDROID##+ (plusAddr## (byteArrayContents## b) off)+ b++ {-# INLINE unsafeFromByteArrayOffset #-}++instance VulkanMarshal VkAndroidHardwareBufferUsageANDROID where+ type StructFields VkAndroidHardwareBufferUsageANDROID =+ '["sType", "pNext", "androidHardwareBufferUsage"] -- ' closing tick for hsc2hs+ type CUnionType VkAndroidHardwareBufferUsageANDROID = 'False -- ' closing tick for hsc2hs+ type ReturnedOnly VkAndroidHardwareBufferUsageANDROID = 'True -- ' closing tick for hsc2hs+ type StructExtends VkAndroidHardwareBufferUsageANDROID =+ '[VkImageFormatProperties2] -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-}+ HasField "sType" VkAndroidHardwareBufferUsageANDROID where+ type FieldType "sType" VkAndroidHardwareBufferUsageANDROID =+ VkStructureType+ type FieldOptional "sType" VkAndroidHardwareBufferUsageANDROID =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "sType" VkAndroidHardwareBufferUsageANDROID =+ #{offset VkAndroidHardwareBufferUsageANDROID, sType}+ type FieldIsArray "sType" VkAndroidHardwareBufferUsageANDROID =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkAndroidHardwareBufferUsageANDROID, sType}++instance {-# OVERLAPPING #-}+ CanReadField "sType" VkAndroidHardwareBufferUsageANDROID where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkAndroidHardwareBufferUsageANDROID, sType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkAndroidHardwareBufferUsageANDROID, sType}++instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkAndroidHardwareBufferUsageANDROID where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkAndroidHardwareBufferUsageANDROID, sType}++instance {-# OVERLAPPING #-}+ HasField "pNext" VkAndroidHardwareBufferUsageANDROID where+ type FieldType "pNext" VkAndroidHardwareBufferUsageANDROID =+ Ptr Void+ type FieldOptional "pNext" VkAndroidHardwareBufferUsageANDROID =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "pNext" VkAndroidHardwareBufferUsageANDROID =+ #{offset VkAndroidHardwareBufferUsageANDROID, pNext}+ type FieldIsArray "pNext" VkAndroidHardwareBufferUsageANDROID =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkAndroidHardwareBufferUsageANDROID, pNext}++instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkAndroidHardwareBufferUsageANDROID where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkAndroidHardwareBufferUsageANDROID, pNext})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkAndroidHardwareBufferUsageANDROID, pNext}++instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkAndroidHardwareBufferUsageANDROID where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkAndroidHardwareBufferUsageANDROID, pNext}++instance {-# OVERLAPPING #-}+ HasField "androidHardwareBufferUsage"+ VkAndroidHardwareBufferUsageANDROID+ where+ type FieldType "androidHardwareBufferUsage"+ VkAndroidHardwareBufferUsageANDROID+ = Word64+ type FieldOptional "androidHardwareBufferUsage"+ VkAndroidHardwareBufferUsageANDROID+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "androidHardwareBufferUsage"+ VkAndroidHardwareBufferUsageANDROID+ =+ #{offset VkAndroidHardwareBufferUsageANDROID, androidHardwareBufferUsage}+ type FieldIsArray "androidHardwareBufferUsage"+ VkAndroidHardwareBufferUsageANDROID+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkAndroidHardwareBufferUsageANDROID, androidHardwareBufferUsage}++instance {-# OVERLAPPING #-}+ CanReadField "androidHardwareBufferUsage"+ VkAndroidHardwareBufferUsageANDROID+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkAndroidHardwareBufferUsageANDROID, androidHardwareBufferUsage})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkAndroidHardwareBufferUsageANDROID, androidHardwareBufferUsage}++instance {-# OVERLAPPING #-}+ CanWriteField "androidHardwareBufferUsage"+ VkAndroidHardwareBufferUsageANDROID+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkAndroidHardwareBufferUsageANDROID, androidHardwareBufferUsage}++instance Show VkAndroidHardwareBufferUsageANDROID where+ showsPrec d x+ = showString "VkAndroidHardwareBufferUsageANDROID {" .+ showString "sType = " .+ showsPrec d (getField @"sType" x) .+ showString ", " .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) .+ showString ", " .+ showString "androidHardwareBufferUsage = " .+ showsPrec d (getField @"androidHardwareBufferUsage" x) .+ showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkAndroidSurfaceCreateInfoKHR (VkAndroidSurfaceCreateInfoKHR(..)) where@@ -13,19 +14,18 @@ import Graphics.Vulkan.Marshal import Graphics.Vulkan.Marshal.Internal import Graphics.Vulkan.Types.Bitmasks (VkAndroidSurfaceCreateFlagsKHR)+import Graphics.Vulkan.Types.Defines (ANativeWindow) import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)-import Graphics.Vulkan.Types.Include (ANativeWindow)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkAndroidSurfaceCreateInfoKHR { -- > VkStructureType sType;--- > const void* pNext;--- > VkAndroidSurfaceCreateFlagsKHR flags;--- > ANativeWindow* window;+-- > const void* pNext;+-- > VkAndroidSurfaceCreateFlagsKHR flags;+-- > struct ANativeWindow* window; -- > } VkAndroidSurfaceCreateInfoKHR; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkAndroidSurfaceCreateInfoKHR.html VkAndroidSurfaceCreateInfoKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkAndroidSurfaceCreateInfoKHR.html VkAndroidSurfaceCreateInfoKHR registry at www.khronos.org> data VkAndroidSurfaceCreateInfoKHR = VkAndroidSurfaceCreateInfoKHR## Addr## ByteArray## @@ -79,27 +79,6 @@ type StructExtends VkAndroidSurfaceCreateInfoKHR = '[] -- ' closing tick for hsc2hs instance {-# OVERLAPPING #-}- HasVkSType VkAndroidSurfaceCreateInfoKHR where- type VkSTypeMType VkAndroidSurfaceCreateInfoKHR = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkAndroidSurfaceCreateInfoKHR, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkAndroidSurfaceCreateInfoKHR, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkAndroidSurfaceCreateInfoKHR, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkAndroidSurfaceCreateInfoKHR, sType}--instance {-# OVERLAPPING #-} HasField "sType" VkAndroidSurfaceCreateInfoKHR where type FieldType "sType" VkAndroidSurfaceCreateInfoKHR = VkStructureType@@ -115,37 +94,22 @@ fieldOffset = #{offset VkAndroidSurfaceCreateInfoKHR, sType} -instance CanReadField "sType" VkAndroidSurfaceCreateInfoKHR where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance CanWriteField "sType" VkAndroidSurfaceCreateInfoKHR where- {-# INLINE writeField #-}- writeField = writeVkSType- instance {-# OVERLAPPING #-}- HasVkPNext VkAndroidSurfaceCreateInfoKHR where- type VkPNextMType VkAndroidSurfaceCreateInfoKHR = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x+ CanReadField "sType" VkAndroidSurfaceCreateInfoKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkAndroidSurfaceCreateInfoKHR, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkAndroidSurfaceCreateInfoKHR, pNext}+ (peekByteOff (unsafePtr x) #{offset VkAndroidSurfaceCreateInfoKHR, sType}) - {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkAndroidSurfaceCreateInfoKHR, pNext}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkAndroidSurfaceCreateInfoKHR, sType} - {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkAndroidSurfaceCreateInfoKHR, pNext}+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkAndroidSurfaceCreateInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkAndroidSurfaceCreateInfoKHR, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkAndroidSurfaceCreateInfoKHR where@@ -162,38 +126,22 @@ fieldOffset = #{offset VkAndroidSurfaceCreateInfoKHR, pNext} -instance CanReadField "pNext" VkAndroidSurfaceCreateInfoKHR where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkAndroidSurfaceCreateInfoKHR where- {-# INLINE writeField #-}- writeField = writeVkPNext- instance {-# OVERLAPPING #-}- HasVkFlags VkAndroidSurfaceCreateInfoKHR where- type VkFlagsMType VkAndroidSurfaceCreateInfoKHR =- VkAndroidSurfaceCreateFlagsKHR-- {-# NOINLINE vkFlags #-}- vkFlags x+ CanReadField "pNext" VkAndroidSurfaceCreateInfoKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkAndroidSurfaceCreateInfoKHR, flags})-- {-# INLINE vkFlagsByteOffset #-}- vkFlagsByteOffset ~_- = #{offset VkAndroidSurfaceCreateInfoKHR, flags}+ (peekByteOff (unsafePtr x) #{offset VkAndroidSurfaceCreateInfoKHR, pNext}) - {-# INLINE readVkFlags #-}- readVkFlags p- = peekByteOff p #{offset VkAndroidSurfaceCreateInfoKHR, flags}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkAndroidSurfaceCreateInfoKHR, pNext} - {-# INLINE writeVkFlags #-}- writeVkFlags p- = pokeByteOff p #{offset VkAndroidSurfaceCreateInfoKHR, flags}+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkAndroidSurfaceCreateInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkAndroidSurfaceCreateInfoKHR, pNext} instance {-# OVERLAPPING #-} HasField "flags" VkAndroidSurfaceCreateInfoKHR where@@ -211,38 +159,22 @@ fieldOffset = #{offset VkAndroidSurfaceCreateInfoKHR, flags} -instance CanReadField "flags" VkAndroidSurfaceCreateInfoKHR where- {-# INLINE getField #-}- getField = vkFlags-- {-# INLINE readField #-}- readField = readVkFlags--instance CanWriteField "flags" VkAndroidSurfaceCreateInfoKHR where- {-# INLINE writeField #-}- writeField = writeVkFlags- instance {-# OVERLAPPING #-}- HasVkWindow VkAndroidSurfaceCreateInfoKHR where- type VkWindowMType VkAndroidSurfaceCreateInfoKHR =- Ptr ANativeWindow-- {-# NOINLINE vkWindow #-}- vkWindow x+ CanReadField "flags" VkAndroidSurfaceCreateInfoKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkAndroidSurfaceCreateInfoKHR, window})-- {-# INLINE vkWindowByteOffset #-}- vkWindowByteOffset ~_- = #{offset VkAndroidSurfaceCreateInfoKHR, window}+ (peekByteOff (unsafePtr x) #{offset VkAndroidSurfaceCreateInfoKHR, flags}) - {-# INLINE readVkWindow #-}- readVkWindow p- = peekByteOff p #{offset VkAndroidSurfaceCreateInfoKHR, window}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkAndroidSurfaceCreateInfoKHR, flags} - {-# INLINE writeVkWindow #-}- writeVkWindow p- = pokeByteOff p #{offset VkAndroidSurfaceCreateInfoKHR, window}+instance {-# OVERLAPPING #-}+ CanWriteField "flags" VkAndroidSurfaceCreateInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkAndroidSurfaceCreateInfoKHR, flags} instance {-# OVERLAPPING #-} HasField "window" VkAndroidSurfaceCreateInfoKHR where@@ -260,27 +192,34 @@ fieldOffset = #{offset VkAndroidSurfaceCreateInfoKHR, window} -instance CanReadField "window" VkAndroidSurfaceCreateInfoKHR where- {-# INLINE getField #-}- getField = vkWindow+instance {-# OVERLAPPING #-}+ CanReadField "window" VkAndroidSurfaceCreateInfoKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkAndroidSurfaceCreateInfoKHR, window}) {-# INLINE readField #-}- readField = readVkWindow+ readField p+ = peekByteOff p #{offset VkAndroidSurfaceCreateInfoKHR, window} -instance CanWriteField "window" VkAndroidSurfaceCreateInfoKHR where+instance {-# OVERLAPPING #-}+ CanWriteField "window" VkAndroidSurfaceCreateInfoKHR where {-# INLINE writeField #-}- writeField = writeVkWindow+ writeField p+ = pokeByteOff p #{offset VkAndroidSurfaceCreateInfoKHR, window} instance Show VkAndroidSurfaceCreateInfoKHR where showsPrec d x = showString "VkAndroidSurfaceCreateInfoKHR {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkFlags = " .- showsPrec d (vkFlags x) .+ showString "flags = " .+ showsPrec d (getField @"flags" x) . showString ", " .- showString "vkWindow = " . showsPrec d (vkWindow x) . showChar '}'+ showString "window = " .+ showsPrec d (getField @"window" x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkApplicationInfo (VkApplicationInfo(..)) where@@ -13,7 +14,6 @@ import Graphics.Vulkan.Marshal import Graphics.Vulkan.Marshal.Internal import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkApplicationInfo {@@ -26,7 +26,7 @@ -- > uint32_t apiVersion; -- > } VkApplicationInfo; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkApplicationInfo.html VkApplicationInfo registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkApplicationInfo.html VkApplicationInfo registry at www.khronos.org> data VkApplicationInfo = VkApplicationInfo## Addr## ByteArray## instance Eq VkApplicationInfo where@@ -75,26 +75,6 @@ type ReturnedOnly VkApplicationInfo = 'False -- ' closing tick for hsc2hs type StructExtends VkApplicationInfo = '[] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkSType VkApplicationInfo where- type VkSTypeMType VkApplicationInfo = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkApplicationInfo, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkApplicationInfo, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkApplicationInfo, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkApplicationInfo, sType}- instance {-# OVERLAPPING #-} HasField "sType" VkApplicationInfo where type FieldType "sType" VkApplicationInfo = VkStructureType@@ -109,36 +89,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkApplicationInfo, sType} -instance CanReadField "sType" VkApplicationInfo where- {-# INLINE getField #-}- getField = vkSType+instance {-# OVERLAPPING #-} CanReadField "sType" VkApplicationInfo+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkApplicationInfo, sType}) {-# INLINE readField #-}- readField = readVkSType+ readField p+ = peekByteOff p #{offset VkApplicationInfo, sType} -instance CanWriteField "sType" VkApplicationInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkApplicationInfo where {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-} HasVkPNext VkApplicationInfo where- type VkPNextMType VkApplicationInfo = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkApplicationInfo, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkApplicationInfo, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkApplicationInfo, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkApplicationInfo, pNext}+ writeField p+ = pokeByteOff p #{offset VkApplicationInfo, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkApplicationInfo where@@ -154,37 +120,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkApplicationInfo, pNext} -instance CanReadField "pNext" VkApplicationInfo where- {-# INLINE getField #-}- getField = vkPNext+instance {-# OVERLAPPING #-} CanReadField "pNext" VkApplicationInfo+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkApplicationInfo, pNext}) {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkApplicationInfo where- {-# INLINE writeField #-}- writeField = writeVkPNext+ readField p+ = peekByteOff p #{offset VkApplicationInfo, pNext} instance {-# OVERLAPPING #-}- HasVkPApplicationName VkApplicationInfo where- type VkPApplicationNameMType VkApplicationInfo = CString-- {-# NOINLINE vkPApplicationName #-}- vkPApplicationName x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkApplicationInfo, pApplicationName})-- {-# INLINE vkPApplicationNameByteOffset #-}- vkPApplicationNameByteOffset ~_- = #{offset VkApplicationInfo, pApplicationName}-- {-# INLINE readVkPApplicationName #-}- readVkPApplicationName p- = peekByteOff p #{offset VkApplicationInfo, pApplicationName}-- {-# INLINE writeVkPApplicationName #-}- writeVkPApplicationName p- = pokeByteOff p #{offset VkApplicationInfo, pApplicationName}+ CanWriteField "pNext" VkApplicationInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkApplicationInfo, pNext} instance {-# OVERLAPPING #-} HasField "pApplicationName" VkApplicationInfo where@@ -201,37 +152,22 @@ fieldOffset = #{offset VkApplicationInfo, pApplicationName} -instance CanReadField "pApplicationName" VkApplicationInfo where- {-# INLINE getField #-}- getField = vkPApplicationName-- {-# INLINE readField #-}- readField = readVkPApplicationName--instance CanWriteField "pApplicationName" VkApplicationInfo where- {-# INLINE writeField #-}- writeField = writeVkPApplicationName- instance {-# OVERLAPPING #-}- HasVkApplicationVersion VkApplicationInfo where- type VkApplicationVersionMType VkApplicationInfo = Word32-- {-# NOINLINE vkApplicationVersion #-}- vkApplicationVersion x+ CanReadField "pApplicationName" VkApplicationInfo where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkApplicationInfo, applicationVersion})-- {-# INLINE vkApplicationVersionByteOffset #-}- vkApplicationVersionByteOffset ~_- = #{offset VkApplicationInfo, applicationVersion}+ (peekByteOff (unsafePtr x) #{offset VkApplicationInfo, pApplicationName}) - {-# INLINE readVkApplicationVersion #-}- readVkApplicationVersion p- = peekByteOff p #{offset VkApplicationInfo, applicationVersion}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkApplicationInfo, pApplicationName} - {-# INLINE writeVkApplicationVersion #-}- writeVkApplicationVersion p- = pokeByteOff p #{offset VkApplicationInfo, applicationVersion}+instance {-# OVERLAPPING #-}+ CanWriteField "pApplicationName" VkApplicationInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkApplicationInfo, pApplicationName} instance {-# OVERLAPPING #-} HasField "applicationVersion" VkApplicationInfo where@@ -248,37 +184,22 @@ fieldOffset = #{offset VkApplicationInfo, applicationVersion} -instance CanReadField "applicationVersion" VkApplicationInfo where- {-# INLINE getField #-}- getField = vkApplicationVersion+instance {-# OVERLAPPING #-}+ CanReadField "applicationVersion" VkApplicationInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkApplicationInfo, applicationVersion}) {-# INLINE readField #-}- readField = readVkApplicationVersion+ readField p+ = peekByteOff p #{offset VkApplicationInfo, applicationVersion} -instance CanWriteField "applicationVersion" VkApplicationInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "applicationVersion" VkApplicationInfo where {-# INLINE writeField #-}- writeField = writeVkApplicationVersion--instance {-# OVERLAPPING #-} HasVkPEngineName VkApplicationInfo- where- type VkPEngineNameMType VkApplicationInfo = CString-- {-# NOINLINE vkPEngineName #-}- vkPEngineName x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkApplicationInfo, pEngineName})-- {-# INLINE vkPEngineNameByteOffset #-}- vkPEngineNameByteOffset ~_- = #{offset VkApplicationInfo, pEngineName}-- {-# INLINE readVkPEngineName #-}- readVkPEngineName p- = peekByteOff p #{offset VkApplicationInfo, pEngineName}-- {-# INLINE writeVkPEngineName #-}- writeVkPEngineName p- = pokeByteOff p #{offset VkApplicationInfo, pEngineName}+ writeField p+ = pokeByteOff p #{offset VkApplicationInfo, applicationVersion} instance {-# OVERLAPPING #-} HasField "pEngineName" VkApplicationInfo where@@ -294,37 +215,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkApplicationInfo, pEngineName} -instance CanReadField "pEngineName" VkApplicationInfo where- {-# INLINE getField #-}- getField = vkPEngineName+instance {-# OVERLAPPING #-}+ CanReadField "pEngineName" VkApplicationInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkApplicationInfo, pEngineName}) {-# INLINE readField #-}- readField = readVkPEngineName+ readField p+ = peekByteOff p #{offset VkApplicationInfo, pEngineName} -instance CanWriteField "pEngineName" VkApplicationInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "pEngineName" VkApplicationInfo where {-# INLINE writeField #-}- writeField = writeVkPEngineName--instance {-# OVERLAPPING #-} HasVkEngineVersion VkApplicationInfo- where- type VkEngineVersionMType VkApplicationInfo = Word32-- {-# NOINLINE vkEngineVersion #-}- vkEngineVersion x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkApplicationInfo, engineVersion})-- {-# INLINE vkEngineVersionByteOffset #-}- vkEngineVersionByteOffset ~_- = #{offset VkApplicationInfo, engineVersion}-- {-# INLINE readVkEngineVersion #-}- readVkEngineVersion p- = peekByteOff p #{offset VkApplicationInfo, engineVersion}-- {-# INLINE writeVkEngineVersion #-}- writeVkEngineVersion p- = pokeByteOff p #{offset VkApplicationInfo, engineVersion}+ writeField p+ = pokeByteOff p #{offset VkApplicationInfo, pEngineName} instance {-# OVERLAPPING #-} HasField "engineVersion" VkApplicationInfo where@@ -341,37 +247,22 @@ fieldOffset = #{offset VkApplicationInfo, engineVersion} -instance CanReadField "engineVersion" VkApplicationInfo where- {-# INLINE getField #-}- getField = vkEngineVersion+instance {-# OVERLAPPING #-}+ CanReadField "engineVersion" VkApplicationInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkApplicationInfo, engineVersion}) {-# INLINE readField #-}- readField = readVkEngineVersion+ readField p+ = peekByteOff p #{offset VkApplicationInfo, engineVersion} -instance CanWriteField "engineVersion" VkApplicationInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "engineVersion" VkApplicationInfo where {-# INLINE writeField #-}- writeField = writeVkEngineVersion--instance {-# OVERLAPPING #-} HasVkApiVersion VkApplicationInfo- where- type VkApiVersionMType VkApplicationInfo = Word32-- {-# NOINLINE vkApiVersion #-}- vkApiVersion x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkApplicationInfo, apiVersion})-- {-# INLINE vkApiVersionByteOffset #-}- vkApiVersionByteOffset ~_- = #{offset VkApplicationInfo, apiVersion}-- {-# INLINE readVkApiVersion #-}- readVkApiVersion p- = peekByteOff p #{offset VkApplicationInfo, apiVersion}-- {-# INLINE writeVkApiVersion #-}- writeVkApiVersion p- = pokeByteOff p #{offset VkApplicationInfo, apiVersion}+ writeField p+ = pokeByteOff p #{offset VkApplicationInfo, engineVersion} instance {-# OVERLAPPING #-} HasField "apiVersion" VkApplicationInfo where@@ -387,37 +278,44 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkApplicationInfo, apiVersion} -instance CanReadField "apiVersion" VkApplicationInfo where- {-# INLINE getField #-}- getField = vkApiVersion+instance {-# OVERLAPPING #-}+ CanReadField "apiVersion" VkApplicationInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkApplicationInfo, apiVersion}) {-# INLINE readField #-}- readField = readVkApiVersion+ readField p+ = peekByteOff p #{offset VkApplicationInfo, apiVersion} -instance CanWriteField "apiVersion" VkApplicationInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "apiVersion" VkApplicationInfo where {-# INLINE writeField #-}- writeField = writeVkApiVersion+ writeField p+ = pokeByteOff p #{offset VkApplicationInfo, apiVersion} instance Show VkApplicationInfo where showsPrec d x = showString "VkApplicationInfo {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkPApplicationName = " .- showsPrec d (vkPApplicationName x) .+ showString "pApplicationName = " .+ showsPrec d (getField @"pApplicationName" x) . showString ", " .- showString "vkApplicationVersion = " .- showsPrec d (vkApplicationVersion x) .+ showString "applicationVersion = " .+ showsPrec d (getField @"applicationVersion" x) . showString ", " .- showString "vkPEngineName = " .- showsPrec d (vkPEngineName x) .+ showString "pEngineName = " .+ showsPrec d (getField @"pEngineName" x) . showString ", " .- showString "vkEngineVersion = " .- showsPrec d (vkEngineVersion x) .+ showString "engineVersion = " .+ showsPrec d (getField @"engineVersion" x) . showString ", " .- showString "vkApiVersion = " .- showsPrec d (vkApiVersion x) . showChar '}'+ showString "apiVersion = " .+ showsPrec d (getField @"apiVersion" x) .+ showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkAttachmentDescription (VkAttachmentDescription(..)) where@@ -18,7 +19,6 @@ import Graphics.Vulkan.Types.Enum.VkFormat (VkFormat) import Graphics.Vulkan.Types.Enum.VkImageLayout (VkImageLayout) import Graphics.Vulkan.Types.Enum.VkSampleCountFlags (VkSampleCountFlagBits)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkAttachmentDescription {@@ -33,7 +33,7 @@ -- > VkImageLayout finalLayout; -- > } VkAttachmentDescription; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkAttachmentDescription.html VkAttachmentDescription registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkAttachmentDescription.html VkAttachmentDescription registry at www.khronos.org> data VkAttachmentDescription = VkAttachmentDescription## Addr## ByteArray## @@ -83,28 +83,6 @@ type ReturnedOnly VkAttachmentDescription = 'False -- ' closing tick for hsc2hs type StructExtends VkAttachmentDescription = '[] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkFlags VkAttachmentDescription- where- type VkFlagsMType VkAttachmentDescription =- VkAttachmentDescriptionFlags-- {-# NOINLINE vkFlags #-}- vkFlags x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkAttachmentDescription, flags})-- {-# INLINE vkFlagsByteOffset #-}- vkFlagsByteOffset ~_- = #{offset VkAttachmentDescription, flags}-- {-# INLINE readVkFlags #-}- readVkFlags p- = peekByteOff p #{offset VkAttachmentDescription, flags}-- {-# INLINE writeVkFlags #-}- writeVkFlags p- = pokeByteOff p #{offset VkAttachmentDescription, flags}- instance {-# OVERLAPPING #-} HasField "flags" VkAttachmentDescription where type FieldType "flags" VkAttachmentDescription =@@ -120,37 +98,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkAttachmentDescription, flags} -instance CanReadField "flags" VkAttachmentDescription where- {-# INLINE getField #-}- getField = vkFlags+instance {-# OVERLAPPING #-}+ CanReadField "flags" VkAttachmentDescription where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkAttachmentDescription, flags}) {-# INLINE readField #-}- readField = readVkFlags+ readField p+ = peekByteOff p #{offset VkAttachmentDescription, flags} -instance CanWriteField "flags" VkAttachmentDescription where+instance {-# OVERLAPPING #-}+ CanWriteField "flags" VkAttachmentDescription where {-# INLINE writeField #-}- writeField = writeVkFlags--instance {-# OVERLAPPING #-} HasVkFormat VkAttachmentDescription- where- type VkFormatMType VkAttachmentDescription = VkFormat-- {-# NOINLINE vkFormat #-}- vkFormat x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkAttachmentDescription, format})-- {-# INLINE vkFormatByteOffset #-}- vkFormatByteOffset ~_- = #{offset VkAttachmentDescription, format}-- {-# INLINE readVkFormat #-}- readVkFormat p- = peekByteOff p #{offset VkAttachmentDescription, format}-- {-# INLINE writeVkFormat #-}- writeVkFormat p- = pokeByteOff p #{offset VkAttachmentDescription, format}+ writeField p+ = pokeByteOff p #{offset VkAttachmentDescription, flags} instance {-# OVERLAPPING #-} HasField "format" VkAttachmentDescription where@@ -166,37 +129,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkAttachmentDescription, format} -instance CanReadField "format" VkAttachmentDescription where- {-# INLINE getField #-}- getField = vkFormat+instance {-# OVERLAPPING #-}+ CanReadField "format" VkAttachmentDescription where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkAttachmentDescription, format}) {-# INLINE readField #-}- readField = readVkFormat+ readField p+ = peekByteOff p #{offset VkAttachmentDescription, format} -instance CanWriteField "format" VkAttachmentDescription where+instance {-# OVERLAPPING #-}+ CanWriteField "format" VkAttachmentDescription where {-# INLINE writeField #-}- writeField = writeVkFormat--instance {-# OVERLAPPING #-} HasVkSamples VkAttachmentDescription- where- type VkSamplesMType VkAttachmentDescription = VkSampleCountFlagBits-- {-# NOINLINE vkSamples #-}- vkSamples x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkAttachmentDescription, samples})-- {-# INLINE vkSamplesByteOffset #-}- vkSamplesByteOffset ~_- = #{offset VkAttachmentDescription, samples}-- {-# INLINE readVkSamples #-}- readVkSamples p- = peekByteOff p #{offset VkAttachmentDescription, samples}-- {-# INLINE writeVkSamples #-}- writeVkSamples p- = pokeByteOff p #{offset VkAttachmentDescription, samples}+ writeField p+ = pokeByteOff p #{offset VkAttachmentDescription, format} instance {-# OVERLAPPING #-} HasField "samples" VkAttachmentDescription where@@ -214,37 +162,22 @@ fieldOffset = #{offset VkAttachmentDescription, samples} -instance CanReadField "samples" VkAttachmentDescription where- {-# INLINE getField #-}- getField = vkSamples+instance {-# OVERLAPPING #-}+ CanReadField "samples" VkAttachmentDescription where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkAttachmentDescription, samples}) {-# INLINE readField #-}- readField = readVkSamples+ readField p+ = peekByteOff p #{offset VkAttachmentDescription, samples} -instance CanWriteField "samples" VkAttachmentDescription where+instance {-# OVERLAPPING #-}+ CanWriteField "samples" VkAttachmentDescription where {-# INLINE writeField #-}- writeField = writeVkSamples--instance {-# OVERLAPPING #-} HasVkLoadOp VkAttachmentDescription- where- type VkLoadOpMType VkAttachmentDescription = VkAttachmentLoadOp-- {-# NOINLINE vkLoadOp #-}- vkLoadOp x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkAttachmentDescription, loadOp})-- {-# INLINE vkLoadOpByteOffset #-}- vkLoadOpByteOffset ~_- = #{offset VkAttachmentDescription, loadOp}-- {-# INLINE readVkLoadOp #-}- readVkLoadOp p- = peekByteOff p #{offset VkAttachmentDescription, loadOp}-- {-# INLINE writeVkLoadOp #-}- writeVkLoadOp p- = pokeByteOff p #{offset VkAttachmentDescription, loadOp}+ writeField p+ = pokeByteOff p #{offset VkAttachmentDescription, samples} instance {-# OVERLAPPING #-} HasField "loadOp" VkAttachmentDescription where@@ -261,37 +194,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkAttachmentDescription, loadOp} -instance CanReadField "loadOp" VkAttachmentDescription where- {-# INLINE getField #-}- getField = vkLoadOp+instance {-# OVERLAPPING #-}+ CanReadField "loadOp" VkAttachmentDescription where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkAttachmentDescription, loadOp}) {-# INLINE readField #-}- readField = readVkLoadOp+ readField p+ = peekByteOff p #{offset VkAttachmentDescription, loadOp} -instance CanWriteField "loadOp" VkAttachmentDescription where+instance {-# OVERLAPPING #-}+ CanWriteField "loadOp" VkAttachmentDescription where {-# INLINE writeField #-}- writeField = writeVkLoadOp--instance {-# OVERLAPPING #-} HasVkStoreOp VkAttachmentDescription- where- type VkStoreOpMType VkAttachmentDescription = VkAttachmentStoreOp-- {-# NOINLINE vkStoreOp #-}- vkStoreOp x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkAttachmentDescription, storeOp})-- {-# INLINE vkStoreOpByteOffset #-}- vkStoreOpByteOffset ~_- = #{offset VkAttachmentDescription, storeOp}-- {-# INLINE readVkStoreOp #-}- readVkStoreOp p- = peekByteOff p #{offset VkAttachmentDescription, storeOp}-- {-# INLINE writeVkStoreOp #-}- writeVkStoreOp p- = pokeByteOff p #{offset VkAttachmentDescription, storeOp}+ writeField p+ = pokeByteOff p #{offset VkAttachmentDescription, loadOp} instance {-# OVERLAPPING #-} HasField "storeOp" VkAttachmentDescription where@@ -309,38 +227,22 @@ fieldOffset = #{offset VkAttachmentDescription, storeOp} -instance CanReadField "storeOp" VkAttachmentDescription where- {-# INLINE getField #-}- getField = vkStoreOp-- {-# INLINE readField #-}- readField = readVkStoreOp--instance CanWriteField "storeOp" VkAttachmentDescription where- {-# INLINE writeField #-}- writeField = writeVkStoreOp- instance {-# OVERLAPPING #-}- HasVkStencilLoadOp VkAttachmentDescription where- type VkStencilLoadOpMType VkAttachmentDescription =- VkAttachmentLoadOp-- {-# NOINLINE vkStencilLoadOp #-}- vkStencilLoadOp x+ CanReadField "storeOp" VkAttachmentDescription where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkAttachmentDescription, stencilLoadOp})-- {-# INLINE vkStencilLoadOpByteOffset #-}- vkStencilLoadOpByteOffset ~_- = #{offset VkAttachmentDescription, stencilLoadOp}+ (peekByteOff (unsafePtr x) #{offset VkAttachmentDescription, storeOp}) - {-# INLINE readVkStencilLoadOp #-}- readVkStencilLoadOp p- = peekByteOff p #{offset VkAttachmentDescription, stencilLoadOp}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkAttachmentDescription, storeOp} - {-# INLINE writeVkStencilLoadOp #-}- writeVkStencilLoadOp p- = pokeByteOff p #{offset VkAttachmentDescription, stencilLoadOp}+instance {-# OVERLAPPING #-}+ CanWriteField "storeOp" VkAttachmentDescription where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkAttachmentDescription, storeOp} instance {-# OVERLAPPING #-} HasField "stencilLoadOp" VkAttachmentDescription where@@ -358,39 +260,22 @@ fieldOffset = #{offset VkAttachmentDescription, stencilLoadOp} -instance CanReadField "stencilLoadOp" VkAttachmentDescription where- {-# INLINE getField #-}- getField = vkStencilLoadOp-- {-# INLINE readField #-}- readField = readVkStencilLoadOp--instance CanWriteField "stencilLoadOp" VkAttachmentDescription- where- {-# INLINE writeField #-}- writeField = writeVkStencilLoadOp- instance {-# OVERLAPPING #-}- HasVkStencilStoreOp VkAttachmentDescription where- type VkStencilStoreOpMType VkAttachmentDescription =- VkAttachmentStoreOp-- {-# NOINLINE vkStencilStoreOp #-}- vkStencilStoreOp x+ CanReadField "stencilLoadOp" VkAttachmentDescription where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkAttachmentDescription, stencilStoreOp})-- {-# INLINE vkStencilStoreOpByteOffset #-}- vkStencilStoreOpByteOffset ~_- = #{offset VkAttachmentDescription, stencilStoreOp}+ (peekByteOff (unsafePtr x) #{offset VkAttachmentDescription, stencilLoadOp}) - {-# INLINE readVkStencilStoreOp #-}- readVkStencilStoreOp p- = peekByteOff p #{offset VkAttachmentDescription, stencilStoreOp}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkAttachmentDescription, stencilLoadOp} - {-# INLINE writeVkStencilStoreOp #-}- writeVkStencilStoreOp p- = pokeByteOff p #{offset VkAttachmentDescription, stencilStoreOp}+instance {-# OVERLAPPING #-}+ CanWriteField "stencilLoadOp" VkAttachmentDescription where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkAttachmentDescription, stencilLoadOp} instance {-# OVERLAPPING #-} HasField "stencilStoreOp" VkAttachmentDescription where@@ -409,39 +294,22 @@ fieldOffset = #{offset VkAttachmentDescription, stencilStoreOp} -instance CanReadField "stencilStoreOp" VkAttachmentDescription- where- {-# INLINE getField #-}- getField = vkStencilStoreOp-- {-# INLINE readField #-}- readField = readVkStencilStoreOp--instance CanWriteField "stencilStoreOp" VkAttachmentDescription- where- {-# INLINE writeField #-}- writeField = writeVkStencilStoreOp- instance {-# OVERLAPPING #-}- HasVkInitialLayout VkAttachmentDescription where- type VkInitialLayoutMType VkAttachmentDescription = VkImageLayout-- {-# NOINLINE vkInitialLayout #-}- vkInitialLayout x+ CanReadField "stencilStoreOp" VkAttachmentDescription where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkAttachmentDescription, initialLayout})-- {-# INLINE vkInitialLayoutByteOffset #-}- vkInitialLayoutByteOffset ~_- = #{offset VkAttachmentDescription, initialLayout}+ (peekByteOff (unsafePtr x) #{offset VkAttachmentDescription, stencilStoreOp}) - {-# INLINE readVkInitialLayout #-}- readVkInitialLayout p- = peekByteOff p #{offset VkAttachmentDescription, initialLayout}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkAttachmentDescription, stencilStoreOp} - {-# INLINE writeVkInitialLayout #-}- writeVkInitialLayout p- = pokeByteOff p #{offset VkAttachmentDescription, initialLayout}+instance {-# OVERLAPPING #-}+ CanWriteField "stencilStoreOp" VkAttachmentDescription where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkAttachmentDescription, stencilStoreOp} instance {-# OVERLAPPING #-} HasField "initialLayout" VkAttachmentDescription where@@ -459,38 +327,22 @@ fieldOffset = #{offset VkAttachmentDescription, initialLayout} -instance CanReadField "initialLayout" VkAttachmentDescription where- {-# INLINE getField #-}- getField = vkInitialLayout-- {-# INLINE readField #-}- readField = readVkInitialLayout--instance CanWriteField "initialLayout" VkAttachmentDescription- where- {-# INLINE writeField #-}- writeField = writeVkInitialLayout- instance {-# OVERLAPPING #-}- HasVkFinalLayout VkAttachmentDescription where- type VkFinalLayoutMType VkAttachmentDescription = VkImageLayout-- {-# NOINLINE vkFinalLayout #-}- vkFinalLayout x+ CanReadField "initialLayout" VkAttachmentDescription where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkAttachmentDescription, finalLayout})-- {-# INLINE vkFinalLayoutByteOffset #-}- vkFinalLayoutByteOffset ~_- = #{offset VkAttachmentDescription, finalLayout}+ (peekByteOff (unsafePtr x) #{offset VkAttachmentDescription, initialLayout}) - {-# INLINE readVkFinalLayout #-}- readVkFinalLayout p- = peekByteOff p #{offset VkAttachmentDescription, finalLayout}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkAttachmentDescription, initialLayout} - {-# INLINE writeVkFinalLayout #-}- writeVkFinalLayout p- = pokeByteOff p #{offset VkAttachmentDescription, finalLayout}+instance {-# OVERLAPPING #-}+ CanWriteField "initialLayout" VkAttachmentDescription where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkAttachmentDescription, initialLayout} instance {-# OVERLAPPING #-} HasField "finalLayout" VkAttachmentDescription where@@ -508,44 +360,52 @@ fieldOffset = #{offset VkAttachmentDescription, finalLayout} -instance CanReadField "finalLayout" VkAttachmentDescription where- {-# INLINE getField #-}- getField = vkFinalLayout+instance {-# OVERLAPPING #-}+ CanReadField "finalLayout" VkAttachmentDescription where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkAttachmentDescription, finalLayout}) {-# INLINE readField #-}- readField = readVkFinalLayout+ readField p+ = peekByteOff p #{offset VkAttachmentDescription, finalLayout} -instance CanWriteField "finalLayout" VkAttachmentDescription where+instance {-# OVERLAPPING #-}+ CanWriteField "finalLayout" VkAttachmentDescription where {-# INLINE writeField #-}- writeField = writeVkFinalLayout+ writeField p+ = pokeByteOff p #{offset VkAttachmentDescription, finalLayout} instance Show VkAttachmentDescription where showsPrec d x = showString "VkAttachmentDescription {" .- showString "vkFlags = " .- showsPrec d (vkFlags x) .+ showString "flags = " .+ showsPrec d (getField @"flags" x) . showString ", " .- showString "vkFormat = " .- showsPrec d (vkFormat x) .+ showString "format = " .+ showsPrec d (getField @"format" x) . showString ", " .- showString "vkSamples = " .- showsPrec d (vkSamples x) .+ showString "samples = " .+ showsPrec d (getField @"samples" x) . showString ", " .- showString "vkLoadOp = " .- showsPrec d (vkLoadOp x) .+ showString "loadOp = " .+ showsPrec d (getField @"loadOp" x) . showString ", " .- showString "vkStoreOp = " .- showsPrec d (vkStoreOp x) .+ showString "storeOp = " .+ showsPrec d (getField @"storeOp" x) . showString ", " .- showString "vkStencilLoadOp = " .- showsPrec d (vkStencilLoadOp x) .+ showString "stencilLoadOp = " .+ showsPrec d (getField @"stencilLoadOp" x) . showString ", " .- showString "vkStencilStoreOp = " .- showsPrec d (vkStencilStoreOp x) .+ showString "stencilStoreOp = " .+ showsPrec d (getField @"stencilStoreOp" x) . showString ", " .- showString "vkInitialLayout = " .- showsPrec d (vkInitialLayout x) .+ showString "initialLayout = " .+ showsPrec d (getField @"initialLayout" x)+ . showString ", " .- showString "vkFinalLayout = " .- showsPrec d (vkFinalLayout x) .- showChar '}'+ showString "finalLayout = " .+ showsPrec d+ (getField @"finalLayout" x)+ . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkAttachmentReference (VkAttachmentReference(..)) where@@ -13,7 +14,6 @@ import Graphics.Vulkan.Marshal import Graphics.Vulkan.Marshal.Internal import Graphics.Vulkan.Types.Enum.VkImageLayout (VkImageLayout)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkAttachmentReference {@@ -21,7 +21,7 @@ -- > VkImageLayout layout; -- > } VkAttachmentReference; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkAttachmentReference.html VkAttachmentReference registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkAttachmentReference.html VkAttachmentReference registry at www.khronos.org> data VkAttachmentReference = VkAttachmentReference## Addr## ByteArray## @@ -69,27 +69,6 @@ type ReturnedOnly VkAttachmentReference = 'False -- ' closing tick for hsc2hs type StructExtends VkAttachmentReference = '[] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkAttachment VkAttachmentReference- where- type VkAttachmentMType VkAttachmentReference = Word32-- {-# NOINLINE vkAttachment #-}- vkAttachment x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkAttachmentReference, attachment})-- {-# INLINE vkAttachmentByteOffset #-}- vkAttachmentByteOffset ~_- = #{offset VkAttachmentReference, attachment}-- {-# INLINE readVkAttachment #-}- readVkAttachment p- = peekByteOff p #{offset VkAttachmentReference, attachment}-- {-# INLINE writeVkAttachment #-}- writeVkAttachment p- = pokeByteOff p #{offset VkAttachmentReference, attachment}- instance {-# OVERLAPPING #-} HasField "attachment" VkAttachmentReference where type FieldType "attachment" VkAttachmentReference = Word32@@ -105,37 +84,22 @@ fieldOffset = #{offset VkAttachmentReference, attachment} -instance CanReadField "attachment" VkAttachmentReference where- {-# INLINE getField #-}- getField = vkAttachment+instance {-# OVERLAPPING #-}+ CanReadField "attachment" VkAttachmentReference where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkAttachmentReference, attachment}) {-# INLINE readField #-}- readField = readVkAttachment+ readField p+ = peekByteOff p #{offset VkAttachmentReference, attachment} -instance CanWriteField "attachment" VkAttachmentReference where+instance {-# OVERLAPPING #-}+ CanWriteField "attachment" VkAttachmentReference where {-# INLINE writeField #-}- writeField = writeVkAttachment--instance {-# OVERLAPPING #-} HasVkLayout VkAttachmentReference- where- type VkLayoutMType VkAttachmentReference = VkImageLayout-- {-# NOINLINE vkLayout #-}- vkLayout x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkAttachmentReference, layout})-- {-# INLINE vkLayoutByteOffset #-}- vkLayoutByteOffset ~_- = #{offset VkAttachmentReference, layout}-- {-# INLINE readVkLayout #-}- readVkLayout p- = peekByteOff p #{offset VkAttachmentReference, layout}-- {-# INLINE writeVkLayout #-}- writeVkLayout p- = pokeByteOff p #{offset VkAttachmentReference, layout}+ writeField p+ = pokeByteOff p #{offset VkAttachmentReference, attachment} instance {-# OVERLAPPING #-} HasField "layout" VkAttachmentReference where@@ -151,21 +115,28 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkAttachmentReference, layout} -instance CanReadField "layout" VkAttachmentReference where- {-# INLINE getField #-}- getField = vkLayout+instance {-# OVERLAPPING #-}+ CanReadField "layout" VkAttachmentReference where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkAttachmentReference, layout}) {-# INLINE readField #-}- readField = readVkLayout+ readField p+ = peekByteOff p #{offset VkAttachmentReference, layout} -instance CanWriteField "layout" VkAttachmentReference where+instance {-# OVERLAPPING #-}+ CanWriteField "layout" VkAttachmentReference where {-# INLINE writeField #-}- writeField = writeVkLayout+ writeField p+ = pokeByteOff p #{offset VkAttachmentReference, layout} instance Show VkAttachmentReference where showsPrec d x = showString "VkAttachmentReference {" .- showString "vkAttachment = " .- showsPrec d (vkAttachment x) .+ showString "attachment = " .+ showsPrec d (getField @"attachment" x) . showString ", " .- showString "vkLayout = " . showsPrec d (vkLayout x) . showChar '}'+ showString "layout = " .+ showsPrec d (getField @"layout" x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkAttachmentSampleLocationsEXT (VkAttachmentSampleLocationsEXT(..)) where@@ -13,7 +14,6 @@ import Graphics.Vulkan.Marshal import Graphics.Vulkan.Marshal.Internal import Graphics.Vulkan.Types.Struct.VkSampleLocationsInfoEXT (VkSampleLocationsInfoEXT)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkAttachmentSampleLocationsEXT {@@ -21,7 +21,7 @@ -- > VkSampleLocationsInfoEXT sampleLocationsInfo; -- > } VkAttachmentSampleLocationsEXT; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkAttachmentSampleLocationsEXT.html VkAttachmentSampleLocationsEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkAttachmentSampleLocationsEXT.html VkAttachmentSampleLocationsEXT registry at www.khronos.org> data VkAttachmentSampleLocationsEXT = VkAttachmentSampleLocationsEXT## Addr## ByteArray## @@ -75,27 +75,6 @@ type StructExtends VkAttachmentSampleLocationsEXT = '[] -- ' closing tick for hsc2hs instance {-# OVERLAPPING #-}- HasVkAttachmentIndex VkAttachmentSampleLocationsEXT where- type VkAttachmentIndexMType VkAttachmentSampleLocationsEXT = Word32-- {-# NOINLINE vkAttachmentIndex #-}- vkAttachmentIndex x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkAttachmentSampleLocationsEXT, attachmentIndex})-- {-# INLINE vkAttachmentIndexByteOffset #-}- vkAttachmentIndexByteOffset ~_- = #{offset VkAttachmentSampleLocationsEXT, attachmentIndex}-- {-# INLINE readVkAttachmentIndex #-}- readVkAttachmentIndex p- = peekByteOff p #{offset VkAttachmentSampleLocationsEXT, attachmentIndex}-- {-# INLINE writeVkAttachmentIndex #-}- writeVkAttachmentIndex p- = pokeByteOff p #{offset VkAttachmentSampleLocationsEXT, attachmentIndex}--instance {-# OVERLAPPING #-} HasField "attachmentIndex" VkAttachmentSampleLocationsEXT where type FieldType "attachmentIndex" VkAttachmentSampleLocationsEXT = Word32@@ -113,42 +92,23 @@ fieldOffset = #{offset VkAttachmentSampleLocationsEXT, attachmentIndex} -instance CanReadField "attachmentIndex"- VkAttachmentSampleLocationsEXT- where- {-# INLINE getField #-}- getField = vkAttachmentIndex+instance {-# OVERLAPPING #-}+ CanReadField "attachmentIndex" VkAttachmentSampleLocationsEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkAttachmentSampleLocationsEXT, attachmentIndex}) {-# INLINE readField #-}- readField = readVkAttachmentIndex+ readField p+ = peekByteOff p #{offset VkAttachmentSampleLocationsEXT, attachmentIndex} -instance CanWriteField "attachmentIndex"- VkAttachmentSampleLocationsEXT+instance {-# OVERLAPPING #-}+ CanWriteField "attachmentIndex" VkAttachmentSampleLocationsEXT where {-# INLINE writeField #-}- writeField = writeVkAttachmentIndex--instance {-# OVERLAPPING #-}- HasVkSampleLocationsInfo VkAttachmentSampleLocationsEXT where- type VkSampleLocationsInfoMType VkAttachmentSampleLocationsEXT =- VkSampleLocationsInfoEXT-- {-# NOINLINE vkSampleLocationsInfo #-}- vkSampleLocationsInfo x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkAttachmentSampleLocationsEXT, sampleLocationsInfo})-- {-# INLINE vkSampleLocationsInfoByteOffset #-}- vkSampleLocationsInfoByteOffset ~_- = #{offset VkAttachmentSampleLocationsEXT, sampleLocationsInfo}-- {-# INLINE readVkSampleLocationsInfo #-}- readVkSampleLocationsInfo p- = peekByteOff p #{offset VkAttachmentSampleLocationsEXT, sampleLocationsInfo}-- {-# INLINE writeVkSampleLocationsInfo #-}- writeVkSampleLocationsInfo p- = pokeByteOff p #{offset VkAttachmentSampleLocationsEXT, sampleLocationsInfo}+ writeField p+ = pokeByteOff p #{offset VkAttachmentSampleLocationsEXT, attachmentIndex} instance {-# OVERLAPPING #-} HasField "sampleLocationsInfo" VkAttachmentSampleLocationsEXT where@@ -172,26 +132,30 @@ fieldOffset = #{offset VkAttachmentSampleLocationsEXT, sampleLocationsInfo} -instance CanReadField "sampleLocationsInfo"- VkAttachmentSampleLocationsEXT+instance {-# OVERLAPPING #-}+ CanReadField "sampleLocationsInfo" VkAttachmentSampleLocationsEXT where- {-# INLINE getField #-}- getField = vkSampleLocationsInfo+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkAttachmentSampleLocationsEXT, sampleLocationsInfo}) {-# INLINE readField #-}- readField = readVkSampleLocationsInfo+ readField p+ = peekByteOff p #{offset VkAttachmentSampleLocationsEXT, sampleLocationsInfo} -instance CanWriteField "sampleLocationsInfo"- VkAttachmentSampleLocationsEXT+instance {-# OVERLAPPING #-}+ CanWriteField "sampleLocationsInfo" VkAttachmentSampleLocationsEXT where {-# INLINE writeField #-}- writeField = writeVkSampleLocationsInfo+ writeField p+ = pokeByteOff p #{offset VkAttachmentSampleLocationsEXT, sampleLocationsInfo} instance Show VkAttachmentSampleLocationsEXT where showsPrec d x = showString "VkAttachmentSampleLocationsEXT {" .- showString "vkAttachmentIndex = " .- showsPrec d (vkAttachmentIndex x) .+ showString "attachmentIndex = " .+ showsPrec d (getField @"attachmentIndex" x) . showString ", " .- showString "vkSampleLocationsInfo = " .- showsPrec d (vkSampleLocationsInfo x) . showChar '}'+ showString "sampleLocationsInfo = " .+ showsPrec d (getField @"sampleLocationsInfo" x) . showChar '}'
@@ -0,0 +1,245 @@+#include "vulkan/vulkan.h"++{-# LANGUAGE DataKinds #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-}+{-# LANGUAGE TypeFamilies #-}+module Graphics.Vulkan.Types.Struct.VkBindBufferMemoryDeviceGroupInfo+ (VkBindBufferMemoryDeviceGroupInfo(..)) where+import Foreign.Storable (Storable (..))+import GHC.Prim+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Marshal.Internal+import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)+import Graphics.Vulkan.Types.Struct.VkBindBufferMemoryInfo (VkBindBufferMemoryInfo)+import System.IO.Unsafe (unsafeDupablePerformIO)++-- | > typedef struct VkBindBufferMemoryDeviceGroupInfo {+-- > VkStructureType sType;+-- > const void* pNext;+-- > uint32_t deviceIndexCount;+-- > const uint32_t* pDeviceIndices;+-- > } VkBindBufferMemoryDeviceGroupInfo;+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkBindBufferMemoryDeviceGroupInfo.html VkBindBufferMemoryDeviceGroupInfo registry at www.khronos.org>+data VkBindBufferMemoryDeviceGroupInfo = VkBindBufferMemoryDeviceGroupInfo## Addr##+ ByteArray##++instance Eq VkBindBufferMemoryDeviceGroupInfo where+ (VkBindBufferMemoryDeviceGroupInfo## a _) ==+ x@(VkBindBufferMemoryDeviceGroupInfo## b _)+ = EQ == cmpBytes## (sizeOf x) a b++ {-# INLINE (==) #-}++instance Ord VkBindBufferMemoryDeviceGroupInfo where+ (VkBindBufferMemoryDeviceGroupInfo## a _) `compare`+ x@(VkBindBufferMemoryDeviceGroupInfo## b _)+ = cmpBytes## (sizeOf x) a b++ {-# INLINE compare #-}++instance Storable VkBindBufferMemoryDeviceGroupInfo where+ sizeOf ~_ = #{size VkBindBufferMemoryDeviceGroupInfo}++ {-# INLINE sizeOf #-}+ alignment ~_+ = #{alignment VkBindBufferMemoryDeviceGroupInfo}++ {-# INLINE alignment #-}+ peek = peekVkData##++ {-# INLINE peek #-}+ poke = pokeVkData##++ {-# INLINE poke #-}++instance VulkanMarshalPrim VkBindBufferMemoryDeviceGroupInfo where+ unsafeAddr (VkBindBufferMemoryDeviceGroupInfo## a _) = a++ {-# INLINE unsafeAddr #-}+ unsafeByteArray (VkBindBufferMemoryDeviceGroupInfo## _ b) = b++ {-# INLINE unsafeByteArray #-}+ unsafeFromByteArrayOffset off b+ = VkBindBufferMemoryDeviceGroupInfo##+ (plusAddr## (byteArrayContents## b) off)+ b++ {-# INLINE unsafeFromByteArrayOffset #-}++instance VulkanMarshal VkBindBufferMemoryDeviceGroupInfo where+ type StructFields VkBindBufferMemoryDeviceGroupInfo =+ '["sType", "pNext", "deviceIndexCount", "pDeviceIndices"] -- ' closing tick for hsc2hs+ type CUnionType VkBindBufferMemoryDeviceGroupInfo = 'False -- ' closing tick for hsc2hs+ type ReturnedOnly VkBindBufferMemoryDeviceGroupInfo = 'False -- ' closing tick for hsc2hs+ type StructExtends VkBindBufferMemoryDeviceGroupInfo =+ '[VkBindBufferMemoryInfo] -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-}+ HasField "sType" VkBindBufferMemoryDeviceGroupInfo where+ type FieldType "sType" VkBindBufferMemoryDeviceGroupInfo =+ VkStructureType+ type FieldOptional "sType" VkBindBufferMemoryDeviceGroupInfo =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "sType" VkBindBufferMemoryDeviceGroupInfo =+ #{offset VkBindBufferMemoryDeviceGroupInfo, sType}+ type FieldIsArray "sType" VkBindBufferMemoryDeviceGroupInfo =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkBindBufferMemoryDeviceGroupInfo, sType}++instance {-# OVERLAPPING #-}+ CanReadField "sType" VkBindBufferMemoryDeviceGroupInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBindBufferMemoryDeviceGroupInfo, sType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBindBufferMemoryDeviceGroupInfo, sType}++instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkBindBufferMemoryDeviceGroupInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBindBufferMemoryDeviceGroupInfo, sType}++instance {-# OVERLAPPING #-}+ HasField "pNext" VkBindBufferMemoryDeviceGroupInfo where+ type FieldType "pNext" VkBindBufferMemoryDeviceGroupInfo = Ptr Void+ type FieldOptional "pNext" VkBindBufferMemoryDeviceGroupInfo =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "pNext" VkBindBufferMemoryDeviceGroupInfo =+ #{offset VkBindBufferMemoryDeviceGroupInfo, pNext}+ type FieldIsArray "pNext" VkBindBufferMemoryDeviceGroupInfo =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkBindBufferMemoryDeviceGroupInfo, pNext}++instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkBindBufferMemoryDeviceGroupInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBindBufferMemoryDeviceGroupInfo, pNext})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBindBufferMemoryDeviceGroupInfo, pNext}++instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkBindBufferMemoryDeviceGroupInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBindBufferMemoryDeviceGroupInfo, pNext}++instance {-# OVERLAPPING #-}+ HasField "deviceIndexCount" VkBindBufferMemoryDeviceGroupInfo where+ type FieldType "deviceIndexCount" VkBindBufferMemoryDeviceGroupInfo+ = Word32+ type FieldOptional "deviceIndexCount"+ VkBindBufferMemoryDeviceGroupInfo+ = 'True -- ' closing tick for hsc2hs+ type FieldOffset "deviceIndexCount"+ VkBindBufferMemoryDeviceGroupInfo+ =+ #{offset VkBindBufferMemoryDeviceGroupInfo, deviceIndexCount}+ type FieldIsArray "deviceIndexCount"+ VkBindBufferMemoryDeviceGroupInfo+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = True++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkBindBufferMemoryDeviceGroupInfo, deviceIndexCount}++instance {-# OVERLAPPING #-}+ CanReadField "deviceIndexCount" VkBindBufferMemoryDeviceGroupInfo+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBindBufferMemoryDeviceGroupInfo, deviceIndexCount})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBindBufferMemoryDeviceGroupInfo, deviceIndexCount}++instance {-# OVERLAPPING #-}+ CanWriteField "deviceIndexCount" VkBindBufferMemoryDeviceGroupInfo+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBindBufferMemoryDeviceGroupInfo, deviceIndexCount}++instance {-# OVERLAPPING #-}+ HasField "pDeviceIndices" VkBindBufferMemoryDeviceGroupInfo where+ type FieldType "pDeviceIndices" VkBindBufferMemoryDeviceGroupInfo =+ Ptr Word32+ type FieldOptional "pDeviceIndices"+ VkBindBufferMemoryDeviceGroupInfo+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "pDeviceIndices" VkBindBufferMemoryDeviceGroupInfo+ =+ #{offset VkBindBufferMemoryDeviceGroupInfo, pDeviceIndices}+ type FieldIsArray "pDeviceIndices"+ VkBindBufferMemoryDeviceGroupInfo+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkBindBufferMemoryDeviceGroupInfo, pDeviceIndices}++instance {-# OVERLAPPING #-}+ CanReadField "pDeviceIndices" VkBindBufferMemoryDeviceGroupInfo+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBindBufferMemoryDeviceGroupInfo, pDeviceIndices})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBindBufferMemoryDeviceGroupInfo, pDeviceIndices}++instance {-# OVERLAPPING #-}+ CanWriteField "pDeviceIndices" VkBindBufferMemoryDeviceGroupInfo+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBindBufferMemoryDeviceGroupInfo, pDeviceIndices}++instance Show VkBindBufferMemoryDeviceGroupInfo where+ showsPrec d x+ = showString "VkBindBufferMemoryDeviceGroupInfo {" .+ showString "sType = " .+ showsPrec d (getField @"sType" x) .+ showString ", " .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) .+ showString ", " .+ showString "deviceIndexCount = " .+ showsPrec d (getField @"deviceIndexCount" x) .+ showString ", " .+ showString "pDeviceIndices = " .+ showsPrec d (getField @"pDeviceIndices" x) . showChar '}'
@@ -0,0 +1,11 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Types.Struct.VkBindBufferMemoryDeviceGroupInfoKHR+ (VkBindBufferMemoryDeviceGroupInfo(..),+ VkBindBufferMemoryDeviceGroupInfoKHR)+ where+import Graphics.Vulkan.Types.Struct.VkBindBufferMemoryDeviceGroupInfo (VkBindBufferMemoryDeviceGroupInfo (..))++-- | Alias for `VkBindBufferMemoryDeviceGroupInfo`+type VkBindBufferMemoryDeviceGroupInfoKHR =+ VkBindBufferMemoryDeviceGroupInfo
@@ -1,324 +0,0 @@-#include "vulkan/vulkan.h"--{-# LANGUAGE DataKinds #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE MagicHash #-}-{-# LANGUAGE MultiParamTypeClasses #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE TypeFamilies #-}-module Graphics.Vulkan.Types.Struct.VkBindBufferMemoryDeviceGroupInfoKHX- (VkBindBufferMemoryDeviceGroupInfoKHX(..)) where-import Foreign.Storable (Storable (..))-import GHC.Prim-import Graphics.Vulkan.Marshal-import Graphics.Vulkan.Marshal.Internal-import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)-import Graphics.Vulkan.Types.Struct.VkBindBufferMemoryInfoKHR (VkBindBufferMemoryInfoKHR)-import Graphics.Vulkan.Types.StructMembers-import System.IO.Unsafe (unsafeDupablePerformIO)---- | > typedef struct VkBindBufferMemoryDeviceGroupInfoKHX {--- > VkStructureType sType;--- > const void* pNext;--- > uint32_t deviceIndexCount;--- > const uint32_t* pDeviceIndices;--- > } VkBindBufferMemoryDeviceGroupInfoKHX;------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkBindBufferMemoryDeviceGroupInfoKHX.html VkBindBufferMemoryDeviceGroupInfoKHX registry at www.khronos.org>-data VkBindBufferMemoryDeviceGroupInfoKHX = VkBindBufferMemoryDeviceGroupInfoKHX## Addr##- ByteArray##--instance Eq VkBindBufferMemoryDeviceGroupInfoKHX where- (VkBindBufferMemoryDeviceGroupInfoKHX## a _) ==- x@(VkBindBufferMemoryDeviceGroupInfoKHX## b _)- = EQ == cmpBytes## (sizeOf x) a b-- {-# INLINE (==) #-}--instance Ord VkBindBufferMemoryDeviceGroupInfoKHX where- (VkBindBufferMemoryDeviceGroupInfoKHX## a _) `compare`- x@(VkBindBufferMemoryDeviceGroupInfoKHX## b _)- = cmpBytes## (sizeOf x) a b-- {-# INLINE compare #-}--instance Storable VkBindBufferMemoryDeviceGroupInfoKHX where- sizeOf ~_- = #{size VkBindBufferMemoryDeviceGroupInfoKHX}-- {-# INLINE sizeOf #-}- alignment ~_- = #{alignment VkBindBufferMemoryDeviceGroupInfoKHX}-- {-# INLINE alignment #-}- peek = peekVkData##-- {-# INLINE peek #-}- poke = pokeVkData##-- {-# INLINE poke #-}--instance VulkanMarshalPrim VkBindBufferMemoryDeviceGroupInfoKHX- where- unsafeAddr (VkBindBufferMemoryDeviceGroupInfoKHX## a _) = a-- {-# INLINE unsafeAddr #-}- unsafeByteArray (VkBindBufferMemoryDeviceGroupInfoKHX## _ b) = b-- {-# INLINE unsafeByteArray #-}- unsafeFromByteArrayOffset off b- = VkBindBufferMemoryDeviceGroupInfoKHX##- (plusAddr## (byteArrayContents## b) off)- b-- {-# INLINE unsafeFromByteArrayOffset #-}--instance VulkanMarshal VkBindBufferMemoryDeviceGroupInfoKHX where- type StructFields VkBindBufferMemoryDeviceGroupInfoKHX =- '["sType", "pNext", "deviceIndexCount", "pDeviceIndices"] -- ' closing tick for hsc2hs- type CUnionType VkBindBufferMemoryDeviceGroupInfoKHX = 'False -- ' closing tick for hsc2hs- type ReturnedOnly VkBindBufferMemoryDeviceGroupInfoKHX = 'False -- ' closing tick for hsc2hs- type StructExtends VkBindBufferMemoryDeviceGroupInfoKHX =- '[VkBindBufferMemoryInfoKHR] -- ' closing tick for hsc2hs--instance {-# OVERLAPPING #-}- HasVkSType VkBindBufferMemoryDeviceGroupInfoKHX where- type VkSTypeMType VkBindBufferMemoryDeviceGroupInfoKHX =- VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBindBufferMemoryDeviceGroupInfoKHX, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkBindBufferMemoryDeviceGroupInfoKHX, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkBindBufferMemoryDeviceGroupInfoKHX, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkBindBufferMemoryDeviceGroupInfoKHX, sType}--instance {-# OVERLAPPING #-}- HasField "sType" VkBindBufferMemoryDeviceGroupInfoKHX where- type FieldType "sType" VkBindBufferMemoryDeviceGroupInfoKHX =- VkStructureType- type FieldOptional "sType" VkBindBufferMemoryDeviceGroupInfoKHX =- 'False -- ' closing tick for hsc2hs- type FieldOffset "sType" VkBindBufferMemoryDeviceGroupInfoKHX =- #{offset VkBindBufferMemoryDeviceGroupInfoKHX, sType}- type FieldIsArray "sType" VkBindBufferMemoryDeviceGroupInfoKHX =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkBindBufferMemoryDeviceGroupInfoKHX, sType}--instance CanReadField "sType" VkBindBufferMemoryDeviceGroupInfoKHX- where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance CanWriteField "sType" VkBindBufferMemoryDeviceGroupInfoKHX- where- {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-}- HasVkPNext VkBindBufferMemoryDeviceGroupInfoKHX where- type VkPNextMType VkBindBufferMemoryDeviceGroupInfoKHX = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBindBufferMemoryDeviceGroupInfoKHX, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkBindBufferMemoryDeviceGroupInfoKHX, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkBindBufferMemoryDeviceGroupInfoKHX, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkBindBufferMemoryDeviceGroupInfoKHX, pNext}--instance {-# OVERLAPPING #-}- HasField "pNext" VkBindBufferMemoryDeviceGroupInfoKHX where- type FieldType "pNext" VkBindBufferMemoryDeviceGroupInfoKHX =- Ptr Void- type FieldOptional "pNext" VkBindBufferMemoryDeviceGroupInfoKHX =- 'False -- ' closing tick for hsc2hs- type FieldOffset "pNext" VkBindBufferMemoryDeviceGroupInfoKHX =- #{offset VkBindBufferMemoryDeviceGroupInfoKHX, pNext}- type FieldIsArray "pNext" VkBindBufferMemoryDeviceGroupInfoKHX =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkBindBufferMemoryDeviceGroupInfoKHX, pNext}--instance CanReadField "pNext" VkBindBufferMemoryDeviceGroupInfoKHX- where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkBindBufferMemoryDeviceGroupInfoKHX- where- {-# INLINE writeField #-}- writeField = writeVkPNext--instance {-# OVERLAPPING #-}- HasVkDeviceIndexCount VkBindBufferMemoryDeviceGroupInfoKHX where- type VkDeviceIndexCountMType VkBindBufferMemoryDeviceGroupInfoKHX =- Word32-- {-# NOINLINE vkDeviceIndexCount #-}- vkDeviceIndexCount x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBindBufferMemoryDeviceGroupInfoKHX, deviceIndexCount})-- {-# INLINE vkDeviceIndexCountByteOffset #-}- vkDeviceIndexCountByteOffset ~_- = #{offset VkBindBufferMemoryDeviceGroupInfoKHX, deviceIndexCount}-- {-# INLINE readVkDeviceIndexCount #-}- readVkDeviceIndexCount p- = peekByteOff p #{offset VkBindBufferMemoryDeviceGroupInfoKHX, deviceIndexCount}-- {-# INLINE writeVkDeviceIndexCount #-}- writeVkDeviceIndexCount p- = pokeByteOff p #{offset VkBindBufferMemoryDeviceGroupInfoKHX, deviceIndexCount}--instance {-# OVERLAPPING #-}- HasField "deviceIndexCount" VkBindBufferMemoryDeviceGroupInfoKHX- where- type FieldType "deviceIndexCount"- VkBindBufferMemoryDeviceGroupInfoKHX- = Word32- type FieldOptional "deviceIndexCount"- VkBindBufferMemoryDeviceGroupInfoKHX- = 'True -- ' closing tick for hsc2hs- type FieldOffset "deviceIndexCount"- VkBindBufferMemoryDeviceGroupInfoKHX- =- #{offset VkBindBufferMemoryDeviceGroupInfoKHX, deviceIndexCount}- type FieldIsArray "deviceIndexCount"- VkBindBufferMemoryDeviceGroupInfoKHX- = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = True-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkBindBufferMemoryDeviceGroupInfoKHX, deviceIndexCount}--instance CanReadField "deviceIndexCount"- VkBindBufferMemoryDeviceGroupInfoKHX- where- {-# INLINE getField #-}- getField = vkDeviceIndexCount-- {-# INLINE readField #-}- readField = readVkDeviceIndexCount--instance CanWriteField "deviceIndexCount"- VkBindBufferMemoryDeviceGroupInfoKHX- where- {-# INLINE writeField #-}- writeField = writeVkDeviceIndexCount--instance {-# OVERLAPPING #-}- HasVkPDeviceIndices VkBindBufferMemoryDeviceGroupInfoKHX where- type VkPDeviceIndicesMType VkBindBufferMemoryDeviceGroupInfoKHX =- Ptr Word32-- {-# NOINLINE vkPDeviceIndices #-}- vkPDeviceIndices x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBindBufferMemoryDeviceGroupInfoKHX, pDeviceIndices})-- {-# INLINE vkPDeviceIndicesByteOffset #-}- vkPDeviceIndicesByteOffset ~_- = #{offset VkBindBufferMemoryDeviceGroupInfoKHX, pDeviceIndices}-- {-# INLINE readVkPDeviceIndices #-}- readVkPDeviceIndices p- = peekByteOff p #{offset VkBindBufferMemoryDeviceGroupInfoKHX, pDeviceIndices}-- {-# INLINE writeVkPDeviceIndices #-}- writeVkPDeviceIndices p- = pokeByteOff p #{offset VkBindBufferMemoryDeviceGroupInfoKHX, pDeviceIndices}--instance {-# OVERLAPPING #-}- HasField "pDeviceIndices" VkBindBufferMemoryDeviceGroupInfoKHX- where- type FieldType "pDeviceIndices"- VkBindBufferMemoryDeviceGroupInfoKHX- = Ptr Word32- type FieldOptional "pDeviceIndices"- VkBindBufferMemoryDeviceGroupInfoKHX- = 'False -- ' closing tick for hsc2hs- type FieldOffset "pDeviceIndices"- VkBindBufferMemoryDeviceGroupInfoKHX- =- #{offset VkBindBufferMemoryDeviceGroupInfoKHX, pDeviceIndices}- type FieldIsArray "pDeviceIndices"- VkBindBufferMemoryDeviceGroupInfoKHX- = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkBindBufferMemoryDeviceGroupInfoKHX, pDeviceIndices}--instance CanReadField "pDeviceIndices"- VkBindBufferMemoryDeviceGroupInfoKHX- where- {-# INLINE getField #-}- getField = vkPDeviceIndices-- {-# INLINE readField #-}- readField = readVkPDeviceIndices--instance CanWriteField "pDeviceIndices"- VkBindBufferMemoryDeviceGroupInfoKHX- where- {-# INLINE writeField #-}- writeField = writeVkPDeviceIndices--instance Show VkBindBufferMemoryDeviceGroupInfoKHX where- showsPrec d x- = showString "VkBindBufferMemoryDeviceGroupInfoKHX {" .- showString "vkSType = " .- showsPrec d (vkSType x) .- showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .- showString ", " .- showString "vkDeviceIndexCount = " .- showsPrec d (vkDeviceIndexCount x) .- showString ", " .- showString "vkPDeviceIndices = " .- showsPrec d (vkPDeviceIndices x) . showChar '}'
@@ -0,0 +1,251 @@+#include "vulkan/vulkan.h"++{-# LANGUAGE DataKinds #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-}+{-# LANGUAGE TypeFamilies #-}+module Graphics.Vulkan.Types.Struct.VkBindBufferMemoryInfo+ (VkBindBufferMemoryInfo(..)) where+import Foreign.Storable (Storable (..))+import GHC.Prim+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Marshal.Internal+import Graphics.Vulkan.Types.BaseTypes (VkDeviceSize)+import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)+import Graphics.Vulkan.Types.Handles (VkBuffer,+ VkDeviceMemory)+import System.IO.Unsafe (unsafeDupablePerformIO)++-- | > typedef struct VkBindBufferMemoryInfo {+-- > VkStructureType sType;+-- > const void* pNext;+-- > VkBuffer buffer;+-- > VkDeviceMemory memory;+-- > VkDeviceSize memoryOffset;+-- > } VkBindBufferMemoryInfo;+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkBindBufferMemoryInfo.html VkBindBufferMemoryInfo registry at www.khronos.org>+data VkBindBufferMemoryInfo = VkBindBufferMemoryInfo## Addr##+ ByteArray##++instance Eq VkBindBufferMemoryInfo where+ (VkBindBufferMemoryInfo## a _) == x@(VkBindBufferMemoryInfo## b _)+ = EQ == cmpBytes## (sizeOf x) a b++ {-# INLINE (==) #-}++instance Ord VkBindBufferMemoryInfo where+ (VkBindBufferMemoryInfo## a _) `compare`+ x@(VkBindBufferMemoryInfo## b _) = cmpBytes## (sizeOf x) a b++ {-# INLINE compare #-}++instance Storable VkBindBufferMemoryInfo where+ sizeOf ~_ = #{size VkBindBufferMemoryInfo}++ {-# INLINE sizeOf #-}+ alignment ~_ = #{alignment VkBindBufferMemoryInfo}++ {-# INLINE alignment #-}+ peek = peekVkData##++ {-# INLINE peek #-}+ poke = pokeVkData##++ {-# INLINE poke #-}++instance VulkanMarshalPrim VkBindBufferMemoryInfo where+ unsafeAddr (VkBindBufferMemoryInfo## a _) = a++ {-# INLINE unsafeAddr #-}+ unsafeByteArray (VkBindBufferMemoryInfo## _ b) = b++ {-# INLINE unsafeByteArray #-}+ unsafeFromByteArrayOffset off b+ = VkBindBufferMemoryInfo## (plusAddr## (byteArrayContents## b) off) b++ {-# INLINE unsafeFromByteArrayOffset #-}++instance VulkanMarshal VkBindBufferMemoryInfo where+ type StructFields VkBindBufferMemoryInfo =+ '["sType", "pNext", "buffer", "memory", "memoryOffset"] -- ' closing tick for hsc2hs+ type CUnionType VkBindBufferMemoryInfo = 'False -- ' closing tick for hsc2hs+ type ReturnedOnly VkBindBufferMemoryInfo = 'False -- ' closing tick for hsc2hs+ type StructExtends VkBindBufferMemoryInfo = '[] -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-}+ HasField "sType" VkBindBufferMemoryInfo where+ type FieldType "sType" VkBindBufferMemoryInfo = VkStructureType+ type FieldOptional "sType" VkBindBufferMemoryInfo = 'False -- ' closing tick for hsc2hs+ type FieldOffset "sType" VkBindBufferMemoryInfo =+ #{offset VkBindBufferMemoryInfo, sType}+ type FieldIsArray "sType" VkBindBufferMemoryInfo = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset = #{offset VkBindBufferMemoryInfo, sType}++instance {-# OVERLAPPING #-}+ CanReadField "sType" VkBindBufferMemoryInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBindBufferMemoryInfo, sType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBindBufferMemoryInfo, sType}++instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkBindBufferMemoryInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBindBufferMemoryInfo, sType}++instance {-# OVERLAPPING #-}+ HasField "pNext" VkBindBufferMemoryInfo where+ type FieldType "pNext" VkBindBufferMemoryInfo = Ptr Void+ type FieldOptional "pNext" VkBindBufferMemoryInfo = 'False -- ' closing tick for hsc2hs+ type FieldOffset "pNext" VkBindBufferMemoryInfo =+ #{offset VkBindBufferMemoryInfo, pNext}+ type FieldIsArray "pNext" VkBindBufferMemoryInfo = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset = #{offset VkBindBufferMemoryInfo, pNext}++instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkBindBufferMemoryInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBindBufferMemoryInfo, pNext})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBindBufferMemoryInfo, pNext}++instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkBindBufferMemoryInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBindBufferMemoryInfo, pNext}++instance {-# OVERLAPPING #-}+ HasField "buffer" VkBindBufferMemoryInfo where+ type FieldType "buffer" VkBindBufferMemoryInfo = VkBuffer+ type FieldOptional "buffer" VkBindBufferMemoryInfo = 'False -- ' closing tick for hsc2hs+ type FieldOffset "buffer" VkBindBufferMemoryInfo =+ #{offset VkBindBufferMemoryInfo, buffer}+ type FieldIsArray "buffer" VkBindBufferMemoryInfo = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset = #{offset VkBindBufferMemoryInfo, buffer}++instance {-# OVERLAPPING #-}+ CanReadField "buffer" VkBindBufferMemoryInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBindBufferMemoryInfo, buffer})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBindBufferMemoryInfo, buffer}++instance {-# OVERLAPPING #-}+ CanWriteField "buffer" VkBindBufferMemoryInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBindBufferMemoryInfo, buffer}++instance {-# OVERLAPPING #-}+ HasField "memory" VkBindBufferMemoryInfo where+ type FieldType "memory" VkBindBufferMemoryInfo = VkDeviceMemory+ type FieldOptional "memory" VkBindBufferMemoryInfo = 'False -- ' closing tick for hsc2hs+ type FieldOffset "memory" VkBindBufferMemoryInfo =+ #{offset VkBindBufferMemoryInfo, memory}+ type FieldIsArray "memory" VkBindBufferMemoryInfo = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset = #{offset VkBindBufferMemoryInfo, memory}++instance {-# OVERLAPPING #-}+ CanReadField "memory" VkBindBufferMemoryInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBindBufferMemoryInfo, memory})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBindBufferMemoryInfo, memory}++instance {-# OVERLAPPING #-}+ CanWriteField "memory" VkBindBufferMemoryInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBindBufferMemoryInfo, memory}++instance {-# OVERLAPPING #-}+ HasField "memoryOffset" VkBindBufferMemoryInfo where+ type FieldType "memoryOffset" VkBindBufferMemoryInfo = VkDeviceSize+ type FieldOptional "memoryOffset" VkBindBufferMemoryInfo = 'False -- ' closing tick for hsc2hs+ type FieldOffset "memoryOffset" VkBindBufferMemoryInfo =+ #{offset VkBindBufferMemoryInfo, memoryOffset}+ type FieldIsArray "memoryOffset" VkBindBufferMemoryInfo = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkBindBufferMemoryInfo, memoryOffset}++instance {-# OVERLAPPING #-}+ CanReadField "memoryOffset" VkBindBufferMemoryInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBindBufferMemoryInfo, memoryOffset})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBindBufferMemoryInfo, memoryOffset}++instance {-# OVERLAPPING #-}+ CanWriteField "memoryOffset" VkBindBufferMemoryInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBindBufferMemoryInfo, memoryOffset}++instance Show VkBindBufferMemoryInfo where+ showsPrec d x+ = showString "VkBindBufferMemoryInfo {" .+ showString "sType = " .+ showsPrec d (getField @"sType" x) .+ showString ", " .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) .+ showString ", " .+ showString "buffer = " .+ showsPrec d (getField @"buffer" x) .+ showString ", " .+ showString "memory = " .+ showsPrec d (getField @"memory" x) .+ showString ", " .+ showString "memoryOffset = " .+ showsPrec d (getField @"memoryOffset" x) . showChar '}'
@@ -0,0 +1,8 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Types.Struct.VkBindBufferMemoryInfoKHR+ (VkBindBufferMemoryInfo(..), VkBindBufferMemoryInfoKHR) where+import Graphics.Vulkan.Types.Struct.VkBindBufferMemoryInfo (VkBindBufferMemoryInfo (..))++-- | Alias for `VkBindBufferMemoryInfo`+type VkBindBufferMemoryInfoKHR = VkBindBufferMemoryInfo
@@ -1,335 +0,0 @@-#include "vulkan/vulkan.h"--{-# LANGUAGE DataKinds #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE MagicHash #-}-{-# LANGUAGE MultiParamTypeClasses #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE TypeFamilies #-}-module Graphics.Vulkan.Types.Struct.VkBindBufferMemoryInfoKHR- (VkBindBufferMemoryInfoKHR(..)) where-import Foreign.Storable (Storable (..))-import GHC.Prim-import Graphics.Vulkan.Marshal-import Graphics.Vulkan.Marshal.Internal-import Graphics.Vulkan.Types.BaseTypes (VkDeviceSize)-import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)-import Graphics.Vulkan.Types.Handles (VkBuffer,- VkDeviceMemory)-import Graphics.Vulkan.Types.StructMembers-import System.IO.Unsafe (unsafeDupablePerformIO)---- | > typedef struct VkBindBufferMemoryInfoKHR {--- > VkStructureType sType;--- > const void* pNext;--- > VkBuffer buffer;--- > VkDeviceMemory memory;--- > VkDeviceSize memoryOffset;--- > } VkBindBufferMemoryInfoKHR;------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkBindBufferMemoryInfoKHR.html VkBindBufferMemoryInfoKHR registry at www.khronos.org>-data VkBindBufferMemoryInfoKHR = VkBindBufferMemoryInfoKHR## Addr##- ByteArray##--instance Eq VkBindBufferMemoryInfoKHR where- (VkBindBufferMemoryInfoKHR## a _) ==- x@(VkBindBufferMemoryInfoKHR## b _) = EQ == cmpBytes## (sizeOf x) a b-- {-# INLINE (==) #-}--instance Ord VkBindBufferMemoryInfoKHR where- (VkBindBufferMemoryInfoKHR## a _) `compare`- x@(VkBindBufferMemoryInfoKHR## b _) = cmpBytes## (sizeOf x) a b-- {-# INLINE compare #-}--instance Storable VkBindBufferMemoryInfoKHR where- sizeOf ~_ = #{size VkBindBufferMemoryInfoKHR}-- {-# INLINE sizeOf #-}- alignment ~_ = #{alignment VkBindBufferMemoryInfoKHR}-- {-# INLINE alignment #-}- peek = peekVkData##-- {-# INLINE peek #-}- poke = pokeVkData##-- {-# INLINE poke #-}--instance VulkanMarshalPrim VkBindBufferMemoryInfoKHR where- unsafeAddr (VkBindBufferMemoryInfoKHR## a _) = a-- {-# INLINE unsafeAddr #-}- unsafeByteArray (VkBindBufferMemoryInfoKHR## _ b) = b-- {-# INLINE unsafeByteArray #-}- unsafeFromByteArrayOffset off b- = VkBindBufferMemoryInfoKHR## (plusAddr## (byteArrayContents## b) off)- b-- {-# INLINE unsafeFromByteArrayOffset #-}--instance VulkanMarshal VkBindBufferMemoryInfoKHR where- type StructFields VkBindBufferMemoryInfoKHR =- '["sType", "pNext", "buffer", "memory", "memoryOffset"] -- ' closing tick for hsc2hs- type CUnionType VkBindBufferMemoryInfoKHR = 'False -- ' closing tick for hsc2hs- type ReturnedOnly VkBindBufferMemoryInfoKHR = 'False -- ' closing tick for hsc2hs- type StructExtends VkBindBufferMemoryInfoKHR = '[] -- ' closing tick for hsc2hs--instance {-# OVERLAPPING #-} HasVkSType VkBindBufferMemoryInfoKHR- where- type VkSTypeMType VkBindBufferMemoryInfoKHR = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBindBufferMemoryInfoKHR, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkBindBufferMemoryInfoKHR, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkBindBufferMemoryInfoKHR, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkBindBufferMemoryInfoKHR, sType}--instance {-# OVERLAPPING #-}- HasField "sType" VkBindBufferMemoryInfoKHR where- type FieldType "sType" VkBindBufferMemoryInfoKHR = VkStructureType- type FieldOptional "sType" VkBindBufferMemoryInfoKHR = 'False -- ' closing tick for hsc2hs- type FieldOffset "sType" VkBindBufferMemoryInfoKHR =- #{offset VkBindBufferMemoryInfoKHR, sType}- type FieldIsArray "sType" VkBindBufferMemoryInfoKHR = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkBindBufferMemoryInfoKHR, sType}--instance CanReadField "sType" VkBindBufferMemoryInfoKHR where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance CanWriteField "sType" VkBindBufferMemoryInfoKHR where- {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-} HasVkPNext VkBindBufferMemoryInfoKHR- where- type VkPNextMType VkBindBufferMemoryInfoKHR = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBindBufferMemoryInfoKHR, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkBindBufferMemoryInfoKHR, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkBindBufferMemoryInfoKHR, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkBindBufferMemoryInfoKHR, pNext}--instance {-# OVERLAPPING #-}- HasField "pNext" VkBindBufferMemoryInfoKHR where- type FieldType "pNext" VkBindBufferMemoryInfoKHR = Ptr Void- type FieldOptional "pNext" VkBindBufferMemoryInfoKHR = 'False -- ' closing tick for hsc2hs- type FieldOffset "pNext" VkBindBufferMemoryInfoKHR =- #{offset VkBindBufferMemoryInfoKHR, pNext}- type FieldIsArray "pNext" VkBindBufferMemoryInfoKHR = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkBindBufferMemoryInfoKHR, pNext}--instance CanReadField "pNext" VkBindBufferMemoryInfoKHR where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkBindBufferMemoryInfoKHR where- {-# INLINE writeField #-}- writeField = writeVkPNext--instance {-# OVERLAPPING #-} HasVkBuffer VkBindBufferMemoryInfoKHR- where- type VkBufferMType VkBindBufferMemoryInfoKHR = VkBuffer-- {-# NOINLINE vkBuffer #-}- vkBuffer x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBindBufferMemoryInfoKHR, buffer})-- {-# INLINE vkBufferByteOffset #-}- vkBufferByteOffset ~_- = #{offset VkBindBufferMemoryInfoKHR, buffer}-- {-# INLINE readVkBuffer #-}- readVkBuffer p- = peekByteOff p #{offset VkBindBufferMemoryInfoKHR, buffer}-- {-# INLINE writeVkBuffer #-}- writeVkBuffer p- = pokeByteOff p #{offset VkBindBufferMemoryInfoKHR, buffer}--instance {-# OVERLAPPING #-}- HasField "buffer" VkBindBufferMemoryInfoKHR where- type FieldType "buffer" VkBindBufferMemoryInfoKHR = VkBuffer- type FieldOptional "buffer" VkBindBufferMemoryInfoKHR = 'False -- ' closing tick for hsc2hs- type FieldOffset "buffer" VkBindBufferMemoryInfoKHR =- #{offset VkBindBufferMemoryInfoKHR, buffer}- type FieldIsArray "buffer" VkBindBufferMemoryInfoKHR = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkBindBufferMemoryInfoKHR, buffer}--instance CanReadField "buffer" VkBindBufferMemoryInfoKHR where- {-# INLINE getField #-}- getField = vkBuffer-- {-# INLINE readField #-}- readField = readVkBuffer--instance CanWriteField "buffer" VkBindBufferMemoryInfoKHR where- {-# INLINE writeField #-}- writeField = writeVkBuffer--instance {-# OVERLAPPING #-} HasVkMemory VkBindBufferMemoryInfoKHR- where- type VkMemoryMType VkBindBufferMemoryInfoKHR = VkDeviceMemory-- {-# NOINLINE vkMemory #-}- vkMemory x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBindBufferMemoryInfoKHR, memory})-- {-# INLINE vkMemoryByteOffset #-}- vkMemoryByteOffset ~_- = #{offset VkBindBufferMemoryInfoKHR, memory}-- {-# INLINE readVkMemory #-}- readVkMemory p- = peekByteOff p #{offset VkBindBufferMemoryInfoKHR, memory}-- {-# INLINE writeVkMemory #-}- writeVkMemory p- = pokeByteOff p #{offset VkBindBufferMemoryInfoKHR, memory}--instance {-# OVERLAPPING #-}- HasField "memory" VkBindBufferMemoryInfoKHR where- type FieldType "memory" VkBindBufferMemoryInfoKHR = VkDeviceMemory- type FieldOptional "memory" VkBindBufferMemoryInfoKHR = 'False -- ' closing tick for hsc2hs- type FieldOffset "memory" VkBindBufferMemoryInfoKHR =- #{offset VkBindBufferMemoryInfoKHR, memory}- type FieldIsArray "memory" VkBindBufferMemoryInfoKHR = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkBindBufferMemoryInfoKHR, memory}--instance CanReadField "memory" VkBindBufferMemoryInfoKHR where- {-# INLINE getField #-}- getField = vkMemory-- {-# INLINE readField #-}- readField = readVkMemory--instance CanWriteField "memory" VkBindBufferMemoryInfoKHR where- {-# INLINE writeField #-}- writeField = writeVkMemory--instance {-# OVERLAPPING #-}- HasVkMemoryOffset VkBindBufferMemoryInfoKHR where- type VkMemoryOffsetMType VkBindBufferMemoryInfoKHR = VkDeviceSize-- {-# NOINLINE vkMemoryOffset #-}- vkMemoryOffset x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBindBufferMemoryInfoKHR, memoryOffset})-- {-# INLINE vkMemoryOffsetByteOffset #-}- vkMemoryOffsetByteOffset ~_- = #{offset VkBindBufferMemoryInfoKHR, memoryOffset}-- {-# INLINE readVkMemoryOffset #-}- readVkMemoryOffset p- = peekByteOff p #{offset VkBindBufferMemoryInfoKHR, memoryOffset}-- {-# INLINE writeVkMemoryOffset #-}- writeVkMemoryOffset p- = pokeByteOff p #{offset VkBindBufferMemoryInfoKHR, memoryOffset}--instance {-# OVERLAPPING #-}- HasField "memoryOffset" VkBindBufferMemoryInfoKHR where- type FieldType "memoryOffset" VkBindBufferMemoryInfoKHR =- VkDeviceSize- type FieldOptional "memoryOffset" VkBindBufferMemoryInfoKHR =- 'False -- ' closing tick for hsc2hs- type FieldOffset "memoryOffset" VkBindBufferMemoryInfoKHR =- #{offset VkBindBufferMemoryInfoKHR, memoryOffset}- type FieldIsArray "memoryOffset" VkBindBufferMemoryInfoKHR = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkBindBufferMemoryInfoKHR, memoryOffset}--instance CanReadField "memoryOffset" VkBindBufferMemoryInfoKHR- where- {-# INLINE getField #-}- getField = vkMemoryOffset-- {-# INLINE readField #-}- readField = readVkMemoryOffset--instance CanWriteField "memoryOffset" VkBindBufferMemoryInfoKHR- where- {-# INLINE writeField #-}- writeField = writeVkMemoryOffset--instance Show VkBindBufferMemoryInfoKHR where- showsPrec d x- = showString "VkBindBufferMemoryInfoKHR {" .- showString "vkSType = " .- showsPrec d (vkSType x) .- showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .- showString ", " .- showString "vkBuffer = " .- showsPrec d (vkBuffer x) .- showString ", " .- showString "vkMemory = " .- showsPrec d (vkMemory x) .- showString ", " .- showString "vkMemoryOffset = " .- showsPrec d (vkMemoryOffset x) . showChar '}'
@@ -0,0 +1,345 @@+#include "vulkan/vulkan.h"++{-# LANGUAGE DataKinds #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-}+{-# LANGUAGE TypeFamilies #-}+module Graphics.Vulkan.Types.Struct.VkBindImageMemoryDeviceGroupInfo+ (VkBindImageMemoryDeviceGroupInfo(..)) where+import Foreign.Storable (Storable (..))+import GHC.Prim+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Marshal.Internal+import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)+import Graphics.Vulkan.Types.Struct.VkBindImageMemoryInfo (VkBindImageMemoryInfo)+import Graphics.Vulkan.Types.Struct.VkRect2D (VkRect2D)+import System.IO.Unsafe (unsafeDupablePerformIO)++-- | > typedef struct VkBindImageMemoryDeviceGroupInfo {+-- > VkStructureType sType;+-- > const void* pNext;+-- > uint32_t deviceIndexCount;+-- > const uint32_t* pDeviceIndices;+-- > uint32_t splitInstanceBindRegionCount;+-- > const VkRect2D* pSplitInstanceBindRegions;+-- > } VkBindImageMemoryDeviceGroupInfo;+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkBindImageMemoryDeviceGroupInfo.html VkBindImageMemoryDeviceGroupInfo registry at www.khronos.org>+data VkBindImageMemoryDeviceGroupInfo = VkBindImageMemoryDeviceGroupInfo## Addr##+ ByteArray##++instance Eq VkBindImageMemoryDeviceGroupInfo where+ (VkBindImageMemoryDeviceGroupInfo## a _) ==+ x@(VkBindImageMemoryDeviceGroupInfo## b _)+ = EQ == cmpBytes## (sizeOf x) a b++ {-# INLINE (==) #-}++instance Ord VkBindImageMemoryDeviceGroupInfo where+ (VkBindImageMemoryDeviceGroupInfo## a _) `compare`+ x@(VkBindImageMemoryDeviceGroupInfo## b _)+ = cmpBytes## (sizeOf x) a b++ {-# INLINE compare #-}++instance Storable VkBindImageMemoryDeviceGroupInfo where+ sizeOf ~_ = #{size VkBindImageMemoryDeviceGroupInfo}++ {-# INLINE sizeOf #-}+ alignment ~_+ = #{alignment VkBindImageMemoryDeviceGroupInfo}++ {-# INLINE alignment #-}+ peek = peekVkData##++ {-# INLINE peek #-}+ poke = pokeVkData##++ {-# INLINE poke #-}++instance VulkanMarshalPrim VkBindImageMemoryDeviceGroupInfo where+ unsafeAddr (VkBindImageMemoryDeviceGroupInfo## a _) = a++ {-# INLINE unsafeAddr #-}+ unsafeByteArray (VkBindImageMemoryDeviceGroupInfo## _ b) = b++ {-# INLINE unsafeByteArray #-}+ unsafeFromByteArrayOffset off b+ = VkBindImageMemoryDeviceGroupInfo##+ (plusAddr## (byteArrayContents## b) off)+ b++ {-# INLINE unsafeFromByteArrayOffset #-}++instance VulkanMarshal VkBindImageMemoryDeviceGroupInfo where+ type StructFields VkBindImageMemoryDeviceGroupInfo =+ '["sType", "pNext", "deviceIndexCount", "pDeviceIndices", -- ' closing tick for hsc2hs+ "splitInstanceBindRegionCount", "pSplitInstanceBindRegions"]+ type CUnionType VkBindImageMemoryDeviceGroupInfo = 'False -- ' closing tick for hsc2hs+ type ReturnedOnly VkBindImageMemoryDeviceGroupInfo = 'False -- ' closing tick for hsc2hs+ type StructExtends VkBindImageMemoryDeviceGroupInfo =+ '[VkBindImageMemoryInfo] -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-}+ HasField "sType" VkBindImageMemoryDeviceGroupInfo where+ type FieldType "sType" VkBindImageMemoryDeviceGroupInfo =+ VkStructureType+ type FieldOptional "sType" VkBindImageMemoryDeviceGroupInfo =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "sType" VkBindImageMemoryDeviceGroupInfo =+ #{offset VkBindImageMemoryDeviceGroupInfo, sType}+ type FieldIsArray "sType" VkBindImageMemoryDeviceGroupInfo = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkBindImageMemoryDeviceGroupInfo, sType}++instance {-# OVERLAPPING #-}+ CanReadField "sType" VkBindImageMemoryDeviceGroupInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBindImageMemoryDeviceGroupInfo, sType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBindImageMemoryDeviceGroupInfo, sType}++instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkBindImageMemoryDeviceGroupInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBindImageMemoryDeviceGroupInfo, sType}++instance {-# OVERLAPPING #-}+ HasField "pNext" VkBindImageMemoryDeviceGroupInfo where+ type FieldType "pNext" VkBindImageMemoryDeviceGroupInfo = Ptr Void+ type FieldOptional "pNext" VkBindImageMemoryDeviceGroupInfo =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "pNext" VkBindImageMemoryDeviceGroupInfo =+ #{offset VkBindImageMemoryDeviceGroupInfo, pNext}+ type FieldIsArray "pNext" VkBindImageMemoryDeviceGroupInfo = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkBindImageMemoryDeviceGroupInfo, pNext}++instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkBindImageMemoryDeviceGroupInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBindImageMemoryDeviceGroupInfo, pNext})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBindImageMemoryDeviceGroupInfo, pNext}++instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkBindImageMemoryDeviceGroupInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBindImageMemoryDeviceGroupInfo, pNext}++instance {-# OVERLAPPING #-}+ HasField "deviceIndexCount" VkBindImageMemoryDeviceGroupInfo where+ type FieldType "deviceIndexCount" VkBindImageMemoryDeviceGroupInfo+ = Word32+ type FieldOptional "deviceIndexCount"+ VkBindImageMemoryDeviceGroupInfo+ = 'True -- ' closing tick for hsc2hs+ type FieldOffset "deviceIndexCount"+ VkBindImageMemoryDeviceGroupInfo+ =+ #{offset VkBindImageMemoryDeviceGroupInfo, deviceIndexCount}+ type FieldIsArray "deviceIndexCount"+ VkBindImageMemoryDeviceGroupInfo+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = True++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkBindImageMemoryDeviceGroupInfo, deviceIndexCount}++instance {-# OVERLAPPING #-}+ CanReadField "deviceIndexCount" VkBindImageMemoryDeviceGroupInfo+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBindImageMemoryDeviceGroupInfo, deviceIndexCount})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBindImageMemoryDeviceGroupInfo, deviceIndexCount}++instance {-# OVERLAPPING #-}+ CanWriteField "deviceIndexCount" VkBindImageMemoryDeviceGroupInfo+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBindImageMemoryDeviceGroupInfo, deviceIndexCount}++instance {-# OVERLAPPING #-}+ HasField "pDeviceIndices" VkBindImageMemoryDeviceGroupInfo where+ type FieldType "pDeviceIndices" VkBindImageMemoryDeviceGroupInfo =+ Ptr Word32+ type FieldOptional "pDeviceIndices"+ VkBindImageMemoryDeviceGroupInfo+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "pDeviceIndices" VkBindImageMemoryDeviceGroupInfo+ =+ #{offset VkBindImageMemoryDeviceGroupInfo, pDeviceIndices}+ type FieldIsArray "pDeviceIndices" VkBindImageMemoryDeviceGroupInfo+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkBindImageMemoryDeviceGroupInfo, pDeviceIndices}++instance {-# OVERLAPPING #-}+ CanReadField "pDeviceIndices" VkBindImageMemoryDeviceGroupInfo+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBindImageMemoryDeviceGroupInfo, pDeviceIndices})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBindImageMemoryDeviceGroupInfo, pDeviceIndices}++instance {-# OVERLAPPING #-}+ CanWriteField "pDeviceIndices" VkBindImageMemoryDeviceGroupInfo+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBindImageMemoryDeviceGroupInfo, pDeviceIndices}++instance {-# OVERLAPPING #-}+ HasField "splitInstanceBindRegionCount"+ VkBindImageMemoryDeviceGroupInfo+ where+ type FieldType "splitInstanceBindRegionCount"+ VkBindImageMemoryDeviceGroupInfo+ = Word32+ type FieldOptional "splitInstanceBindRegionCount"+ VkBindImageMemoryDeviceGroupInfo+ = 'True -- ' closing tick for hsc2hs+ type FieldOffset "splitInstanceBindRegionCount"+ VkBindImageMemoryDeviceGroupInfo+ =+ #{offset VkBindImageMemoryDeviceGroupInfo, splitInstanceBindRegionCount}+ type FieldIsArray "splitInstanceBindRegionCount"+ VkBindImageMemoryDeviceGroupInfo+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = True++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkBindImageMemoryDeviceGroupInfo, splitInstanceBindRegionCount}++instance {-# OVERLAPPING #-}+ CanReadField "splitInstanceBindRegionCount"+ VkBindImageMemoryDeviceGroupInfo+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBindImageMemoryDeviceGroupInfo, splitInstanceBindRegionCount})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBindImageMemoryDeviceGroupInfo, splitInstanceBindRegionCount}++instance {-# OVERLAPPING #-}+ CanWriteField "splitInstanceBindRegionCount"+ VkBindImageMemoryDeviceGroupInfo+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBindImageMemoryDeviceGroupInfo, splitInstanceBindRegionCount}++instance {-# OVERLAPPING #-}+ HasField "pSplitInstanceBindRegions"+ VkBindImageMemoryDeviceGroupInfo+ where+ type FieldType "pSplitInstanceBindRegions"+ VkBindImageMemoryDeviceGroupInfo+ = Ptr VkRect2D+ type FieldOptional "pSplitInstanceBindRegions"+ VkBindImageMemoryDeviceGroupInfo+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "pSplitInstanceBindRegions"+ VkBindImageMemoryDeviceGroupInfo+ =+ #{offset VkBindImageMemoryDeviceGroupInfo, pSplitInstanceBindRegions}+ type FieldIsArray "pSplitInstanceBindRegions"+ VkBindImageMemoryDeviceGroupInfo+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkBindImageMemoryDeviceGroupInfo, pSplitInstanceBindRegions}++instance {-# OVERLAPPING #-}+ CanReadField "pSplitInstanceBindRegions"+ VkBindImageMemoryDeviceGroupInfo+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBindImageMemoryDeviceGroupInfo, pSplitInstanceBindRegions})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBindImageMemoryDeviceGroupInfo, pSplitInstanceBindRegions}++instance {-# OVERLAPPING #-}+ CanWriteField "pSplitInstanceBindRegions"+ VkBindImageMemoryDeviceGroupInfo+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBindImageMemoryDeviceGroupInfo, pSplitInstanceBindRegions}++instance Show VkBindImageMemoryDeviceGroupInfo where+ showsPrec d x+ = showString "VkBindImageMemoryDeviceGroupInfo {" .+ showString "sType = " .+ showsPrec d (getField @"sType" x) .+ showString ", " .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) .+ showString ", " .+ showString "deviceIndexCount = " .+ showsPrec d (getField @"deviceIndexCount" x) .+ showString ", " .+ showString "pDeviceIndices = " .+ showsPrec d (getField @"pDeviceIndices" x) .+ showString ", " .+ showString "splitInstanceBindRegionCount = " .+ showsPrec d (getField @"splitInstanceBindRegionCount" x) .+ showString ", " .+ showString "pSplitInstanceBindRegions = " .+ showsPrec d (getField @"pSplitInstanceBindRegions" x)+ . showChar '}'
@@ -0,0 +1,11 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Types.Struct.VkBindImageMemoryDeviceGroupInfoKHR+ (VkBindImageMemoryDeviceGroupInfo(..),+ VkBindImageMemoryDeviceGroupInfoKHR)+ where+import Graphics.Vulkan.Types.Struct.VkBindImageMemoryDeviceGroupInfo (VkBindImageMemoryDeviceGroupInfo (..))++-- | Alias for `VkBindImageMemoryDeviceGroupInfo`+type VkBindImageMemoryDeviceGroupInfoKHR =+ VkBindImageMemoryDeviceGroupInfo
@@ -1,444 +0,0 @@-#include "vulkan/vulkan.h"--{-# LANGUAGE DataKinds #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE MagicHash #-}-{-# LANGUAGE MultiParamTypeClasses #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE TypeFamilies #-}-module Graphics.Vulkan.Types.Struct.VkBindImageMemoryDeviceGroupInfoKHX- (VkBindImageMemoryDeviceGroupInfoKHX(..)) where-import Foreign.Storable (Storable (..))-import GHC.Prim-import Graphics.Vulkan.Marshal-import Graphics.Vulkan.Marshal.Internal-import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)-import Graphics.Vulkan.Types.Struct.VkBindImageMemoryInfoKHR (VkBindImageMemoryInfoKHR)-import Graphics.Vulkan.Types.Struct.VkRect2D (VkRect2D)-import Graphics.Vulkan.Types.StructMembers-import System.IO.Unsafe (unsafeDupablePerformIO)---- | > typedef struct VkBindImageMemoryDeviceGroupInfoKHX {--- > VkStructureType sType;--- > const void* pNext;--- > uint32_t deviceIndexCount;--- > const uint32_t* pDeviceIndices;--- > uint32_t SFRRectCount;--- > const VkRect2D* pSFRRects;--- > } VkBindImageMemoryDeviceGroupInfoKHX;------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkBindImageMemoryDeviceGroupInfoKHX.html VkBindImageMemoryDeviceGroupInfoKHX registry at www.khronos.org>-data VkBindImageMemoryDeviceGroupInfoKHX = VkBindImageMemoryDeviceGroupInfoKHX## Addr##- ByteArray##--instance Eq VkBindImageMemoryDeviceGroupInfoKHX where- (VkBindImageMemoryDeviceGroupInfoKHX## a _) ==- x@(VkBindImageMemoryDeviceGroupInfoKHX## b _)- = EQ == cmpBytes## (sizeOf x) a b-- {-# INLINE (==) #-}--instance Ord VkBindImageMemoryDeviceGroupInfoKHX where- (VkBindImageMemoryDeviceGroupInfoKHX## a _) `compare`- x@(VkBindImageMemoryDeviceGroupInfoKHX## b _)- = cmpBytes## (sizeOf x) a b-- {-# INLINE compare #-}--instance Storable VkBindImageMemoryDeviceGroupInfoKHX where- sizeOf ~_ = #{size VkBindImageMemoryDeviceGroupInfoKHX}-- {-# INLINE sizeOf #-}- alignment ~_- = #{alignment VkBindImageMemoryDeviceGroupInfoKHX}-- {-# INLINE alignment #-}- peek = peekVkData##-- {-# INLINE peek #-}- poke = pokeVkData##-- {-# INLINE poke #-}--instance VulkanMarshalPrim VkBindImageMemoryDeviceGroupInfoKHX- where- unsafeAddr (VkBindImageMemoryDeviceGroupInfoKHX## a _) = a-- {-# INLINE unsafeAddr #-}- unsafeByteArray (VkBindImageMemoryDeviceGroupInfoKHX## _ b) = b-- {-# INLINE unsafeByteArray #-}- unsafeFromByteArrayOffset off b- = VkBindImageMemoryDeviceGroupInfoKHX##- (plusAddr## (byteArrayContents## b) off)- b-- {-# INLINE unsafeFromByteArrayOffset #-}--instance VulkanMarshal VkBindImageMemoryDeviceGroupInfoKHX where- type StructFields VkBindImageMemoryDeviceGroupInfoKHX =- '["sType", "pNext", "deviceIndexCount", "pDeviceIndices", -- ' closing tick for hsc2hs- "SFRRectCount", "pSFRRects"]- type CUnionType VkBindImageMemoryDeviceGroupInfoKHX = 'False -- ' closing tick for hsc2hs- type ReturnedOnly VkBindImageMemoryDeviceGroupInfoKHX = 'False -- ' closing tick for hsc2hs- type StructExtends VkBindImageMemoryDeviceGroupInfoKHX =- '[VkBindImageMemoryInfoKHR] -- ' closing tick for hsc2hs--instance {-# OVERLAPPING #-}- HasVkSType VkBindImageMemoryDeviceGroupInfoKHX where- type VkSTypeMType VkBindImageMemoryDeviceGroupInfoKHX =- VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBindImageMemoryDeviceGroupInfoKHX, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkBindImageMemoryDeviceGroupInfoKHX, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkBindImageMemoryDeviceGroupInfoKHX, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkBindImageMemoryDeviceGroupInfoKHX, sType}--instance {-# OVERLAPPING #-}- HasField "sType" VkBindImageMemoryDeviceGroupInfoKHX where- type FieldType "sType" VkBindImageMemoryDeviceGroupInfoKHX =- VkStructureType- type FieldOptional "sType" VkBindImageMemoryDeviceGroupInfoKHX =- 'False -- ' closing tick for hsc2hs- type FieldOffset "sType" VkBindImageMemoryDeviceGroupInfoKHX =- #{offset VkBindImageMemoryDeviceGroupInfoKHX, sType}- type FieldIsArray "sType" VkBindImageMemoryDeviceGroupInfoKHX =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkBindImageMemoryDeviceGroupInfoKHX, sType}--instance CanReadField "sType" VkBindImageMemoryDeviceGroupInfoKHX- where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance CanWriteField "sType" VkBindImageMemoryDeviceGroupInfoKHX- where- {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-}- HasVkPNext VkBindImageMemoryDeviceGroupInfoKHX where- type VkPNextMType VkBindImageMemoryDeviceGroupInfoKHX = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBindImageMemoryDeviceGroupInfoKHX, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkBindImageMemoryDeviceGroupInfoKHX, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkBindImageMemoryDeviceGroupInfoKHX, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkBindImageMemoryDeviceGroupInfoKHX, pNext}--instance {-# OVERLAPPING #-}- HasField "pNext" VkBindImageMemoryDeviceGroupInfoKHX where- type FieldType "pNext" VkBindImageMemoryDeviceGroupInfoKHX =- Ptr Void- type FieldOptional "pNext" VkBindImageMemoryDeviceGroupInfoKHX =- 'False -- ' closing tick for hsc2hs- type FieldOffset "pNext" VkBindImageMemoryDeviceGroupInfoKHX =- #{offset VkBindImageMemoryDeviceGroupInfoKHX, pNext}- type FieldIsArray "pNext" VkBindImageMemoryDeviceGroupInfoKHX =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkBindImageMemoryDeviceGroupInfoKHX, pNext}--instance CanReadField "pNext" VkBindImageMemoryDeviceGroupInfoKHX- where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkBindImageMemoryDeviceGroupInfoKHX- where- {-# INLINE writeField #-}- writeField = writeVkPNext--instance {-# OVERLAPPING #-}- HasVkDeviceIndexCount VkBindImageMemoryDeviceGroupInfoKHX where- type VkDeviceIndexCountMType VkBindImageMemoryDeviceGroupInfoKHX =- Word32-- {-# NOINLINE vkDeviceIndexCount #-}- vkDeviceIndexCount x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBindImageMemoryDeviceGroupInfoKHX, deviceIndexCount})-- {-# INLINE vkDeviceIndexCountByteOffset #-}- vkDeviceIndexCountByteOffset ~_- = #{offset VkBindImageMemoryDeviceGroupInfoKHX, deviceIndexCount}-- {-# INLINE readVkDeviceIndexCount #-}- readVkDeviceIndexCount p- = peekByteOff p #{offset VkBindImageMemoryDeviceGroupInfoKHX, deviceIndexCount}-- {-# INLINE writeVkDeviceIndexCount #-}- writeVkDeviceIndexCount p- = pokeByteOff p #{offset VkBindImageMemoryDeviceGroupInfoKHX, deviceIndexCount}--instance {-# OVERLAPPING #-}- HasField "deviceIndexCount" VkBindImageMemoryDeviceGroupInfoKHX- where- type FieldType "deviceIndexCount"- VkBindImageMemoryDeviceGroupInfoKHX- = Word32- type FieldOptional "deviceIndexCount"- VkBindImageMemoryDeviceGroupInfoKHX- = 'True -- ' closing tick for hsc2hs- type FieldOffset "deviceIndexCount"- VkBindImageMemoryDeviceGroupInfoKHX- =- #{offset VkBindImageMemoryDeviceGroupInfoKHX, deviceIndexCount}- type FieldIsArray "deviceIndexCount"- VkBindImageMemoryDeviceGroupInfoKHX- = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = True-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkBindImageMemoryDeviceGroupInfoKHX, deviceIndexCount}--instance CanReadField "deviceIndexCount"- VkBindImageMemoryDeviceGroupInfoKHX- where- {-# INLINE getField #-}- getField = vkDeviceIndexCount-- {-# INLINE readField #-}- readField = readVkDeviceIndexCount--instance CanWriteField "deviceIndexCount"- VkBindImageMemoryDeviceGroupInfoKHX- where- {-# INLINE writeField #-}- writeField = writeVkDeviceIndexCount--instance {-# OVERLAPPING #-}- HasVkPDeviceIndices VkBindImageMemoryDeviceGroupInfoKHX where- type VkPDeviceIndicesMType VkBindImageMemoryDeviceGroupInfoKHX =- Ptr Word32-- {-# NOINLINE vkPDeviceIndices #-}- vkPDeviceIndices x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBindImageMemoryDeviceGroupInfoKHX, pDeviceIndices})-- {-# INLINE vkPDeviceIndicesByteOffset #-}- vkPDeviceIndicesByteOffset ~_- = #{offset VkBindImageMemoryDeviceGroupInfoKHX, pDeviceIndices}-- {-# INLINE readVkPDeviceIndices #-}- readVkPDeviceIndices p- = peekByteOff p #{offset VkBindImageMemoryDeviceGroupInfoKHX, pDeviceIndices}-- {-# INLINE writeVkPDeviceIndices #-}- writeVkPDeviceIndices p- = pokeByteOff p #{offset VkBindImageMemoryDeviceGroupInfoKHX, pDeviceIndices}--instance {-# OVERLAPPING #-}- HasField "pDeviceIndices" VkBindImageMemoryDeviceGroupInfoKHX where- type FieldType "pDeviceIndices" VkBindImageMemoryDeviceGroupInfoKHX- = Ptr Word32- type FieldOptional "pDeviceIndices"- VkBindImageMemoryDeviceGroupInfoKHX- = 'False -- ' closing tick for hsc2hs- type FieldOffset "pDeviceIndices"- VkBindImageMemoryDeviceGroupInfoKHX- =- #{offset VkBindImageMemoryDeviceGroupInfoKHX, pDeviceIndices}- type FieldIsArray "pDeviceIndices"- VkBindImageMemoryDeviceGroupInfoKHX- = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkBindImageMemoryDeviceGroupInfoKHX, pDeviceIndices}--instance CanReadField "pDeviceIndices"- VkBindImageMemoryDeviceGroupInfoKHX- where- {-# INLINE getField #-}- getField = vkPDeviceIndices-- {-# INLINE readField #-}- readField = readVkPDeviceIndices--instance CanWriteField "pDeviceIndices"- VkBindImageMemoryDeviceGroupInfoKHX- where- {-# INLINE writeField #-}- writeField = writeVkPDeviceIndices--instance {-# OVERLAPPING #-}- HasVkSFRRectCount VkBindImageMemoryDeviceGroupInfoKHX where- type VkSFRRectCountMType VkBindImageMemoryDeviceGroupInfoKHX =- Word32-- {-# NOINLINE vkSFRRectCount #-}- vkSFRRectCount x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBindImageMemoryDeviceGroupInfoKHX, SFRRectCount})-- {-# INLINE vkSFRRectCountByteOffset #-}- vkSFRRectCountByteOffset ~_- = #{offset VkBindImageMemoryDeviceGroupInfoKHX, SFRRectCount}-- {-# INLINE readVkSFRRectCount #-}- readVkSFRRectCount p- = peekByteOff p #{offset VkBindImageMemoryDeviceGroupInfoKHX, SFRRectCount}-- {-# INLINE writeVkSFRRectCount #-}- writeVkSFRRectCount p- = pokeByteOff p #{offset VkBindImageMemoryDeviceGroupInfoKHX, SFRRectCount}--instance {-# OVERLAPPING #-}- HasField "SFRRectCount" VkBindImageMemoryDeviceGroupInfoKHX where- type FieldType "SFRRectCount" VkBindImageMemoryDeviceGroupInfoKHX =- Word32- type FieldOptional "SFRRectCount"- VkBindImageMemoryDeviceGroupInfoKHX- = 'True -- ' closing tick for hsc2hs- type FieldOffset "SFRRectCount" VkBindImageMemoryDeviceGroupInfoKHX- =- #{offset VkBindImageMemoryDeviceGroupInfoKHX, SFRRectCount}- type FieldIsArray "SFRRectCount"- VkBindImageMemoryDeviceGroupInfoKHX- = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = True-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkBindImageMemoryDeviceGroupInfoKHX, SFRRectCount}--instance CanReadField "SFRRectCount"- VkBindImageMemoryDeviceGroupInfoKHX- where- {-# INLINE getField #-}- getField = vkSFRRectCount-- {-# INLINE readField #-}- readField = readVkSFRRectCount--instance CanWriteField "SFRRectCount"- VkBindImageMemoryDeviceGroupInfoKHX- where- {-# INLINE writeField #-}- writeField = writeVkSFRRectCount--instance {-# OVERLAPPING #-}- HasVkPSFRRects VkBindImageMemoryDeviceGroupInfoKHX where- type VkPSFRRectsMType VkBindImageMemoryDeviceGroupInfoKHX =- Ptr VkRect2D-- {-# NOINLINE vkPSFRRects #-}- vkPSFRRects x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBindImageMemoryDeviceGroupInfoKHX, pSFRRects})-- {-# INLINE vkPSFRRectsByteOffset #-}- vkPSFRRectsByteOffset ~_- = #{offset VkBindImageMemoryDeviceGroupInfoKHX, pSFRRects}-- {-# INLINE readVkPSFRRects #-}- readVkPSFRRects p- = peekByteOff p #{offset VkBindImageMemoryDeviceGroupInfoKHX, pSFRRects}-- {-# INLINE writeVkPSFRRects #-}- writeVkPSFRRects p- = pokeByteOff p #{offset VkBindImageMemoryDeviceGroupInfoKHX, pSFRRects}--instance {-# OVERLAPPING #-}- HasField "pSFRRects" VkBindImageMemoryDeviceGroupInfoKHX where- type FieldType "pSFRRects" VkBindImageMemoryDeviceGroupInfoKHX =- Ptr VkRect2D- type FieldOptional "pSFRRects" VkBindImageMemoryDeviceGroupInfoKHX- = 'False -- ' closing tick for hsc2hs- type FieldOffset "pSFRRects" VkBindImageMemoryDeviceGroupInfoKHX =- #{offset VkBindImageMemoryDeviceGroupInfoKHX, pSFRRects}- type FieldIsArray "pSFRRects" VkBindImageMemoryDeviceGroupInfoKHX =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkBindImageMemoryDeviceGroupInfoKHX, pSFRRects}--instance CanReadField "pSFRRects"- VkBindImageMemoryDeviceGroupInfoKHX- where- {-# INLINE getField #-}- getField = vkPSFRRects-- {-# INLINE readField #-}- readField = readVkPSFRRects--instance CanWriteField "pSFRRects"- VkBindImageMemoryDeviceGroupInfoKHX- where- {-# INLINE writeField #-}- writeField = writeVkPSFRRects--instance Show VkBindImageMemoryDeviceGroupInfoKHX where- showsPrec d x- = showString "VkBindImageMemoryDeviceGroupInfoKHX {" .- showString "vkSType = " .- showsPrec d (vkSType x) .- showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .- showString ", " .- showString "vkDeviceIndexCount = " .- showsPrec d (vkDeviceIndexCount x) .- showString ", " .- showString "vkPDeviceIndices = " .- showsPrec d (vkPDeviceIndices x) .- showString ", " .- showString "vkSFRRectCount = " .- showsPrec d (vkSFRRectCount x) .- showString ", " .- showString "vkPSFRRects = " .- showsPrec d (vkPSFRRects x) . showChar '}'
@@ -0,0 +1,251 @@+#include "vulkan/vulkan.h"++{-# LANGUAGE DataKinds #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-}+{-# LANGUAGE TypeFamilies #-}+module Graphics.Vulkan.Types.Struct.VkBindImageMemoryInfo+ (VkBindImageMemoryInfo(..)) where+import Foreign.Storable (Storable (..))+import GHC.Prim+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Marshal.Internal+import Graphics.Vulkan.Types.BaseTypes (VkDeviceSize)+import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)+import Graphics.Vulkan.Types.Handles (VkDeviceMemory,+ VkImage)+import System.IO.Unsafe (unsafeDupablePerformIO)++-- | > typedef struct VkBindImageMemoryInfo {+-- > VkStructureType sType;+-- > const void* pNext;+-- > VkImage image;+-- > VkDeviceMemory memory;+-- > VkDeviceSize memoryOffset;+-- > } VkBindImageMemoryInfo;+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkBindImageMemoryInfo.html VkBindImageMemoryInfo registry at www.khronos.org>+data VkBindImageMemoryInfo = VkBindImageMemoryInfo## Addr##+ ByteArray##++instance Eq VkBindImageMemoryInfo where+ (VkBindImageMemoryInfo## a _) == x@(VkBindImageMemoryInfo## b _)+ = EQ == cmpBytes## (sizeOf x) a b++ {-# INLINE (==) #-}++instance Ord VkBindImageMemoryInfo where+ (VkBindImageMemoryInfo## a _) `compare`+ x@(VkBindImageMemoryInfo## b _) = cmpBytes## (sizeOf x) a b++ {-# INLINE compare #-}++instance Storable VkBindImageMemoryInfo where+ sizeOf ~_ = #{size VkBindImageMemoryInfo}++ {-# INLINE sizeOf #-}+ alignment ~_ = #{alignment VkBindImageMemoryInfo}++ {-# INLINE alignment #-}+ peek = peekVkData##++ {-# INLINE peek #-}+ poke = pokeVkData##++ {-# INLINE poke #-}++instance VulkanMarshalPrim VkBindImageMemoryInfo where+ unsafeAddr (VkBindImageMemoryInfo## a _) = a++ {-# INLINE unsafeAddr #-}+ unsafeByteArray (VkBindImageMemoryInfo## _ b) = b++ {-# INLINE unsafeByteArray #-}+ unsafeFromByteArrayOffset off b+ = VkBindImageMemoryInfo## (plusAddr## (byteArrayContents## b) off) b++ {-# INLINE unsafeFromByteArrayOffset #-}++instance VulkanMarshal VkBindImageMemoryInfo where+ type StructFields VkBindImageMemoryInfo =+ '["sType", "pNext", "image", "memory", "memoryOffset"] -- ' closing tick for hsc2hs+ type CUnionType VkBindImageMemoryInfo = 'False -- ' closing tick for hsc2hs+ type ReturnedOnly VkBindImageMemoryInfo = 'False -- ' closing tick for hsc2hs+ type StructExtends VkBindImageMemoryInfo = '[] -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-} HasField "sType" VkBindImageMemoryInfo+ where+ type FieldType "sType" VkBindImageMemoryInfo = VkStructureType+ type FieldOptional "sType" VkBindImageMemoryInfo = 'False -- ' closing tick for hsc2hs+ type FieldOffset "sType" VkBindImageMemoryInfo =+ #{offset VkBindImageMemoryInfo, sType}+ type FieldIsArray "sType" VkBindImageMemoryInfo = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset = #{offset VkBindImageMemoryInfo, sType}++instance {-# OVERLAPPING #-}+ CanReadField "sType" VkBindImageMemoryInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBindImageMemoryInfo, sType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBindImageMemoryInfo, sType}++instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkBindImageMemoryInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBindImageMemoryInfo, sType}++instance {-# OVERLAPPING #-} HasField "pNext" VkBindImageMemoryInfo+ where+ type FieldType "pNext" VkBindImageMemoryInfo = Ptr Void+ type FieldOptional "pNext" VkBindImageMemoryInfo = 'False -- ' closing tick for hsc2hs+ type FieldOffset "pNext" VkBindImageMemoryInfo =+ #{offset VkBindImageMemoryInfo, pNext}+ type FieldIsArray "pNext" VkBindImageMemoryInfo = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset = #{offset VkBindImageMemoryInfo, pNext}++instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkBindImageMemoryInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBindImageMemoryInfo, pNext})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBindImageMemoryInfo, pNext}++instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkBindImageMemoryInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBindImageMemoryInfo, pNext}++instance {-# OVERLAPPING #-} HasField "image" VkBindImageMemoryInfo+ where+ type FieldType "image" VkBindImageMemoryInfo = VkImage+ type FieldOptional "image" VkBindImageMemoryInfo = 'False -- ' closing tick for hsc2hs+ type FieldOffset "image" VkBindImageMemoryInfo =+ #{offset VkBindImageMemoryInfo, image}+ type FieldIsArray "image" VkBindImageMemoryInfo = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset = #{offset VkBindImageMemoryInfo, image}++instance {-# OVERLAPPING #-}+ CanReadField "image" VkBindImageMemoryInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBindImageMemoryInfo, image})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBindImageMemoryInfo, image}++instance {-# OVERLAPPING #-}+ CanWriteField "image" VkBindImageMemoryInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBindImageMemoryInfo, image}++instance {-# OVERLAPPING #-}+ HasField "memory" VkBindImageMemoryInfo where+ type FieldType "memory" VkBindImageMemoryInfo = VkDeviceMemory+ type FieldOptional "memory" VkBindImageMemoryInfo = 'False -- ' closing tick for hsc2hs+ type FieldOffset "memory" VkBindImageMemoryInfo =+ #{offset VkBindImageMemoryInfo, memory}+ type FieldIsArray "memory" VkBindImageMemoryInfo = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset = #{offset VkBindImageMemoryInfo, memory}++instance {-# OVERLAPPING #-}+ CanReadField "memory" VkBindImageMemoryInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBindImageMemoryInfo, memory})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBindImageMemoryInfo, memory}++instance {-# OVERLAPPING #-}+ CanWriteField "memory" VkBindImageMemoryInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBindImageMemoryInfo, memory}++instance {-# OVERLAPPING #-}+ HasField "memoryOffset" VkBindImageMemoryInfo where+ type FieldType "memoryOffset" VkBindImageMemoryInfo = VkDeviceSize+ type FieldOptional "memoryOffset" VkBindImageMemoryInfo = 'False -- ' closing tick for hsc2hs+ type FieldOffset "memoryOffset" VkBindImageMemoryInfo =+ #{offset VkBindImageMemoryInfo, memoryOffset}+ type FieldIsArray "memoryOffset" VkBindImageMemoryInfo = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkBindImageMemoryInfo, memoryOffset}++instance {-# OVERLAPPING #-}+ CanReadField "memoryOffset" VkBindImageMemoryInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBindImageMemoryInfo, memoryOffset})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBindImageMemoryInfo, memoryOffset}++instance {-# OVERLAPPING #-}+ CanWriteField "memoryOffset" VkBindImageMemoryInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBindImageMemoryInfo, memoryOffset}++instance Show VkBindImageMemoryInfo where+ showsPrec d x+ = showString "VkBindImageMemoryInfo {" .+ showString "sType = " .+ showsPrec d (getField @"sType" x) .+ showString ", " .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) .+ showString ", " .+ showString "image = " .+ showsPrec d (getField @"image" x) .+ showString ", " .+ showString "memory = " .+ showsPrec d (getField @"memory" x) .+ showString ", " .+ showString "memoryOffset = " .+ showsPrec d (getField @"memoryOffset" x) . showChar '}'
@@ -0,0 +1,8 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Types.Struct.VkBindImageMemoryInfoKHR+ (VkBindImageMemoryInfo(..), VkBindImageMemoryInfoKHR) where+import Graphics.Vulkan.Types.Struct.VkBindImageMemoryInfo (VkBindImageMemoryInfo (..))++-- | Alias for `VkBindImageMemoryInfo`+type VkBindImageMemoryInfoKHR = VkBindImageMemoryInfo
@@ -1,330 +0,0 @@-#include "vulkan/vulkan.h"--{-# LANGUAGE DataKinds #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE MagicHash #-}-{-# LANGUAGE MultiParamTypeClasses #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE TypeFamilies #-}-module Graphics.Vulkan.Types.Struct.VkBindImageMemoryInfoKHR- (VkBindImageMemoryInfoKHR(..)) where-import Foreign.Storable (Storable (..))-import GHC.Prim-import Graphics.Vulkan.Marshal-import Graphics.Vulkan.Marshal.Internal-import Graphics.Vulkan.Types.BaseTypes (VkDeviceSize)-import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)-import Graphics.Vulkan.Types.Handles (VkDeviceMemory,- VkImage)-import Graphics.Vulkan.Types.StructMembers-import System.IO.Unsafe (unsafeDupablePerformIO)---- | > typedef struct VkBindImageMemoryInfoKHR {--- > VkStructureType sType;--- > const void* pNext;--- > VkImage image;--- > VkDeviceMemory memory;--- > VkDeviceSize memoryOffset;--- > } VkBindImageMemoryInfoKHR;------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkBindImageMemoryInfoKHR.html VkBindImageMemoryInfoKHR registry at www.khronos.org>-data VkBindImageMemoryInfoKHR = VkBindImageMemoryInfoKHR## Addr##- ByteArray##--instance Eq VkBindImageMemoryInfoKHR where- (VkBindImageMemoryInfoKHR## a _) ==- x@(VkBindImageMemoryInfoKHR## b _) = EQ == cmpBytes## (sizeOf x) a b-- {-# INLINE (==) #-}--instance Ord VkBindImageMemoryInfoKHR where- (VkBindImageMemoryInfoKHR## a _) `compare`- x@(VkBindImageMemoryInfoKHR## b _) = cmpBytes## (sizeOf x) a b-- {-# INLINE compare #-}--instance Storable VkBindImageMemoryInfoKHR where- sizeOf ~_ = #{size VkBindImageMemoryInfoKHR}-- {-# INLINE sizeOf #-}- alignment ~_ = #{alignment VkBindImageMemoryInfoKHR}-- {-# INLINE alignment #-}- peek = peekVkData##-- {-# INLINE peek #-}- poke = pokeVkData##-- {-# INLINE poke #-}--instance VulkanMarshalPrim VkBindImageMemoryInfoKHR where- unsafeAddr (VkBindImageMemoryInfoKHR## a _) = a-- {-# INLINE unsafeAddr #-}- unsafeByteArray (VkBindImageMemoryInfoKHR## _ b) = b-- {-# INLINE unsafeByteArray #-}- unsafeFromByteArrayOffset off b- = VkBindImageMemoryInfoKHR## (plusAddr## (byteArrayContents## b) off)- b-- {-# INLINE unsafeFromByteArrayOffset #-}--instance VulkanMarshal VkBindImageMemoryInfoKHR where- type StructFields VkBindImageMemoryInfoKHR =- '["sType", "pNext", "image", "memory", "memoryOffset"] -- ' closing tick for hsc2hs- type CUnionType VkBindImageMemoryInfoKHR = 'False -- ' closing tick for hsc2hs- type ReturnedOnly VkBindImageMemoryInfoKHR = 'False -- ' closing tick for hsc2hs- type StructExtends VkBindImageMemoryInfoKHR = '[] -- ' closing tick for hsc2hs--instance {-# OVERLAPPING #-} HasVkSType VkBindImageMemoryInfoKHR- where- type VkSTypeMType VkBindImageMemoryInfoKHR = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBindImageMemoryInfoKHR, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkBindImageMemoryInfoKHR, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkBindImageMemoryInfoKHR, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkBindImageMemoryInfoKHR, sType}--instance {-# OVERLAPPING #-}- HasField "sType" VkBindImageMemoryInfoKHR where- type FieldType "sType" VkBindImageMemoryInfoKHR = VkStructureType- type FieldOptional "sType" VkBindImageMemoryInfoKHR = 'False -- ' closing tick for hsc2hs- type FieldOffset "sType" VkBindImageMemoryInfoKHR =- #{offset VkBindImageMemoryInfoKHR, sType}- type FieldIsArray "sType" VkBindImageMemoryInfoKHR = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset = #{offset VkBindImageMemoryInfoKHR, sType}--instance CanReadField "sType" VkBindImageMemoryInfoKHR where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance CanWriteField "sType" VkBindImageMemoryInfoKHR where- {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-} HasVkPNext VkBindImageMemoryInfoKHR- where- type VkPNextMType VkBindImageMemoryInfoKHR = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBindImageMemoryInfoKHR, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkBindImageMemoryInfoKHR, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkBindImageMemoryInfoKHR, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkBindImageMemoryInfoKHR, pNext}--instance {-# OVERLAPPING #-}- HasField "pNext" VkBindImageMemoryInfoKHR where- type FieldType "pNext" VkBindImageMemoryInfoKHR = Ptr Void- type FieldOptional "pNext" VkBindImageMemoryInfoKHR = 'False -- ' closing tick for hsc2hs- type FieldOffset "pNext" VkBindImageMemoryInfoKHR =- #{offset VkBindImageMemoryInfoKHR, pNext}- type FieldIsArray "pNext" VkBindImageMemoryInfoKHR = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset = #{offset VkBindImageMemoryInfoKHR, pNext}--instance CanReadField "pNext" VkBindImageMemoryInfoKHR where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkBindImageMemoryInfoKHR where- {-# INLINE writeField #-}- writeField = writeVkPNext--instance {-# OVERLAPPING #-} HasVkImage VkBindImageMemoryInfoKHR- where- type VkImageMType VkBindImageMemoryInfoKHR = VkImage-- {-# NOINLINE vkImage #-}- vkImage x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBindImageMemoryInfoKHR, image})-- {-# INLINE vkImageByteOffset #-}- vkImageByteOffset ~_- = #{offset VkBindImageMemoryInfoKHR, image}-- {-# INLINE readVkImage #-}- readVkImage p- = peekByteOff p #{offset VkBindImageMemoryInfoKHR, image}-- {-# INLINE writeVkImage #-}- writeVkImage p- = pokeByteOff p #{offset VkBindImageMemoryInfoKHR, image}--instance {-# OVERLAPPING #-}- HasField "image" VkBindImageMemoryInfoKHR where- type FieldType "image" VkBindImageMemoryInfoKHR = VkImage- type FieldOptional "image" VkBindImageMemoryInfoKHR = 'False -- ' closing tick for hsc2hs- type FieldOffset "image" VkBindImageMemoryInfoKHR =- #{offset VkBindImageMemoryInfoKHR, image}- type FieldIsArray "image" VkBindImageMemoryInfoKHR = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset = #{offset VkBindImageMemoryInfoKHR, image}--instance CanReadField "image" VkBindImageMemoryInfoKHR where- {-# INLINE getField #-}- getField = vkImage-- {-# INLINE readField #-}- readField = readVkImage--instance CanWriteField "image" VkBindImageMemoryInfoKHR where- {-# INLINE writeField #-}- writeField = writeVkImage--instance {-# OVERLAPPING #-} HasVkMemory VkBindImageMemoryInfoKHR- where- type VkMemoryMType VkBindImageMemoryInfoKHR = VkDeviceMemory-- {-# NOINLINE vkMemory #-}- vkMemory x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBindImageMemoryInfoKHR, memory})-- {-# INLINE vkMemoryByteOffset #-}- vkMemoryByteOffset ~_- = #{offset VkBindImageMemoryInfoKHR, memory}-- {-# INLINE readVkMemory #-}- readVkMemory p- = peekByteOff p #{offset VkBindImageMemoryInfoKHR, memory}-- {-# INLINE writeVkMemory #-}- writeVkMemory p- = pokeByteOff p #{offset VkBindImageMemoryInfoKHR, memory}--instance {-# OVERLAPPING #-}- HasField "memory" VkBindImageMemoryInfoKHR where- type FieldType "memory" VkBindImageMemoryInfoKHR = VkDeviceMemory- type FieldOptional "memory" VkBindImageMemoryInfoKHR = 'False -- ' closing tick for hsc2hs- type FieldOffset "memory" VkBindImageMemoryInfoKHR =- #{offset VkBindImageMemoryInfoKHR, memory}- type FieldIsArray "memory" VkBindImageMemoryInfoKHR = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkBindImageMemoryInfoKHR, memory}--instance CanReadField "memory" VkBindImageMemoryInfoKHR where- {-# INLINE getField #-}- getField = vkMemory-- {-# INLINE readField #-}- readField = readVkMemory--instance CanWriteField "memory" VkBindImageMemoryInfoKHR where- {-# INLINE writeField #-}- writeField = writeVkMemory--instance {-# OVERLAPPING #-}- HasVkMemoryOffset VkBindImageMemoryInfoKHR where- type VkMemoryOffsetMType VkBindImageMemoryInfoKHR = VkDeviceSize-- {-# NOINLINE vkMemoryOffset #-}- vkMemoryOffset x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBindImageMemoryInfoKHR, memoryOffset})-- {-# INLINE vkMemoryOffsetByteOffset #-}- vkMemoryOffsetByteOffset ~_- = #{offset VkBindImageMemoryInfoKHR, memoryOffset}-- {-# INLINE readVkMemoryOffset #-}- readVkMemoryOffset p- = peekByteOff p #{offset VkBindImageMemoryInfoKHR, memoryOffset}-- {-# INLINE writeVkMemoryOffset #-}- writeVkMemoryOffset p- = pokeByteOff p #{offset VkBindImageMemoryInfoKHR, memoryOffset}--instance {-# OVERLAPPING #-}- HasField "memoryOffset" VkBindImageMemoryInfoKHR where- type FieldType "memoryOffset" VkBindImageMemoryInfoKHR =- VkDeviceSize- type FieldOptional "memoryOffset" VkBindImageMemoryInfoKHR = 'False -- ' closing tick for hsc2hs- type FieldOffset "memoryOffset" VkBindImageMemoryInfoKHR =- #{offset VkBindImageMemoryInfoKHR, memoryOffset}- type FieldIsArray "memoryOffset" VkBindImageMemoryInfoKHR = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkBindImageMemoryInfoKHR, memoryOffset}--instance CanReadField "memoryOffset" VkBindImageMemoryInfoKHR where- {-# INLINE getField #-}- getField = vkMemoryOffset-- {-# INLINE readField #-}- readField = readVkMemoryOffset--instance CanWriteField "memoryOffset" VkBindImageMemoryInfoKHR- where- {-# INLINE writeField #-}- writeField = writeVkMemoryOffset--instance Show VkBindImageMemoryInfoKHR where- showsPrec d x- = showString "VkBindImageMemoryInfoKHR {" .- showString "vkSType = " .- showsPrec d (vkSType x) .- showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .- showString ", " .- showString "vkImage = " .- showsPrec d (vkImage x) .- showString ", " .- showString "vkMemory = " .- showsPrec d (vkMemory x) .- showString ", " .- showString "vkMemoryOffset = " .- showsPrec d (vkMemoryOffset x) . showChar '}'
@@ -0,0 +1,235 @@+#include "vulkan/vulkan.h"++{-# LANGUAGE DataKinds #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-}+{-# LANGUAGE TypeFamilies #-}+module Graphics.Vulkan.Types.Struct.VkBindImageMemorySwapchainInfoKHR+ (VkBindImageMemorySwapchainInfoKHR(..)) where+import Foreign.Storable (Storable (..))+import GHC.Prim+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Marshal.Internal+import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)+import Graphics.Vulkan.Types.Handles (VkSwapchainKHR)+import Graphics.Vulkan.Types.Struct.VkBindImageMemoryInfo (VkBindImageMemoryInfo)+import System.IO.Unsafe (unsafeDupablePerformIO)++-- | > typedef struct VkBindImageMemorySwapchainInfoKHR {+-- > VkStructureType sType;+-- > const void* pNext;+-- > VkSwapchainKHR swapchain;+-- > uint32_t imageIndex;+-- > } VkBindImageMemorySwapchainInfoKHR;+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkBindImageMemorySwapchainInfoKHR.html VkBindImageMemorySwapchainInfoKHR registry at www.khronos.org>+data VkBindImageMemorySwapchainInfoKHR = VkBindImageMemorySwapchainInfoKHR## Addr##+ ByteArray##++instance Eq VkBindImageMemorySwapchainInfoKHR where+ (VkBindImageMemorySwapchainInfoKHR## a _) ==+ x@(VkBindImageMemorySwapchainInfoKHR## b _)+ = EQ == cmpBytes## (sizeOf x) a b++ {-# INLINE (==) #-}++instance Ord VkBindImageMemorySwapchainInfoKHR where+ (VkBindImageMemorySwapchainInfoKHR## a _) `compare`+ x@(VkBindImageMemorySwapchainInfoKHR## b _)+ = cmpBytes## (sizeOf x) a b++ {-# INLINE compare #-}++instance Storable VkBindImageMemorySwapchainInfoKHR where+ sizeOf ~_ = #{size VkBindImageMemorySwapchainInfoKHR}++ {-# INLINE sizeOf #-}+ alignment ~_+ = #{alignment VkBindImageMemorySwapchainInfoKHR}++ {-# INLINE alignment #-}+ peek = peekVkData##++ {-# INLINE peek #-}+ poke = pokeVkData##++ {-# INLINE poke #-}++instance VulkanMarshalPrim VkBindImageMemorySwapchainInfoKHR where+ unsafeAddr (VkBindImageMemorySwapchainInfoKHR## a _) = a++ {-# INLINE unsafeAddr #-}+ unsafeByteArray (VkBindImageMemorySwapchainInfoKHR## _ b) = b++ {-# INLINE unsafeByteArray #-}+ unsafeFromByteArrayOffset off b+ = VkBindImageMemorySwapchainInfoKHR##+ (plusAddr## (byteArrayContents## b) off)+ b++ {-# INLINE unsafeFromByteArrayOffset #-}++instance VulkanMarshal VkBindImageMemorySwapchainInfoKHR where+ type StructFields VkBindImageMemorySwapchainInfoKHR =+ '["sType", "pNext", "swapchain", "imageIndex"] -- ' closing tick for hsc2hs+ type CUnionType VkBindImageMemorySwapchainInfoKHR = 'False -- ' closing tick for hsc2hs+ type ReturnedOnly VkBindImageMemorySwapchainInfoKHR = 'False -- ' closing tick for hsc2hs+ type StructExtends VkBindImageMemorySwapchainInfoKHR =+ '[VkBindImageMemoryInfo] -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-}+ HasField "sType" VkBindImageMemorySwapchainInfoKHR where+ type FieldType "sType" VkBindImageMemorySwapchainInfoKHR =+ VkStructureType+ type FieldOptional "sType" VkBindImageMemorySwapchainInfoKHR =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "sType" VkBindImageMemorySwapchainInfoKHR =+ #{offset VkBindImageMemorySwapchainInfoKHR, sType}+ type FieldIsArray "sType" VkBindImageMemorySwapchainInfoKHR =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkBindImageMemorySwapchainInfoKHR, sType}++instance {-# OVERLAPPING #-}+ CanReadField "sType" VkBindImageMemorySwapchainInfoKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBindImageMemorySwapchainInfoKHR, sType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBindImageMemorySwapchainInfoKHR, sType}++instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkBindImageMemorySwapchainInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBindImageMemorySwapchainInfoKHR, sType}++instance {-# OVERLAPPING #-}+ HasField "pNext" VkBindImageMemorySwapchainInfoKHR where+ type FieldType "pNext" VkBindImageMemorySwapchainInfoKHR = Ptr Void+ type FieldOptional "pNext" VkBindImageMemorySwapchainInfoKHR =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "pNext" VkBindImageMemorySwapchainInfoKHR =+ #{offset VkBindImageMemorySwapchainInfoKHR, pNext}+ type FieldIsArray "pNext" VkBindImageMemorySwapchainInfoKHR =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkBindImageMemorySwapchainInfoKHR, pNext}++instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkBindImageMemorySwapchainInfoKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBindImageMemorySwapchainInfoKHR, pNext})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBindImageMemorySwapchainInfoKHR, pNext}++instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkBindImageMemorySwapchainInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBindImageMemorySwapchainInfoKHR, pNext}++instance {-# OVERLAPPING #-}+ HasField "swapchain" VkBindImageMemorySwapchainInfoKHR where+ type FieldType "swapchain" VkBindImageMemorySwapchainInfoKHR =+ VkSwapchainKHR+ type FieldOptional "swapchain" VkBindImageMemorySwapchainInfoKHR =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "swapchain" VkBindImageMemorySwapchainInfoKHR =+ #{offset VkBindImageMemorySwapchainInfoKHR, swapchain}+ type FieldIsArray "swapchain" VkBindImageMemorySwapchainInfoKHR =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkBindImageMemorySwapchainInfoKHR, swapchain}++instance {-# OVERLAPPING #-}+ CanReadField "swapchain" VkBindImageMemorySwapchainInfoKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBindImageMemorySwapchainInfoKHR, swapchain})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBindImageMemorySwapchainInfoKHR, swapchain}++instance {-# OVERLAPPING #-}+ CanWriteField "swapchain" VkBindImageMemorySwapchainInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBindImageMemorySwapchainInfoKHR, swapchain}++instance {-# OVERLAPPING #-}+ HasField "imageIndex" VkBindImageMemorySwapchainInfoKHR where+ type FieldType "imageIndex" VkBindImageMemorySwapchainInfoKHR =+ Word32+ type FieldOptional "imageIndex" VkBindImageMemorySwapchainInfoKHR =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "imageIndex" VkBindImageMemorySwapchainInfoKHR =+ #{offset VkBindImageMemorySwapchainInfoKHR, imageIndex}+ type FieldIsArray "imageIndex" VkBindImageMemorySwapchainInfoKHR =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkBindImageMemorySwapchainInfoKHR, imageIndex}++instance {-# OVERLAPPING #-}+ CanReadField "imageIndex" VkBindImageMemorySwapchainInfoKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBindImageMemorySwapchainInfoKHR, imageIndex})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBindImageMemorySwapchainInfoKHR, imageIndex}++instance {-# OVERLAPPING #-}+ CanWriteField "imageIndex" VkBindImageMemorySwapchainInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBindImageMemorySwapchainInfoKHR, imageIndex}++instance Show VkBindImageMemorySwapchainInfoKHR where+ showsPrec d x+ = showString "VkBindImageMemorySwapchainInfoKHR {" .+ showString "sType = " .+ showsPrec d (getField @"sType" x) .+ showString ", " .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) .+ showString ", " .+ showString "swapchain = " .+ showsPrec d (getField @"swapchain" x) .+ showString ", " .+ showString "imageIndex = " .+ showsPrec d (getField @"imageIndex" x) . showChar '}'
@@ -1,308 +0,0 @@-#include "vulkan/vulkan.h"--{-# LANGUAGE DataKinds #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE MagicHash #-}-{-# LANGUAGE MultiParamTypeClasses #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE TypeFamilies #-}-module Graphics.Vulkan.Types.Struct.VkBindImageMemorySwapchainInfoKHX- (VkBindImageMemorySwapchainInfoKHX(..)) where-import Foreign.Storable (Storable (..))-import GHC.Prim-import Graphics.Vulkan.Marshal-import Graphics.Vulkan.Marshal.Internal-import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)-import Graphics.Vulkan.Types.Handles (VkSwapchainKHR)-import Graphics.Vulkan.Types.Struct.VkBindImageMemoryInfoKHR (VkBindImageMemoryInfoKHR)-import Graphics.Vulkan.Types.StructMembers-import System.IO.Unsafe (unsafeDupablePerformIO)---- | > typedef struct VkBindImageMemorySwapchainInfoKHX {--- > VkStructureType sType;--- > const void* pNext;--- > VkSwapchainKHR swapchain;--- > uint32_t imageIndex;--- > } VkBindImageMemorySwapchainInfoKHX;------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkBindImageMemorySwapchainInfoKHX.html VkBindImageMemorySwapchainInfoKHX registry at www.khronos.org>-data VkBindImageMemorySwapchainInfoKHX = VkBindImageMemorySwapchainInfoKHX## Addr##- ByteArray##--instance Eq VkBindImageMemorySwapchainInfoKHX where- (VkBindImageMemorySwapchainInfoKHX## a _) ==- x@(VkBindImageMemorySwapchainInfoKHX## b _)- = EQ == cmpBytes## (sizeOf x) a b-- {-# INLINE (==) #-}--instance Ord VkBindImageMemorySwapchainInfoKHX where- (VkBindImageMemorySwapchainInfoKHX## a _) `compare`- x@(VkBindImageMemorySwapchainInfoKHX## b _)- = cmpBytes## (sizeOf x) a b-- {-# INLINE compare #-}--instance Storable VkBindImageMemorySwapchainInfoKHX where- sizeOf ~_ = #{size VkBindImageMemorySwapchainInfoKHX}-- {-# INLINE sizeOf #-}- alignment ~_- = #{alignment VkBindImageMemorySwapchainInfoKHX}-- {-# INLINE alignment #-}- peek = peekVkData##-- {-# INLINE peek #-}- poke = pokeVkData##-- {-# INLINE poke #-}--instance VulkanMarshalPrim VkBindImageMemorySwapchainInfoKHX where- unsafeAddr (VkBindImageMemorySwapchainInfoKHX## a _) = a-- {-# INLINE unsafeAddr #-}- unsafeByteArray (VkBindImageMemorySwapchainInfoKHX## _ b) = b-- {-# INLINE unsafeByteArray #-}- unsafeFromByteArrayOffset off b- = VkBindImageMemorySwapchainInfoKHX##- (plusAddr## (byteArrayContents## b) off)- b-- {-# INLINE unsafeFromByteArrayOffset #-}--instance VulkanMarshal VkBindImageMemorySwapchainInfoKHX where- type StructFields VkBindImageMemorySwapchainInfoKHX =- '["sType", "pNext", "swapchain", "imageIndex"] -- ' closing tick for hsc2hs- type CUnionType VkBindImageMemorySwapchainInfoKHX = 'False -- ' closing tick for hsc2hs- type ReturnedOnly VkBindImageMemorySwapchainInfoKHX = 'False -- ' closing tick for hsc2hs- type StructExtends VkBindImageMemorySwapchainInfoKHX =- '[VkBindImageMemoryInfoKHR] -- ' closing tick for hsc2hs--instance {-# OVERLAPPING #-}- HasVkSType VkBindImageMemorySwapchainInfoKHX where- type VkSTypeMType VkBindImageMemorySwapchainInfoKHX =- VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBindImageMemorySwapchainInfoKHX, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkBindImageMemorySwapchainInfoKHX, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkBindImageMemorySwapchainInfoKHX, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkBindImageMemorySwapchainInfoKHX, sType}--instance {-# OVERLAPPING #-}- HasField "sType" VkBindImageMemorySwapchainInfoKHX where- type FieldType "sType" VkBindImageMemorySwapchainInfoKHX =- VkStructureType- type FieldOptional "sType" VkBindImageMemorySwapchainInfoKHX =- 'False -- ' closing tick for hsc2hs- type FieldOffset "sType" VkBindImageMemorySwapchainInfoKHX =- #{offset VkBindImageMemorySwapchainInfoKHX, sType}- type FieldIsArray "sType" VkBindImageMemorySwapchainInfoKHX =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkBindImageMemorySwapchainInfoKHX, sType}--instance CanReadField "sType" VkBindImageMemorySwapchainInfoKHX- where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance CanWriteField "sType" VkBindImageMemorySwapchainInfoKHX- where- {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-}- HasVkPNext VkBindImageMemorySwapchainInfoKHX where- type VkPNextMType VkBindImageMemorySwapchainInfoKHX = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBindImageMemorySwapchainInfoKHX, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkBindImageMemorySwapchainInfoKHX, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkBindImageMemorySwapchainInfoKHX, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkBindImageMemorySwapchainInfoKHX, pNext}--instance {-# OVERLAPPING #-}- HasField "pNext" VkBindImageMemorySwapchainInfoKHX where- type FieldType "pNext" VkBindImageMemorySwapchainInfoKHX = Ptr Void- type FieldOptional "pNext" VkBindImageMemorySwapchainInfoKHX =- 'False -- ' closing tick for hsc2hs- type FieldOffset "pNext" VkBindImageMemorySwapchainInfoKHX =- #{offset VkBindImageMemorySwapchainInfoKHX, pNext}- type FieldIsArray "pNext" VkBindImageMemorySwapchainInfoKHX =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkBindImageMemorySwapchainInfoKHX, pNext}--instance CanReadField "pNext" VkBindImageMemorySwapchainInfoKHX- where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkBindImageMemorySwapchainInfoKHX- where- {-# INLINE writeField #-}- writeField = writeVkPNext--instance {-# OVERLAPPING #-}- HasVkSwapchain VkBindImageMemorySwapchainInfoKHX where- type VkSwapchainMType VkBindImageMemorySwapchainInfoKHX =- VkSwapchainKHR-- {-# NOINLINE vkSwapchain #-}- vkSwapchain x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBindImageMemorySwapchainInfoKHX, swapchain})-- {-# INLINE vkSwapchainByteOffset #-}- vkSwapchainByteOffset ~_- = #{offset VkBindImageMemorySwapchainInfoKHX, swapchain}-- {-# INLINE readVkSwapchain #-}- readVkSwapchain p- = peekByteOff p #{offset VkBindImageMemorySwapchainInfoKHX, swapchain}-- {-# INLINE writeVkSwapchain #-}- writeVkSwapchain p- = pokeByteOff p #{offset VkBindImageMemorySwapchainInfoKHX, swapchain}--instance {-# OVERLAPPING #-}- HasField "swapchain" VkBindImageMemorySwapchainInfoKHX where- type FieldType "swapchain" VkBindImageMemorySwapchainInfoKHX =- VkSwapchainKHR- type FieldOptional "swapchain" VkBindImageMemorySwapchainInfoKHX =- 'False -- ' closing tick for hsc2hs- type FieldOffset "swapchain" VkBindImageMemorySwapchainInfoKHX =- #{offset VkBindImageMemorySwapchainInfoKHX, swapchain}- type FieldIsArray "swapchain" VkBindImageMemorySwapchainInfoKHX =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkBindImageMemorySwapchainInfoKHX, swapchain}--instance CanReadField "swapchain" VkBindImageMemorySwapchainInfoKHX- where- {-# INLINE getField #-}- getField = vkSwapchain-- {-# INLINE readField #-}- readField = readVkSwapchain--instance CanWriteField "swapchain"- VkBindImageMemorySwapchainInfoKHX- where- {-# INLINE writeField #-}- writeField = writeVkSwapchain--instance {-# OVERLAPPING #-}- HasVkImageIndex VkBindImageMemorySwapchainInfoKHX where- type VkImageIndexMType VkBindImageMemorySwapchainInfoKHX = Word32-- {-# NOINLINE vkImageIndex #-}- vkImageIndex x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBindImageMemorySwapchainInfoKHX, imageIndex})-- {-# INLINE vkImageIndexByteOffset #-}- vkImageIndexByteOffset ~_- = #{offset VkBindImageMemorySwapchainInfoKHX, imageIndex}-- {-# INLINE readVkImageIndex #-}- readVkImageIndex p- = peekByteOff p #{offset VkBindImageMemorySwapchainInfoKHX, imageIndex}-- {-# INLINE writeVkImageIndex #-}- writeVkImageIndex p- = pokeByteOff p #{offset VkBindImageMemorySwapchainInfoKHX, imageIndex}--instance {-# OVERLAPPING #-}- HasField "imageIndex" VkBindImageMemorySwapchainInfoKHX where- type FieldType "imageIndex" VkBindImageMemorySwapchainInfoKHX =- Word32- type FieldOptional "imageIndex" VkBindImageMemorySwapchainInfoKHX =- 'False -- ' closing tick for hsc2hs- type FieldOffset "imageIndex" VkBindImageMemorySwapchainInfoKHX =- #{offset VkBindImageMemorySwapchainInfoKHX, imageIndex}- type FieldIsArray "imageIndex" VkBindImageMemorySwapchainInfoKHX =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkBindImageMemorySwapchainInfoKHX, imageIndex}--instance CanReadField "imageIndex"- VkBindImageMemorySwapchainInfoKHX- where- {-# INLINE getField #-}- getField = vkImageIndex-- {-# INLINE readField #-}- readField = readVkImageIndex--instance CanWriteField "imageIndex"- VkBindImageMemorySwapchainInfoKHX- where- {-# INLINE writeField #-}- writeField = writeVkImageIndex--instance Show VkBindImageMemorySwapchainInfoKHX where- showsPrec d x- = showString "VkBindImageMemorySwapchainInfoKHX {" .- showString "vkSType = " .- showsPrec d (vkSType x) .- showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .- showString ", " .- showString "vkSwapchain = " .- showsPrec d (vkSwapchain x) .- showString ", " .- showString "vkImageIndex = " .- showsPrec d (vkImageIndex x) . showChar '}'
@@ -0,0 +1,188 @@+#include "vulkan/vulkan.h"++{-# LANGUAGE DataKinds #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-}+{-# LANGUAGE TypeFamilies #-}+module Graphics.Vulkan.Types.Struct.VkBindImagePlaneMemoryInfo+ (VkBindImagePlaneMemoryInfo(..)) where+import Foreign.Storable (Storable (..))+import GHC.Prim+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Marshal.Internal+import Graphics.Vulkan.Types.Enum.VkImageAspectFlags (VkImageAspectFlagBits)+import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)+import Graphics.Vulkan.Types.Struct.VkBindImageMemoryInfo (VkBindImageMemoryInfo)+import System.IO.Unsafe (unsafeDupablePerformIO)++-- | > typedef struct VkBindImagePlaneMemoryInfo {+-- > VkStructureType sType;+-- > const void* pNext;+-- > VkImageAspectFlagBits planeAspect;+-- > } VkBindImagePlaneMemoryInfo;+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkBindImagePlaneMemoryInfo.html VkBindImagePlaneMemoryInfo registry at www.khronos.org>+data VkBindImagePlaneMemoryInfo = VkBindImagePlaneMemoryInfo## Addr##+ ByteArray##++instance Eq VkBindImagePlaneMemoryInfo where+ (VkBindImagePlaneMemoryInfo## a _) ==+ x@(VkBindImagePlaneMemoryInfo## b _)+ = EQ == cmpBytes## (sizeOf x) a b++ {-# INLINE (==) #-}++instance Ord VkBindImagePlaneMemoryInfo where+ (VkBindImagePlaneMemoryInfo## a _) `compare`+ x@(VkBindImagePlaneMemoryInfo## b _) = cmpBytes## (sizeOf x) a b++ {-# INLINE compare #-}++instance Storable VkBindImagePlaneMemoryInfo where+ sizeOf ~_ = #{size VkBindImagePlaneMemoryInfo}++ {-# INLINE sizeOf #-}+ alignment ~_ = #{alignment VkBindImagePlaneMemoryInfo}++ {-# INLINE alignment #-}+ peek = peekVkData##++ {-# INLINE peek #-}+ poke = pokeVkData##++ {-# INLINE poke #-}++instance VulkanMarshalPrim VkBindImagePlaneMemoryInfo where+ unsafeAddr (VkBindImagePlaneMemoryInfo## a _) = a++ {-# INLINE unsafeAddr #-}+ unsafeByteArray (VkBindImagePlaneMemoryInfo## _ b) = b++ {-# INLINE unsafeByteArray #-}+ unsafeFromByteArrayOffset off b+ = VkBindImagePlaneMemoryInfo##+ (plusAddr## (byteArrayContents## b) off)+ b++ {-# INLINE unsafeFromByteArrayOffset #-}++instance VulkanMarshal VkBindImagePlaneMemoryInfo where+ type StructFields VkBindImagePlaneMemoryInfo =+ '["sType", "pNext", "planeAspect"] -- ' closing tick for hsc2hs+ type CUnionType VkBindImagePlaneMemoryInfo = 'False -- ' closing tick for hsc2hs+ type ReturnedOnly VkBindImagePlaneMemoryInfo = 'False -- ' closing tick for hsc2hs+ type StructExtends VkBindImagePlaneMemoryInfo =+ '[VkBindImageMemoryInfo] -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-}+ HasField "sType" VkBindImagePlaneMemoryInfo where+ type FieldType "sType" VkBindImagePlaneMemoryInfo = VkStructureType+ type FieldOptional "sType" VkBindImagePlaneMemoryInfo = 'False -- ' closing tick for hsc2hs+ type FieldOffset "sType" VkBindImagePlaneMemoryInfo =+ #{offset VkBindImagePlaneMemoryInfo, sType}+ type FieldIsArray "sType" VkBindImagePlaneMemoryInfo = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkBindImagePlaneMemoryInfo, sType}++instance {-# OVERLAPPING #-}+ CanReadField "sType" VkBindImagePlaneMemoryInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBindImagePlaneMemoryInfo, sType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBindImagePlaneMemoryInfo, sType}++instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkBindImagePlaneMemoryInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBindImagePlaneMemoryInfo, sType}++instance {-# OVERLAPPING #-}+ HasField "pNext" VkBindImagePlaneMemoryInfo where+ type FieldType "pNext" VkBindImagePlaneMemoryInfo = Ptr Void+ type FieldOptional "pNext" VkBindImagePlaneMemoryInfo = 'False -- ' closing tick for hsc2hs+ type FieldOffset "pNext" VkBindImagePlaneMemoryInfo =+ #{offset VkBindImagePlaneMemoryInfo, pNext}+ type FieldIsArray "pNext" VkBindImagePlaneMemoryInfo = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkBindImagePlaneMemoryInfo, pNext}++instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkBindImagePlaneMemoryInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBindImagePlaneMemoryInfo, pNext})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBindImagePlaneMemoryInfo, pNext}++instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkBindImagePlaneMemoryInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBindImagePlaneMemoryInfo, pNext}++instance {-# OVERLAPPING #-}+ HasField "planeAspect" VkBindImagePlaneMemoryInfo where+ type FieldType "planeAspect" VkBindImagePlaneMemoryInfo =+ VkImageAspectFlagBits+ type FieldOptional "planeAspect" VkBindImagePlaneMemoryInfo =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "planeAspect" VkBindImagePlaneMemoryInfo =+ #{offset VkBindImagePlaneMemoryInfo, planeAspect}+ type FieldIsArray "planeAspect" VkBindImagePlaneMemoryInfo = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkBindImagePlaneMemoryInfo, planeAspect}++instance {-# OVERLAPPING #-}+ CanReadField "planeAspect" VkBindImagePlaneMemoryInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBindImagePlaneMemoryInfo, planeAspect})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBindImagePlaneMemoryInfo, planeAspect}++instance {-# OVERLAPPING #-}+ CanWriteField "planeAspect" VkBindImagePlaneMemoryInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBindImagePlaneMemoryInfo, planeAspect}++instance Show VkBindImagePlaneMemoryInfo where+ showsPrec d x+ = showString "VkBindImagePlaneMemoryInfo {" .+ showString "sType = " .+ showsPrec d (getField @"sType" x) .+ showString ", " .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) .+ showString ", " .+ showString "planeAspect = " .+ showsPrec d (getField @"planeAspect" x) . showChar '}'
@@ -0,0 +1,9 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Types.Struct.VkBindImagePlaneMemoryInfoKHR+ (VkBindImagePlaneMemoryInfo(..), VkBindImagePlaneMemoryInfoKHR)+ where+import Graphics.Vulkan.Types.Struct.VkBindImagePlaneMemoryInfo (VkBindImagePlaneMemoryInfo (..))++-- | Alias for `VkBindImagePlaneMemoryInfo`+type VkBindImagePlaneMemoryInfoKHR = VkBindImagePlaneMemoryInfo
@@ -1,239 +0,0 @@-#include "vulkan/vulkan.h"--{-# LANGUAGE DataKinds #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE MagicHash #-}-{-# LANGUAGE MultiParamTypeClasses #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE TypeFamilies #-}-module Graphics.Vulkan.Types.Struct.VkBindImagePlaneMemoryInfoKHR- (VkBindImagePlaneMemoryInfoKHR(..)) where-import Foreign.Storable (Storable (..))-import GHC.Prim-import Graphics.Vulkan.Marshal-import Graphics.Vulkan.Marshal.Internal-import Graphics.Vulkan.Types.Enum.VkImageAspectFlags (VkImageAspectFlagBits)-import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)-import Graphics.Vulkan.Types.Struct.VkBindImageMemoryInfoKHR (VkBindImageMemoryInfoKHR)-import Graphics.Vulkan.Types.StructMembers-import System.IO.Unsafe (unsafeDupablePerformIO)---- | > typedef struct VkBindImagePlaneMemoryInfoKHR {--- > VkStructureType sType;--- > const void* pNext;--- > VkImageAspectFlagBits planeAspect;--- > } VkBindImagePlaneMemoryInfoKHR;------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkBindImagePlaneMemoryInfoKHR.html VkBindImagePlaneMemoryInfoKHR registry at www.khronos.org>-data VkBindImagePlaneMemoryInfoKHR = VkBindImagePlaneMemoryInfoKHR## Addr##- ByteArray##--instance Eq VkBindImagePlaneMemoryInfoKHR where- (VkBindImagePlaneMemoryInfoKHR## a _) ==- x@(VkBindImagePlaneMemoryInfoKHR## b _)- = EQ == cmpBytes## (sizeOf x) a b-- {-# INLINE (==) #-}--instance Ord VkBindImagePlaneMemoryInfoKHR where- (VkBindImagePlaneMemoryInfoKHR## a _) `compare`- x@(VkBindImagePlaneMemoryInfoKHR## b _) = cmpBytes## (sizeOf x) a b-- {-# INLINE compare #-}--instance Storable VkBindImagePlaneMemoryInfoKHR where- sizeOf ~_ = #{size VkBindImagePlaneMemoryInfoKHR}-- {-# INLINE sizeOf #-}- alignment ~_- = #{alignment VkBindImagePlaneMemoryInfoKHR}-- {-# INLINE alignment #-}- peek = peekVkData##-- {-# INLINE peek #-}- poke = pokeVkData##-- {-# INLINE poke #-}--instance VulkanMarshalPrim VkBindImagePlaneMemoryInfoKHR where- unsafeAddr (VkBindImagePlaneMemoryInfoKHR## a _) = a-- {-# INLINE unsafeAddr #-}- unsafeByteArray (VkBindImagePlaneMemoryInfoKHR## _ b) = b-- {-# INLINE unsafeByteArray #-}- unsafeFromByteArrayOffset off b- = VkBindImagePlaneMemoryInfoKHR##- (plusAddr## (byteArrayContents## b) off)- b-- {-# INLINE unsafeFromByteArrayOffset #-}--instance VulkanMarshal VkBindImagePlaneMemoryInfoKHR where- type StructFields VkBindImagePlaneMemoryInfoKHR =- '["sType", "pNext", "planeAspect"] -- ' closing tick for hsc2hs- type CUnionType VkBindImagePlaneMemoryInfoKHR = 'False -- ' closing tick for hsc2hs- type ReturnedOnly VkBindImagePlaneMemoryInfoKHR = 'False -- ' closing tick for hsc2hs- type StructExtends VkBindImagePlaneMemoryInfoKHR =- '[VkBindImageMemoryInfoKHR] -- ' closing tick for hsc2hs--instance {-# OVERLAPPING #-}- HasVkSType VkBindImagePlaneMemoryInfoKHR where- type VkSTypeMType VkBindImagePlaneMemoryInfoKHR = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBindImagePlaneMemoryInfoKHR, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkBindImagePlaneMemoryInfoKHR, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkBindImagePlaneMemoryInfoKHR, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkBindImagePlaneMemoryInfoKHR, sType}--instance {-# OVERLAPPING #-}- HasField "sType" VkBindImagePlaneMemoryInfoKHR where- type FieldType "sType" VkBindImagePlaneMemoryInfoKHR =- VkStructureType- type FieldOptional "sType" VkBindImagePlaneMemoryInfoKHR = 'False -- ' closing tick for hsc2hs- type FieldOffset "sType" VkBindImagePlaneMemoryInfoKHR =- #{offset VkBindImagePlaneMemoryInfoKHR, sType}- type FieldIsArray "sType" VkBindImagePlaneMemoryInfoKHR = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkBindImagePlaneMemoryInfoKHR, sType}--instance CanReadField "sType" VkBindImagePlaneMemoryInfoKHR where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance CanWriteField "sType" VkBindImagePlaneMemoryInfoKHR where- {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-}- HasVkPNext VkBindImagePlaneMemoryInfoKHR where- type VkPNextMType VkBindImagePlaneMemoryInfoKHR = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBindImagePlaneMemoryInfoKHR, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkBindImagePlaneMemoryInfoKHR, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkBindImagePlaneMemoryInfoKHR, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkBindImagePlaneMemoryInfoKHR, pNext}--instance {-# OVERLAPPING #-}- HasField "pNext" VkBindImagePlaneMemoryInfoKHR where- type FieldType "pNext" VkBindImagePlaneMemoryInfoKHR = Ptr Void- type FieldOptional "pNext" VkBindImagePlaneMemoryInfoKHR = 'False -- ' closing tick for hsc2hs- type FieldOffset "pNext" VkBindImagePlaneMemoryInfoKHR =- #{offset VkBindImagePlaneMemoryInfoKHR, pNext}- type FieldIsArray "pNext" VkBindImagePlaneMemoryInfoKHR = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkBindImagePlaneMemoryInfoKHR, pNext}--instance CanReadField "pNext" VkBindImagePlaneMemoryInfoKHR where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkBindImagePlaneMemoryInfoKHR where- {-# INLINE writeField #-}- writeField = writeVkPNext--instance {-# OVERLAPPING #-}- HasVkPlaneAspect VkBindImagePlaneMemoryInfoKHR where- type VkPlaneAspectMType VkBindImagePlaneMemoryInfoKHR =- VkImageAspectFlagBits-- {-# NOINLINE vkPlaneAspect #-}- vkPlaneAspect x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBindImagePlaneMemoryInfoKHR, planeAspect})-- {-# INLINE vkPlaneAspectByteOffset #-}- vkPlaneAspectByteOffset ~_- = #{offset VkBindImagePlaneMemoryInfoKHR, planeAspect}-- {-# INLINE readVkPlaneAspect #-}- readVkPlaneAspect p- = peekByteOff p #{offset VkBindImagePlaneMemoryInfoKHR, planeAspect}-- {-# INLINE writeVkPlaneAspect #-}- writeVkPlaneAspect p- = pokeByteOff p #{offset VkBindImagePlaneMemoryInfoKHR, planeAspect}--instance {-# OVERLAPPING #-}- HasField "planeAspect" VkBindImagePlaneMemoryInfoKHR where- type FieldType "planeAspect" VkBindImagePlaneMemoryInfoKHR =- VkImageAspectFlagBits- type FieldOptional "planeAspect" VkBindImagePlaneMemoryInfoKHR =- 'False -- ' closing tick for hsc2hs- type FieldOffset "planeAspect" VkBindImagePlaneMemoryInfoKHR =- #{offset VkBindImagePlaneMemoryInfoKHR, planeAspect}- type FieldIsArray "planeAspect" VkBindImagePlaneMemoryInfoKHR =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkBindImagePlaneMemoryInfoKHR, planeAspect}--instance CanReadField "planeAspect" VkBindImagePlaneMemoryInfoKHR- where- {-# INLINE getField #-}- getField = vkPlaneAspect-- {-# INLINE readField #-}- readField = readVkPlaneAspect--instance CanWriteField "planeAspect" VkBindImagePlaneMemoryInfoKHR- where- {-# INLINE writeField #-}- writeField = writeVkPlaneAspect--instance Show VkBindImagePlaneMemoryInfoKHR where- showsPrec d x- = showString "VkBindImagePlaneMemoryInfoKHR {" .- showString "vkSType = " .- showsPrec d (vkSType x) .- showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .- showString ", " .- showString "vkPlaneAspect = " .- showsPrec d (vkPlaneAspect x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkBindSparseInfo (VkBindSparseInfo(..)) where@@ -17,7 +18,6 @@ import Graphics.Vulkan.Types.Struct.VkSparseBufferMemoryBindInfo (VkSparseBufferMemoryBindInfo) import Graphics.Vulkan.Types.Struct.VkSparseImageMemoryBindInfo (VkSparseImageMemoryBindInfo) import Graphics.Vulkan.Types.Struct.VkSparseImageOpaqueMemoryBindInfo (VkSparseImageOpaqueMemoryBindInfo)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkBindSparseInfo {@@ -35,7 +35,7 @@ -- > const VkSemaphore* pSignalSemaphores; -- > } VkBindSparseInfo; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkBindSparseInfo.html VkBindSparseInfo registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkBindSparseInfo.html VkBindSparseInfo registry at www.khronos.org> data VkBindSparseInfo = VkBindSparseInfo## Addr## ByteArray## instance Eq VkBindSparseInfo where@@ -86,26 +86,6 @@ type ReturnedOnly VkBindSparseInfo = 'False -- ' closing tick for hsc2hs type StructExtends VkBindSparseInfo = '[] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkSType VkBindSparseInfo where- type VkSTypeMType VkBindSparseInfo = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBindSparseInfo, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkBindSparseInfo, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkBindSparseInfo, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkBindSparseInfo, sType}- instance {-# OVERLAPPING #-} HasField "sType" VkBindSparseInfo where type FieldType "sType" VkBindSparseInfo = VkStructureType@@ -120,36 +100,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkBindSparseInfo, sType} -instance CanReadField "sType" VkBindSparseInfo where- {-# INLINE getField #-}- getField = vkSType+instance {-# OVERLAPPING #-} CanReadField "sType" VkBindSparseInfo+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBindSparseInfo, sType}) {-# INLINE readField #-}- readField = readVkSType+ readField p+ = peekByteOff p #{offset VkBindSparseInfo, sType} -instance CanWriteField "sType" VkBindSparseInfo where+instance {-# OVERLAPPING #-} CanWriteField "sType" VkBindSparseInfo+ where {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-} HasVkPNext VkBindSparseInfo where- type VkPNextMType VkBindSparseInfo = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBindSparseInfo, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkBindSparseInfo, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkBindSparseInfo, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkBindSparseInfo, pNext}+ writeField p+ = pokeByteOff p #{offset VkBindSparseInfo, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkBindSparseInfo where@@ -165,37 +131,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkBindSparseInfo, pNext} -instance CanReadField "pNext" VkBindSparseInfo where- {-# INLINE getField #-}- getField = vkPNext+instance {-# OVERLAPPING #-} CanReadField "pNext" VkBindSparseInfo+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBindSparseInfo, pNext}) {-# INLINE readField #-}- readField = readVkPNext+ readField p+ = peekByteOff p #{offset VkBindSparseInfo, pNext} -instance CanWriteField "pNext" VkBindSparseInfo where+instance {-# OVERLAPPING #-} CanWriteField "pNext" VkBindSparseInfo+ where {-# INLINE writeField #-}- writeField = writeVkPNext--instance {-# OVERLAPPING #-}- HasVkWaitSemaphoreCount VkBindSparseInfo where- type VkWaitSemaphoreCountMType VkBindSparseInfo = Word32-- {-# NOINLINE vkWaitSemaphoreCount #-}- vkWaitSemaphoreCount x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBindSparseInfo, waitSemaphoreCount})-- {-# INLINE vkWaitSemaphoreCountByteOffset #-}- vkWaitSemaphoreCountByteOffset ~_- = #{offset VkBindSparseInfo, waitSemaphoreCount}-- {-# INLINE readVkWaitSemaphoreCount #-}- readVkWaitSemaphoreCount p- = peekByteOff p #{offset VkBindSparseInfo, waitSemaphoreCount}-- {-# INLINE writeVkWaitSemaphoreCount #-}- writeVkWaitSemaphoreCount p- = pokeByteOff p #{offset VkBindSparseInfo, waitSemaphoreCount}+ writeField p+ = pokeByteOff p #{offset VkBindSparseInfo, pNext} instance {-# OVERLAPPING #-} HasField "waitSemaphoreCount" VkBindSparseInfo where@@ -212,37 +163,22 @@ fieldOffset = #{offset VkBindSparseInfo, waitSemaphoreCount} -instance CanReadField "waitSemaphoreCount" VkBindSparseInfo where- {-# INLINE getField #-}- getField = vkWaitSemaphoreCount+instance {-# OVERLAPPING #-}+ CanReadField "waitSemaphoreCount" VkBindSparseInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBindSparseInfo, waitSemaphoreCount}) {-# INLINE readField #-}- readField = readVkWaitSemaphoreCount+ readField p+ = peekByteOff p #{offset VkBindSparseInfo, waitSemaphoreCount} -instance CanWriteField "waitSemaphoreCount" VkBindSparseInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "waitSemaphoreCount" VkBindSparseInfo where {-# INLINE writeField #-}- writeField = writeVkWaitSemaphoreCount--instance {-# OVERLAPPING #-} HasVkPWaitSemaphores VkBindSparseInfo- where- type VkPWaitSemaphoresMType VkBindSparseInfo = Ptr VkSemaphore-- {-# NOINLINE vkPWaitSemaphores #-}- vkPWaitSemaphores x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBindSparseInfo, pWaitSemaphores})-- {-# INLINE vkPWaitSemaphoresByteOffset #-}- vkPWaitSemaphoresByteOffset ~_- = #{offset VkBindSparseInfo, pWaitSemaphores}-- {-# INLINE readVkPWaitSemaphores #-}- readVkPWaitSemaphores p- = peekByteOff p #{offset VkBindSparseInfo, pWaitSemaphores}-- {-# INLINE writeVkPWaitSemaphores #-}- writeVkPWaitSemaphores p- = pokeByteOff p #{offset VkBindSparseInfo, pWaitSemaphores}+ writeField p+ = pokeByteOff p #{offset VkBindSparseInfo, waitSemaphoreCount} instance {-# OVERLAPPING #-} HasField "pWaitSemaphores" VkBindSparseInfo where@@ -259,37 +195,22 @@ fieldOffset = #{offset VkBindSparseInfo, pWaitSemaphores} -instance CanReadField "pWaitSemaphores" VkBindSparseInfo where- {-# INLINE getField #-}- getField = vkPWaitSemaphores+instance {-# OVERLAPPING #-}+ CanReadField "pWaitSemaphores" VkBindSparseInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBindSparseInfo, pWaitSemaphores}) {-# INLINE readField #-}- readField = readVkPWaitSemaphores+ readField p+ = peekByteOff p #{offset VkBindSparseInfo, pWaitSemaphores} -instance CanWriteField "pWaitSemaphores" VkBindSparseInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "pWaitSemaphores" VkBindSparseInfo where {-# INLINE writeField #-}- writeField = writeVkPWaitSemaphores--instance {-# OVERLAPPING #-} HasVkBufferBindCount VkBindSparseInfo- where- type VkBufferBindCountMType VkBindSparseInfo = Word32-- {-# NOINLINE vkBufferBindCount #-}- vkBufferBindCount x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBindSparseInfo, bufferBindCount})-- {-# INLINE vkBufferBindCountByteOffset #-}- vkBufferBindCountByteOffset ~_- = #{offset VkBindSparseInfo, bufferBindCount}-- {-# INLINE readVkBufferBindCount #-}- readVkBufferBindCount p- = peekByteOff p #{offset VkBindSparseInfo, bufferBindCount}-- {-# INLINE writeVkBufferBindCount #-}- writeVkBufferBindCount p- = pokeByteOff p #{offset VkBindSparseInfo, bufferBindCount}+ writeField p+ = pokeByteOff p #{offset VkBindSparseInfo, pWaitSemaphores} instance {-# OVERLAPPING #-} HasField "bufferBindCount" VkBindSparseInfo where@@ -306,38 +227,22 @@ fieldOffset = #{offset VkBindSparseInfo, bufferBindCount} -instance CanReadField "bufferBindCount" VkBindSparseInfo where- {-# INLINE getField #-}- getField = vkBufferBindCount+instance {-# OVERLAPPING #-}+ CanReadField "bufferBindCount" VkBindSparseInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBindSparseInfo, bufferBindCount}) {-# INLINE readField #-}- readField = readVkBufferBindCount+ readField p+ = peekByteOff p #{offset VkBindSparseInfo, bufferBindCount} -instance CanWriteField "bufferBindCount" VkBindSparseInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "bufferBindCount" VkBindSparseInfo where {-# INLINE writeField #-}- writeField = writeVkBufferBindCount--instance {-# OVERLAPPING #-} HasVkPBufferBinds VkBindSparseInfo- where- type VkPBufferBindsMType VkBindSparseInfo =- Ptr VkSparseBufferMemoryBindInfo-- {-# NOINLINE vkPBufferBinds #-}- vkPBufferBinds x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBindSparseInfo, pBufferBinds})-- {-# INLINE vkPBufferBindsByteOffset #-}- vkPBufferBindsByteOffset ~_- = #{offset VkBindSparseInfo, pBufferBinds}-- {-# INLINE readVkPBufferBinds #-}- readVkPBufferBinds p- = peekByteOff p #{offset VkBindSparseInfo, pBufferBinds}-- {-# INLINE writeVkPBufferBinds #-}- writeVkPBufferBinds p- = pokeByteOff p #{offset VkBindSparseInfo, pBufferBinds}+ writeField p+ = pokeByteOff p #{offset VkBindSparseInfo, bufferBindCount} instance {-# OVERLAPPING #-} HasField "pBufferBinds" VkBindSparseInfo where@@ -354,37 +259,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkBindSparseInfo, pBufferBinds} -instance CanReadField "pBufferBinds" VkBindSparseInfo where- {-# INLINE getField #-}- getField = vkPBufferBinds-- {-# INLINE readField #-}- readField = readVkPBufferBinds--instance CanWriteField "pBufferBinds" VkBindSparseInfo where- {-# INLINE writeField #-}- writeField = writeVkPBufferBinds- instance {-# OVERLAPPING #-}- HasVkImageOpaqueBindCount VkBindSparseInfo where- type VkImageOpaqueBindCountMType VkBindSparseInfo = Word32-- {-# NOINLINE vkImageOpaqueBindCount #-}- vkImageOpaqueBindCount x+ CanReadField "pBufferBinds" VkBindSparseInfo where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBindSparseInfo, imageOpaqueBindCount})-- {-# INLINE vkImageOpaqueBindCountByteOffset #-}- vkImageOpaqueBindCountByteOffset ~_- = #{offset VkBindSparseInfo, imageOpaqueBindCount}+ (peekByteOff (unsafePtr x) #{offset VkBindSparseInfo, pBufferBinds}) - {-# INLINE readVkImageOpaqueBindCount #-}- readVkImageOpaqueBindCount p- = peekByteOff p #{offset VkBindSparseInfo, imageOpaqueBindCount}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBindSparseInfo, pBufferBinds} - {-# INLINE writeVkImageOpaqueBindCount #-}- writeVkImageOpaqueBindCount p- = pokeByteOff p #{offset VkBindSparseInfo, imageOpaqueBindCount}+instance {-# OVERLAPPING #-}+ CanWriteField "pBufferBinds" VkBindSparseInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBindSparseInfo, pBufferBinds} instance {-# OVERLAPPING #-} HasField "imageOpaqueBindCount" VkBindSparseInfo where@@ -401,39 +291,22 @@ fieldOffset = #{offset VkBindSparseInfo, imageOpaqueBindCount} -instance CanReadField "imageOpaqueBindCount" VkBindSparseInfo where- {-# INLINE getField #-}- getField = vkImageOpaqueBindCount-- {-# INLINE readField #-}- readField = readVkImageOpaqueBindCount--instance CanWriteField "imageOpaqueBindCount" VkBindSparseInfo- where- {-# INLINE writeField #-}- writeField = writeVkImageOpaqueBindCount- instance {-# OVERLAPPING #-}- HasVkPImageOpaqueBinds VkBindSparseInfo where- type VkPImageOpaqueBindsMType VkBindSparseInfo =- Ptr VkSparseImageOpaqueMemoryBindInfo-- {-# NOINLINE vkPImageOpaqueBinds #-}- vkPImageOpaqueBinds x+ CanReadField "imageOpaqueBindCount" VkBindSparseInfo where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBindSparseInfo, pImageOpaqueBinds})-- {-# INLINE vkPImageOpaqueBindsByteOffset #-}- vkPImageOpaqueBindsByteOffset ~_- = #{offset VkBindSparseInfo, pImageOpaqueBinds}+ (peekByteOff (unsafePtr x) #{offset VkBindSparseInfo, imageOpaqueBindCount}) - {-# INLINE readVkPImageOpaqueBinds #-}- readVkPImageOpaqueBinds p- = peekByteOff p #{offset VkBindSparseInfo, pImageOpaqueBinds}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBindSparseInfo, imageOpaqueBindCount} - {-# INLINE writeVkPImageOpaqueBinds #-}- writeVkPImageOpaqueBinds p- = pokeByteOff p #{offset VkBindSparseInfo, pImageOpaqueBinds}+instance {-# OVERLAPPING #-}+ CanWriteField "imageOpaqueBindCount" VkBindSparseInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBindSparseInfo, imageOpaqueBindCount} instance {-# OVERLAPPING #-} HasField "pImageOpaqueBinds" VkBindSparseInfo where@@ -451,37 +324,22 @@ fieldOffset = #{offset VkBindSparseInfo, pImageOpaqueBinds} -instance CanReadField "pImageOpaqueBinds" VkBindSparseInfo where- {-# INLINE getField #-}- getField = vkPImageOpaqueBinds+instance {-# OVERLAPPING #-}+ CanReadField "pImageOpaqueBinds" VkBindSparseInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBindSparseInfo, pImageOpaqueBinds}) {-# INLINE readField #-}- readField = readVkPImageOpaqueBinds+ readField p+ = peekByteOff p #{offset VkBindSparseInfo, pImageOpaqueBinds} -instance CanWriteField "pImageOpaqueBinds" VkBindSparseInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "pImageOpaqueBinds" VkBindSparseInfo where {-# INLINE writeField #-}- writeField = writeVkPImageOpaqueBinds--instance {-# OVERLAPPING #-} HasVkImageBindCount VkBindSparseInfo- where- type VkImageBindCountMType VkBindSparseInfo = Word32-- {-# NOINLINE vkImageBindCount #-}- vkImageBindCount x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBindSparseInfo, imageBindCount})-- {-# INLINE vkImageBindCountByteOffset #-}- vkImageBindCountByteOffset ~_- = #{offset VkBindSparseInfo, imageBindCount}-- {-# INLINE readVkImageBindCount #-}- readVkImageBindCount p- = peekByteOff p #{offset VkBindSparseInfo, imageBindCount}-- {-# INLINE writeVkImageBindCount #-}- writeVkImageBindCount p- = pokeByteOff p #{offset VkBindSparseInfo, imageBindCount}+ writeField p+ = pokeByteOff p #{offset VkBindSparseInfo, pImageOpaqueBinds} instance {-# OVERLAPPING #-} HasField "imageBindCount" VkBindSparseInfo where@@ -498,38 +356,22 @@ fieldOffset = #{offset VkBindSparseInfo, imageBindCount} -instance CanReadField "imageBindCount" VkBindSparseInfo where- {-# INLINE getField #-}- getField = vkImageBindCount+instance {-# OVERLAPPING #-}+ CanReadField "imageBindCount" VkBindSparseInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBindSparseInfo, imageBindCount}) {-# INLINE readField #-}- readField = readVkImageBindCount+ readField p+ = peekByteOff p #{offset VkBindSparseInfo, imageBindCount} -instance CanWriteField "imageBindCount" VkBindSparseInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "imageBindCount" VkBindSparseInfo where {-# INLINE writeField #-}- writeField = writeVkImageBindCount--instance {-# OVERLAPPING #-} HasVkPImageBinds VkBindSparseInfo- where- type VkPImageBindsMType VkBindSparseInfo =- Ptr VkSparseImageMemoryBindInfo-- {-# NOINLINE vkPImageBinds #-}- vkPImageBinds x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBindSparseInfo, pImageBinds})-- {-# INLINE vkPImageBindsByteOffset #-}- vkPImageBindsByteOffset ~_- = #{offset VkBindSparseInfo, pImageBinds}-- {-# INLINE readVkPImageBinds #-}- readVkPImageBinds p- = peekByteOff p #{offset VkBindSparseInfo, pImageBinds}-- {-# INLINE writeVkPImageBinds #-}- writeVkPImageBinds p- = pokeByteOff p #{offset VkBindSparseInfo, pImageBinds}+ writeField p+ = pokeByteOff p #{offset VkBindSparseInfo, imageBindCount} instance {-# OVERLAPPING #-} HasField "pImageBinds" VkBindSparseInfo where@@ -546,37 +388,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkBindSparseInfo, pImageBinds} -instance CanReadField "pImageBinds" VkBindSparseInfo where- {-# INLINE getField #-}- getField = vkPImageBinds-- {-# INLINE readField #-}- readField = readVkPImageBinds--instance CanWriteField "pImageBinds" VkBindSparseInfo where- {-# INLINE writeField #-}- writeField = writeVkPImageBinds- instance {-# OVERLAPPING #-}- HasVkSignalSemaphoreCount VkBindSparseInfo where- type VkSignalSemaphoreCountMType VkBindSparseInfo = Word32-- {-# NOINLINE vkSignalSemaphoreCount #-}- vkSignalSemaphoreCount x+ CanReadField "pImageBinds" VkBindSparseInfo where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBindSparseInfo, signalSemaphoreCount})-- {-# INLINE vkSignalSemaphoreCountByteOffset #-}- vkSignalSemaphoreCountByteOffset ~_- = #{offset VkBindSparseInfo, signalSemaphoreCount}+ (peekByteOff (unsafePtr x) #{offset VkBindSparseInfo, pImageBinds}) - {-# INLINE readVkSignalSemaphoreCount #-}- readVkSignalSemaphoreCount p- = peekByteOff p #{offset VkBindSparseInfo, signalSemaphoreCount}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBindSparseInfo, pImageBinds} - {-# INLINE writeVkSignalSemaphoreCount #-}- writeVkSignalSemaphoreCount p- = pokeByteOff p #{offset VkBindSparseInfo, signalSemaphoreCount}+instance {-# OVERLAPPING #-}+ CanWriteField "pImageBinds" VkBindSparseInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBindSparseInfo, pImageBinds} instance {-# OVERLAPPING #-} HasField "signalSemaphoreCount" VkBindSparseInfo where@@ -593,38 +420,22 @@ fieldOffset = #{offset VkBindSparseInfo, signalSemaphoreCount} -instance CanReadField "signalSemaphoreCount" VkBindSparseInfo where- {-# INLINE getField #-}- getField = vkSignalSemaphoreCount-- {-# INLINE readField #-}- readField = readVkSignalSemaphoreCount--instance CanWriteField "signalSemaphoreCount" VkBindSparseInfo- where- {-# INLINE writeField #-}- writeField = writeVkSignalSemaphoreCount- instance {-# OVERLAPPING #-}- HasVkPSignalSemaphores VkBindSparseInfo where- type VkPSignalSemaphoresMType VkBindSparseInfo = Ptr VkSemaphore-- {-# NOINLINE vkPSignalSemaphores #-}- vkPSignalSemaphores x+ CanReadField "signalSemaphoreCount" VkBindSparseInfo where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBindSparseInfo, pSignalSemaphores})-- {-# INLINE vkPSignalSemaphoresByteOffset #-}- vkPSignalSemaphoresByteOffset ~_- = #{offset VkBindSparseInfo, pSignalSemaphores}+ (peekByteOff (unsafePtr x) #{offset VkBindSparseInfo, signalSemaphoreCount}) - {-# INLINE readVkPSignalSemaphores #-}- readVkPSignalSemaphores p- = peekByteOff p #{offset VkBindSparseInfo, pSignalSemaphores}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBindSparseInfo, signalSemaphoreCount} - {-# INLINE writeVkPSignalSemaphores #-}- writeVkPSignalSemaphores p- = pokeByteOff p #{offset VkBindSparseInfo, pSignalSemaphores}+instance {-# OVERLAPPING #-}+ CanWriteField "signalSemaphoreCount" VkBindSparseInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBindSparseInfo, signalSemaphoreCount} instance {-# OVERLAPPING #-} HasField "pSignalSemaphores" VkBindSparseInfo where@@ -642,63 +453,77 @@ fieldOffset = #{offset VkBindSparseInfo, pSignalSemaphores} -instance CanReadField "pSignalSemaphores" VkBindSparseInfo where- {-# INLINE getField #-}- getField = vkPSignalSemaphores+instance {-# OVERLAPPING #-}+ CanReadField "pSignalSemaphores" VkBindSparseInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBindSparseInfo, pSignalSemaphores}) {-# INLINE readField #-}- readField = readVkPSignalSemaphores+ readField p+ = peekByteOff p #{offset VkBindSparseInfo, pSignalSemaphores} -instance CanWriteField "pSignalSemaphores" VkBindSparseInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "pSignalSemaphores" VkBindSparseInfo where {-# INLINE writeField #-}- writeField = writeVkPSignalSemaphores+ writeField p+ = pokeByteOff p #{offset VkBindSparseInfo, pSignalSemaphores} instance Show VkBindSparseInfo where showsPrec d x = showString "VkBindSparseInfo {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkWaitSemaphoreCount = " .- showsPrec d (vkWaitSemaphoreCount x) .+ showString "waitSemaphoreCount = " .+ showsPrec d (getField @"waitSemaphoreCount" x) . showString ", " .- showString "vkPWaitSemaphores = " .- showsPrec d (vkPWaitSemaphores x) .+ showString "pWaitSemaphores = " .+ showsPrec d (getField @"pWaitSemaphores" x) . showString ", " .- showString "vkBufferBindCount = " .- showsPrec d (vkBufferBindCount x) .+ showString "bufferBindCount = " .+ showsPrec d (getField @"bufferBindCount" x) . showString ", " .- showString "vkPBufferBinds = " .- showsPrec d (vkPBufferBinds x) .+ showString "pBufferBinds = " .+ showsPrec d (getField @"pBufferBinds" x) . showString ", " .- showString "vkImageOpaqueBindCount = " .- showsPrec d (vkImageOpaqueBindCount x) .+ showString "imageOpaqueBindCount = " .+ showsPrec d (getField @"imageOpaqueBindCount" x)+ . showString ", " .- showString "vkPImageOpaqueBinds = " .- showsPrec d (vkPImageOpaqueBinds x) .+ showString "pImageOpaqueBinds = " .+ showsPrec d+ (getField @"pImageOpaqueBinds" x)+ . showString ", " .- showString "vkImageBindCount = " .- showsPrec d (vkImageBindCount x) .+ showString "imageBindCount = " .+ showsPrec d+ (getField @"imageBindCount" x)+ . showString ", " .- showString "vkPImageBinds = " .- showsPrec d (vkPImageBinds x)+ showString "pImageBinds = " .+ showsPrec d+ (getField @"pImageBinds" x) . showString ", " . showString- "vkSignalSemaphoreCount = "+ "signalSemaphoreCount = " . showsPrec d- (vkSignalSemaphoreCount+ (getField+ @"signalSemaphoreCount" x) . showString ", " . showString- "vkPSignalSemaphores = "+ "pSignalSemaphores = " . showsPrec d- (vkPSignalSemaphores+ (getField+ @"pSignalSemaphores" x) . showChar '}'
@@ -5,16 +5,16 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkBufferCopy (VkBufferCopy(..)) where-import Foreign.Storable (Storable (..))+import Foreign.Storable (Storable (..)) import GHC.Prim import Graphics.Vulkan.Marshal import Graphics.Vulkan.Marshal.Internal-import Graphics.Vulkan.Types.BaseTypes (VkDeviceSize)-import Graphics.Vulkan.Types.StructMembers-import System.IO.Unsafe (unsafeDupablePerformIO)+import Graphics.Vulkan.Types.BaseTypes (VkDeviceSize)+import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkBufferCopy { -- > VkDeviceSize srcOffset;@@ -22,7 +22,7 @@ -- > VkDeviceSize size; -- > } VkBufferCopy; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkBufferCopy.html VkBufferCopy registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkBufferCopy.html VkBufferCopy registry at www.khronos.org> data VkBufferCopy = VkBufferCopy## Addr## ByteArray## instance Eq VkBufferCopy where@@ -70,26 +70,6 @@ type ReturnedOnly VkBufferCopy = 'False -- ' closing tick for hsc2hs type StructExtends VkBufferCopy = '[] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkSrcOffset VkBufferCopy where- type VkSrcOffsetMType VkBufferCopy = VkDeviceSize-- {-# NOINLINE vkSrcOffset #-}- vkSrcOffset x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBufferCopy, srcOffset})-- {-# INLINE vkSrcOffsetByteOffset #-}- vkSrcOffsetByteOffset ~_- = #{offset VkBufferCopy, srcOffset}-- {-# INLINE readVkSrcOffset #-}- readVkSrcOffset p- = peekByteOff p #{offset VkBufferCopy, srcOffset}-- {-# INLINE writeVkSrcOffset #-}- writeVkSrcOffset p- = pokeByteOff p #{offset VkBufferCopy, srcOffset}- instance {-# OVERLAPPING #-} HasField "srcOffset" VkBufferCopy where type FieldType "srcOffset" VkBufferCopy = VkDeviceSize@@ -104,36 +84,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkBufferCopy, srcOffset} -instance CanReadField "srcOffset" VkBufferCopy where- {-# INLINE getField #-}- getField = vkSrcOffset+instance {-# OVERLAPPING #-} CanReadField "srcOffset" VkBufferCopy+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBufferCopy, srcOffset}) {-# INLINE readField #-}- readField = readVkSrcOffset+ readField p+ = peekByteOff p #{offset VkBufferCopy, srcOffset} -instance CanWriteField "srcOffset" VkBufferCopy where+instance {-# OVERLAPPING #-} CanWriteField "srcOffset" VkBufferCopy+ where {-# INLINE writeField #-}- writeField = writeVkSrcOffset--instance {-# OVERLAPPING #-} HasVkDstOffset VkBufferCopy where- type VkDstOffsetMType VkBufferCopy = VkDeviceSize-- {-# NOINLINE vkDstOffset #-}- vkDstOffset x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBufferCopy, dstOffset})-- {-# INLINE vkDstOffsetByteOffset #-}- vkDstOffsetByteOffset ~_- = #{offset VkBufferCopy, dstOffset}-- {-# INLINE readVkDstOffset #-}- readVkDstOffset p- = peekByteOff p #{offset VkBufferCopy, dstOffset}-- {-# INLINE writeVkDstOffset #-}- writeVkDstOffset p- = pokeByteOff p #{offset VkBufferCopy, dstOffset}+ writeField p+ = pokeByteOff p #{offset VkBufferCopy, srcOffset} instance {-# OVERLAPPING #-} HasField "dstOffset" VkBufferCopy where@@ -149,35 +115,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkBufferCopy, dstOffset} -instance CanReadField "dstOffset" VkBufferCopy where- {-# INLINE getField #-}- getField = vkDstOffset+instance {-# OVERLAPPING #-} CanReadField "dstOffset" VkBufferCopy+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBufferCopy, dstOffset}) {-# INLINE readField #-}- readField = readVkDstOffset+ readField p+ = peekByteOff p #{offset VkBufferCopy, dstOffset} -instance CanWriteField "dstOffset" VkBufferCopy where+instance {-# OVERLAPPING #-} CanWriteField "dstOffset" VkBufferCopy+ where {-# INLINE writeField #-}- writeField = writeVkDstOffset--instance {-# OVERLAPPING #-} HasVkSize VkBufferCopy where- type VkSizeMType VkBufferCopy = VkDeviceSize-- {-# NOINLINE vkSize #-}- vkSize x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBufferCopy, size})-- {-# INLINE vkSizeByteOffset #-}- vkSizeByteOffset ~_ = #{offset VkBufferCopy, size}-- {-# INLINE readVkSize #-}- readVkSize p- = peekByteOff p #{offset VkBufferCopy, size}-- {-# INLINE writeVkSize #-}- writeVkSize p- = pokeByteOff p #{offset VkBufferCopy, size}+ writeField p+ = pokeByteOff p #{offset VkBufferCopy, dstOffset} instance {-# OVERLAPPING #-} HasField "size" VkBufferCopy where type FieldType "size" VkBufferCopy = VkDeviceSize@@ -192,24 +145,30 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkBufferCopy, size} -instance CanReadField "size" VkBufferCopy where- {-# INLINE getField #-}- getField = vkSize+instance {-# OVERLAPPING #-} CanReadField "size" VkBufferCopy where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBufferCopy, size}) {-# INLINE readField #-}- readField = readVkSize+ readField p+ = peekByteOff p #{offset VkBufferCopy, size} -instance CanWriteField "size" VkBufferCopy where+instance {-# OVERLAPPING #-} CanWriteField "size" VkBufferCopy+ where {-# INLINE writeField #-}- writeField = writeVkSize+ writeField p+ = pokeByteOff p #{offset VkBufferCopy, size} instance Show VkBufferCopy where showsPrec d x = showString "VkBufferCopy {" .- showString "vkSrcOffset = " .- showsPrec d (vkSrcOffset x) .+ showString "srcOffset = " .+ showsPrec d (getField @"srcOffset" x) . showString ", " .- showString "vkDstOffset = " .- showsPrec d (vkDstOffset x) .+ showString "dstOffset = " .+ showsPrec d (getField @"dstOffset" x) . showString ", " .- showString "vkSize = " . showsPrec d (vkSize x) . showChar '}'+ showString "size = " .+ showsPrec d (getField @"size" x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkBufferCreateInfo (VkBufferCreateInfo(..)) where@@ -17,7 +18,6 @@ import Graphics.Vulkan.Types.Enum.VkBufferUsageFlags (VkBufferUsageFlags) import Graphics.Vulkan.Types.Enum.VkSharingMode (VkSharingMode) import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkBufferCreateInfo {@@ -31,7 +31,7 @@ -- > const uint32_t* pQueueFamilyIndices; -- > } VkBufferCreateInfo; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkBufferCreateInfo.html VkBufferCreateInfo registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkBufferCreateInfo.html VkBufferCreateInfo registry at www.khronos.org> data VkBufferCreateInfo = VkBufferCreateInfo## Addr## ByteArray## instance Eq VkBufferCreateInfo where@@ -80,26 +80,6 @@ type ReturnedOnly VkBufferCreateInfo = 'False -- ' closing tick for hsc2hs type StructExtends VkBufferCreateInfo = '[] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkSType VkBufferCreateInfo where- type VkSTypeMType VkBufferCreateInfo = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBufferCreateInfo, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkBufferCreateInfo, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkBufferCreateInfo, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkBufferCreateInfo, sType}- instance {-# OVERLAPPING #-} HasField "sType" VkBufferCreateInfo where type FieldType "sType" VkBufferCreateInfo = VkStructureType@@ -114,36 +94,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkBufferCreateInfo, sType} -instance CanReadField "sType" VkBufferCreateInfo where- {-# INLINE getField #-}- getField = vkSType+instance {-# OVERLAPPING #-}+ CanReadField "sType" VkBufferCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBufferCreateInfo, sType}) {-# INLINE readField #-}- readField = readVkSType+ readField p+ = peekByteOff p #{offset VkBufferCreateInfo, sType} -instance CanWriteField "sType" VkBufferCreateInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkBufferCreateInfo where {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-} HasVkPNext VkBufferCreateInfo where- type VkPNextMType VkBufferCreateInfo = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBufferCreateInfo, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkBufferCreateInfo, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkBufferCreateInfo, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkBufferCreateInfo, pNext}+ writeField p+ = pokeByteOff p #{offset VkBufferCreateInfo, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkBufferCreateInfo where@@ -159,36 +125,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkBufferCreateInfo, pNext} -instance CanReadField "pNext" VkBufferCreateInfo where- {-# INLINE getField #-}- getField = vkPNext+instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkBufferCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBufferCreateInfo, pNext}) {-# INLINE readField #-}- readField = readVkPNext+ readField p+ = peekByteOff p #{offset VkBufferCreateInfo, pNext} -instance CanWriteField "pNext" VkBufferCreateInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkBufferCreateInfo where {-# INLINE writeField #-}- writeField = writeVkPNext--instance {-# OVERLAPPING #-} HasVkFlags VkBufferCreateInfo where- type VkFlagsMType VkBufferCreateInfo = VkBufferCreateFlags-- {-# NOINLINE vkFlags #-}- vkFlags x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBufferCreateInfo, flags})-- {-# INLINE vkFlagsByteOffset #-}- vkFlagsByteOffset ~_- = #{offset VkBufferCreateInfo, flags}-- {-# INLINE readVkFlags #-}- readVkFlags p- = peekByteOff p #{offset VkBufferCreateInfo, flags}-- {-# INLINE writeVkFlags #-}- writeVkFlags p- = pokeByteOff p #{offset VkBufferCreateInfo, flags}+ writeField p+ = pokeByteOff p #{offset VkBufferCreateInfo, pNext} instance {-# OVERLAPPING #-} HasField "flags" VkBufferCreateInfo where@@ -204,36 +156,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkBufferCreateInfo, flags} -instance CanReadField "flags" VkBufferCreateInfo where- {-# INLINE getField #-}- getField = vkFlags+instance {-# OVERLAPPING #-}+ CanReadField "flags" VkBufferCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBufferCreateInfo, flags}) {-# INLINE readField #-}- readField = readVkFlags+ readField p+ = peekByteOff p #{offset VkBufferCreateInfo, flags} -instance CanWriteField "flags" VkBufferCreateInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "flags" VkBufferCreateInfo where {-# INLINE writeField #-}- writeField = writeVkFlags--instance {-# OVERLAPPING #-} HasVkSize VkBufferCreateInfo where- type VkSizeMType VkBufferCreateInfo = VkDeviceSize-- {-# NOINLINE vkSize #-}- vkSize x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBufferCreateInfo, size})-- {-# INLINE vkSizeByteOffset #-}- vkSizeByteOffset ~_- = #{offset VkBufferCreateInfo, size}-- {-# INLINE readVkSize #-}- readVkSize p- = peekByteOff p #{offset VkBufferCreateInfo, size}-- {-# INLINE writeVkSize #-}- writeVkSize p- = pokeByteOff p #{offset VkBufferCreateInfo, size}+ writeField p+ = pokeByteOff p #{offset VkBufferCreateInfo, flags} instance {-# OVERLAPPING #-} HasField "size" VkBufferCreateInfo where@@ -249,36 +187,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkBufferCreateInfo, size} -instance CanReadField "size" VkBufferCreateInfo where- {-# INLINE getField #-}- getField = vkSize+instance {-# OVERLAPPING #-} CanReadField "size" VkBufferCreateInfo+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBufferCreateInfo, size}) {-# INLINE readField #-}- readField = readVkSize+ readField p+ = peekByteOff p #{offset VkBufferCreateInfo, size} -instance CanWriteField "size" VkBufferCreateInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "size" VkBufferCreateInfo where {-# INLINE writeField #-}- writeField = writeVkSize--instance {-# OVERLAPPING #-} HasVkUsage VkBufferCreateInfo where- type VkUsageMType VkBufferCreateInfo = VkBufferUsageFlags-- {-# NOINLINE vkUsage #-}- vkUsage x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBufferCreateInfo, usage})-- {-# INLINE vkUsageByteOffset #-}- vkUsageByteOffset ~_- = #{offset VkBufferCreateInfo, usage}-- {-# INLINE readVkUsage #-}- readVkUsage p- = peekByteOff p #{offset VkBufferCreateInfo, usage}-- {-# INLINE writeVkUsage #-}- writeVkUsage p- = pokeByteOff p #{offset VkBufferCreateInfo, usage}+ writeField p+ = pokeByteOff p #{offset VkBufferCreateInfo, size} instance {-# OVERLAPPING #-} HasField "usage" VkBufferCreateInfo where@@ -294,37 +218,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkBufferCreateInfo, usage} -instance CanReadField "usage" VkBufferCreateInfo where- {-# INLINE getField #-}- getField = vkUsage+instance {-# OVERLAPPING #-}+ CanReadField "usage" VkBufferCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBufferCreateInfo, usage}) {-# INLINE readField #-}- readField = readVkUsage+ readField p+ = peekByteOff p #{offset VkBufferCreateInfo, usage} -instance CanWriteField "usage" VkBufferCreateInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "usage" VkBufferCreateInfo where {-# INLINE writeField #-}- writeField = writeVkUsage--instance {-# OVERLAPPING #-} HasVkSharingMode VkBufferCreateInfo- where- type VkSharingModeMType VkBufferCreateInfo = VkSharingMode-- {-# NOINLINE vkSharingMode #-}- vkSharingMode x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBufferCreateInfo, sharingMode})-- {-# INLINE vkSharingModeByteOffset #-}- vkSharingModeByteOffset ~_- = #{offset VkBufferCreateInfo, sharingMode}-- {-# INLINE readVkSharingMode #-}- readVkSharingMode p- = peekByteOff p #{offset VkBufferCreateInfo, sharingMode}-- {-# INLINE writeVkSharingMode #-}- writeVkSharingMode p- = pokeByteOff p #{offset VkBufferCreateInfo, sharingMode}+ writeField p+ = pokeByteOff p #{offset VkBufferCreateInfo, usage} instance {-# OVERLAPPING #-} HasField "sharingMode" VkBufferCreateInfo where@@ -340,37 +249,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkBufferCreateInfo, sharingMode} -instance CanReadField "sharingMode" VkBufferCreateInfo where- {-# INLINE getField #-}- getField = vkSharingMode-- {-# INLINE readField #-}- readField = readVkSharingMode--instance CanWriteField "sharingMode" VkBufferCreateInfo where- {-# INLINE writeField #-}- writeField = writeVkSharingMode- instance {-# OVERLAPPING #-}- HasVkQueueFamilyIndexCount VkBufferCreateInfo where- type VkQueueFamilyIndexCountMType VkBufferCreateInfo = Word32-- {-# NOINLINE vkQueueFamilyIndexCount #-}- vkQueueFamilyIndexCount x+ CanReadField "sharingMode" VkBufferCreateInfo where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBufferCreateInfo, queueFamilyIndexCount})-- {-# INLINE vkQueueFamilyIndexCountByteOffset #-}- vkQueueFamilyIndexCountByteOffset ~_- = #{offset VkBufferCreateInfo, queueFamilyIndexCount}+ (peekByteOff (unsafePtr x) #{offset VkBufferCreateInfo, sharingMode}) - {-# INLINE readVkQueueFamilyIndexCount #-}- readVkQueueFamilyIndexCount p- = peekByteOff p #{offset VkBufferCreateInfo, queueFamilyIndexCount}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBufferCreateInfo, sharingMode} - {-# INLINE writeVkQueueFamilyIndexCount #-}- writeVkQueueFamilyIndexCount p- = pokeByteOff p #{offset VkBufferCreateInfo, queueFamilyIndexCount}+instance {-# OVERLAPPING #-}+ CanWriteField "sharingMode" VkBufferCreateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBufferCreateInfo, sharingMode} instance {-# OVERLAPPING #-} HasField "queueFamilyIndexCount" VkBufferCreateInfo where@@ -389,39 +283,22 @@ fieldOffset = #{offset VkBufferCreateInfo, queueFamilyIndexCount} -instance CanReadField "queueFamilyIndexCount" VkBufferCreateInfo- where- {-# INLINE getField #-}- getField = vkQueueFamilyIndexCount-- {-# INLINE readField #-}- readField = readVkQueueFamilyIndexCount--instance CanWriteField "queueFamilyIndexCount" VkBufferCreateInfo- where- {-# INLINE writeField #-}- writeField = writeVkQueueFamilyIndexCount- instance {-# OVERLAPPING #-}- HasVkPQueueFamilyIndices VkBufferCreateInfo where- type VkPQueueFamilyIndicesMType VkBufferCreateInfo = Ptr Word32-- {-# NOINLINE vkPQueueFamilyIndices #-}- vkPQueueFamilyIndices x+ CanReadField "queueFamilyIndexCount" VkBufferCreateInfo where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBufferCreateInfo, pQueueFamilyIndices})-- {-# INLINE vkPQueueFamilyIndicesByteOffset #-}- vkPQueueFamilyIndicesByteOffset ~_- = #{offset VkBufferCreateInfo, pQueueFamilyIndices}+ (peekByteOff (unsafePtr x) #{offset VkBufferCreateInfo, queueFamilyIndexCount}) - {-# INLINE readVkPQueueFamilyIndices #-}- readVkPQueueFamilyIndices p- = peekByteOff p #{offset VkBufferCreateInfo, pQueueFamilyIndices}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBufferCreateInfo, queueFamilyIndexCount} - {-# INLINE writeVkPQueueFamilyIndices #-}- writeVkPQueueFamilyIndices p- = pokeByteOff p #{offset VkBufferCreateInfo, pQueueFamilyIndices}+instance {-# OVERLAPPING #-}+ CanWriteField "queueFamilyIndexCount" VkBufferCreateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBufferCreateInfo, queueFamilyIndexCount} instance {-# OVERLAPPING #-} HasField "pQueueFamilyIndices" VkBufferCreateInfo where@@ -440,43 +317,50 @@ fieldOffset = #{offset VkBufferCreateInfo, pQueueFamilyIndices} -instance CanReadField "pQueueFamilyIndices" VkBufferCreateInfo- where- {-# INLINE getField #-}- getField = vkPQueueFamilyIndices+instance {-# OVERLAPPING #-}+ CanReadField "pQueueFamilyIndices" VkBufferCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBufferCreateInfo, pQueueFamilyIndices}) {-# INLINE readField #-}- readField = readVkPQueueFamilyIndices+ readField p+ = peekByteOff p #{offset VkBufferCreateInfo, pQueueFamilyIndices} -instance CanWriteField "pQueueFamilyIndices" VkBufferCreateInfo- where+instance {-# OVERLAPPING #-}+ CanWriteField "pQueueFamilyIndices" VkBufferCreateInfo where {-# INLINE writeField #-}- writeField = writeVkPQueueFamilyIndices+ writeField p+ = pokeByteOff p #{offset VkBufferCreateInfo, pQueueFamilyIndices} instance Show VkBufferCreateInfo where showsPrec d x = showString "VkBufferCreateInfo {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkFlags = " .- showsPrec d (vkFlags x) .+ showString "flags = " .+ showsPrec d (getField @"flags" x) . showString ", " .- showString "vkSize = " .- showsPrec d (vkSize x) .+ showString "size = " .+ showsPrec d (getField @"size" x) . showString ", " .- showString "vkUsage = " .- showsPrec d (vkUsage x) .+ showString "usage = " .+ showsPrec d (getField @"usage" x) . showString ", " .- showString "vkSharingMode = " .- showsPrec d (vkSharingMode x) .+ showString "sharingMode = " .+ showsPrec d (getField @"sharingMode" x) . showString ", " .- showString "vkQueueFamilyIndexCount = " .- showsPrec d (vkQueueFamilyIndexCount x) .+ showString "queueFamilyIndexCount = " .+ showsPrec d+ (getField @"queueFamilyIndexCount" x)+ . showString ", " .- showString "vkPQueueFamilyIndices = " .- showsPrec d (vkPQueueFamilyIndices x) .- showChar '}'+ showString "pQueueFamilyIndices = " .+ showsPrec d+ (getField @"pQueueFamilyIndices" x)+ . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkBufferImageCopy (VkBufferImageCopy(..)) where@@ -16,7 +17,6 @@ import Graphics.Vulkan.Types.Struct.VkExtent3D (VkExtent3D) import Graphics.Vulkan.Types.Struct.VkImageSubresourceLayers (VkImageSubresourceLayers) import Graphics.Vulkan.Types.Struct.VkOffset3D (VkOffset3D)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkBufferImageCopy {@@ -28,7 +28,7 @@ -- > VkExtent3D imageExtent; -- > } VkBufferImageCopy; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkBufferImageCopy.html VkBufferImageCopy registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkBufferImageCopy.html VkBufferImageCopy registry at www.khronos.org> data VkBufferImageCopy = VkBufferImageCopy## Addr## ByteArray## instance Eq VkBufferImageCopy where@@ -77,27 +77,6 @@ type ReturnedOnly VkBufferImageCopy = 'False -- ' closing tick for hsc2hs type StructExtends VkBufferImageCopy = '[] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkBufferOffset VkBufferImageCopy- where- type VkBufferOffsetMType VkBufferImageCopy = VkDeviceSize-- {-# NOINLINE vkBufferOffset #-}- vkBufferOffset x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBufferImageCopy, bufferOffset})-- {-# INLINE vkBufferOffsetByteOffset #-}- vkBufferOffsetByteOffset ~_- = #{offset VkBufferImageCopy, bufferOffset}-- {-# INLINE readVkBufferOffset #-}- readVkBufferOffset p- = peekByteOff p #{offset VkBufferImageCopy, bufferOffset}-- {-# INLINE writeVkBufferOffset #-}- writeVkBufferOffset p- = pokeByteOff p #{offset VkBufferImageCopy, bufferOffset}- instance {-# OVERLAPPING #-} HasField "bufferOffset" VkBufferImageCopy where type FieldType "bufferOffset" VkBufferImageCopy = VkDeviceSize@@ -112,37 +91,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkBufferImageCopy, bufferOffset} -instance CanReadField "bufferOffset" VkBufferImageCopy where- {-# INLINE getField #-}- getField = vkBufferOffset+instance {-# OVERLAPPING #-}+ CanReadField "bufferOffset" VkBufferImageCopy where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBufferImageCopy, bufferOffset}) {-# INLINE readField #-}- readField = readVkBufferOffset+ readField p+ = peekByteOff p #{offset VkBufferImageCopy, bufferOffset} -instance CanWriteField "bufferOffset" VkBufferImageCopy where+instance {-# OVERLAPPING #-}+ CanWriteField "bufferOffset" VkBufferImageCopy where {-# INLINE writeField #-}- writeField = writeVkBufferOffset--instance {-# OVERLAPPING #-} HasVkBufferRowLength VkBufferImageCopy- where- type VkBufferRowLengthMType VkBufferImageCopy = Word32-- {-# NOINLINE vkBufferRowLength #-}- vkBufferRowLength x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBufferImageCopy, bufferRowLength})-- {-# INLINE vkBufferRowLengthByteOffset #-}- vkBufferRowLengthByteOffset ~_- = #{offset VkBufferImageCopy, bufferRowLength}-- {-# INLINE readVkBufferRowLength #-}- readVkBufferRowLength p- = peekByteOff p #{offset VkBufferImageCopy, bufferRowLength}-- {-# INLINE writeVkBufferRowLength #-}- writeVkBufferRowLength p- = pokeByteOff p #{offset VkBufferImageCopy, bufferRowLength}+ writeField p+ = pokeByteOff p #{offset VkBufferImageCopy, bufferOffset} instance {-# OVERLAPPING #-} HasField "bufferRowLength" VkBufferImageCopy where@@ -159,37 +123,22 @@ fieldOffset = #{offset VkBufferImageCopy, bufferRowLength} -instance CanReadField "bufferRowLength" VkBufferImageCopy where- {-# INLINE getField #-}- getField = vkBufferRowLength-- {-# INLINE readField #-}- readField = readVkBufferRowLength--instance CanWriteField "bufferRowLength" VkBufferImageCopy where- {-# INLINE writeField #-}- writeField = writeVkBufferRowLength- instance {-# OVERLAPPING #-}- HasVkBufferImageHeight VkBufferImageCopy where- type VkBufferImageHeightMType VkBufferImageCopy = Word32-- {-# NOINLINE vkBufferImageHeight #-}- vkBufferImageHeight x+ CanReadField "bufferRowLength" VkBufferImageCopy where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBufferImageCopy, bufferImageHeight})-- {-# INLINE vkBufferImageHeightByteOffset #-}- vkBufferImageHeightByteOffset ~_- = #{offset VkBufferImageCopy, bufferImageHeight}+ (peekByteOff (unsafePtr x) #{offset VkBufferImageCopy, bufferRowLength}) - {-# INLINE readVkBufferImageHeight #-}- readVkBufferImageHeight p- = peekByteOff p #{offset VkBufferImageCopy, bufferImageHeight}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBufferImageCopy, bufferRowLength} - {-# INLINE writeVkBufferImageHeight #-}- writeVkBufferImageHeight p- = pokeByteOff p #{offset VkBufferImageCopy, bufferImageHeight}+instance {-# OVERLAPPING #-}+ CanWriteField "bufferRowLength" VkBufferImageCopy where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBufferImageCopy, bufferRowLength} instance {-# OVERLAPPING #-} HasField "bufferImageHeight" VkBufferImageCopy where@@ -206,38 +155,22 @@ fieldOffset = #{offset VkBufferImageCopy, bufferImageHeight} -instance CanReadField "bufferImageHeight" VkBufferImageCopy where- {-# INLINE getField #-}- getField = vkBufferImageHeight-- {-# INLINE readField #-}- readField = readVkBufferImageHeight--instance CanWriteField "bufferImageHeight" VkBufferImageCopy where- {-# INLINE writeField #-}- writeField = writeVkBufferImageHeight- instance {-# OVERLAPPING #-}- HasVkImageSubresource VkBufferImageCopy where- type VkImageSubresourceMType VkBufferImageCopy =- VkImageSubresourceLayers-- {-# NOINLINE vkImageSubresource #-}- vkImageSubresource x+ CanReadField "bufferImageHeight" VkBufferImageCopy where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBufferImageCopy, imageSubresource})-- {-# INLINE vkImageSubresourceByteOffset #-}- vkImageSubresourceByteOffset ~_- = #{offset VkBufferImageCopy, imageSubresource}+ (peekByteOff (unsafePtr x) #{offset VkBufferImageCopy, bufferImageHeight}) - {-# INLINE readVkImageSubresource #-}- readVkImageSubresource p- = peekByteOff p #{offset VkBufferImageCopy, imageSubresource}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBufferImageCopy, bufferImageHeight} - {-# INLINE writeVkImageSubresource #-}- writeVkImageSubresource p- = pokeByteOff p #{offset VkBufferImageCopy, imageSubresource}+instance {-# OVERLAPPING #-}+ CanWriteField "bufferImageHeight" VkBufferImageCopy where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBufferImageCopy, bufferImageHeight} instance {-# OVERLAPPING #-} HasField "imageSubresource" VkBufferImageCopy where@@ -255,37 +188,22 @@ fieldOffset = #{offset VkBufferImageCopy, imageSubresource} -instance CanReadField "imageSubresource" VkBufferImageCopy where- {-# INLINE getField #-}- getField = vkImageSubresource+instance {-# OVERLAPPING #-}+ CanReadField "imageSubresource" VkBufferImageCopy where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBufferImageCopy, imageSubresource}) {-# INLINE readField #-}- readField = readVkImageSubresource+ readField p+ = peekByteOff p #{offset VkBufferImageCopy, imageSubresource} -instance CanWriteField "imageSubresource" VkBufferImageCopy where+instance {-# OVERLAPPING #-}+ CanWriteField "imageSubresource" VkBufferImageCopy where {-# INLINE writeField #-}- writeField = writeVkImageSubresource--instance {-# OVERLAPPING #-} HasVkImageOffset VkBufferImageCopy- where- type VkImageOffsetMType VkBufferImageCopy = VkOffset3D-- {-# NOINLINE vkImageOffset #-}- vkImageOffset x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBufferImageCopy, imageOffset})-- {-# INLINE vkImageOffsetByteOffset #-}- vkImageOffsetByteOffset ~_- = #{offset VkBufferImageCopy, imageOffset}-- {-# INLINE readVkImageOffset #-}- readVkImageOffset p- = peekByteOff p #{offset VkBufferImageCopy, imageOffset}-- {-# INLINE writeVkImageOffset #-}- writeVkImageOffset p- = pokeByteOff p #{offset VkBufferImageCopy, imageOffset}+ writeField p+ = pokeByteOff p #{offset VkBufferImageCopy, imageSubresource} instance {-# OVERLAPPING #-} HasField "imageOffset" VkBufferImageCopy where@@ -301,37 +219,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkBufferImageCopy, imageOffset} -instance CanReadField "imageOffset" VkBufferImageCopy where- {-# INLINE getField #-}- getField = vkImageOffset+instance {-# OVERLAPPING #-}+ CanReadField "imageOffset" VkBufferImageCopy where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBufferImageCopy, imageOffset}) {-# INLINE readField #-}- readField = readVkImageOffset+ readField p+ = peekByteOff p #{offset VkBufferImageCopy, imageOffset} -instance CanWriteField "imageOffset" VkBufferImageCopy where+instance {-# OVERLAPPING #-}+ CanWriteField "imageOffset" VkBufferImageCopy where {-# INLINE writeField #-}- writeField = writeVkImageOffset--instance {-# OVERLAPPING #-} HasVkImageExtent VkBufferImageCopy- where- type VkImageExtentMType VkBufferImageCopy = VkExtent3D-- {-# NOINLINE vkImageExtent #-}- vkImageExtent x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBufferImageCopy, imageExtent})-- {-# INLINE vkImageExtentByteOffset #-}- vkImageExtentByteOffset ~_- = #{offset VkBufferImageCopy, imageExtent}-- {-# INLINE readVkImageExtent #-}- readVkImageExtent p- = peekByteOff p #{offset VkBufferImageCopy, imageExtent}-- {-# INLINE writeVkImageExtent #-}- writeVkImageExtent p- = pokeByteOff p #{offset VkBufferImageCopy, imageExtent}+ writeField p+ = pokeByteOff p #{offset VkBufferImageCopy, imageOffset} instance {-# OVERLAPPING #-} HasField "imageExtent" VkBufferImageCopy where@@ -347,34 +250,40 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkBufferImageCopy, imageExtent} -instance CanReadField "imageExtent" VkBufferImageCopy where- {-# INLINE getField #-}- getField = vkImageExtent+instance {-# OVERLAPPING #-}+ CanReadField "imageExtent" VkBufferImageCopy where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBufferImageCopy, imageExtent}) {-# INLINE readField #-}- readField = readVkImageExtent+ readField p+ = peekByteOff p #{offset VkBufferImageCopy, imageExtent} -instance CanWriteField "imageExtent" VkBufferImageCopy where+instance {-# OVERLAPPING #-}+ CanWriteField "imageExtent" VkBufferImageCopy where {-# INLINE writeField #-}- writeField = writeVkImageExtent+ writeField p+ = pokeByteOff p #{offset VkBufferImageCopy, imageExtent} instance Show VkBufferImageCopy where showsPrec d x = showString "VkBufferImageCopy {" .- showString "vkBufferOffset = " .- showsPrec d (vkBufferOffset x) .+ showString "bufferOffset = " .+ showsPrec d (getField @"bufferOffset" x) . showString ", " .- showString "vkBufferRowLength = " .- showsPrec d (vkBufferRowLength x) .+ showString "bufferRowLength = " .+ showsPrec d (getField @"bufferRowLength" x) . showString ", " .- showString "vkBufferImageHeight = " .- showsPrec d (vkBufferImageHeight x) .+ showString "bufferImageHeight = " .+ showsPrec d (getField @"bufferImageHeight" x) . showString ", " .- showString "vkImageSubresource = " .- showsPrec d (vkImageSubresource x) .+ showString "imageSubresource = " .+ showsPrec d (getField @"imageSubresource" x) . showString ", " .- showString "vkImageOffset = " .- showsPrec d (vkImageOffset x) .+ showString "imageOffset = " .+ showsPrec d (getField @"imageOffset" x) . showString ", " .- showString "vkImageExtent = " .- showsPrec d (vkImageExtent x) . showChar '}'+ showString "imageExtent = " .+ showsPrec d (getField @"imageExtent" x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkBufferMemoryBarrier (VkBufferMemoryBarrier(..)) where@@ -16,7 +17,6 @@ import Graphics.Vulkan.Types.Enum.VkAccessFlags (VkAccessFlags) import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType) import Graphics.Vulkan.Types.Handles (VkBuffer)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkBufferMemoryBarrier {@@ -31,7 +31,7 @@ -- > VkDeviceSize size; -- > } VkBufferMemoryBarrier; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkBufferMemoryBarrier.html VkBufferMemoryBarrier registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkBufferMemoryBarrier.html VkBufferMemoryBarrier registry at www.khronos.org> data VkBufferMemoryBarrier = VkBufferMemoryBarrier## Addr## ByteArray## @@ -82,26 +82,6 @@ type ReturnedOnly VkBufferMemoryBarrier = 'False -- ' closing tick for hsc2hs type StructExtends VkBufferMemoryBarrier = '[] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkSType VkBufferMemoryBarrier where- type VkSTypeMType VkBufferMemoryBarrier = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBufferMemoryBarrier, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkBufferMemoryBarrier, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkBufferMemoryBarrier, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkBufferMemoryBarrier, sType}- instance {-# OVERLAPPING #-} HasField "sType" VkBufferMemoryBarrier where type FieldType "sType" VkBufferMemoryBarrier = VkStructureType@@ -116,36 +96,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkBufferMemoryBarrier, sType} -instance CanReadField "sType" VkBufferMemoryBarrier where- {-# INLINE getField #-}- getField = vkSType+instance {-# OVERLAPPING #-}+ CanReadField "sType" VkBufferMemoryBarrier where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBufferMemoryBarrier, sType}) {-# INLINE readField #-}- readField = readVkSType+ readField p+ = peekByteOff p #{offset VkBufferMemoryBarrier, sType} -instance CanWriteField "sType" VkBufferMemoryBarrier where+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkBufferMemoryBarrier where {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-} HasVkPNext VkBufferMemoryBarrier where- type VkPNextMType VkBufferMemoryBarrier = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBufferMemoryBarrier, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkBufferMemoryBarrier, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkBufferMemoryBarrier, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkBufferMemoryBarrier, pNext}+ writeField p+ = pokeByteOff p #{offset VkBufferMemoryBarrier, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkBufferMemoryBarrier where@@ -161,37 +127,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkBufferMemoryBarrier, pNext} -instance CanReadField "pNext" VkBufferMemoryBarrier where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkBufferMemoryBarrier where- {-# INLINE writeField #-}- writeField = writeVkPNext- instance {-# OVERLAPPING #-}- HasVkSrcAccessMask VkBufferMemoryBarrier where- type VkSrcAccessMaskMType VkBufferMemoryBarrier = VkAccessFlags-- {-# NOINLINE vkSrcAccessMask #-}- vkSrcAccessMask x+ CanReadField "pNext" VkBufferMemoryBarrier where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBufferMemoryBarrier, srcAccessMask})-- {-# INLINE vkSrcAccessMaskByteOffset #-}- vkSrcAccessMaskByteOffset ~_- = #{offset VkBufferMemoryBarrier, srcAccessMask}+ (peekByteOff (unsafePtr x) #{offset VkBufferMemoryBarrier, pNext}) - {-# INLINE readVkSrcAccessMask #-}- readVkSrcAccessMask p- = peekByteOff p #{offset VkBufferMemoryBarrier, srcAccessMask}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBufferMemoryBarrier, pNext} - {-# INLINE writeVkSrcAccessMask #-}- writeVkSrcAccessMask p- = pokeByteOff p #{offset VkBufferMemoryBarrier, srcAccessMask}+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkBufferMemoryBarrier where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBufferMemoryBarrier, pNext} instance {-# OVERLAPPING #-} HasField "srcAccessMask" VkBufferMemoryBarrier where@@ -209,37 +160,22 @@ fieldOffset = #{offset VkBufferMemoryBarrier, srcAccessMask} -instance CanReadField "srcAccessMask" VkBufferMemoryBarrier where- {-# INLINE getField #-}- getField = vkSrcAccessMask-- {-# INLINE readField #-}- readField = readVkSrcAccessMask--instance CanWriteField "srcAccessMask" VkBufferMemoryBarrier where- {-# INLINE writeField #-}- writeField = writeVkSrcAccessMask- instance {-# OVERLAPPING #-}- HasVkDstAccessMask VkBufferMemoryBarrier where- type VkDstAccessMaskMType VkBufferMemoryBarrier = VkAccessFlags-- {-# NOINLINE vkDstAccessMask #-}- vkDstAccessMask x+ CanReadField "srcAccessMask" VkBufferMemoryBarrier where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBufferMemoryBarrier, dstAccessMask})-- {-# INLINE vkDstAccessMaskByteOffset #-}- vkDstAccessMaskByteOffset ~_- = #{offset VkBufferMemoryBarrier, dstAccessMask}+ (peekByteOff (unsafePtr x) #{offset VkBufferMemoryBarrier, srcAccessMask}) - {-# INLINE readVkDstAccessMask #-}- readVkDstAccessMask p- = peekByteOff p #{offset VkBufferMemoryBarrier, dstAccessMask}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBufferMemoryBarrier, srcAccessMask} - {-# INLINE writeVkDstAccessMask #-}- writeVkDstAccessMask p- = pokeByteOff p #{offset VkBufferMemoryBarrier, dstAccessMask}+instance {-# OVERLAPPING #-}+ CanWriteField "srcAccessMask" VkBufferMemoryBarrier where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBufferMemoryBarrier, srcAccessMask} instance {-# OVERLAPPING #-} HasField "dstAccessMask" VkBufferMemoryBarrier where@@ -257,37 +193,22 @@ fieldOffset = #{offset VkBufferMemoryBarrier, dstAccessMask} -instance CanReadField "dstAccessMask" VkBufferMemoryBarrier where- {-# INLINE getField #-}- getField = vkDstAccessMask-- {-# INLINE readField #-}- readField = readVkDstAccessMask--instance CanWriteField "dstAccessMask" VkBufferMemoryBarrier where- {-# INLINE writeField #-}- writeField = writeVkDstAccessMask- instance {-# OVERLAPPING #-}- HasVkSrcQueueFamilyIndex VkBufferMemoryBarrier where- type VkSrcQueueFamilyIndexMType VkBufferMemoryBarrier = Word32-- {-# NOINLINE vkSrcQueueFamilyIndex #-}- vkSrcQueueFamilyIndex x+ CanReadField "dstAccessMask" VkBufferMemoryBarrier where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBufferMemoryBarrier, srcQueueFamilyIndex})-- {-# INLINE vkSrcQueueFamilyIndexByteOffset #-}- vkSrcQueueFamilyIndexByteOffset ~_- = #{offset VkBufferMemoryBarrier, srcQueueFamilyIndex}+ (peekByteOff (unsafePtr x) #{offset VkBufferMemoryBarrier, dstAccessMask}) - {-# INLINE readVkSrcQueueFamilyIndex #-}- readVkSrcQueueFamilyIndex p- = peekByteOff p #{offset VkBufferMemoryBarrier, srcQueueFamilyIndex}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBufferMemoryBarrier, dstAccessMask} - {-# INLINE writeVkSrcQueueFamilyIndex #-}- writeVkSrcQueueFamilyIndex p- = pokeByteOff p #{offset VkBufferMemoryBarrier, srcQueueFamilyIndex}+instance {-# OVERLAPPING #-}+ CanWriteField "dstAccessMask" VkBufferMemoryBarrier where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBufferMemoryBarrier, dstAccessMask} instance {-# OVERLAPPING #-} HasField "srcQueueFamilyIndex" VkBufferMemoryBarrier where@@ -306,39 +227,22 @@ fieldOffset = #{offset VkBufferMemoryBarrier, srcQueueFamilyIndex} -instance CanReadField "srcQueueFamilyIndex" VkBufferMemoryBarrier- where- {-# INLINE getField #-}- getField = vkSrcQueueFamilyIndex-- {-# INLINE readField #-}- readField = readVkSrcQueueFamilyIndex--instance CanWriteField "srcQueueFamilyIndex" VkBufferMemoryBarrier- where- {-# INLINE writeField #-}- writeField = writeVkSrcQueueFamilyIndex- instance {-# OVERLAPPING #-}- HasVkDstQueueFamilyIndex VkBufferMemoryBarrier where- type VkDstQueueFamilyIndexMType VkBufferMemoryBarrier = Word32-- {-# NOINLINE vkDstQueueFamilyIndex #-}- vkDstQueueFamilyIndex x+ CanReadField "srcQueueFamilyIndex" VkBufferMemoryBarrier where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBufferMemoryBarrier, dstQueueFamilyIndex})-- {-# INLINE vkDstQueueFamilyIndexByteOffset #-}- vkDstQueueFamilyIndexByteOffset ~_- = #{offset VkBufferMemoryBarrier, dstQueueFamilyIndex}+ (peekByteOff (unsafePtr x) #{offset VkBufferMemoryBarrier, srcQueueFamilyIndex}) - {-# INLINE readVkDstQueueFamilyIndex #-}- readVkDstQueueFamilyIndex p- = peekByteOff p #{offset VkBufferMemoryBarrier, dstQueueFamilyIndex}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBufferMemoryBarrier, srcQueueFamilyIndex} - {-# INLINE writeVkDstQueueFamilyIndex #-}- writeVkDstQueueFamilyIndex p- = pokeByteOff p #{offset VkBufferMemoryBarrier, dstQueueFamilyIndex}+instance {-# OVERLAPPING #-}+ CanWriteField "srcQueueFamilyIndex" VkBufferMemoryBarrier where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBufferMemoryBarrier, srcQueueFamilyIndex} instance {-# OVERLAPPING #-} HasField "dstQueueFamilyIndex" VkBufferMemoryBarrier where@@ -357,39 +261,22 @@ fieldOffset = #{offset VkBufferMemoryBarrier, dstQueueFamilyIndex} -instance CanReadField "dstQueueFamilyIndex" VkBufferMemoryBarrier- where- {-# INLINE getField #-}- getField = vkDstQueueFamilyIndex+instance {-# OVERLAPPING #-}+ CanReadField "dstQueueFamilyIndex" VkBufferMemoryBarrier where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBufferMemoryBarrier, dstQueueFamilyIndex}) {-# INLINE readField #-}- readField = readVkDstQueueFamilyIndex+ readField p+ = peekByteOff p #{offset VkBufferMemoryBarrier, dstQueueFamilyIndex} -instance CanWriteField "dstQueueFamilyIndex" VkBufferMemoryBarrier- where+instance {-# OVERLAPPING #-}+ CanWriteField "dstQueueFamilyIndex" VkBufferMemoryBarrier where {-# INLINE writeField #-}- writeField = writeVkDstQueueFamilyIndex--instance {-# OVERLAPPING #-} HasVkBuffer VkBufferMemoryBarrier- where- type VkBufferMType VkBufferMemoryBarrier = VkBuffer-- {-# NOINLINE vkBuffer #-}- vkBuffer x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBufferMemoryBarrier, buffer})-- {-# INLINE vkBufferByteOffset #-}- vkBufferByteOffset ~_- = #{offset VkBufferMemoryBarrier, buffer}-- {-# INLINE readVkBuffer #-}- readVkBuffer p- = peekByteOff p #{offset VkBufferMemoryBarrier, buffer}-- {-# INLINE writeVkBuffer #-}- writeVkBuffer p- = pokeByteOff p #{offset VkBufferMemoryBarrier, buffer}+ writeField p+ = pokeByteOff p #{offset VkBufferMemoryBarrier, dstQueueFamilyIndex} instance {-# OVERLAPPING #-} HasField "buffer" VkBufferMemoryBarrier where@@ -405,37 +292,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkBufferMemoryBarrier, buffer} -instance CanReadField "buffer" VkBufferMemoryBarrier where- {-# INLINE getField #-}- getField = vkBuffer+instance {-# OVERLAPPING #-}+ CanReadField "buffer" VkBufferMemoryBarrier where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBufferMemoryBarrier, buffer}) {-# INLINE readField #-}- readField = readVkBuffer+ readField p+ = peekByteOff p #{offset VkBufferMemoryBarrier, buffer} -instance CanWriteField "buffer" VkBufferMemoryBarrier where+instance {-# OVERLAPPING #-}+ CanWriteField "buffer" VkBufferMemoryBarrier where {-# INLINE writeField #-}- writeField = writeVkBuffer--instance {-# OVERLAPPING #-} HasVkOffset VkBufferMemoryBarrier- where- type VkOffsetMType VkBufferMemoryBarrier = VkDeviceSize-- {-# NOINLINE vkOffset #-}- vkOffset x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBufferMemoryBarrier, offset})-- {-# INLINE vkOffsetByteOffset #-}- vkOffsetByteOffset ~_- = #{offset VkBufferMemoryBarrier, offset}-- {-# INLINE readVkOffset #-}- readVkOffset p- = peekByteOff p #{offset VkBufferMemoryBarrier, offset}-- {-# INLINE writeVkOffset #-}- writeVkOffset p- = pokeByteOff p #{offset VkBufferMemoryBarrier, offset}+ writeField p+ = pokeByteOff p #{offset VkBufferMemoryBarrier, buffer} instance {-# OVERLAPPING #-} HasField "offset" VkBufferMemoryBarrier where@@ -451,36 +323,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkBufferMemoryBarrier, offset} -instance CanReadField "offset" VkBufferMemoryBarrier where- {-# INLINE getField #-}- getField = vkOffset+instance {-# OVERLAPPING #-}+ CanReadField "offset" VkBufferMemoryBarrier where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBufferMemoryBarrier, offset}) {-# INLINE readField #-}- readField = readVkOffset+ readField p+ = peekByteOff p #{offset VkBufferMemoryBarrier, offset} -instance CanWriteField "offset" VkBufferMemoryBarrier where+instance {-# OVERLAPPING #-}+ CanWriteField "offset" VkBufferMemoryBarrier where {-# INLINE writeField #-}- writeField = writeVkOffset--instance {-# OVERLAPPING #-} HasVkSize VkBufferMemoryBarrier where- type VkSizeMType VkBufferMemoryBarrier = VkDeviceSize-- {-# NOINLINE vkSize #-}- vkSize x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBufferMemoryBarrier, size})-- {-# INLINE vkSizeByteOffset #-}- vkSizeByteOffset ~_- = #{offset VkBufferMemoryBarrier, size}-- {-# INLINE readVkSize #-}- readVkSize p- = peekByteOff p #{offset VkBufferMemoryBarrier, size}-- {-# INLINE writeVkSize #-}- writeVkSize p- = pokeByteOff p #{offset VkBufferMemoryBarrier, size}+ writeField p+ = pokeByteOff p #{offset VkBufferMemoryBarrier, offset} instance {-# OVERLAPPING #-} HasField "size" VkBufferMemoryBarrier where@@ -496,44 +354,50 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkBufferMemoryBarrier, size} -instance CanReadField "size" VkBufferMemoryBarrier where- {-# INLINE getField #-}- getField = vkSize+instance {-# OVERLAPPING #-}+ CanReadField "size" VkBufferMemoryBarrier where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBufferMemoryBarrier, size}) {-# INLINE readField #-}- readField = readVkSize+ readField p+ = peekByteOff p #{offset VkBufferMemoryBarrier, size} -instance CanWriteField "size" VkBufferMemoryBarrier where+instance {-# OVERLAPPING #-}+ CanWriteField "size" VkBufferMemoryBarrier where {-# INLINE writeField #-}- writeField = writeVkSize+ writeField p+ = pokeByteOff p #{offset VkBufferMemoryBarrier, size} instance Show VkBufferMemoryBarrier where showsPrec d x = showString "VkBufferMemoryBarrier {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkSrcAccessMask = " .- showsPrec d (vkSrcAccessMask x) .+ showString "srcAccessMask = " .+ showsPrec d (getField @"srcAccessMask" x) . showString ", " .- showString "vkDstAccessMask = " .- showsPrec d (vkDstAccessMask x) .+ showString "dstAccessMask = " .+ showsPrec d (getField @"dstAccessMask" x) . showString ", " .- showString "vkSrcQueueFamilyIndex = " .- showsPrec d (vkSrcQueueFamilyIndex x) .+ showString "srcQueueFamilyIndex = " .+ showsPrec d (getField @"srcQueueFamilyIndex" x) . showString ", " .- showString "vkDstQueueFamilyIndex = " .- showsPrec d (vkDstQueueFamilyIndex x) .+ showString "dstQueueFamilyIndex = " .+ showsPrec d (getField @"dstQueueFamilyIndex" x) . showString ", " .- showString "vkBuffer = " .- showsPrec d (vkBuffer x) .+ showString "buffer = " .+ showsPrec d (getField @"buffer" x) . showString ", " .- showString "vkOffset = " .- showsPrec d (vkOffset x) .+ showString "offset = " .+ showsPrec d (getField @"offset" x) . showString ", " .- showString "vkSize = " .- showsPrec d (vkSize x) .+ showString "size = " .+ showsPrec d (getField @"size" x) . showChar '}'
@@ -0,0 +1,187 @@+#include "vulkan/vulkan.h"++{-# LANGUAGE DataKinds #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-}+{-# LANGUAGE TypeFamilies #-}+module Graphics.Vulkan.Types.Struct.VkBufferMemoryRequirementsInfo2+ (VkBufferMemoryRequirementsInfo2(..)) where+import Foreign.Storable (Storable (..))+import GHC.Prim+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Marshal.Internal+import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)+import Graphics.Vulkan.Types.Handles (VkBuffer)+import System.IO.Unsafe (unsafeDupablePerformIO)++-- | > typedef struct VkBufferMemoryRequirementsInfo2 {+-- > VkStructureType sType;+-- > const void* pNext;+-- > VkBuffer buffer;+-- > } VkBufferMemoryRequirementsInfo2;+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkBufferMemoryRequirementsInfo2.html VkBufferMemoryRequirementsInfo2 registry at www.khronos.org>+data VkBufferMemoryRequirementsInfo2 = VkBufferMemoryRequirementsInfo2## Addr##+ ByteArray##++instance Eq VkBufferMemoryRequirementsInfo2 where+ (VkBufferMemoryRequirementsInfo2## a _) ==+ x@(VkBufferMemoryRequirementsInfo2## b _)+ = EQ == cmpBytes## (sizeOf x) a b++ {-# INLINE (==) #-}++instance Ord VkBufferMemoryRequirementsInfo2 where+ (VkBufferMemoryRequirementsInfo2## a _) `compare`+ x@(VkBufferMemoryRequirementsInfo2## b _) = cmpBytes## (sizeOf x) a b++ {-# INLINE compare #-}++instance Storable VkBufferMemoryRequirementsInfo2 where+ sizeOf ~_ = #{size VkBufferMemoryRequirementsInfo2}++ {-# INLINE sizeOf #-}+ alignment ~_+ = #{alignment VkBufferMemoryRequirementsInfo2}++ {-# INLINE alignment #-}+ peek = peekVkData##++ {-# INLINE peek #-}+ poke = pokeVkData##++ {-# INLINE poke #-}++instance VulkanMarshalPrim VkBufferMemoryRequirementsInfo2 where+ unsafeAddr (VkBufferMemoryRequirementsInfo2## a _) = a++ {-# INLINE unsafeAddr #-}+ unsafeByteArray (VkBufferMemoryRequirementsInfo2## _ b) = b++ {-# INLINE unsafeByteArray #-}+ unsafeFromByteArrayOffset off b+ = VkBufferMemoryRequirementsInfo2##+ (plusAddr## (byteArrayContents## b) off)+ b++ {-# INLINE unsafeFromByteArrayOffset #-}++instance VulkanMarshal VkBufferMemoryRequirementsInfo2 where+ type StructFields VkBufferMemoryRequirementsInfo2 =+ '["sType", "pNext", "buffer"] -- ' closing tick for hsc2hs+ type CUnionType VkBufferMemoryRequirementsInfo2 = 'False -- ' closing tick for hsc2hs+ type ReturnedOnly VkBufferMemoryRequirementsInfo2 = 'False -- ' closing tick for hsc2hs+ type StructExtends VkBufferMemoryRequirementsInfo2 = '[] -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-}+ HasField "sType" VkBufferMemoryRequirementsInfo2 where+ type FieldType "sType" VkBufferMemoryRequirementsInfo2 =+ VkStructureType+ type FieldOptional "sType" VkBufferMemoryRequirementsInfo2 = 'False -- ' closing tick for hsc2hs+ type FieldOffset "sType" VkBufferMemoryRequirementsInfo2 =+ #{offset VkBufferMemoryRequirementsInfo2, sType}+ type FieldIsArray "sType" VkBufferMemoryRequirementsInfo2 = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkBufferMemoryRequirementsInfo2, sType}++instance {-# OVERLAPPING #-}+ CanReadField "sType" VkBufferMemoryRequirementsInfo2 where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBufferMemoryRequirementsInfo2, sType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBufferMemoryRequirementsInfo2, sType}++instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkBufferMemoryRequirementsInfo2 where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBufferMemoryRequirementsInfo2, sType}++instance {-# OVERLAPPING #-}+ HasField "pNext" VkBufferMemoryRequirementsInfo2 where+ type FieldType "pNext" VkBufferMemoryRequirementsInfo2 = Ptr Void+ type FieldOptional "pNext" VkBufferMemoryRequirementsInfo2 = 'False -- ' closing tick for hsc2hs+ type FieldOffset "pNext" VkBufferMemoryRequirementsInfo2 =+ #{offset VkBufferMemoryRequirementsInfo2, pNext}+ type FieldIsArray "pNext" VkBufferMemoryRequirementsInfo2 = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkBufferMemoryRequirementsInfo2, pNext}++instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkBufferMemoryRequirementsInfo2 where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBufferMemoryRequirementsInfo2, pNext})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBufferMemoryRequirementsInfo2, pNext}++instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkBufferMemoryRequirementsInfo2 where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBufferMemoryRequirementsInfo2, pNext}++instance {-# OVERLAPPING #-}+ HasField "buffer" VkBufferMemoryRequirementsInfo2 where+ type FieldType "buffer" VkBufferMemoryRequirementsInfo2 = VkBuffer+ type FieldOptional "buffer" VkBufferMemoryRequirementsInfo2 =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "buffer" VkBufferMemoryRequirementsInfo2 =+ #{offset VkBufferMemoryRequirementsInfo2, buffer}+ type FieldIsArray "buffer" VkBufferMemoryRequirementsInfo2 = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkBufferMemoryRequirementsInfo2, buffer}++instance {-# OVERLAPPING #-}+ CanReadField "buffer" VkBufferMemoryRequirementsInfo2 where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBufferMemoryRequirementsInfo2, buffer})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkBufferMemoryRequirementsInfo2, buffer}++instance {-# OVERLAPPING #-}+ CanWriteField "buffer" VkBufferMemoryRequirementsInfo2 where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkBufferMemoryRequirementsInfo2, buffer}++instance Show VkBufferMemoryRequirementsInfo2 where+ showsPrec d x+ = showString "VkBufferMemoryRequirementsInfo2 {" .+ showString "sType = " .+ showsPrec d (getField @"sType" x) .+ showString ", " .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) .+ showString ", " .+ showString "buffer = " .+ showsPrec d (getField @"buffer" x) . showChar '}'
@@ -0,0 +1,11 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Types.Struct.VkBufferMemoryRequirementsInfo2KHR+ (VkBufferMemoryRequirementsInfo2(..),+ VkBufferMemoryRequirementsInfo2KHR)+ where+import Graphics.Vulkan.Types.Struct.VkBufferMemoryRequirementsInfo2 (VkBufferMemoryRequirementsInfo2 (..))++-- | Alias for `VkBufferMemoryRequirementsInfo2`+type VkBufferMemoryRequirementsInfo2KHR =+ VkBufferMemoryRequirementsInfo2
@@ -1,246 +0,0 @@-#include "vulkan/vulkan.h"--{-# LANGUAGE DataKinds #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE MagicHash #-}-{-# LANGUAGE MultiParamTypeClasses #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE TypeFamilies #-}-module Graphics.Vulkan.Types.Struct.VkBufferMemoryRequirementsInfo2KHR- (VkBufferMemoryRequirementsInfo2KHR(..)) where-import Foreign.Storable (Storable (..))-import GHC.Prim-import Graphics.Vulkan.Marshal-import Graphics.Vulkan.Marshal.Internal-import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)-import Graphics.Vulkan.Types.Handles (VkBuffer)-import Graphics.Vulkan.Types.StructMembers-import System.IO.Unsafe (unsafeDupablePerformIO)---- | > typedef struct VkBufferMemoryRequirementsInfo2KHR {--- > VkStructureType sType;--- > const void* pNext;--- > VkBuffer buffer;--- > } VkBufferMemoryRequirementsInfo2KHR;------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkBufferMemoryRequirementsInfo2KHR.html VkBufferMemoryRequirementsInfo2KHR registry at www.khronos.org>-data VkBufferMemoryRequirementsInfo2KHR = VkBufferMemoryRequirementsInfo2KHR## Addr##- ByteArray##--instance Eq VkBufferMemoryRequirementsInfo2KHR where- (VkBufferMemoryRequirementsInfo2KHR## a _) ==- x@(VkBufferMemoryRequirementsInfo2KHR## b _)- = EQ == cmpBytes## (sizeOf x) a b-- {-# INLINE (==) #-}--instance Ord VkBufferMemoryRequirementsInfo2KHR where- (VkBufferMemoryRequirementsInfo2KHR## a _) `compare`- x@(VkBufferMemoryRequirementsInfo2KHR## b _)- = cmpBytes## (sizeOf x) a b-- {-# INLINE compare #-}--instance Storable VkBufferMemoryRequirementsInfo2KHR where- sizeOf ~_ = #{size VkBufferMemoryRequirementsInfo2KHR}-- {-# INLINE sizeOf #-}- alignment ~_- = #{alignment VkBufferMemoryRequirementsInfo2KHR}-- {-# INLINE alignment #-}- peek = peekVkData##-- {-# INLINE peek #-}- poke = pokeVkData##-- {-# INLINE poke #-}--instance VulkanMarshalPrim VkBufferMemoryRequirementsInfo2KHR where- unsafeAddr (VkBufferMemoryRequirementsInfo2KHR## a _) = a-- {-# INLINE unsafeAddr #-}- unsafeByteArray (VkBufferMemoryRequirementsInfo2KHR## _ b) = b-- {-# INLINE unsafeByteArray #-}- unsafeFromByteArrayOffset off b- = VkBufferMemoryRequirementsInfo2KHR##- (plusAddr## (byteArrayContents## b) off)- b-- {-# INLINE unsafeFromByteArrayOffset #-}--instance VulkanMarshal VkBufferMemoryRequirementsInfo2KHR where- type StructFields VkBufferMemoryRequirementsInfo2KHR =- '["sType", "pNext", "buffer"] -- ' closing tick for hsc2hs- type CUnionType VkBufferMemoryRequirementsInfo2KHR = 'False -- ' closing tick for hsc2hs- type ReturnedOnly VkBufferMemoryRequirementsInfo2KHR = 'False -- ' closing tick for hsc2hs- type StructExtends VkBufferMemoryRequirementsInfo2KHR = '[] -- ' closing tick for hsc2hs--instance {-# OVERLAPPING #-}- HasVkSType VkBufferMemoryRequirementsInfo2KHR where- type VkSTypeMType VkBufferMemoryRequirementsInfo2KHR =- VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBufferMemoryRequirementsInfo2KHR, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkBufferMemoryRequirementsInfo2KHR, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkBufferMemoryRequirementsInfo2KHR, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkBufferMemoryRequirementsInfo2KHR, sType}--instance {-# OVERLAPPING #-}- HasField "sType" VkBufferMemoryRequirementsInfo2KHR where- type FieldType "sType" VkBufferMemoryRequirementsInfo2KHR =- VkStructureType- type FieldOptional "sType" VkBufferMemoryRequirementsInfo2KHR =- 'False -- ' closing tick for hsc2hs- type FieldOffset "sType" VkBufferMemoryRequirementsInfo2KHR =- #{offset VkBufferMemoryRequirementsInfo2KHR, sType}- type FieldIsArray "sType" VkBufferMemoryRequirementsInfo2KHR =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkBufferMemoryRequirementsInfo2KHR, sType}--instance CanReadField "sType" VkBufferMemoryRequirementsInfo2KHR- where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance CanWriteField "sType" VkBufferMemoryRequirementsInfo2KHR- where- {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-}- HasVkPNext VkBufferMemoryRequirementsInfo2KHR where- type VkPNextMType VkBufferMemoryRequirementsInfo2KHR = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBufferMemoryRequirementsInfo2KHR, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkBufferMemoryRequirementsInfo2KHR, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkBufferMemoryRequirementsInfo2KHR, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkBufferMemoryRequirementsInfo2KHR, pNext}--instance {-# OVERLAPPING #-}- HasField "pNext" VkBufferMemoryRequirementsInfo2KHR where- type FieldType "pNext" VkBufferMemoryRequirementsInfo2KHR =- Ptr Void- type FieldOptional "pNext" VkBufferMemoryRequirementsInfo2KHR =- 'False -- ' closing tick for hsc2hs- type FieldOffset "pNext" VkBufferMemoryRequirementsInfo2KHR =- #{offset VkBufferMemoryRequirementsInfo2KHR, pNext}- type FieldIsArray "pNext" VkBufferMemoryRequirementsInfo2KHR =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkBufferMemoryRequirementsInfo2KHR, pNext}--instance CanReadField "pNext" VkBufferMemoryRequirementsInfo2KHR- where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkBufferMemoryRequirementsInfo2KHR- where- {-# INLINE writeField #-}- writeField = writeVkPNext--instance {-# OVERLAPPING #-}- HasVkBuffer VkBufferMemoryRequirementsInfo2KHR where- type VkBufferMType VkBufferMemoryRequirementsInfo2KHR = VkBuffer-- {-# NOINLINE vkBuffer #-}- vkBuffer x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBufferMemoryRequirementsInfo2KHR, buffer})-- {-# INLINE vkBufferByteOffset #-}- vkBufferByteOffset ~_- = #{offset VkBufferMemoryRequirementsInfo2KHR, buffer}-- {-# INLINE readVkBuffer #-}- readVkBuffer p- = peekByteOff p #{offset VkBufferMemoryRequirementsInfo2KHR, buffer}-- {-# INLINE writeVkBuffer #-}- writeVkBuffer p- = pokeByteOff p #{offset VkBufferMemoryRequirementsInfo2KHR, buffer}--instance {-# OVERLAPPING #-}- HasField "buffer" VkBufferMemoryRequirementsInfo2KHR where- type FieldType "buffer" VkBufferMemoryRequirementsInfo2KHR =- VkBuffer- type FieldOptional "buffer" VkBufferMemoryRequirementsInfo2KHR =- 'False -- ' closing tick for hsc2hs- type FieldOffset "buffer" VkBufferMemoryRequirementsInfo2KHR =- #{offset VkBufferMemoryRequirementsInfo2KHR, buffer}- type FieldIsArray "buffer" VkBufferMemoryRequirementsInfo2KHR =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkBufferMemoryRequirementsInfo2KHR, buffer}--instance CanReadField "buffer" VkBufferMemoryRequirementsInfo2KHR- where- {-# INLINE getField #-}- getField = vkBuffer-- {-# INLINE readField #-}- readField = readVkBuffer--instance CanWriteField "buffer" VkBufferMemoryRequirementsInfo2KHR- where- {-# INLINE writeField #-}- writeField = writeVkBuffer--instance Show VkBufferMemoryRequirementsInfo2KHR where- showsPrec d x- = showString "VkBufferMemoryRequirementsInfo2KHR {" .- showString "vkSType = " .- showsPrec d (vkSType x) .- showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .- showString ", " .- showString "vkBuffer = " . showsPrec d (vkBuffer x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkBufferViewCreateInfo (VkBufferViewCreateInfo(..)) where@@ -17,7 +18,6 @@ import Graphics.Vulkan.Types.Enum.VkFormat (VkFormat) import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType) import Graphics.Vulkan.Types.Handles (VkBuffer)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkBufferViewCreateInfo {@@ -30,7 +30,7 @@ -- > VkDeviceSize range; -- > } VkBufferViewCreateInfo; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkBufferViewCreateInfo.html VkBufferViewCreateInfo registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkBufferViewCreateInfo.html VkBufferViewCreateInfo registry at www.khronos.org> data VkBufferViewCreateInfo = VkBufferViewCreateInfo## Addr## ByteArray## @@ -79,27 +79,6 @@ type ReturnedOnly VkBufferViewCreateInfo = 'False -- ' closing tick for hsc2hs type StructExtends VkBufferViewCreateInfo = '[] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkSType VkBufferViewCreateInfo- where- type VkSTypeMType VkBufferViewCreateInfo = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBufferViewCreateInfo, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkBufferViewCreateInfo, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkBufferViewCreateInfo, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkBufferViewCreateInfo, sType}- instance {-# OVERLAPPING #-} HasField "sType" VkBufferViewCreateInfo where type FieldType "sType" VkBufferViewCreateInfo = VkStructureType@@ -114,37 +93,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkBufferViewCreateInfo, sType} -instance CanReadField "sType" VkBufferViewCreateInfo where- {-# INLINE getField #-}- getField = vkSType+instance {-# OVERLAPPING #-}+ CanReadField "sType" VkBufferViewCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBufferViewCreateInfo, sType}) {-# INLINE readField #-}- readField = readVkSType+ readField p+ = peekByteOff p #{offset VkBufferViewCreateInfo, sType} -instance CanWriteField "sType" VkBufferViewCreateInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkBufferViewCreateInfo where {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-} HasVkPNext VkBufferViewCreateInfo- where- type VkPNextMType VkBufferViewCreateInfo = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBufferViewCreateInfo, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkBufferViewCreateInfo, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkBufferViewCreateInfo, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkBufferViewCreateInfo, pNext}+ writeField p+ = pokeByteOff p #{offset VkBufferViewCreateInfo, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkBufferViewCreateInfo where@@ -160,37 +124,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkBufferViewCreateInfo, pNext} -instance CanReadField "pNext" VkBufferViewCreateInfo where- {-# INLINE getField #-}- getField = vkPNext+instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkBufferViewCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBufferViewCreateInfo, pNext}) {-# INLINE readField #-}- readField = readVkPNext+ readField p+ = peekByteOff p #{offset VkBufferViewCreateInfo, pNext} -instance CanWriteField "pNext" VkBufferViewCreateInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkBufferViewCreateInfo where {-# INLINE writeField #-}- writeField = writeVkPNext--instance {-# OVERLAPPING #-} HasVkFlags VkBufferViewCreateInfo- where- type VkFlagsMType VkBufferViewCreateInfo = VkBufferViewCreateFlags-- {-# NOINLINE vkFlags #-}- vkFlags x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBufferViewCreateInfo, flags})-- {-# INLINE vkFlagsByteOffset #-}- vkFlagsByteOffset ~_- = #{offset VkBufferViewCreateInfo, flags}-- {-# INLINE readVkFlags #-}- readVkFlags p- = peekByteOff p #{offset VkBufferViewCreateInfo, flags}-- {-# INLINE writeVkFlags #-}- writeVkFlags p- = pokeByteOff p #{offset VkBufferViewCreateInfo, flags}+ writeField p+ = pokeByteOff p #{offset VkBufferViewCreateInfo, pNext} instance {-# OVERLAPPING #-} HasField "flags" VkBufferViewCreateInfo where@@ -207,37 +156,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkBufferViewCreateInfo, flags} -instance CanReadField "flags" VkBufferViewCreateInfo where- {-# INLINE getField #-}- getField = vkFlags+instance {-# OVERLAPPING #-}+ CanReadField "flags" VkBufferViewCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBufferViewCreateInfo, flags}) {-# INLINE readField #-}- readField = readVkFlags+ readField p+ = peekByteOff p #{offset VkBufferViewCreateInfo, flags} -instance CanWriteField "flags" VkBufferViewCreateInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "flags" VkBufferViewCreateInfo where {-# INLINE writeField #-}- writeField = writeVkFlags--instance {-# OVERLAPPING #-} HasVkBuffer VkBufferViewCreateInfo- where- type VkBufferMType VkBufferViewCreateInfo = VkBuffer-- {-# NOINLINE vkBuffer #-}- vkBuffer x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBufferViewCreateInfo, buffer})-- {-# INLINE vkBufferByteOffset #-}- vkBufferByteOffset ~_- = #{offset VkBufferViewCreateInfo, buffer}-- {-# INLINE readVkBuffer #-}- readVkBuffer p- = peekByteOff p #{offset VkBufferViewCreateInfo, buffer}-- {-# INLINE writeVkBuffer #-}- writeVkBuffer p- = pokeByteOff p #{offset VkBufferViewCreateInfo, buffer}+ writeField p+ = pokeByteOff p #{offset VkBufferViewCreateInfo, flags} instance {-# OVERLAPPING #-} HasField "buffer" VkBufferViewCreateInfo where@@ -253,37 +187,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkBufferViewCreateInfo, buffer} -instance CanReadField "buffer" VkBufferViewCreateInfo where- {-# INLINE getField #-}- getField = vkBuffer+instance {-# OVERLAPPING #-}+ CanReadField "buffer" VkBufferViewCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBufferViewCreateInfo, buffer}) {-# INLINE readField #-}- readField = readVkBuffer+ readField p+ = peekByteOff p #{offset VkBufferViewCreateInfo, buffer} -instance CanWriteField "buffer" VkBufferViewCreateInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "buffer" VkBufferViewCreateInfo where {-# INLINE writeField #-}- writeField = writeVkBuffer--instance {-# OVERLAPPING #-} HasVkFormat VkBufferViewCreateInfo- where- type VkFormatMType VkBufferViewCreateInfo = VkFormat-- {-# NOINLINE vkFormat #-}- vkFormat x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBufferViewCreateInfo, format})-- {-# INLINE vkFormatByteOffset #-}- vkFormatByteOffset ~_- = #{offset VkBufferViewCreateInfo, format}-- {-# INLINE readVkFormat #-}- readVkFormat p- = peekByteOff p #{offset VkBufferViewCreateInfo, format}-- {-# INLINE writeVkFormat #-}- writeVkFormat p- = pokeByteOff p #{offset VkBufferViewCreateInfo, format}+ writeField p+ = pokeByteOff p #{offset VkBufferViewCreateInfo, buffer} instance {-# OVERLAPPING #-} HasField "format" VkBufferViewCreateInfo where@@ -299,37 +218,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkBufferViewCreateInfo, format} -instance CanReadField "format" VkBufferViewCreateInfo where- {-# INLINE getField #-}- getField = vkFormat+instance {-# OVERLAPPING #-}+ CanReadField "format" VkBufferViewCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBufferViewCreateInfo, format}) {-# INLINE readField #-}- readField = readVkFormat+ readField p+ = peekByteOff p #{offset VkBufferViewCreateInfo, format} -instance CanWriteField "format" VkBufferViewCreateInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "format" VkBufferViewCreateInfo where {-# INLINE writeField #-}- writeField = writeVkFormat--instance {-# OVERLAPPING #-} HasVkOffset VkBufferViewCreateInfo- where- type VkOffsetMType VkBufferViewCreateInfo = VkDeviceSize-- {-# NOINLINE vkOffset #-}- vkOffset x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBufferViewCreateInfo, offset})-- {-# INLINE vkOffsetByteOffset #-}- vkOffsetByteOffset ~_- = #{offset VkBufferViewCreateInfo, offset}-- {-# INLINE readVkOffset #-}- readVkOffset p- = peekByteOff p #{offset VkBufferViewCreateInfo, offset}-- {-# INLINE writeVkOffset #-}- writeVkOffset p- = pokeByteOff p #{offset VkBufferViewCreateInfo, offset}+ writeField p+ = pokeByteOff p #{offset VkBufferViewCreateInfo, format} instance {-# OVERLAPPING #-} HasField "offset" VkBufferViewCreateInfo where@@ -345,37 +249,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkBufferViewCreateInfo, offset} -instance CanReadField "offset" VkBufferViewCreateInfo where- {-# INLINE getField #-}- getField = vkOffset+instance {-# OVERLAPPING #-}+ CanReadField "offset" VkBufferViewCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBufferViewCreateInfo, offset}) {-# INLINE readField #-}- readField = readVkOffset+ readField p+ = peekByteOff p #{offset VkBufferViewCreateInfo, offset} -instance CanWriteField "offset" VkBufferViewCreateInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "offset" VkBufferViewCreateInfo where {-# INLINE writeField #-}- writeField = writeVkOffset--instance {-# OVERLAPPING #-} HasVkRange VkBufferViewCreateInfo- where- type VkRangeMType VkBufferViewCreateInfo = VkDeviceSize-- {-# NOINLINE vkRange #-}- vkRange x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkBufferViewCreateInfo, range})-- {-# INLINE vkRangeByteOffset #-}- vkRangeByteOffset ~_- = #{offset VkBufferViewCreateInfo, range}-- {-# INLINE readVkRange #-}- readVkRange p- = peekByteOff p #{offset VkBufferViewCreateInfo, range}-- {-# INLINE writeVkRange #-}- writeVkRange p- = pokeByteOff p #{offset VkBufferViewCreateInfo, range}+ writeField p+ = pokeByteOff p #{offset VkBufferViewCreateInfo, offset} instance {-# OVERLAPPING #-} HasField "range" VkBufferViewCreateInfo where@@ -391,37 +280,43 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkBufferViewCreateInfo, range} -instance CanReadField "range" VkBufferViewCreateInfo where- {-# INLINE getField #-}- getField = vkRange+instance {-# OVERLAPPING #-}+ CanReadField "range" VkBufferViewCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkBufferViewCreateInfo, range}) {-# INLINE readField #-}- readField = readVkRange+ readField p+ = peekByteOff p #{offset VkBufferViewCreateInfo, range} -instance CanWriteField "range" VkBufferViewCreateInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "range" VkBufferViewCreateInfo where {-# INLINE writeField #-}- writeField = writeVkRange+ writeField p+ = pokeByteOff p #{offset VkBufferViewCreateInfo, range} instance Show VkBufferViewCreateInfo where showsPrec d x = showString "VkBufferViewCreateInfo {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkFlags = " .- showsPrec d (vkFlags x) .+ showString "flags = " .+ showsPrec d (getField @"flags" x) . showString ", " .- showString "vkBuffer = " .- showsPrec d (vkBuffer x) .+ showString "buffer = " .+ showsPrec d (getField @"buffer" x) . showString ", " .- showString "vkFormat = " .- showsPrec d (vkFormat x) .+ showString "format = " .+ showsPrec d (getField @"format" x) . showString ", " .- showString "vkOffset = " .- showsPrec d (vkOffset x) .+ showString "offset = " .+ showsPrec d (getField @"offset" x) . showString ", " .- showString "vkRange = " .- showsPrec d (vkRange x) . showChar '}'+ showString "range = " .+ showsPrec d (getField @"range" x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkClearAttachment (VkClearAttachment(..)) where@@ -14,7 +15,6 @@ import Graphics.Vulkan.Marshal.Internal import Graphics.Vulkan.Types.Enum.VkImageAspectFlags (VkImageAspectFlags) import Graphics.Vulkan.Types.Struct.VkClearValue (VkClearValue)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkClearAttachment {@@ -23,7 +23,7 @@ -- > VkClearValue clearValue; -- > } VkClearAttachment; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkClearAttachment.html VkClearAttachment registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkClearAttachment.html VkClearAttachment registry at www.khronos.org> data VkClearAttachment = VkClearAttachment## Addr## ByteArray## instance Eq VkClearAttachment where@@ -71,27 +71,6 @@ type ReturnedOnly VkClearAttachment = 'False -- ' closing tick for hsc2hs type StructExtends VkClearAttachment = '[] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkAspectMask VkClearAttachment- where- type VkAspectMaskMType VkClearAttachment = VkImageAspectFlags-- {-# NOINLINE vkAspectMask #-}- vkAspectMask x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkClearAttachment, aspectMask})-- {-# INLINE vkAspectMaskByteOffset #-}- vkAspectMaskByteOffset ~_- = #{offset VkClearAttachment, aspectMask}-- {-# INLINE readVkAspectMask #-}- readVkAspectMask p- = peekByteOff p #{offset VkClearAttachment, aspectMask}-- {-# INLINE writeVkAspectMask #-}- writeVkAspectMask p- = pokeByteOff p #{offset VkClearAttachment, aspectMask}- instance {-# OVERLAPPING #-} HasField "aspectMask" VkClearAttachment where type FieldType "aspectMask" VkClearAttachment = VkImageAspectFlags@@ -106,37 +85,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkClearAttachment, aspectMask} -instance CanReadField "aspectMask" VkClearAttachment where- {-# INLINE getField #-}- getField = vkAspectMask+instance {-# OVERLAPPING #-}+ CanReadField "aspectMask" VkClearAttachment where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkClearAttachment, aspectMask}) {-# INLINE readField #-}- readField = readVkAspectMask+ readField p+ = peekByteOff p #{offset VkClearAttachment, aspectMask} -instance CanWriteField "aspectMask" VkClearAttachment where+instance {-# OVERLAPPING #-}+ CanWriteField "aspectMask" VkClearAttachment where {-# INLINE writeField #-}- writeField = writeVkAspectMask--instance {-# OVERLAPPING #-} HasVkColorAttachment VkClearAttachment- where- type VkColorAttachmentMType VkClearAttachment = Word32-- {-# NOINLINE vkColorAttachment #-}- vkColorAttachment x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkClearAttachment, colorAttachment})-- {-# INLINE vkColorAttachmentByteOffset #-}- vkColorAttachmentByteOffset ~_- = #{offset VkClearAttachment, colorAttachment}-- {-# INLINE readVkColorAttachment #-}- readVkColorAttachment p- = peekByteOff p #{offset VkClearAttachment, colorAttachment}-- {-# INLINE writeVkColorAttachment #-}- writeVkColorAttachment p- = pokeByteOff p #{offset VkClearAttachment, colorAttachment}+ writeField p+ = pokeByteOff p #{offset VkClearAttachment, aspectMask} instance {-# OVERLAPPING #-} HasField "colorAttachment" VkClearAttachment where@@ -153,37 +117,22 @@ fieldOffset = #{offset VkClearAttachment, colorAttachment} -instance CanReadField "colorAttachment" VkClearAttachment where- {-# INLINE getField #-}- getField = vkColorAttachment+instance {-# OVERLAPPING #-}+ CanReadField "colorAttachment" VkClearAttachment where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkClearAttachment, colorAttachment}) {-# INLINE readField #-}- readField = readVkColorAttachment+ readField p+ = peekByteOff p #{offset VkClearAttachment, colorAttachment} -instance CanWriteField "colorAttachment" VkClearAttachment where+instance {-# OVERLAPPING #-}+ CanWriteField "colorAttachment" VkClearAttachment where {-# INLINE writeField #-}- writeField = writeVkColorAttachment--instance {-# OVERLAPPING #-} HasVkClearValue VkClearAttachment- where- type VkClearValueMType VkClearAttachment = VkClearValue-- {-# NOINLINE vkClearValue #-}- vkClearValue x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkClearAttachment, clearValue})-- {-# INLINE vkClearValueByteOffset #-}- vkClearValueByteOffset ~_- = #{offset VkClearAttachment, clearValue}-- {-# INLINE readVkClearValue #-}- readVkClearValue p- = peekByteOff p #{offset VkClearAttachment, clearValue}-- {-# INLINE writeVkClearValue #-}- writeVkClearValue p- = pokeByteOff p #{offset VkClearAttachment, clearValue}+ writeField p+ = pokeByteOff p #{offset VkClearAttachment, colorAttachment} instance {-# OVERLAPPING #-} HasField "clearValue" VkClearAttachment where@@ -199,25 +148,31 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkClearAttachment, clearValue} -instance CanReadField "clearValue" VkClearAttachment where- {-# INLINE getField #-}- getField = vkClearValue+instance {-# OVERLAPPING #-}+ CanReadField "clearValue" VkClearAttachment where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkClearAttachment, clearValue}) {-# INLINE readField #-}- readField = readVkClearValue+ readField p+ = peekByteOff p #{offset VkClearAttachment, clearValue} -instance CanWriteField "clearValue" VkClearAttachment where+instance {-# OVERLAPPING #-}+ CanWriteField "clearValue" VkClearAttachment where {-# INLINE writeField #-}- writeField = writeVkClearValue+ writeField p+ = pokeByteOff p #{offset VkClearAttachment, clearValue} instance Show VkClearAttachment where showsPrec d x = showString "VkClearAttachment {" .- showString "vkAspectMask = " .- showsPrec d (vkAspectMask x) .+ showString "aspectMask = " .+ showsPrec d (getField @"aspectMask" x) . showString ", " .- showString "vkColorAttachment = " .- showsPrec d (vkColorAttachment x) .+ showString "colorAttachment = " .+ showsPrec d (getField @"colorAttachment" x) . showString ", " .- showString "vkClearValue = " .- showsPrec d (vkClearValue x) . showChar '}'+ showString "clearValue = " .+ showsPrec d (getField @"clearValue" x) . showChar '}'
@@ -8,17 +8,17 @@ {-# LANGUAGE PatternSynonyms #-} {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} {-# LANGUAGE UndecidableInstances #-} module Graphics.Vulkan.Types.Struct.VkClearColorValue (VkClearColorValue(..)) where-import Foreign.Storable (Storable (..))+import Foreign.Storable (Storable (..)) import GHC.Prim-import GHC.TypeLits (KnownNat, natVal') -- ' closing tick for hsc2hs+import GHC.TypeLits (KnownNat, natVal') -- ' closing tick for hsc2hs import Graphics.Vulkan.Marshal import Graphics.Vulkan.Marshal.Internal-import Graphics.Vulkan.Types.StructMembers-import System.IO.Unsafe (unsafeDupablePerformIO)+import System.IO.Unsafe (unsafeDupablePerformIO) -- | // Union allowing specification of floating point, integer, or unsigned integer color data. Actual value selected is based on image/attachment being cleared. --@@ -28,7 +28,7 @@ -- > uint32_t uint32[4]; -- > } VkClearColorValue; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkClearColorValue.html VkClearColorValue registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkClearColorValue.html VkClearColorValue registry at www.khronos.org> data VkClearColorValue = VkClearColorValue## Addr## ByteArray## instance Eq VkClearColorValue where@@ -76,34 +76,6 @@ type ReturnedOnly VkClearColorValue = 'False -- ' closing tick for hsc2hs type StructExtends VkClearColorValue = '[] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkFloat32Array VkClearColorValue- where- type VkFloat32ArrayMType VkClearColorValue =- #{type float}-- {-# NOINLINE vkFloat32Array #-}- vkFloat32Array x idx- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x)- (idx * sizeOf (undefined :: #{type float}) +- #{offset VkClearColorValue, float32}))-- {-# INLINE vkFloat32ArrayByteOffset #-}- vkFloat32ArrayByteOffset ~_- = #{offset VkClearColorValue, float32}-- {-# INLINE readVkFloat32Array #-}- readVkFloat32Array p idx- = peekByteOff p- (idx * sizeOf (undefined :: #{type float}) +- #{offset VkClearColorValue, float32})-- {-# INLINE writeVkFloat32Array #-}- writeVkFloat32Array p idx- = pokeByteOff p- (idx * sizeOf (undefined :: #{type float}) +- #{offset VkClearColorValue, float32})- instance {-# OVERLAPPING #-} HasField "float32" VkClearColorValue where type FieldType "float32" VkClearColorValue =@@ -119,8 +91,8 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkClearColorValue, float32} -instance (KnownNat idx,- IndexInBounds "float32" idx VkClearColorValue) =>+instance {-# OVERLAPPING #-}+ (KnownNat idx, IndexInBounds "float32" idx VkClearColorValue) => CanReadFieldArray "float32" idx VkClearColorValue where {-# SPECIALISE instance@@ -140,16 +112,23 @@ fieldArrayLength = 4 {-# INLINE getFieldArray #-}- getFieldArray x- = vkFloat32Array x (fromInteger $ natVal' (proxy## :: Proxy## idx)) -- ' closing tick for hsc2hs+ getFieldArray = f+ where {-# NOINLINE f #-}+ f x = unsafeDupablePerformIO (peekByteOff (unsafePtr x) off)+ off+ = #{offset VkClearColorValue, float32} ++ sizeOf (undefined :: #{type float}) *+ fromInteger (natVal' (proxy## :: Proxy## idx)) -- ' closing tick for hsc2hs {-# INLINE readFieldArray #-}- readFieldArray x- = readVkFloat32Array x- (fromInteger $ natVal' (proxy## :: Proxy## idx)) -- ' closing tick for hsc2hs+ readFieldArray p+ = peekByteOff p+ (#{offset VkClearColorValue, float32} ++ sizeOf (undefined :: #{type float}) *+ fromInteger (natVal' (proxy## :: Proxy## idx))) -- ' closing tick for hsc2hs -instance (KnownNat idx,- IndexInBounds "float32" idx VkClearColorValue) =>+instance {-# OVERLAPPING #-}+ (KnownNat idx, IndexInBounds "float32" idx VkClearColorValue) => CanWriteFieldArray "float32" idx VkClearColorValue where {-# SPECIALISE instance@@ -165,36 +144,11 @@ CanWriteFieldArray "float32" 3 VkClearColorValue #-} {-# INLINE writeFieldArray #-}- writeFieldArray x- = writeVkFloat32Array x- (fromInteger $ natVal' (proxy## :: Proxy## idx)) -- ' closing tick for hsc2hs--instance {-# OVERLAPPING #-} HasVkInt32Array VkClearColorValue- where- type VkInt32ArrayMType VkClearColorValue = Int32-- {-# NOINLINE vkInt32Array #-}- vkInt32Array x idx- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x)- (idx * sizeOf (undefined :: Int32) +- #{offset VkClearColorValue, int32}))-- {-# INLINE vkInt32ArrayByteOffset #-}- vkInt32ArrayByteOffset ~_- = #{offset VkClearColorValue, int32}-- {-# INLINE readVkInt32Array #-}- readVkInt32Array p idx- = peekByteOff p- (idx * sizeOf (undefined :: Int32) +- #{offset VkClearColorValue, int32})-- {-# INLINE writeVkInt32Array #-}- writeVkInt32Array p idx+ writeFieldArray p = pokeByteOff p- (idx * sizeOf (undefined :: Int32) +- #{offset VkClearColorValue, int32})+ (#{offset VkClearColorValue, float32} ++ sizeOf (undefined :: #{type float}) *+ fromInteger (natVal' (proxy## :: Proxy## idx))) -- ' closing tick for hsc2hs instance {-# OVERLAPPING #-} HasField "int32" VkClearColorValue where@@ -210,8 +164,8 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkClearColorValue, int32} -instance (KnownNat idx,- IndexInBounds "int32" idx VkClearColorValue) =>+instance {-# OVERLAPPING #-}+ (KnownNat idx, IndexInBounds "int32" idx VkClearColorValue) => CanReadFieldArray "int32" idx VkClearColorValue where {-# SPECIALISE instance@@ -231,15 +185,23 @@ fieldArrayLength = 4 {-# INLINE getFieldArray #-}- getFieldArray x- = vkInt32Array x (fromInteger $ natVal' (proxy## :: Proxy## idx)) -- ' closing tick for hsc2hs+ getFieldArray = f+ where {-# NOINLINE f #-}+ f x = unsafeDupablePerformIO (peekByteOff (unsafePtr x) off)+ off+ = #{offset VkClearColorValue, int32} ++ sizeOf (undefined :: Int32) *+ fromInteger (natVal' (proxy## :: Proxy## idx)) -- ' closing tick for hsc2hs {-# INLINE readFieldArray #-}- readFieldArray x- = readVkInt32Array x (fromInteger $ natVal' (proxy## :: Proxy## idx)) -- ' closing tick for hsc2hs+ readFieldArray p+ = peekByteOff p+ (#{offset VkClearColorValue, int32} ++ sizeOf (undefined :: Int32) *+ fromInteger (natVal' (proxy## :: Proxy## idx))) -- ' closing tick for hsc2hs -instance (KnownNat idx,- IndexInBounds "int32" idx VkClearColorValue) =>+instance {-# OVERLAPPING #-}+ (KnownNat idx, IndexInBounds "int32" idx VkClearColorValue) => CanWriteFieldArray "int32" idx VkClearColorValue where {-# SPECIALISE instance@@ -255,36 +217,11 @@ CanWriteFieldArray "int32" 3 VkClearColorValue #-} {-# INLINE writeFieldArray #-}- writeFieldArray x- = writeVkInt32Array x- (fromInteger $ natVal' (proxy## :: Proxy## idx)) -- ' closing tick for hsc2hs--instance {-# OVERLAPPING #-} HasVkUint32Array VkClearColorValue- where- type VkUint32ArrayMType VkClearColorValue = Word32-- {-# NOINLINE vkUint32Array #-}- vkUint32Array x idx- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x)- (idx * sizeOf (undefined :: Word32) +- #{offset VkClearColorValue, uint32}))-- {-# INLINE vkUint32ArrayByteOffset #-}- vkUint32ArrayByteOffset ~_- = #{offset VkClearColorValue, uint32}-- {-# INLINE readVkUint32Array #-}- readVkUint32Array p idx- = peekByteOff p- (idx * sizeOf (undefined :: Word32) +- #{offset VkClearColorValue, uint32})-- {-# INLINE writeVkUint32Array #-}- writeVkUint32Array p idx+ writeFieldArray p = pokeByteOff p- (idx * sizeOf (undefined :: Word32) +- #{offset VkClearColorValue, uint32})+ (#{offset VkClearColorValue, int32} ++ sizeOf (undefined :: Int32) *+ fromInteger (natVal' (proxy## :: Proxy## idx))) -- ' closing tick for hsc2hs instance {-# OVERLAPPING #-} HasField "uint32" VkClearColorValue where@@ -300,8 +237,8 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkClearColorValue, uint32} -instance (KnownNat idx,- IndexInBounds "uint32" idx VkClearColorValue) =>+instance {-# OVERLAPPING #-}+ (KnownNat idx, IndexInBounds "uint32" idx VkClearColorValue) => CanReadFieldArray "uint32" idx VkClearColorValue where {-# SPECIALISE instance@@ -321,16 +258,23 @@ fieldArrayLength = 4 {-# INLINE getFieldArray #-}- getFieldArray x- = vkUint32Array x (fromInteger $ natVal' (proxy## :: Proxy## idx)) -- ' closing tick for hsc2hs+ getFieldArray = f+ where {-# NOINLINE f #-}+ f x = unsafeDupablePerformIO (peekByteOff (unsafePtr x) off)+ off+ = #{offset VkClearColorValue, uint32} ++ sizeOf (undefined :: Word32) *+ fromInteger (natVal' (proxy## :: Proxy## idx)) -- ' closing tick for hsc2hs {-# INLINE readFieldArray #-}- readFieldArray x- = readVkUint32Array x- (fromInteger $ natVal' (proxy## :: Proxy## idx)) -- ' closing tick for hsc2hs+ readFieldArray p+ = peekByteOff p+ (#{offset VkClearColorValue, uint32} ++ sizeOf (undefined :: Word32) *+ fromInteger (natVal' (proxy## :: Proxy## idx))) -- ' closing tick for hsc2hs -instance (KnownNat idx,- IndexInBounds "uint32" idx VkClearColorValue) =>+instance {-# OVERLAPPING #-}+ (KnownNat idx, IndexInBounds "uint32" idx VkClearColorValue) => CanWriteFieldArray "uint32" idx VkClearColorValue where {-# SPECIALISE instance@@ -346,21 +290,51 @@ CanWriteFieldArray "uint32" 3 VkClearColorValue #-} {-# INLINE writeFieldArray #-}- writeFieldArray x- = writeVkUint32Array x- (fromInteger $ natVal' (proxy## :: Proxy## idx)) -- ' closing tick for hsc2hs+ writeFieldArray p+ = pokeByteOff p+ (#{offset VkClearColorValue, uint32} ++ sizeOf (undefined :: Word32) *+ fromInteger (natVal' (proxy## :: Proxy## idx))) -- ' closing tick for hsc2hs instance Show VkClearColorValue where showsPrec d x = showString "VkClearColorValue {" .- showString "vkFloat32Array = [" .- showsPrec d (map (vkFloat32Array x) [1 .. 4]) .- showChar ']' .+ (showString "float32 = [" .+ showsPrec d+ (let s = sizeOf+ (undefined :: FieldType "float32" VkClearColorValue)+ o = fieldOffset @"float32" @VkClearColorValue+ f i+ = peekByteOff (unsafePtr x) i ::+ IO (FieldType "float32" VkClearColorValue)+ in+ unsafeDupablePerformIO . mapM f $+ map (\ i -> o + i * s) [0 .. 4 - 1])+ . showChar ']')+ .+ showString ", " .+ (showString "int32 = [" .+ showsPrec d+ (let s = sizeOf (undefined :: FieldType "int32" VkClearColorValue)+ o = fieldOffset @"int32" @VkClearColorValue+ f i+ = peekByteOff (unsafePtr x) i ::+ IO (FieldType "int32" VkClearColorValue)+ in+ unsafeDupablePerformIO . mapM f $+ map (\ i -> o + i * s) [0 .. 4 - 1])+ . showChar ']')+ . showString ", " .- showString "vkInt32Array = [" .- showsPrec d (map (vkInt32Array x) [1 .. 4]) .- showChar ']' .- showString ", " .- showString "vkUint32Array = [" .- showsPrec d (map (vkUint32Array x) [1 .. 4]) .- showChar ']' . showChar '}'+ (showString "uint32 = [" .+ showsPrec d+ (let s = sizeOf (undefined :: FieldType "uint32" VkClearColorValue)+ o = fieldOffset @"uint32" @VkClearColorValue+ f i+ = peekByteOff (unsafePtr x) i ::+ IO (FieldType "uint32" VkClearColorValue)+ in+ unsafeDupablePerformIO . mapM f $+ map (\ i -> o + i * s) [0 .. 4 - 1])+ . showChar ']')+ . showChar '}'
@@ -5,22 +5,22 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkClearDepthStencilValue (VkClearDepthStencilValue(..)) where-import Foreign.Storable (Storable (..))+import Foreign.Storable (Storable (..)) import GHC.Prim import Graphics.Vulkan.Marshal import Graphics.Vulkan.Marshal.Internal-import Graphics.Vulkan.Types.StructMembers-import System.IO.Unsafe (unsafeDupablePerformIO)+import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkClearDepthStencilValue { -- > float depth; -- > uint32_t stencil; -- > } VkClearDepthStencilValue; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkClearDepthStencilValue.html VkClearDepthStencilValue registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkClearDepthStencilValue.html VkClearDepthStencilValue registry at www.khronos.org> data VkClearDepthStencilValue = VkClearDepthStencilValue## Addr## ByteArray## @@ -69,28 +69,6 @@ type ReturnedOnly VkClearDepthStencilValue = 'False -- ' closing tick for hsc2hs type StructExtends VkClearDepthStencilValue = '[] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkDepth VkClearDepthStencilValue- where- type VkDepthMType VkClearDepthStencilValue =- #{type float}-- {-# NOINLINE vkDepth #-}- vkDepth x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkClearDepthStencilValue, depth})-- {-# INLINE vkDepthByteOffset #-}- vkDepthByteOffset ~_- = #{offset VkClearDepthStencilValue, depth}-- {-# INLINE readVkDepth #-}- readVkDepth p- = peekByteOff p #{offset VkClearDepthStencilValue, depth}-- {-# INLINE writeVkDepth #-}- writeVkDepth p- = pokeByteOff p #{offset VkClearDepthStencilValue, depth}- instance {-# OVERLAPPING #-} HasField "depth" VkClearDepthStencilValue where type FieldType "depth" VkClearDepthStencilValue =@@ -106,37 +84,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkClearDepthStencilValue, depth} -instance CanReadField "depth" VkClearDepthStencilValue where- {-# INLINE getField #-}- getField = vkDepth+instance {-# OVERLAPPING #-}+ CanReadField "depth" VkClearDepthStencilValue where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkClearDepthStencilValue, depth}) {-# INLINE readField #-}- readField = readVkDepth+ readField p+ = peekByteOff p #{offset VkClearDepthStencilValue, depth} -instance CanWriteField "depth" VkClearDepthStencilValue where+instance {-# OVERLAPPING #-}+ CanWriteField "depth" VkClearDepthStencilValue where {-# INLINE writeField #-}- writeField = writeVkDepth--instance {-# OVERLAPPING #-} HasVkStencil VkClearDepthStencilValue- where- type VkStencilMType VkClearDepthStencilValue = Word32-- {-# NOINLINE vkStencil #-}- vkStencil x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkClearDepthStencilValue, stencil})-- {-# INLINE vkStencilByteOffset #-}- vkStencilByteOffset ~_- = #{offset VkClearDepthStencilValue, stencil}-- {-# INLINE readVkStencil #-}- readVkStencil p- = peekByteOff p #{offset VkClearDepthStencilValue, stencil}-- {-# INLINE writeVkStencil #-}- writeVkStencil p- = pokeByteOff p #{offset VkClearDepthStencilValue, stencil}+ writeField p+ = pokeByteOff p #{offset VkClearDepthStencilValue, depth} instance {-# OVERLAPPING #-} HasField "stencil" VkClearDepthStencilValue where@@ -153,22 +116,28 @@ fieldOffset = #{offset VkClearDepthStencilValue, stencil} -instance CanReadField "stencil" VkClearDepthStencilValue where- {-# INLINE getField #-}- getField = vkStencil+instance {-# OVERLAPPING #-}+ CanReadField "stencil" VkClearDepthStencilValue where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkClearDepthStencilValue, stencil}) {-# INLINE readField #-}- readField = readVkStencil+ readField p+ = peekByteOff p #{offset VkClearDepthStencilValue, stencil} -instance CanWriteField "stencil" VkClearDepthStencilValue where+instance {-# OVERLAPPING #-}+ CanWriteField "stencil" VkClearDepthStencilValue where {-# INLINE writeField #-}- writeField = writeVkStencil+ writeField p+ = pokeByteOff p #{offset VkClearDepthStencilValue, stencil} instance Show VkClearDepthStencilValue where showsPrec d x = showString "VkClearDepthStencilValue {" .- showString "vkDepth = " .- showsPrec d (vkDepth x) .+ showString "depth = " .+ showsPrec d (getField @"depth" x) . showString ", " .- showString "vkStencil = " .- showsPrec d (vkStencil x) . showChar '}'+ showString "stencil = " .+ showsPrec d (getField @"stencil" x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkClearRect (VkClearRect(..)) where@@ -13,7 +14,6 @@ import Graphics.Vulkan.Marshal import Graphics.Vulkan.Marshal.Internal import Graphics.Vulkan.Types.Struct.VkRect2D (VkRect2D)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkClearRect {@@ -22,7 +22,7 @@ -- > uint32_t layerCount; -- > } VkClearRect; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkClearRect.html VkClearRect registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkClearRect.html VkClearRect registry at www.khronos.org> data VkClearRect = VkClearRect## Addr## ByteArray## instance Eq VkClearRect where@@ -70,25 +70,6 @@ type ReturnedOnly VkClearRect = 'False -- ' closing tick for hsc2hs type StructExtends VkClearRect = '[] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkRect VkClearRect where- type VkRectMType VkClearRect = VkRect2D-- {-# NOINLINE vkRect #-}- vkRect x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkClearRect, rect})-- {-# INLINE vkRectByteOffset #-}- vkRectByteOffset ~_ = #{offset VkClearRect, rect}-- {-# INLINE readVkRect #-}- readVkRect p- = peekByteOff p #{offset VkClearRect, rect}-- {-# INLINE writeVkRect #-}- writeVkRect p- = pokeByteOff p #{offset VkClearRect, rect}- instance {-# OVERLAPPING #-} HasField "rect" VkClearRect where type FieldType "rect" VkClearRect = VkRect2D type FieldOptional "rect" VkClearRect = 'False -- ' closing tick for hsc2hs@@ -102,36 +83,19 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkClearRect, rect} -instance CanReadField "rect" VkClearRect where- {-# INLINE getField #-}- getField = vkRect+instance {-# OVERLAPPING #-} CanReadField "rect" VkClearRect where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkClearRect, rect}) {-# INLINE readField #-}- readField = readVkRect+ readField p = peekByteOff p #{offset VkClearRect, rect} -instance CanWriteField "rect" VkClearRect where+instance {-# OVERLAPPING #-} CanWriteField "rect" VkClearRect where {-# INLINE writeField #-}- writeField = writeVkRect--instance {-# OVERLAPPING #-} HasVkBaseArrayLayer VkClearRect where- type VkBaseArrayLayerMType VkClearRect = Word32-- {-# NOINLINE vkBaseArrayLayer #-}- vkBaseArrayLayer x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkClearRect, baseArrayLayer})-- {-# INLINE vkBaseArrayLayerByteOffset #-}- vkBaseArrayLayerByteOffset ~_- = #{offset VkClearRect, baseArrayLayer}-- {-# INLINE readVkBaseArrayLayer #-}- readVkBaseArrayLayer p- = peekByteOff p #{offset VkClearRect, baseArrayLayer}-- {-# INLINE writeVkBaseArrayLayer #-}- writeVkBaseArrayLayer p- = pokeByteOff p #{offset VkClearRect, baseArrayLayer}+ writeField p+ = pokeByteOff p #{offset VkClearRect, rect} instance {-# OVERLAPPING #-} HasField "baseArrayLayer" VkClearRect where@@ -147,36 +111,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkClearRect, baseArrayLayer} -instance CanReadField "baseArrayLayer" VkClearRect where- {-# INLINE getField #-}- getField = vkBaseArrayLayer+instance {-# OVERLAPPING #-}+ CanReadField "baseArrayLayer" VkClearRect where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkClearRect, baseArrayLayer}) {-# INLINE readField #-}- readField = readVkBaseArrayLayer+ readField p+ = peekByteOff p #{offset VkClearRect, baseArrayLayer} -instance CanWriteField "baseArrayLayer" VkClearRect where+instance {-# OVERLAPPING #-}+ CanWriteField "baseArrayLayer" VkClearRect where {-# INLINE writeField #-}- writeField = writeVkBaseArrayLayer--instance {-# OVERLAPPING #-} HasVkLayerCount VkClearRect where- type VkLayerCountMType VkClearRect = Word32-- {-# NOINLINE vkLayerCount #-}- vkLayerCount x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkClearRect, layerCount})-- {-# INLINE vkLayerCountByteOffset #-}- vkLayerCountByteOffset ~_- = #{offset VkClearRect, layerCount}-- {-# INLINE readVkLayerCount #-}- readVkLayerCount p- = peekByteOff p #{offset VkClearRect, layerCount}-- {-# INLINE writeVkLayerCount #-}- writeVkLayerCount p- = pokeByteOff p #{offset VkClearRect, layerCount}+ writeField p+ = pokeByteOff p #{offset VkClearRect, baseArrayLayer} instance {-# OVERLAPPING #-} HasField "layerCount" VkClearRect where@@ -192,25 +142,31 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkClearRect, layerCount} -instance CanReadField "layerCount" VkClearRect where- {-# INLINE getField #-}- getField = vkLayerCount+instance {-# OVERLAPPING #-} CanReadField "layerCount" VkClearRect+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkClearRect, layerCount}) {-# INLINE readField #-}- readField = readVkLayerCount+ readField p+ = peekByteOff p #{offset VkClearRect, layerCount} -instance CanWriteField "layerCount" VkClearRect where+instance {-# OVERLAPPING #-} CanWriteField "layerCount" VkClearRect+ where {-# INLINE writeField #-}- writeField = writeVkLayerCount+ writeField p+ = pokeByteOff p #{offset VkClearRect, layerCount} instance Show VkClearRect where showsPrec d x = showString "VkClearRect {" .- showString "vkRect = " .- showsPrec d (vkRect x) .+ showString "rect = " .+ showsPrec d (getField @"rect" x) . showString ", " .- showString "vkBaseArrayLayer = " .- showsPrec d (vkBaseArrayLayer x) .+ showString "baseArrayLayer = " .+ showsPrec d (getField @"baseArrayLayer" x) . showString ", " .- showString "vkLayerCount = " .- showsPrec d (vkLayerCount x) . showChar '}'+ showString "layerCount = " .+ showsPrec d (getField @"layerCount" x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkClearValue (VkClearValue(..)) where@@ -14,7 +15,6 @@ import Graphics.Vulkan.Marshal.Internal import Graphics.Vulkan.Types.Struct.VkClearColorValue (VkClearColorValue) import Graphics.Vulkan.Types.Struct.VkClearDepthStencilValue (VkClearDepthStencilValue)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | // Union allowing specification of color or depth and stencil values. Actual value selected is based on attachment being cleared.@@ -24,7 +24,7 @@ -- > VkClearDepthStencilValue depthStencil; -- > } VkClearValue; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkClearValue.html VkClearValue registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkClearValue.html VkClearValue registry at www.khronos.org> data VkClearValue = VkClearValue## Addr## ByteArray## instance Eq VkClearValue where@@ -71,25 +71,6 @@ type ReturnedOnly VkClearValue = 'False -- ' closing tick for hsc2hs type StructExtends VkClearValue = '[] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkColor VkClearValue where- type VkColorMType VkClearValue = VkClearColorValue-- {-# NOINLINE vkColor #-}- vkColor x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkClearValue, color})-- {-# INLINE vkColorByteOffset #-}- vkColorByteOffset ~_ = #{offset VkClearValue, color}-- {-# INLINE readVkColor #-}- readVkColor p- = peekByteOff p #{offset VkClearValue, color}-- {-# INLINE writeVkColor #-}- writeVkColor p- = pokeByteOff p #{offset VkClearValue, color}- instance {-# OVERLAPPING #-} HasField "color" VkClearValue where type FieldType "color" VkClearValue = VkClearColorValue type FieldOptional "color" VkClearValue = 'False -- ' closing tick for hsc2hs@@ -103,36 +84,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkClearValue, color} -instance CanReadField "color" VkClearValue where- {-# INLINE getField #-}- getField = vkColor+instance {-# OVERLAPPING #-} CanReadField "color" VkClearValue+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkClearValue, color}) {-# INLINE readField #-}- readField = readVkColor+ readField p+ = peekByteOff p #{offset VkClearValue, color} -instance CanWriteField "color" VkClearValue where+instance {-# OVERLAPPING #-} CanWriteField "color" VkClearValue+ where {-# INLINE writeField #-}- writeField = writeVkColor--instance {-# OVERLAPPING #-} HasVkDepthStencil VkClearValue where- type VkDepthStencilMType VkClearValue = VkClearDepthStencilValue-- {-# NOINLINE vkDepthStencil #-}- vkDepthStencil x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkClearValue, depthStencil})-- {-# INLINE vkDepthStencilByteOffset #-}- vkDepthStencilByteOffset ~_- = #{offset VkClearValue, depthStencil}-- {-# INLINE readVkDepthStencil #-}- readVkDepthStencil p- = peekByteOff p #{offset VkClearValue, depthStencil}-- {-# INLINE writeVkDepthStencil #-}- writeVkDepthStencil p- = pokeByteOff p #{offset VkClearValue, depthStencil}+ writeField p+ = pokeByteOff p #{offset VkClearValue, color} instance {-# OVERLAPPING #-} HasField "depthStencil" VkClearValue where@@ -149,22 +116,28 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkClearValue, depthStencil} -instance CanReadField "depthStencil" VkClearValue where- {-# INLINE getField #-}- getField = vkDepthStencil+instance {-# OVERLAPPING #-}+ CanReadField "depthStencil" VkClearValue where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkClearValue, depthStencil}) {-# INLINE readField #-}- readField = readVkDepthStencil+ readField p+ = peekByteOff p #{offset VkClearValue, depthStencil} -instance CanWriteField "depthStencil" VkClearValue where+instance {-# OVERLAPPING #-}+ CanWriteField "depthStencil" VkClearValue where {-# INLINE writeField #-}- writeField = writeVkDepthStencil+ writeField p+ = pokeByteOff p #{offset VkClearValue, depthStencil} instance Show VkClearValue where showsPrec d x = showString "VkClearValue {" .- showString "vkColor = " .- showsPrec d (vkColor x) .+ showString "color = " .+ showsPrec d (getField @"color" x) . showString ", " .- showString "vkDepthStencil = " .- showsPrec d (vkDepthStencil x) . showChar '}'+ showString "depthStencil = " .+ showsPrec d (getField @"depthStencil" x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkCmdProcessCommandsInfoNVX (VkCmdProcessCommandsInfoNVX(..)) where@@ -19,7 +20,6 @@ VkIndirectCommandsLayoutNVX, VkObjectTableNVX) import Graphics.Vulkan.Types.Struct.VkIndirectCommandsTokenNVX (VkIndirectCommandsTokenNVX)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkCmdProcessCommandsInfoNVX {@@ -37,7 +37,7 @@ -- > VkDeviceSize sequencesIndexOffset; -- > } VkCmdProcessCommandsInfoNVX; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkCmdProcessCommandsInfoNVX.html VkCmdProcessCommandsInfoNVX registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkCmdProcessCommandsInfoNVX.html VkCmdProcessCommandsInfoNVX registry at www.khronos.org> data VkCmdProcessCommandsInfoNVX = VkCmdProcessCommandsInfoNVX## Addr## ByteArray## @@ -93,27 +93,6 @@ type ReturnedOnly VkCmdProcessCommandsInfoNVX = 'False -- ' closing tick for hsc2hs type StructExtends VkCmdProcessCommandsInfoNVX = '[] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkSType VkCmdProcessCommandsInfoNVX- where- type VkSTypeMType VkCmdProcessCommandsInfoNVX = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCmdProcessCommandsInfoNVX, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkCmdProcessCommandsInfoNVX, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkCmdProcessCommandsInfoNVX, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkCmdProcessCommandsInfoNVX, sType}- instance {-# OVERLAPPING #-} HasField "sType" VkCmdProcessCommandsInfoNVX where type FieldType "sType" VkCmdProcessCommandsInfoNVX =@@ -130,37 +109,22 @@ fieldOffset = #{offset VkCmdProcessCommandsInfoNVX, sType} -instance CanReadField "sType" VkCmdProcessCommandsInfoNVX where- {-# INLINE getField #-}- getField = vkSType+instance {-# OVERLAPPING #-}+ CanReadField "sType" VkCmdProcessCommandsInfoNVX where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkCmdProcessCommandsInfoNVX, sType}) {-# INLINE readField #-}- readField = readVkSType+ readField p+ = peekByteOff p #{offset VkCmdProcessCommandsInfoNVX, sType} -instance CanWriteField "sType" VkCmdProcessCommandsInfoNVX where+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkCmdProcessCommandsInfoNVX where {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-} HasVkPNext VkCmdProcessCommandsInfoNVX- where- type VkPNextMType VkCmdProcessCommandsInfoNVX = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCmdProcessCommandsInfoNVX, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkCmdProcessCommandsInfoNVX, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkCmdProcessCommandsInfoNVX, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkCmdProcessCommandsInfoNVX, pNext}+ writeField p+ = pokeByteOff p #{offset VkCmdProcessCommandsInfoNVX, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkCmdProcessCommandsInfoNVX where@@ -177,38 +141,22 @@ fieldOffset = #{offset VkCmdProcessCommandsInfoNVX, pNext} -instance CanReadField "pNext" VkCmdProcessCommandsInfoNVX where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkCmdProcessCommandsInfoNVX where- {-# INLINE writeField #-}- writeField = writeVkPNext- instance {-# OVERLAPPING #-}- HasVkObjectTable VkCmdProcessCommandsInfoNVX where- type VkObjectTableMType VkCmdProcessCommandsInfoNVX =- VkObjectTableNVX-- {-# NOINLINE vkObjectTable #-}- vkObjectTable x+ CanReadField "pNext" VkCmdProcessCommandsInfoNVX where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCmdProcessCommandsInfoNVX, objectTable})-- {-# INLINE vkObjectTableByteOffset #-}- vkObjectTableByteOffset ~_- = #{offset VkCmdProcessCommandsInfoNVX, objectTable}+ (peekByteOff (unsafePtr x) #{offset VkCmdProcessCommandsInfoNVX, pNext}) - {-# INLINE readVkObjectTable #-}- readVkObjectTable p- = peekByteOff p #{offset VkCmdProcessCommandsInfoNVX, objectTable}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkCmdProcessCommandsInfoNVX, pNext} - {-# INLINE writeVkObjectTable #-}- writeVkObjectTable p- = pokeByteOff p #{offset VkCmdProcessCommandsInfoNVX, objectTable}+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkCmdProcessCommandsInfoNVX where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkCmdProcessCommandsInfoNVX, pNext} instance {-# OVERLAPPING #-} HasField "objectTable" VkCmdProcessCommandsInfoNVX where@@ -228,40 +176,22 @@ fieldOffset = #{offset VkCmdProcessCommandsInfoNVX, objectTable} -instance CanReadField "objectTable" VkCmdProcessCommandsInfoNVX- where- {-# INLINE getField #-}- getField = vkObjectTable-- {-# INLINE readField #-}- readField = readVkObjectTable--instance CanWriteField "objectTable" VkCmdProcessCommandsInfoNVX- where- {-# INLINE writeField #-}- writeField = writeVkObjectTable- instance {-# OVERLAPPING #-}- HasVkIndirectCommandsLayout VkCmdProcessCommandsInfoNVX where- type VkIndirectCommandsLayoutMType VkCmdProcessCommandsInfoNVX =- VkIndirectCommandsLayoutNVX-- {-# NOINLINE vkIndirectCommandsLayout #-}- vkIndirectCommandsLayout x+ CanReadField "objectTable" VkCmdProcessCommandsInfoNVX where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCmdProcessCommandsInfoNVX, indirectCommandsLayout})-- {-# INLINE vkIndirectCommandsLayoutByteOffset #-}- vkIndirectCommandsLayoutByteOffset ~_- = #{offset VkCmdProcessCommandsInfoNVX, indirectCommandsLayout}+ (peekByteOff (unsafePtr x) #{offset VkCmdProcessCommandsInfoNVX, objectTable}) - {-# INLINE readVkIndirectCommandsLayout #-}- readVkIndirectCommandsLayout p- = peekByteOff p #{offset VkCmdProcessCommandsInfoNVX, indirectCommandsLayout}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkCmdProcessCommandsInfoNVX, objectTable} - {-# INLINE writeVkIndirectCommandsLayout #-}- writeVkIndirectCommandsLayout p- = pokeByteOff p #{offset VkCmdProcessCommandsInfoNVX, indirectCommandsLayout}+instance {-# OVERLAPPING #-}+ CanWriteField "objectTable" VkCmdProcessCommandsInfoNVX where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkCmdProcessCommandsInfoNVX, objectTable} instance {-# OVERLAPPING #-} HasField "indirectCommandsLayout" VkCmdProcessCommandsInfoNVX where@@ -285,42 +215,24 @@ fieldOffset = #{offset VkCmdProcessCommandsInfoNVX, indirectCommandsLayout} -instance CanReadField "indirectCommandsLayout"- VkCmdProcessCommandsInfoNVX+instance {-# OVERLAPPING #-}+ CanReadField "indirectCommandsLayout" VkCmdProcessCommandsInfoNVX where- {-# INLINE getField #-}- getField = vkIndirectCommandsLayout+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkCmdProcessCommandsInfoNVX, indirectCommandsLayout}) {-# INLINE readField #-}- readField = readVkIndirectCommandsLayout+ readField p+ = peekByteOff p #{offset VkCmdProcessCommandsInfoNVX, indirectCommandsLayout} -instance CanWriteField "indirectCommandsLayout"- VkCmdProcessCommandsInfoNVX+instance {-# OVERLAPPING #-}+ CanWriteField "indirectCommandsLayout" VkCmdProcessCommandsInfoNVX where {-# INLINE writeField #-}- writeField = writeVkIndirectCommandsLayout--instance {-# OVERLAPPING #-}- HasVkIndirectCommandsTokenCount VkCmdProcessCommandsInfoNVX where- type VkIndirectCommandsTokenCountMType VkCmdProcessCommandsInfoNVX- = Word32-- {-# NOINLINE vkIndirectCommandsTokenCount #-}- vkIndirectCommandsTokenCount x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCmdProcessCommandsInfoNVX, indirectCommandsTokenCount})-- {-# INLINE vkIndirectCommandsTokenCountByteOffset #-}- vkIndirectCommandsTokenCountByteOffset ~_- = #{offset VkCmdProcessCommandsInfoNVX, indirectCommandsTokenCount}-- {-# INLINE readVkIndirectCommandsTokenCount #-}- readVkIndirectCommandsTokenCount p- = peekByteOff p #{offset VkCmdProcessCommandsInfoNVX, indirectCommandsTokenCount}-- {-# INLINE writeVkIndirectCommandsTokenCount #-}- writeVkIndirectCommandsTokenCount p- = pokeByteOff p #{offset VkCmdProcessCommandsInfoNVX, indirectCommandsTokenCount}+ writeField p+ = pokeByteOff p #{offset VkCmdProcessCommandsInfoNVX, indirectCommandsLayout} instance {-# OVERLAPPING #-} HasField "indirectCommandsTokenCount" VkCmdProcessCommandsInfoNVX@@ -346,42 +258,26 @@ fieldOffset = #{offset VkCmdProcessCommandsInfoNVX, indirectCommandsTokenCount} -instance CanReadField "indirectCommandsTokenCount"+instance {-# OVERLAPPING #-}+ CanReadField "indirectCommandsTokenCount" VkCmdProcessCommandsInfoNVX where- {-# INLINE getField #-}- getField = vkIndirectCommandsTokenCount+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkCmdProcessCommandsInfoNVX, indirectCommandsTokenCount}) {-# INLINE readField #-}- readField = readVkIndirectCommandsTokenCount+ readField p+ = peekByteOff p #{offset VkCmdProcessCommandsInfoNVX, indirectCommandsTokenCount} -instance CanWriteField "indirectCommandsTokenCount"+instance {-# OVERLAPPING #-}+ CanWriteField "indirectCommandsTokenCount" VkCmdProcessCommandsInfoNVX where {-# INLINE writeField #-}- writeField = writeVkIndirectCommandsTokenCount--instance {-# OVERLAPPING #-}- HasVkPIndirectCommandsTokens VkCmdProcessCommandsInfoNVX where- type VkPIndirectCommandsTokensMType VkCmdProcessCommandsInfoNVX =- Ptr VkIndirectCommandsTokenNVX-- {-# NOINLINE vkPIndirectCommandsTokens #-}- vkPIndirectCommandsTokens x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCmdProcessCommandsInfoNVX, pIndirectCommandsTokens})-- {-# INLINE vkPIndirectCommandsTokensByteOffset #-}- vkPIndirectCommandsTokensByteOffset ~_- = #{offset VkCmdProcessCommandsInfoNVX, pIndirectCommandsTokens}-- {-# INLINE readVkPIndirectCommandsTokens #-}- readVkPIndirectCommandsTokens p- = peekByteOff p #{offset VkCmdProcessCommandsInfoNVX, pIndirectCommandsTokens}-- {-# INLINE writeVkPIndirectCommandsTokens #-}- writeVkPIndirectCommandsTokens p- = pokeByteOff p #{offset VkCmdProcessCommandsInfoNVX, pIndirectCommandsTokens}+ writeField p+ = pokeByteOff p #{offset VkCmdProcessCommandsInfoNVX, indirectCommandsTokenCount} instance {-# OVERLAPPING #-} HasField "pIndirectCommandsTokens" VkCmdProcessCommandsInfoNVX@@ -407,41 +303,24 @@ fieldOffset = #{offset VkCmdProcessCommandsInfoNVX, pIndirectCommandsTokens} -instance CanReadField "pIndirectCommandsTokens"- VkCmdProcessCommandsInfoNVX+instance {-# OVERLAPPING #-}+ CanReadField "pIndirectCommandsTokens" VkCmdProcessCommandsInfoNVX where- {-# INLINE getField #-}- getField = vkPIndirectCommandsTokens+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkCmdProcessCommandsInfoNVX, pIndirectCommandsTokens}) {-# INLINE readField #-}- readField = readVkPIndirectCommandsTokens+ readField p+ = peekByteOff p #{offset VkCmdProcessCommandsInfoNVX, pIndirectCommandsTokens} -instance CanWriteField "pIndirectCommandsTokens"- VkCmdProcessCommandsInfoNVX+instance {-# OVERLAPPING #-}+ CanWriteField "pIndirectCommandsTokens" VkCmdProcessCommandsInfoNVX where {-# INLINE writeField #-}- writeField = writeVkPIndirectCommandsTokens--instance {-# OVERLAPPING #-}- HasVkMaxSequencesCount VkCmdProcessCommandsInfoNVX where- type VkMaxSequencesCountMType VkCmdProcessCommandsInfoNVX = Word32-- {-# NOINLINE vkMaxSequencesCount #-}- vkMaxSequencesCount x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCmdProcessCommandsInfoNVX, maxSequencesCount})-- {-# INLINE vkMaxSequencesCountByteOffset #-}- vkMaxSequencesCountByteOffset ~_- = #{offset VkCmdProcessCommandsInfoNVX, maxSequencesCount}-- {-# INLINE readVkMaxSequencesCount #-}- readVkMaxSequencesCount p- = peekByteOff p #{offset VkCmdProcessCommandsInfoNVX, maxSequencesCount}-- {-# INLINE writeVkMaxSequencesCount #-}- writeVkMaxSequencesCount p- = pokeByteOff p #{offset VkCmdProcessCommandsInfoNVX, maxSequencesCount}+ writeField p+ = pokeByteOff p #{offset VkCmdProcessCommandsInfoNVX, pIndirectCommandsTokens} instance {-# OVERLAPPING #-} HasField "maxSequencesCount" VkCmdProcessCommandsInfoNVX where@@ -461,42 +340,22 @@ fieldOffset = #{offset VkCmdProcessCommandsInfoNVX, maxSequencesCount} -instance CanReadField "maxSequencesCount"- VkCmdProcessCommandsInfoNVX- where- {-# INLINE getField #-}- getField = vkMaxSequencesCount-- {-# INLINE readField #-}- readField = readVkMaxSequencesCount--instance CanWriteField "maxSequencesCount"- VkCmdProcessCommandsInfoNVX- where- {-# INLINE writeField #-}- writeField = writeVkMaxSequencesCount- instance {-# OVERLAPPING #-}- HasVkTargetCommandBuffer VkCmdProcessCommandsInfoNVX where- type VkTargetCommandBufferMType VkCmdProcessCommandsInfoNVX =- VkCommandBuffer-- {-# NOINLINE vkTargetCommandBuffer #-}- vkTargetCommandBuffer x+ CanReadField "maxSequencesCount" VkCmdProcessCommandsInfoNVX where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCmdProcessCommandsInfoNVX, targetCommandBuffer})-- {-# INLINE vkTargetCommandBufferByteOffset #-}- vkTargetCommandBufferByteOffset ~_- = #{offset VkCmdProcessCommandsInfoNVX, targetCommandBuffer}+ (peekByteOff (unsafePtr x) #{offset VkCmdProcessCommandsInfoNVX, maxSequencesCount}) - {-# INLINE readVkTargetCommandBuffer #-}- readVkTargetCommandBuffer p- = peekByteOff p #{offset VkCmdProcessCommandsInfoNVX, targetCommandBuffer}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkCmdProcessCommandsInfoNVX, maxSequencesCount} - {-# INLINE writeVkTargetCommandBuffer #-}- writeVkTargetCommandBuffer p- = pokeByteOff p #{offset VkCmdProcessCommandsInfoNVX, targetCommandBuffer}+instance {-# OVERLAPPING #-}+ CanWriteField "maxSequencesCount" VkCmdProcessCommandsInfoNVX where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkCmdProcessCommandsInfoNVX, maxSequencesCount} instance {-# OVERLAPPING #-} HasField "targetCommandBuffer" VkCmdProcessCommandsInfoNVX where@@ -518,42 +377,24 @@ fieldOffset = #{offset VkCmdProcessCommandsInfoNVX, targetCommandBuffer} -instance CanReadField "targetCommandBuffer"- VkCmdProcessCommandsInfoNVX+instance {-# OVERLAPPING #-}+ CanReadField "targetCommandBuffer" VkCmdProcessCommandsInfoNVX where- {-# INLINE getField #-}- getField = vkTargetCommandBuffer+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkCmdProcessCommandsInfoNVX, targetCommandBuffer}) {-# INLINE readField #-}- readField = readVkTargetCommandBuffer+ readField p+ = peekByteOff p #{offset VkCmdProcessCommandsInfoNVX, targetCommandBuffer} -instance CanWriteField "targetCommandBuffer"- VkCmdProcessCommandsInfoNVX+instance {-# OVERLAPPING #-}+ CanWriteField "targetCommandBuffer" VkCmdProcessCommandsInfoNVX where {-# INLINE writeField #-}- writeField = writeVkTargetCommandBuffer--instance {-# OVERLAPPING #-}- HasVkSequencesCountBuffer VkCmdProcessCommandsInfoNVX where- type VkSequencesCountBufferMType VkCmdProcessCommandsInfoNVX =- VkBuffer-- {-# NOINLINE vkSequencesCountBuffer #-}- vkSequencesCountBuffer x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCmdProcessCommandsInfoNVX, sequencesCountBuffer})-- {-# INLINE vkSequencesCountBufferByteOffset #-}- vkSequencesCountBufferByteOffset ~_- = #{offset VkCmdProcessCommandsInfoNVX, sequencesCountBuffer}-- {-# INLINE readVkSequencesCountBuffer #-}- readVkSequencesCountBuffer p- = peekByteOff p #{offset VkCmdProcessCommandsInfoNVX, sequencesCountBuffer}-- {-# INLINE writeVkSequencesCountBuffer #-}- writeVkSequencesCountBuffer p- = pokeByteOff p #{offset VkCmdProcessCommandsInfoNVX, sequencesCountBuffer}+ writeField p+ = pokeByteOff p #{offset VkCmdProcessCommandsInfoNVX, targetCommandBuffer} instance {-# OVERLAPPING #-} HasField "sequencesCountBuffer" VkCmdProcessCommandsInfoNVX where@@ -576,42 +417,24 @@ fieldOffset = #{offset VkCmdProcessCommandsInfoNVX, sequencesCountBuffer} -instance CanReadField "sequencesCountBuffer"- VkCmdProcessCommandsInfoNVX+instance {-# OVERLAPPING #-}+ CanReadField "sequencesCountBuffer" VkCmdProcessCommandsInfoNVX where- {-# INLINE getField #-}- getField = vkSequencesCountBuffer+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkCmdProcessCommandsInfoNVX, sequencesCountBuffer}) {-# INLINE readField #-}- readField = readVkSequencesCountBuffer+ readField p+ = peekByteOff p #{offset VkCmdProcessCommandsInfoNVX, sequencesCountBuffer} -instance CanWriteField "sequencesCountBuffer"- VkCmdProcessCommandsInfoNVX+instance {-# OVERLAPPING #-}+ CanWriteField "sequencesCountBuffer" VkCmdProcessCommandsInfoNVX where {-# INLINE writeField #-}- writeField = writeVkSequencesCountBuffer--instance {-# OVERLAPPING #-}- HasVkSequencesCountOffset VkCmdProcessCommandsInfoNVX where- type VkSequencesCountOffsetMType VkCmdProcessCommandsInfoNVX =- VkDeviceSize-- {-# NOINLINE vkSequencesCountOffset #-}- vkSequencesCountOffset x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCmdProcessCommandsInfoNVX, sequencesCountOffset})-- {-# INLINE vkSequencesCountOffsetByteOffset #-}- vkSequencesCountOffsetByteOffset ~_- = #{offset VkCmdProcessCommandsInfoNVX, sequencesCountOffset}-- {-# INLINE readVkSequencesCountOffset #-}- readVkSequencesCountOffset p- = peekByteOff p #{offset VkCmdProcessCommandsInfoNVX, sequencesCountOffset}-- {-# INLINE writeVkSequencesCountOffset #-}- writeVkSequencesCountOffset p- = pokeByteOff p #{offset VkCmdProcessCommandsInfoNVX, sequencesCountOffset}+ writeField p+ = pokeByteOff p #{offset VkCmdProcessCommandsInfoNVX, sequencesCountBuffer} instance {-# OVERLAPPING #-} HasField "sequencesCountOffset" VkCmdProcessCommandsInfoNVX where@@ -634,42 +457,24 @@ fieldOffset = #{offset VkCmdProcessCommandsInfoNVX, sequencesCountOffset} -instance CanReadField "sequencesCountOffset"- VkCmdProcessCommandsInfoNVX+instance {-# OVERLAPPING #-}+ CanReadField "sequencesCountOffset" VkCmdProcessCommandsInfoNVX where- {-# INLINE getField #-}- getField = vkSequencesCountOffset+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkCmdProcessCommandsInfoNVX, sequencesCountOffset}) {-# INLINE readField #-}- readField = readVkSequencesCountOffset+ readField p+ = peekByteOff p #{offset VkCmdProcessCommandsInfoNVX, sequencesCountOffset} -instance CanWriteField "sequencesCountOffset"- VkCmdProcessCommandsInfoNVX+instance {-# OVERLAPPING #-}+ CanWriteField "sequencesCountOffset" VkCmdProcessCommandsInfoNVX where {-# INLINE writeField #-}- writeField = writeVkSequencesCountOffset--instance {-# OVERLAPPING #-}- HasVkSequencesIndexBuffer VkCmdProcessCommandsInfoNVX where- type VkSequencesIndexBufferMType VkCmdProcessCommandsInfoNVX =- VkBuffer-- {-# NOINLINE vkSequencesIndexBuffer #-}- vkSequencesIndexBuffer x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCmdProcessCommandsInfoNVX, sequencesIndexBuffer})-- {-# INLINE vkSequencesIndexBufferByteOffset #-}- vkSequencesIndexBufferByteOffset ~_- = #{offset VkCmdProcessCommandsInfoNVX, sequencesIndexBuffer}-- {-# INLINE readVkSequencesIndexBuffer #-}- readVkSequencesIndexBuffer p- = peekByteOff p #{offset VkCmdProcessCommandsInfoNVX, sequencesIndexBuffer}-- {-# INLINE writeVkSequencesIndexBuffer #-}- writeVkSequencesIndexBuffer p- = pokeByteOff p #{offset VkCmdProcessCommandsInfoNVX, sequencesIndexBuffer}+ writeField p+ = pokeByteOff p #{offset VkCmdProcessCommandsInfoNVX, sequencesCountOffset} instance {-# OVERLAPPING #-} HasField "sequencesIndexBuffer" VkCmdProcessCommandsInfoNVX where@@ -692,42 +497,24 @@ fieldOffset = #{offset VkCmdProcessCommandsInfoNVX, sequencesIndexBuffer} -instance CanReadField "sequencesIndexBuffer"- VkCmdProcessCommandsInfoNVX+instance {-# OVERLAPPING #-}+ CanReadField "sequencesIndexBuffer" VkCmdProcessCommandsInfoNVX where- {-# INLINE getField #-}- getField = vkSequencesIndexBuffer+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkCmdProcessCommandsInfoNVX, sequencesIndexBuffer}) {-# INLINE readField #-}- readField = readVkSequencesIndexBuffer+ readField p+ = peekByteOff p #{offset VkCmdProcessCommandsInfoNVX, sequencesIndexBuffer} -instance CanWriteField "sequencesIndexBuffer"- VkCmdProcessCommandsInfoNVX+instance {-# OVERLAPPING #-}+ CanWriteField "sequencesIndexBuffer" VkCmdProcessCommandsInfoNVX where {-# INLINE writeField #-}- writeField = writeVkSequencesIndexBuffer--instance {-# OVERLAPPING #-}- HasVkSequencesIndexOffset VkCmdProcessCommandsInfoNVX where- type VkSequencesIndexOffsetMType VkCmdProcessCommandsInfoNVX =- VkDeviceSize-- {-# NOINLINE vkSequencesIndexOffset #-}- vkSequencesIndexOffset x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCmdProcessCommandsInfoNVX, sequencesIndexOffset})-- {-# INLINE vkSequencesIndexOffsetByteOffset #-}- vkSequencesIndexOffsetByteOffset ~_- = #{offset VkCmdProcessCommandsInfoNVX, sequencesIndexOffset}-- {-# INLINE readVkSequencesIndexOffset #-}- readVkSequencesIndexOffset p- = peekByteOff p #{offset VkCmdProcessCommandsInfoNVX, sequencesIndexOffset}-- {-# INLINE writeVkSequencesIndexOffset #-}- writeVkSequencesIndexOffset p- = pokeByteOff p #{offset VkCmdProcessCommandsInfoNVX, sequencesIndexOffset}+ writeField p+ = pokeByteOff p #{offset VkCmdProcessCommandsInfoNVX, sequencesIndexBuffer} instance {-# OVERLAPPING #-} HasField "sequencesIndexOffset" VkCmdProcessCommandsInfoNVX where@@ -750,73 +537,83 @@ fieldOffset = #{offset VkCmdProcessCommandsInfoNVX, sequencesIndexOffset} -instance CanReadField "sequencesIndexOffset"- VkCmdProcessCommandsInfoNVX+instance {-# OVERLAPPING #-}+ CanReadField "sequencesIndexOffset" VkCmdProcessCommandsInfoNVX where- {-# INLINE getField #-}- getField = vkSequencesIndexOffset+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkCmdProcessCommandsInfoNVX, sequencesIndexOffset}) {-# INLINE readField #-}- readField = readVkSequencesIndexOffset+ readField p+ = peekByteOff p #{offset VkCmdProcessCommandsInfoNVX, sequencesIndexOffset} -instance CanWriteField "sequencesIndexOffset"- VkCmdProcessCommandsInfoNVX+instance {-# OVERLAPPING #-}+ CanWriteField "sequencesIndexOffset" VkCmdProcessCommandsInfoNVX where {-# INLINE writeField #-}- writeField = writeVkSequencesIndexOffset+ writeField p+ = pokeByteOff p #{offset VkCmdProcessCommandsInfoNVX, sequencesIndexOffset} instance Show VkCmdProcessCommandsInfoNVX where showsPrec d x = showString "VkCmdProcessCommandsInfoNVX {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkObjectTable = " .- showsPrec d (vkObjectTable x) .+ showString "objectTable = " .+ showsPrec d (getField @"objectTable" x) . showString ", " .- showString "vkIndirectCommandsLayout = " .- showsPrec d (vkIndirectCommandsLayout x) .+ showString "indirectCommandsLayout = " .+ showsPrec d (getField @"indirectCommandsLayout" x) . showString ", " .- showString "vkIndirectCommandsTokenCount = " .- showsPrec d (vkIndirectCommandsTokenCount x) .+ showString "indirectCommandsTokenCount = " .+ showsPrec d (getField @"indirectCommandsTokenCount" x) . showString ", " .- showString "vkPIndirectCommandsTokens = " .- showsPrec d (vkPIndirectCommandsTokens x) .+ showString "pIndirectCommandsTokens = " .+ showsPrec d (getField @"pIndirectCommandsTokens" x) . showString ", " .- showString "vkMaxSequencesCount = " .- showsPrec d (vkMaxSequencesCount x) .+ showString "maxSequencesCount = " .+ showsPrec d (getField @"maxSequencesCount" x) . showString ", " .- showString "vkTargetCommandBuffer = " .- showsPrec d (vkTargetCommandBuffer x) .+ showString "targetCommandBuffer = " .+ showsPrec d+ (getField @"targetCommandBuffer" x)+ . showString ", " .- showString "vkSequencesCountBuffer = "- .+ showString "sequencesCountBuffer = " . showsPrec d- (vkSequencesCountBuffer x)+ (getField @"sequencesCountBuffer"+ x) . showString ", " . showString- "vkSequencesCountOffset = "+ "sequencesCountOffset = " . showsPrec d- (vkSequencesCountOffset x)+ (getField+ @"sequencesCountOffset"+ x) . showString ", " . showString- "vkSequencesIndexBuffer = "+ "sequencesIndexBuffer = " . showsPrec d- (vkSequencesIndexBuffer+ (getField+ @"sequencesIndexBuffer" x) . showString ", " . showString- "vkSequencesIndexOffset = "+ "sequencesIndexOffset = " . showsPrec d- (vkSequencesIndexOffset+ (getField+ @"sequencesIndexOffset" x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkCmdReserveSpaceForCommandsInfoNVX (VkCmdReserveSpaceForCommandsInfoNVX(..)) where@@ -15,7 +16,6 @@ import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType) import Graphics.Vulkan.Types.Handles (VkIndirectCommandsLayoutNVX, VkObjectTableNVX)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkCmdReserveSpaceForCommandsInfoNVX {@@ -26,7 +26,7 @@ -- > uint32_t maxSequencesCount; -- > } VkCmdReserveSpaceForCommandsInfoNVX; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkCmdReserveSpaceForCommandsInfoNVX.html VkCmdReserveSpaceForCommandsInfoNVX registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkCmdReserveSpaceForCommandsInfoNVX.html VkCmdReserveSpaceForCommandsInfoNVX registry at www.khronos.org> data VkCmdReserveSpaceForCommandsInfoNVX = VkCmdReserveSpaceForCommandsInfoNVX## Addr## ByteArray## @@ -83,28 +83,6 @@ type StructExtends VkCmdReserveSpaceForCommandsInfoNVX = '[] -- ' closing tick for hsc2hs instance {-# OVERLAPPING #-}- HasVkSType VkCmdReserveSpaceForCommandsInfoNVX where- type VkSTypeMType VkCmdReserveSpaceForCommandsInfoNVX =- VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCmdReserveSpaceForCommandsInfoNVX, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkCmdReserveSpaceForCommandsInfoNVX, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkCmdReserveSpaceForCommandsInfoNVX, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkCmdReserveSpaceForCommandsInfoNVX, sType}--instance {-# OVERLAPPING #-} HasField "sType" VkCmdReserveSpaceForCommandsInfoNVX where type FieldType "sType" VkCmdReserveSpaceForCommandsInfoNVX = VkStructureType@@ -122,39 +100,22 @@ fieldOffset = #{offset VkCmdReserveSpaceForCommandsInfoNVX, sType} -instance CanReadField "sType" VkCmdReserveSpaceForCommandsInfoNVX- where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance CanWriteField "sType" VkCmdReserveSpaceForCommandsInfoNVX- where- {-# INLINE writeField #-}- writeField = writeVkSType- instance {-# OVERLAPPING #-}- HasVkPNext VkCmdReserveSpaceForCommandsInfoNVX where- type VkPNextMType VkCmdReserveSpaceForCommandsInfoNVX = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x+ CanReadField "sType" VkCmdReserveSpaceForCommandsInfoNVX where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCmdReserveSpaceForCommandsInfoNVX, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkCmdReserveSpaceForCommandsInfoNVX, pNext}+ (peekByteOff (unsafePtr x) #{offset VkCmdReserveSpaceForCommandsInfoNVX, sType}) - {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkCmdReserveSpaceForCommandsInfoNVX, pNext}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkCmdReserveSpaceForCommandsInfoNVX, sType} - {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkCmdReserveSpaceForCommandsInfoNVX, pNext}+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkCmdReserveSpaceForCommandsInfoNVX where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkCmdReserveSpaceForCommandsInfoNVX, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkCmdReserveSpaceForCommandsInfoNVX where@@ -174,40 +135,22 @@ fieldOffset = #{offset VkCmdReserveSpaceForCommandsInfoNVX, pNext} -instance CanReadField "pNext" VkCmdReserveSpaceForCommandsInfoNVX- where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkCmdReserveSpaceForCommandsInfoNVX- where- {-# INLINE writeField #-}- writeField = writeVkPNext- instance {-# OVERLAPPING #-}- HasVkObjectTable VkCmdReserveSpaceForCommandsInfoNVX where- type VkObjectTableMType VkCmdReserveSpaceForCommandsInfoNVX =- VkObjectTableNVX-- {-# NOINLINE vkObjectTable #-}- vkObjectTable x+ CanReadField "pNext" VkCmdReserveSpaceForCommandsInfoNVX where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCmdReserveSpaceForCommandsInfoNVX, objectTable})-- {-# INLINE vkObjectTableByteOffset #-}- vkObjectTableByteOffset ~_- = #{offset VkCmdReserveSpaceForCommandsInfoNVX, objectTable}+ (peekByteOff (unsafePtr x) #{offset VkCmdReserveSpaceForCommandsInfoNVX, pNext}) - {-# INLINE readVkObjectTable #-}- readVkObjectTable p- = peekByteOff p #{offset VkCmdReserveSpaceForCommandsInfoNVX, objectTable}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkCmdReserveSpaceForCommandsInfoNVX, pNext} - {-# INLINE writeVkObjectTable #-}- writeVkObjectTable p- = pokeByteOff p #{offset VkCmdReserveSpaceForCommandsInfoNVX, objectTable}+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkCmdReserveSpaceForCommandsInfoNVX where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkCmdReserveSpaceForCommandsInfoNVX, pNext} instance {-# OVERLAPPING #-} HasField "objectTable" VkCmdReserveSpaceForCommandsInfoNVX where@@ -229,44 +172,24 @@ fieldOffset = #{offset VkCmdReserveSpaceForCommandsInfoNVX, objectTable} -instance CanReadField "objectTable"- VkCmdReserveSpaceForCommandsInfoNVX+instance {-# OVERLAPPING #-}+ CanReadField "objectTable" VkCmdReserveSpaceForCommandsInfoNVX where- {-# INLINE getField #-}- getField = vkObjectTable+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkCmdReserveSpaceForCommandsInfoNVX, objectTable}) {-# INLINE readField #-}- readField = readVkObjectTable--instance CanWriteField "objectTable"- VkCmdReserveSpaceForCommandsInfoNVX- where- {-# INLINE writeField #-}- writeField = writeVkObjectTable+ readField p+ = peekByteOff p #{offset VkCmdReserveSpaceForCommandsInfoNVX, objectTable} instance {-# OVERLAPPING #-}- HasVkIndirectCommandsLayout VkCmdReserveSpaceForCommandsInfoNVX+ CanWriteField "objectTable" VkCmdReserveSpaceForCommandsInfoNVX where- type VkIndirectCommandsLayoutMType- VkCmdReserveSpaceForCommandsInfoNVX- = VkIndirectCommandsLayoutNVX-- {-# NOINLINE vkIndirectCommandsLayout #-}- vkIndirectCommandsLayout x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCmdReserveSpaceForCommandsInfoNVX, indirectCommandsLayout})-- {-# INLINE vkIndirectCommandsLayoutByteOffset #-}- vkIndirectCommandsLayoutByteOffset ~_- = #{offset VkCmdReserveSpaceForCommandsInfoNVX, indirectCommandsLayout}-- {-# INLINE readVkIndirectCommandsLayout #-}- readVkIndirectCommandsLayout p- = peekByteOff p #{offset VkCmdReserveSpaceForCommandsInfoNVX, indirectCommandsLayout}-- {-# INLINE writeVkIndirectCommandsLayout #-}- writeVkIndirectCommandsLayout p- = pokeByteOff p #{offset VkCmdReserveSpaceForCommandsInfoNVX, indirectCommandsLayout}+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkCmdReserveSpaceForCommandsInfoNVX, objectTable} instance {-# OVERLAPPING #-} HasField "indirectCommandsLayout"@@ -293,42 +216,26 @@ fieldOffset = #{offset VkCmdReserveSpaceForCommandsInfoNVX, indirectCommandsLayout} -instance CanReadField "indirectCommandsLayout"+instance {-# OVERLAPPING #-}+ CanReadField "indirectCommandsLayout" VkCmdReserveSpaceForCommandsInfoNVX where- {-# INLINE getField #-}- getField = vkIndirectCommandsLayout+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkCmdReserveSpaceForCommandsInfoNVX, indirectCommandsLayout}) {-# INLINE readField #-}- readField = readVkIndirectCommandsLayout+ readField p+ = peekByteOff p #{offset VkCmdReserveSpaceForCommandsInfoNVX, indirectCommandsLayout} -instance CanWriteField "indirectCommandsLayout"+instance {-# OVERLAPPING #-}+ CanWriteField "indirectCommandsLayout" VkCmdReserveSpaceForCommandsInfoNVX where {-# INLINE writeField #-}- writeField = writeVkIndirectCommandsLayout--instance {-# OVERLAPPING #-}- HasVkMaxSequencesCount VkCmdReserveSpaceForCommandsInfoNVX where- type VkMaxSequencesCountMType VkCmdReserveSpaceForCommandsInfoNVX =- Word32-- {-# NOINLINE vkMaxSequencesCount #-}- vkMaxSequencesCount x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCmdReserveSpaceForCommandsInfoNVX, maxSequencesCount})-- {-# INLINE vkMaxSequencesCountByteOffset #-}- vkMaxSequencesCountByteOffset ~_- = #{offset VkCmdReserveSpaceForCommandsInfoNVX, maxSequencesCount}-- {-# INLINE readVkMaxSequencesCount #-}- readVkMaxSequencesCount p- = peekByteOff p #{offset VkCmdReserveSpaceForCommandsInfoNVX, maxSequencesCount}-- {-# INLINE writeVkMaxSequencesCount #-}- writeVkMaxSequencesCount p- = pokeByteOff p #{offset VkCmdReserveSpaceForCommandsInfoNVX, maxSequencesCount}+ writeField p+ = pokeByteOff p #{offset VkCmdReserveSpaceForCommandsInfoNVX, indirectCommandsLayout} instance {-# OVERLAPPING #-} HasField "maxSequencesCount" VkCmdReserveSpaceForCommandsInfoNVX@@ -354,35 +261,41 @@ fieldOffset = #{offset VkCmdReserveSpaceForCommandsInfoNVX, maxSequencesCount} -instance CanReadField "maxSequencesCount"+instance {-# OVERLAPPING #-}+ CanReadField "maxSequencesCount" VkCmdReserveSpaceForCommandsInfoNVX where- {-# INLINE getField #-}- getField = vkMaxSequencesCount+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkCmdReserveSpaceForCommandsInfoNVX, maxSequencesCount}) {-# INLINE readField #-}- readField = readVkMaxSequencesCount+ readField p+ = peekByteOff p #{offset VkCmdReserveSpaceForCommandsInfoNVX, maxSequencesCount} -instance CanWriteField "maxSequencesCount"+instance {-# OVERLAPPING #-}+ CanWriteField "maxSequencesCount" VkCmdReserveSpaceForCommandsInfoNVX where {-# INLINE writeField #-}- writeField = writeVkMaxSequencesCount+ writeField p+ = pokeByteOff p #{offset VkCmdReserveSpaceForCommandsInfoNVX, maxSequencesCount} instance Show VkCmdReserveSpaceForCommandsInfoNVX where showsPrec d x = showString "VkCmdReserveSpaceForCommandsInfoNVX {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkObjectTable = " .- showsPrec d (vkObjectTable x) .+ showString "objectTable = " .+ showsPrec d (getField @"objectTable" x) . showString ", " .- showString "vkIndirectCommandsLayout = " .- showsPrec d (vkIndirectCommandsLayout x) .+ showString "indirectCommandsLayout = " .+ showsPrec d (getField @"indirectCommandsLayout" x) . showString ", " .- showString "vkMaxSequencesCount = " .- showsPrec d (vkMaxSequencesCount x) . showChar '}'+ showString "maxSequencesCount = " .+ showsPrec d (getField @"maxSequencesCount" x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkCommandBufferAllocateInfo (VkCommandBufferAllocateInfo(..)) where@@ -15,7 +16,6 @@ import Graphics.Vulkan.Types.Enum.VkCommandBufferLevel (VkCommandBufferLevel) import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType) import Graphics.Vulkan.Types.Handles (VkCommandPool)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkCommandBufferAllocateInfo {@@ -26,7 +26,7 @@ -- > uint32_t commandBufferCount; -- > } VkCommandBufferAllocateInfo; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkCommandBufferAllocateInfo.html VkCommandBufferAllocateInfo registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkCommandBufferAllocateInfo.html VkCommandBufferAllocateInfo registry at www.khronos.org> data VkCommandBufferAllocateInfo = VkCommandBufferAllocateInfo## Addr## ByteArray## @@ -78,27 +78,6 @@ type ReturnedOnly VkCommandBufferAllocateInfo = 'False -- ' closing tick for hsc2hs type StructExtends VkCommandBufferAllocateInfo = '[] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkSType VkCommandBufferAllocateInfo- where- type VkSTypeMType VkCommandBufferAllocateInfo = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCommandBufferAllocateInfo, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkCommandBufferAllocateInfo, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkCommandBufferAllocateInfo, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkCommandBufferAllocateInfo, sType}- instance {-# OVERLAPPING #-} HasField "sType" VkCommandBufferAllocateInfo where type FieldType "sType" VkCommandBufferAllocateInfo =@@ -115,37 +94,22 @@ fieldOffset = #{offset VkCommandBufferAllocateInfo, sType} -instance CanReadField "sType" VkCommandBufferAllocateInfo where- {-# INLINE getField #-}- getField = vkSType+instance {-# OVERLAPPING #-}+ CanReadField "sType" VkCommandBufferAllocateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkCommandBufferAllocateInfo, sType}) {-# INLINE readField #-}- readField = readVkSType+ readField p+ = peekByteOff p #{offset VkCommandBufferAllocateInfo, sType} -instance CanWriteField "sType" VkCommandBufferAllocateInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkCommandBufferAllocateInfo where {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-} HasVkPNext VkCommandBufferAllocateInfo- where- type VkPNextMType VkCommandBufferAllocateInfo = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCommandBufferAllocateInfo, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkCommandBufferAllocateInfo, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkCommandBufferAllocateInfo, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkCommandBufferAllocateInfo, pNext}+ writeField p+ = pokeByteOff p #{offset VkCommandBufferAllocateInfo, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkCommandBufferAllocateInfo where@@ -162,37 +126,22 @@ fieldOffset = #{offset VkCommandBufferAllocateInfo, pNext} -instance CanReadField "pNext" VkCommandBufferAllocateInfo where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkCommandBufferAllocateInfo where- {-# INLINE writeField #-}- writeField = writeVkPNext- instance {-# OVERLAPPING #-}- HasVkCommandPool VkCommandBufferAllocateInfo where- type VkCommandPoolMType VkCommandBufferAllocateInfo = VkCommandPool-- {-# NOINLINE vkCommandPool #-}- vkCommandPool x+ CanReadField "pNext" VkCommandBufferAllocateInfo where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCommandBufferAllocateInfo, commandPool})-- {-# INLINE vkCommandPoolByteOffset #-}- vkCommandPoolByteOffset ~_- = #{offset VkCommandBufferAllocateInfo, commandPool}+ (peekByteOff (unsafePtr x) #{offset VkCommandBufferAllocateInfo, pNext}) - {-# INLINE readVkCommandPool #-}- readVkCommandPool p- = peekByteOff p #{offset VkCommandBufferAllocateInfo, commandPool}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkCommandBufferAllocateInfo, pNext} - {-# INLINE writeVkCommandPool #-}- writeVkCommandPool p- = pokeByteOff p #{offset VkCommandBufferAllocateInfo, commandPool}+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkCommandBufferAllocateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkCommandBufferAllocateInfo, pNext} instance {-# OVERLAPPING #-} HasField "commandPool" VkCommandBufferAllocateInfo where@@ -212,40 +161,22 @@ fieldOffset = #{offset VkCommandBufferAllocateInfo, commandPool} -instance CanReadField "commandPool" VkCommandBufferAllocateInfo- where- {-# INLINE getField #-}- getField = vkCommandPool+instance {-# OVERLAPPING #-}+ CanReadField "commandPool" VkCommandBufferAllocateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkCommandBufferAllocateInfo, commandPool}) {-# INLINE readField #-}- readField = readVkCommandPool+ readField p+ = peekByteOff p #{offset VkCommandBufferAllocateInfo, commandPool} -instance CanWriteField "commandPool" VkCommandBufferAllocateInfo- where+instance {-# OVERLAPPING #-}+ CanWriteField "commandPool" VkCommandBufferAllocateInfo where {-# INLINE writeField #-}- writeField = writeVkCommandPool--instance {-# OVERLAPPING #-} HasVkLevel VkCommandBufferAllocateInfo- where- type VkLevelMType VkCommandBufferAllocateInfo =- VkCommandBufferLevel-- {-# NOINLINE vkLevel #-}- vkLevel x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCommandBufferAllocateInfo, level})-- {-# INLINE vkLevelByteOffset #-}- vkLevelByteOffset ~_- = #{offset VkCommandBufferAllocateInfo, level}-- {-# INLINE readVkLevel #-}- readVkLevel p- = peekByteOff p #{offset VkCommandBufferAllocateInfo, level}-- {-# INLINE writeVkLevel #-}- writeVkLevel p- = pokeByteOff p #{offset VkCommandBufferAllocateInfo, level}+ writeField p+ = pokeByteOff p #{offset VkCommandBufferAllocateInfo, commandPool} instance {-# OVERLAPPING #-} HasField "level" VkCommandBufferAllocateInfo where@@ -263,37 +194,22 @@ fieldOffset = #{offset VkCommandBufferAllocateInfo, level} -instance CanReadField "level" VkCommandBufferAllocateInfo where- {-# INLINE getField #-}- getField = vkLevel-- {-# INLINE readField #-}- readField = readVkLevel--instance CanWriteField "level" VkCommandBufferAllocateInfo where- {-# INLINE writeField #-}- writeField = writeVkLevel- instance {-# OVERLAPPING #-}- HasVkCommandBufferCount VkCommandBufferAllocateInfo where- type VkCommandBufferCountMType VkCommandBufferAllocateInfo = Word32-- {-# NOINLINE vkCommandBufferCount #-}- vkCommandBufferCount x+ CanReadField "level" VkCommandBufferAllocateInfo where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCommandBufferAllocateInfo, commandBufferCount})-- {-# INLINE vkCommandBufferCountByteOffset #-}- vkCommandBufferCountByteOffset ~_- = #{offset VkCommandBufferAllocateInfo, commandBufferCount}+ (peekByteOff (unsafePtr x) #{offset VkCommandBufferAllocateInfo, level}) - {-# INLINE readVkCommandBufferCount #-}- readVkCommandBufferCount p- = peekByteOff p #{offset VkCommandBufferAllocateInfo, commandBufferCount}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkCommandBufferAllocateInfo, level} - {-# INLINE writeVkCommandBufferCount #-}- writeVkCommandBufferCount p- = pokeByteOff p #{offset VkCommandBufferAllocateInfo, commandBufferCount}+instance {-# OVERLAPPING #-}+ CanWriteField "level" VkCommandBufferAllocateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkCommandBufferAllocateInfo, level} instance {-# OVERLAPPING #-} HasField "commandBufferCount" VkCommandBufferAllocateInfo where@@ -313,35 +229,39 @@ fieldOffset = #{offset VkCommandBufferAllocateInfo, commandBufferCount} -instance CanReadField "commandBufferCount"- VkCommandBufferAllocateInfo- where- {-# INLINE getField #-}- getField = vkCommandBufferCount+instance {-# OVERLAPPING #-}+ CanReadField "commandBufferCount" VkCommandBufferAllocateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkCommandBufferAllocateInfo, commandBufferCount}) {-# INLINE readField #-}- readField = readVkCommandBufferCount+ readField p+ = peekByteOff p #{offset VkCommandBufferAllocateInfo, commandBufferCount} -instance CanWriteField "commandBufferCount"- VkCommandBufferAllocateInfo+instance {-# OVERLAPPING #-}+ CanWriteField "commandBufferCount" VkCommandBufferAllocateInfo where {-# INLINE writeField #-}- writeField = writeVkCommandBufferCount+ writeField p+ = pokeByteOff p #{offset VkCommandBufferAllocateInfo, commandBufferCount} instance Show VkCommandBufferAllocateInfo where showsPrec d x = showString "VkCommandBufferAllocateInfo {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkCommandPool = " .- showsPrec d (vkCommandPool x) .+ showString "commandPool = " .+ showsPrec d (getField @"commandPool" x) . showString ", " .- showString "vkLevel = " .- showsPrec d (vkLevel x) .+ showString "level = " .+ showsPrec d (getField @"level" x) . showString ", " .- showString "vkCommandBufferCount = " .- showsPrec d (vkCommandBufferCount x) . showChar '}'+ showString "commandBufferCount = " .+ showsPrec d (getField @"commandBufferCount" x) .+ showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkCommandBufferBeginInfo (VkCommandBufferBeginInfo(..)) where@@ -15,7 +16,6 @@ import Graphics.Vulkan.Types.Enum.VkCommandBufferUsageFlags (VkCommandBufferUsageFlags) import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType) import Graphics.Vulkan.Types.Struct.VkCommandBufferInheritanceInfo (VkCommandBufferInheritanceInfo)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkCommandBufferBeginInfo {@@ -25,7 +25,7 @@ -- > const VkCommandBufferInheritanceInfo* pInheritanceInfo; -- > } VkCommandBufferBeginInfo; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkCommandBufferBeginInfo.html VkCommandBufferBeginInfo registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkCommandBufferBeginInfo.html VkCommandBufferBeginInfo registry at www.khronos.org> data VkCommandBufferBeginInfo = VkCommandBufferBeginInfo## Addr## ByteArray## @@ -75,27 +75,6 @@ type ReturnedOnly VkCommandBufferBeginInfo = 'False -- ' closing tick for hsc2hs type StructExtends VkCommandBufferBeginInfo = '[] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkSType VkCommandBufferBeginInfo- where- type VkSTypeMType VkCommandBufferBeginInfo = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCommandBufferBeginInfo, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkCommandBufferBeginInfo, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkCommandBufferBeginInfo, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkCommandBufferBeginInfo, sType}- instance {-# OVERLAPPING #-} HasField "sType" VkCommandBufferBeginInfo where type FieldType "sType" VkCommandBufferBeginInfo = VkStructureType@@ -110,37 +89,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkCommandBufferBeginInfo, sType} -instance CanReadField "sType" VkCommandBufferBeginInfo where- {-# INLINE getField #-}- getField = vkSType+instance {-# OVERLAPPING #-}+ CanReadField "sType" VkCommandBufferBeginInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkCommandBufferBeginInfo, sType}) {-# INLINE readField #-}- readField = readVkSType+ readField p+ = peekByteOff p #{offset VkCommandBufferBeginInfo, sType} -instance CanWriteField "sType" VkCommandBufferBeginInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkCommandBufferBeginInfo where {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-} HasVkPNext VkCommandBufferBeginInfo- where- type VkPNextMType VkCommandBufferBeginInfo = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCommandBufferBeginInfo, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkCommandBufferBeginInfo, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkCommandBufferBeginInfo, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkCommandBufferBeginInfo, pNext}+ writeField p+ = pokeByteOff p #{offset VkCommandBufferBeginInfo, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkCommandBufferBeginInfo where@@ -156,38 +120,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkCommandBufferBeginInfo, pNext} -instance CanReadField "pNext" VkCommandBufferBeginInfo where- {-# INLINE getField #-}- getField = vkPNext+instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkCommandBufferBeginInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkCommandBufferBeginInfo, pNext}) {-# INLINE readField #-}- readField = readVkPNext+ readField p+ = peekByteOff p #{offset VkCommandBufferBeginInfo, pNext} -instance CanWriteField "pNext" VkCommandBufferBeginInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkCommandBufferBeginInfo where {-# INLINE writeField #-}- writeField = writeVkPNext--instance {-# OVERLAPPING #-} HasVkFlags VkCommandBufferBeginInfo- where- type VkFlagsMType VkCommandBufferBeginInfo =- VkCommandBufferUsageFlags-- {-# NOINLINE vkFlags #-}- vkFlags x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCommandBufferBeginInfo, flags})-- {-# INLINE vkFlagsByteOffset #-}- vkFlagsByteOffset ~_- = #{offset VkCommandBufferBeginInfo, flags}-- {-# INLINE readVkFlags #-}- readVkFlags p- = peekByteOff p #{offset VkCommandBufferBeginInfo, flags}-- {-# INLINE writeVkFlags #-}- writeVkFlags p- = pokeByteOff p #{offset VkCommandBufferBeginInfo, flags}+ writeField p+ = pokeByteOff p #{offset VkCommandBufferBeginInfo, pNext} instance {-# OVERLAPPING #-} HasField "flags" VkCommandBufferBeginInfo where@@ -204,38 +152,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkCommandBufferBeginInfo, flags} -instance CanReadField "flags" VkCommandBufferBeginInfo where- {-# INLINE getField #-}- getField = vkFlags-- {-# INLINE readField #-}- readField = readVkFlags--instance CanWriteField "flags" VkCommandBufferBeginInfo where- {-# INLINE writeField #-}- writeField = writeVkFlags- instance {-# OVERLAPPING #-}- HasVkPInheritanceInfo VkCommandBufferBeginInfo where- type VkPInheritanceInfoMType VkCommandBufferBeginInfo =- Ptr VkCommandBufferInheritanceInfo-- {-# NOINLINE vkPInheritanceInfo #-}- vkPInheritanceInfo x+ CanReadField "flags" VkCommandBufferBeginInfo where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCommandBufferBeginInfo, pInheritanceInfo})-- {-# INLINE vkPInheritanceInfoByteOffset #-}- vkPInheritanceInfoByteOffset ~_- = #{offset VkCommandBufferBeginInfo, pInheritanceInfo}+ (peekByteOff (unsafePtr x) #{offset VkCommandBufferBeginInfo, flags}) - {-# INLINE readVkPInheritanceInfo #-}- readVkPInheritanceInfo p- = peekByteOff p #{offset VkCommandBufferBeginInfo, pInheritanceInfo}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkCommandBufferBeginInfo, flags} - {-# INLINE writeVkPInheritanceInfo #-}- writeVkPInheritanceInfo p- = pokeByteOff p #{offset VkCommandBufferBeginInfo, pInheritanceInfo}+instance {-# OVERLAPPING #-}+ CanWriteField "flags" VkCommandBufferBeginInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkCommandBufferBeginInfo, flags} instance {-# OVERLAPPING #-} HasField "pInheritanceInfo" VkCommandBufferBeginInfo where@@ -255,30 +187,34 @@ fieldOffset = #{offset VkCommandBufferBeginInfo, pInheritanceInfo} -instance CanReadField "pInheritanceInfo" VkCommandBufferBeginInfo- where- {-# INLINE getField #-}- getField = vkPInheritanceInfo+instance {-# OVERLAPPING #-}+ CanReadField "pInheritanceInfo" VkCommandBufferBeginInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkCommandBufferBeginInfo, pInheritanceInfo}) {-# INLINE readField #-}- readField = readVkPInheritanceInfo+ readField p+ = peekByteOff p #{offset VkCommandBufferBeginInfo, pInheritanceInfo} -instance CanWriteField "pInheritanceInfo" VkCommandBufferBeginInfo- where+instance {-# OVERLAPPING #-}+ CanWriteField "pInheritanceInfo" VkCommandBufferBeginInfo where {-# INLINE writeField #-}- writeField = writeVkPInheritanceInfo+ writeField p+ = pokeByteOff p #{offset VkCommandBufferBeginInfo, pInheritanceInfo} instance Show VkCommandBufferBeginInfo where showsPrec d x = showString "VkCommandBufferBeginInfo {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkFlags = " .- showsPrec d (vkFlags x) .+ showString "flags = " .+ showsPrec d (getField @"flags" x) . showString ", " .- showString "vkPInheritanceInfo = " .- showsPrec d (vkPInheritanceInfo x) . showChar '}'+ showString "pInheritanceInfo = " .+ showsPrec d (getField @"pInheritanceInfo" x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkCommandBufferInheritanceInfo (VkCommandBufferInheritanceInfo(..)) where@@ -18,7 +19,6 @@ import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType) import Graphics.Vulkan.Types.Handles (VkFramebuffer, VkRenderPass)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkCommandBufferInheritanceInfo {@@ -32,7 +32,7 @@ -- > VkQueryPipelineStatisticFlags pipelineStatistics; -- > } VkCommandBufferInheritanceInfo; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkCommandBufferInheritanceInfo.html VkCommandBufferInheritanceInfo registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkCommandBufferInheritanceInfo.html VkCommandBufferInheritanceInfo registry at www.khronos.org> data VkCommandBufferInheritanceInfo = VkCommandBufferInheritanceInfo## Addr## ByteArray## @@ -87,27 +87,6 @@ type StructExtends VkCommandBufferInheritanceInfo = '[] -- ' closing tick for hsc2hs instance {-# OVERLAPPING #-}- HasVkSType VkCommandBufferInheritanceInfo where- type VkSTypeMType VkCommandBufferInheritanceInfo = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCommandBufferInheritanceInfo, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkCommandBufferInheritanceInfo, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkCommandBufferInheritanceInfo, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkCommandBufferInheritanceInfo, sType}--instance {-# OVERLAPPING #-} HasField "sType" VkCommandBufferInheritanceInfo where type FieldType "sType" VkCommandBufferInheritanceInfo = VkStructureType@@ -123,37 +102,22 @@ fieldOffset = #{offset VkCommandBufferInheritanceInfo, sType} -instance CanReadField "sType" VkCommandBufferInheritanceInfo where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance CanWriteField "sType" VkCommandBufferInheritanceInfo where- {-# INLINE writeField #-}- writeField = writeVkSType- instance {-# OVERLAPPING #-}- HasVkPNext VkCommandBufferInheritanceInfo where- type VkPNextMType VkCommandBufferInheritanceInfo = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x+ CanReadField "sType" VkCommandBufferInheritanceInfo where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCommandBufferInheritanceInfo, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkCommandBufferInheritanceInfo, pNext}+ (peekByteOff (unsafePtr x) #{offset VkCommandBufferInheritanceInfo, sType}) - {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkCommandBufferInheritanceInfo, pNext}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkCommandBufferInheritanceInfo, sType} - {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkCommandBufferInheritanceInfo, pNext}+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkCommandBufferInheritanceInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkCommandBufferInheritanceInfo, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkCommandBufferInheritanceInfo where@@ -170,38 +134,22 @@ fieldOffset = #{offset VkCommandBufferInheritanceInfo, pNext} -instance CanReadField "pNext" VkCommandBufferInheritanceInfo where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkCommandBufferInheritanceInfo where- {-# INLINE writeField #-}- writeField = writeVkPNext- instance {-# OVERLAPPING #-}- HasVkRenderPass VkCommandBufferInheritanceInfo where- type VkRenderPassMType VkCommandBufferInheritanceInfo =- VkRenderPass-- {-# NOINLINE vkRenderPass #-}- vkRenderPass x+ CanReadField "pNext" VkCommandBufferInheritanceInfo where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCommandBufferInheritanceInfo, renderPass})-- {-# INLINE vkRenderPassByteOffset #-}- vkRenderPassByteOffset ~_- = #{offset VkCommandBufferInheritanceInfo, renderPass}+ (peekByteOff (unsafePtr x) #{offset VkCommandBufferInheritanceInfo, pNext}) - {-# INLINE readVkRenderPass #-}- readVkRenderPass p- = peekByteOff p #{offset VkCommandBufferInheritanceInfo, renderPass}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkCommandBufferInheritanceInfo, pNext} - {-# INLINE writeVkRenderPass #-}- writeVkRenderPass p- = pokeByteOff p #{offset VkCommandBufferInheritanceInfo, renderPass}+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkCommandBufferInheritanceInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkCommandBufferInheritanceInfo, pNext} instance {-# OVERLAPPING #-} HasField "renderPass" VkCommandBufferInheritanceInfo where@@ -221,39 +169,22 @@ fieldOffset = #{offset VkCommandBufferInheritanceInfo, renderPass} -instance CanReadField "renderPass" VkCommandBufferInheritanceInfo- where- {-# INLINE getField #-}- getField = vkRenderPass-- {-# INLINE readField #-}- readField = readVkRenderPass--instance CanWriteField "renderPass" VkCommandBufferInheritanceInfo- where- {-# INLINE writeField #-}- writeField = writeVkRenderPass- instance {-# OVERLAPPING #-}- HasVkSubpass VkCommandBufferInheritanceInfo where- type VkSubpassMType VkCommandBufferInheritanceInfo = Word32-- {-# NOINLINE vkSubpass #-}- vkSubpass x+ CanReadField "renderPass" VkCommandBufferInheritanceInfo where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCommandBufferInheritanceInfo, subpass})-- {-# INLINE vkSubpassByteOffset #-}- vkSubpassByteOffset ~_- = #{offset VkCommandBufferInheritanceInfo, subpass}+ (peekByteOff (unsafePtr x) #{offset VkCommandBufferInheritanceInfo, renderPass}) - {-# INLINE readVkSubpass #-}- readVkSubpass p- = peekByteOff p #{offset VkCommandBufferInheritanceInfo, subpass}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkCommandBufferInheritanceInfo, renderPass} - {-# INLINE writeVkSubpass #-}- writeVkSubpass p- = pokeByteOff p #{offset VkCommandBufferInheritanceInfo, subpass}+instance {-# OVERLAPPING #-}+ CanWriteField "renderPass" VkCommandBufferInheritanceInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkCommandBufferInheritanceInfo, renderPass} instance {-# OVERLAPPING #-} HasField "subpass" VkCommandBufferInheritanceInfo where@@ -271,40 +202,22 @@ fieldOffset = #{offset VkCommandBufferInheritanceInfo, subpass} -instance CanReadField "subpass" VkCommandBufferInheritanceInfo- where- {-# INLINE getField #-}- getField = vkSubpass-- {-# INLINE readField #-}- readField = readVkSubpass--instance CanWriteField "subpass" VkCommandBufferInheritanceInfo- where- {-# INLINE writeField #-}- writeField = writeVkSubpass- instance {-# OVERLAPPING #-}- HasVkFramebuffer VkCommandBufferInheritanceInfo where- type VkFramebufferMType VkCommandBufferInheritanceInfo =- VkFramebuffer-- {-# NOINLINE vkFramebuffer #-}- vkFramebuffer x+ CanReadField "subpass" VkCommandBufferInheritanceInfo where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCommandBufferInheritanceInfo, framebuffer})-- {-# INLINE vkFramebufferByteOffset #-}- vkFramebufferByteOffset ~_- = #{offset VkCommandBufferInheritanceInfo, framebuffer}+ (peekByteOff (unsafePtr x) #{offset VkCommandBufferInheritanceInfo, subpass}) - {-# INLINE readVkFramebuffer #-}- readVkFramebuffer p- = peekByteOff p #{offset VkCommandBufferInheritanceInfo, framebuffer}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkCommandBufferInheritanceInfo, subpass} - {-# INLINE writeVkFramebuffer #-}- writeVkFramebuffer p- = pokeByteOff p #{offset VkCommandBufferInheritanceInfo, framebuffer}+instance {-# OVERLAPPING #-}+ CanWriteField "subpass" VkCommandBufferInheritanceInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkCommandBufferInheritanceInfo, subpass} instance {-# OVERLAPPING #-} HasField "framebuffer" VkCommandBufferInheritanceInfo where@@ -324,40 +237,22 @@ fieldOffset = #{offset VkCommandBufferInheritanceInfo, framebuffer} -instance CanReadField "framebuffer" VkCommandBufferInheritanceInfo- where- {-# INLINE getField #-}- getField = vkFramebuffer-- {-# INLINE readField #-}- readField = readVkFramebuffer--instance CanWriteField "framebuffer" VkCommandBufferInheritanceInfo- where- {-# INLINE writeField #-}- writeField = writeVkFramebuffer- instance {-# OVERLAPPING #-}- HasVkOcclusionQueryEnable VkCommandBufferInheritanceInfo where- type VkOcclusionQueryEnableMType VkCommandBufferInheritanceInfo =- VkBool32-- {-# NOINLINE vkOcclusionQueryEnable #-}- vkOcclusionQueryEnable x+ CanReadField "framebuffer" VkCommandBufferInheritanceInfo where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCommandBufferInheritanceInfo, occlusionQueryEnable})-- {-# INLINE vkOcclusionQueryEnableByteOffset #-}- vkOcclusionQueryEnableByteOffset ~_- = #{offset VkCommandBufferInheritanceInfo, occlusionQueryEnable}+ (peekByteOff (unsafePtr x) #{offset VkCommandBufferInheritanceInfo, framebuffer}) - {-# INLINE readVkOcclusionQueryEnable #-}- readVkOcclusionQueryEnable p- = peekByteOff p #{offset VkCommandBufferInheritanceInfo, occlusionQueryEnable}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkCommandBufferInheritanceInfo, framebuffer} - {-# INLINE writeVkOcclusionQueryEnable #-}- writeVkOcclusionQueryEnable p- = pokeByteOff p #{offset VkCommandBufferInheritanceInfo, occlusionQueryEnable}+instance {-# OVERLAPPING #-}+ CanWriteField "framebuffer" VkCommandBufferInheritanceInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkCommandBufferInheritanceInfo, framebuffer} instance {-# OVERLAPPING #-} HasField "occlusionQueryEnable" VkCommandBufferInheritanceInfo@@ -383,42 +278,24 @@ fieldOffset = #{offset VkCommandBufferInheritanceInfo, occlusionQueryEnable} -instance CanReadField "occlusionQueryEnable"- VkCommandBufferInheritanceInfo+instance {-# OVERLAPPING #-}+ CanReadField "occlusionQueryEnable" VkCommandBufferInheritanceInfo where- {-# INLINE getField #-}- getField = vkOcclusionQueryEnable+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkCommandBufferInheritanceInfo, occlusionQueryEnable}) {-# INLINE readField #-}- readField = readVkOcclusionQueryEnable+ readField p+ = peekByteOff p #{offset VkCommandBufferInheritanceInfo, occlusionQueryEnable} -instance CanWriteField "occlusionQueryEnable"- VkCommandBufferInheritanceInfo+instance {-# OVERLAPPING #-}+ CanWriteField "occlusionQueryEnable" VkCommandBufferInheritanceInfo where {-# INLINE writeField #-}- writeField = writeVkOcclusionQueryEnable--instance {-# OVERLAPPING #-}- HasVkQueryFlags VkCommandBufferInheritanceInfo where- type VkQueryFlagsMType VkCommandBufferInheritanceInfo =- VkQueryControlFlags-- {-# NOINLINE vkQueryFlags #-}- vkQueryFlags x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCommandBufferInheritanceInfo, queryFlags})-- {-# INLINE vkQueryFlagsByteOffset #-}- vkQueryFlagsByteOffset ~_- = #{offset VkCommandBufferInheritanceInfo, queryFlags}-- {-# INLINE readVkQueryFlags #-}- readVkQueryFlags p- = peekByteOff p #{offset VkCommandBufferInheritanceInfo, queryFlags}-- {-# INLINE writeVkQueryFlags #-}- writeVkQueryFlags p- = pokeByteOff p #{offset VkCommandBufferInheritanceInfo, queryFlags}+ writeField p+ = pokeByteOff p #{offset VkCommandBufferInheritanceInfo, occlusionQueryEnable} instance {-# OVERLAPPING #-} HasField "queryFlags" VkCommandBufferInheritanceInfo where@@ -438,40 +315,22 @@ fieldOffset = #{offset VkCommandBufferInheritanceInfo, queryFlags} -instance CanReadField "queryFlags" VkCommandBufferInheritanceInfo- where- {-# INLINE getField #-}- getField = vkQueryFlags-- {-# INLINE readField #-}- readField = readVkQueryFlags--instance CanWriteField "queryFlags" VkCommandBufferInheritanceInfo- where- {-# INLINE writeField #-}- writeField = writeVkQueryFlags- instance {-# OVERLAPPING #-}- HasVkPipelineStatistics VkCommandBufferInheritanceInfo where- type VkPipelineStatisticsMType VkCommandBufferInheritanceInfo =- VkQueryPipelineStatisticFlags-- {-# NOINLINE vkPipelineStatistics #-}- vkPipelineStatistics x+ CanReadField "queryFlags" VkCommandBufferInheritanceInfo where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCommandBufferInheritanceInfo, pipelineStatistics})-- {-# INLINE vkPipelineStatisticsByteOffset #-}- vkPipelineStatisticsByteOffset ~_- = #{offset VkCommandBufferInheritanceInfo, pipelineStatistics}+ (peekByteOff (unsafePtr x) #{offset VkCommandBufferInheritanceInfo, queryFlags}) - {-# INLINE readVkPipelineStatistics #-}- readVkPipelineStatistics p- = peekByteOff p #{offset VkCommandBufferInheritanceInfo, pipelineStatistics}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkCommandBufferInheritanceInfo, queryFlags} - {-# INLINE writeVkPipelineStatistics #-}- writeVkPipelineStatistics p- = pokeByteOff p #{offset VkCommandBufferInheritanceInfo, pipelineStatistics}+instance {-# OVERLAPPING #-}+ CanWriteField "queryFlags" VkCommandBufferInheritanceInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkCommandBufferInheritanceInfo, queryFlags} instance {-# OVERLAPPING #-} HasField "pipelineStatistics" VkCommandBufferInheritanceInfo where@@ -495,45 +354,50 @@ fieldOffset = #{offset VkCommandBufferInheritanceInfo, pipelineStatistics} -instance CanReadField "pipelineStatistics"- VkCommandBufferInheritanceInfo+instance {-# OVERLAPPING #-}+ CanReadField "pipelineStatistics" VkCommandBufferInheritanceInfo where- {-# INLINE getField #-}- getField = vkPipelineStatistics+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkCommandBufferInheritanceInfo, pipelineStatistics}) {-# INLINE readField #-}- readField = readVkPipelineStatistics+ readField p+ = peekByteOff p #{offset VkCommandBufferInheritanceInfo, pipelineStatistics} -instance CanWriteField "pipelineStatistics"- VkCommandBufferInheritanceInfo+instance {-# OVERLAPPING #-}+ CanWriteField "pipelineStatistics" VkCommandBufferInheritanceInfo where {-# INLINE writeField #-}- writeField = writeVkPipelineStatistics+ writeField p+ = pokeByteOff p #{offset VkCommandBufferInheritanceInfo, pipelineStatistics} instance Show VkCommandBufferInheritanceInfo where showsPrec d x = showString "VkCommandBufferInheritanceInfo {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkRenderPass = " .- showsPrec d (vkRenderPass x) .+ showString "renderPass = " .+ showsPrec d (getField @"renderPass" x) . showString ", " .- showString "vkSubpass = " .- showsPrec d (vkSubpass x) .+ showString "subpass = " .+ showsPrec d (getField @"subpass" x) . showString ", " .- showString "vkFramebuffer = " .- showsPrec d (vkFramebuffer x) .+ showString "framebuffer = " .+ showsPrec d (getField @"framebuffer" x) . showString ", " .- showString "vkOcclusionQueryEnable = " .- showsPrec d (vkOcclusionQueryEnable x) .+ showString "occlusionQueryEnable = " .+ showsPrec d (getField @"occlusionQueryEnable" x) . showString ", " .- showString "vkQueryFlags = " .- showsPrec d (vkQueryFlags x) .+ showString "queryFlags = " .+ showsPrec d (getField @"queryFlags" x) . showString ", " .- showString "vkPipelineStatistics = " .- showsPrec d (vkPipelineStatistics x) .- showChar '}'+ showString "pipelineStatistics = " .+ showsPrec d+ (getField @"pipelineStatistics" x)+ . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkCommandPoolCreateInfo (VkCommandPoolCreateInfo(..)) where@@ -14,7 +15,6 @@ import Graphics.Vulkan.Marshal.Internal import Graphics.Vulkan.Types.Enum.VkCommandPoolCreateFlags (VkCommandPoolCreateFlags) import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkCommandPoolCreateInfo {@@ -24,7 +24,7 @@ -- > uint32_t queueFamilyIndex; -- > } VkCommandPoolCreateInfo; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkCommandPoolCreateInfo.html VkCommandPoolCreateInfo registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkCommandPoolCreateInfo.html VkCommandPoolCreateInfo registry at www.khronos.org> data VkCommandPoolCreateInfo = VkCommandPoolCreateInfo## Addr## ByteArray## @@ -73,27 +73,6 @@ type ReturnedOnly VkCommandPoolCreateInfo = 'False -- ' closing tick for hsc2hs type StructExtends VkCommandPoolCreateInfo = '[] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkSType VkCommandPoolCreateInfo- where- type VkSTypeMType VkCommandPoolCreateInfo = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCommandPoolCreateInfo, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkCommandPoolCreateInfo, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkCommandPoolCreateInfo, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkCommandPoolCreateInfo, sType}- instance {-# OVERLAPPING #-} HasField "sType" VkCommandPoolCreateInfo where type FieldType "sType" VkCommandPoolCreateInfo = VkStructureType@@ -108,37 +87,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkCommandPoolCreateInfo, sType} -instance CanReadField "sType" VkCommandPoolCreateInfo where- {-# INLINE getField #-}- getField = vkSType+instance {-# OVERLAPPING #-}+ CanReadField "sType" VkCommandPoolCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkCommandPoolCreateInfo, sType}) {-# INLINE readField #-}- readField = readVkSType+ readField p+ = peekByteOff p #{offset VkCommandPoolCreateInfo, sType} -instance CanWriteField "sType" VkCommandPoolCreateInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkCommandPoolCreateInfo where {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-} HasVkPNext VkCommandPoolCreateInfo- where- type VkPNextMType VkCommandPoolCreateInfo = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCommandPoolCreateInfo, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkCommandPoolCreateInfo, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkCommandPoolCreateInfo, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkCommandPoolCreateInfo, pNext}+ writeField p+ = pokeByteOff p #{offset VkCommandPoolCreateInfo, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkCommandPoolCreateInfo where@@ -154,38 +118,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkCommandPoolCreateInfo, pNext} -instance CanReadField "pNext" VkCommandPoolCreateInfo where- {-# INLINE getField #-}- getField = vkPNext+instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkCommandPoolCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkCommandPoolCreateInfo, pNext}) {-# INLINE readField #-}- readField = readVkPNext+ readField p+ = peekByteOff p #{offset VkCommandPoolCreateInfo, pNext} -instance CanWriteField "pNext" VkCommandPoolCreateInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkCommandPoolCreateInfo where {-# INLINE writeField #-}- writeField = writeVkPNext--instance {-# OVERLAPPING #-} HasVkFlags VkCommandPoolCreateInfo- where- type VkFlagsMType VkCommandPoolCreateInfo =- VkCommandPoolCreateFlags-- {-# NOINLINE vkFlags #-}- vkFlags x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCommandPoolCreateInfo, flags})-- {-# INLINE vkFlagsByteOffset #-}- vkFlagsByteOffset ~_- = #{offset VkCommandPoolCreateInfo, flags}-- {-# INLINE readVkFlags #-}- readVkFlags p- = peekByteOff p #{offset VkCommandPoolCreateInfo, flags}-- {-# INLINE writeVkFlags #-}- writeVkFlags p- = pokeByteOff p #{offset VkCommandPoolCreateInfo, flags}+ writeField p+ = pokeByteOff p #{offset VkCommandPoolCreateInfo, pNext} instance {-# OVERLAPPING #-} HasField "flags" VkCommandPoolCreateInfo where@@ -202,37 +150,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkCommandPoolCreateInfo, flags} -instance CanReadField "flags" VkCommandPoolCreateInfo where- {-# INLINE getField #-}- getField = vkFlags-- {-# INLINE readField #-}- readField = readVkFlags--instance CanWriteField "flags" VkCommandPoolCreateInfo where- {-# INLINE writeField #-}- writeField = writeVkFlags- instance {-# OVERLAPPING #-}- HasVkQueueFamilyIndex VkCommandPoolCreateInfo where- type VkQueueFamilyIndexMType VkCommandPoolCreateInfo = Word32-- {-# NOINLINE vkQueueFamilyIndex #-}- vkQueueFamilyIndex x+ CanReadField "flags" VkCommandPoolCreateInfo where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCommandPoolCreateInfo, queueFamilyIndex})-- {-# INLINE vkQueueFamilyIndexByteOffset #-}- vkQueueFamilyIndexByteOffset ~_- = #{offset VkCommandPoolCreateInfo, queueFamilyIndex}+ (peekByteOff (unsafePtr x) #{offset VkCommandPoolCreateInfo, flags}) - {-# INLINE readVkQueueFamilyIndex #-}- readVkQueueFamilyIndex p- = peekByteOff p #{offset VkCommandPoolCreateInfo, queueFamilyIndex}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkCommandPoolCreateInfo, flags} - {-# INLINE writeVkQueueFamilyIndex #-}- writeVkQueueFamilyIndex p- = pokeByteOff p #{offset VkCommandPoolCreateInfo, queueFamilyIndex}+instance {-# OVERLAPPING #-}+ CanWriteField "flags" VkCommandPoolCreateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkCommandPoolCreateInfo, flags} instance {-# OVERLAPPING #-} HasField "queueFamilyIndex" VkCommandPoolCreateInfo where@@ -251,30 +184,34 @@ fieldOffset = #{offset VkCommandPoolCreateInfo, queueFamilyIndex} -instance CanReadField "queueFamilyIndex" VkCommandPoolCreateInfo- where- {-# INLINE getField #-}- getField = vkQueueFamilyIndex+instance {-# OVERLAPPING #-}+ CanReadField "queueFamilyIndex" VkCommandPoolCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkCommandPoolCreateInfo, queueFamilyIndex}) {-# INLINE readField #-}- readField = readVkQueueFamilyIndex+ readField p+ = peekByteOff p #{offset VkCommandPoolCreateInfo, queueFamilyIndex} -instance CanWriteField "queueFamilyIndex" VkCommandPoolCreateInfo- where+instance {-# OVERLAPPING #-}+ CanWriteField "queueFamilyIndex" VkCommandPoolCreateInfo where {-# INLINE writeField #-}- writeField = writeVkQueueFamilyIndex+ writeField p+ = pokeByteOff p #{offset VkCommandPoolCreateInfo, queueFamilyIndex} instance Show VkCommandPoolCreateInfo where showsPrec d x = showString "VkCommandPoolCreateInfo {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkFlags = " .- showsPrec d (vkFlags x) .+ showString "flags = " .+ showsPrec d (getField @"flags" x) . showString ", " .- showString "vkQueueFamilyIndex = " .- showsPrec d (vkQueueFamilyIndex x) . showChar '}'+ showString "queueFamilyIndex = " .+ showsPrec d (getField @"queueFamilyIndex" x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkComponentMapping (VkComponentMapping(..)) where@@ -13,7 +14,6 @@ import Graphics.Vulkan.Marshal import Graphics.Vulkan.Marshal.Internal import Graphics.Vulkan.Types.Enum.VkComponentSwizzle (VkComponentSwizzle)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkComponentMapping {@@ -23,7 +23,7 @@ -- > VkComponentSwizzle a; -- > } VkComponentMapping; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkComponentMapping.html VkComponentMapping registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkComponentMapping.html VkComponentMapping registry at www.khronos.org> data VkComponentMapping = VkComponentMapping## Addr## ByteArray## instance Eq VkComponentMapping where@@ -70,25 +70,6 @@ type ReturnedOnly VkComponentMapping = 'False -- ' closing tick for hsc2hs type StructExtends VkComponentMapping = '[] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkR VkComponentMapping where- type VkRMType VkComponentMapping = VkComponentSwizzle-- {-# NOINLINE vkR #-}- vkR x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkComponentMapping, r})-- {-# INLINE vkRByteOffset #-}- vkRByteOffset ~_ = #{offset VkComponentMapping, r}-- {-# INLINE readVkR #-}- readVkR p- = peekByteOff p #{offset VkComponentMapping, r}-- {-# INLINE writeVkR #-}- writeVkR p- = pokeByteOff p #{offset VkComponentMapping, r}- instance {-# OVERLAPPING #-} HasField "r" VkComponentMapping where type FieldType "r" VkComponentMapping = VkComponentSwizzle type FieldOptional "r" VkComponentMapping = 'False -- ' closing tick for hsc2hs@@ -102,35 +83,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkComponentMapping, r} -instance CanReadField "r" VkComponentMapping where- {-# INLINE getField #-}- getField = vkR+instance {-# OVERLAPPING #-} CanReadField "r" VkComponentMapping+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkComponentMapping, r}) {-# INLINE readField #-}- readField = readVkR+ readField p+ = peekByteOff p #{offset VkComponentMapping, r} -instance CanWriteField "r" VkComponentMapping where+instance {-# OVERLAPPING #-} CanWriteField "r" VkComponentMapping+ where {-# INLINE writeField #-}- writeField = writeVkR--instance {-# OVERLAPPING #-} HasVkG VkComponentMapping where- type VkGMType VkComponentMapping = VkComponentSwizzle-- {-# NOINLINE vkG #-}- vkG x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkComponentMapping, g})-- {-# INLINE vkGByteOffset #-}- vkGByteOffset ~_ = #{offset VkComponentMapping, g}-- {-# INLINE readVkG #-}- readVkG p- = peekByteOff p #{offset VkComponentMapping, g}-- {-# INLINE writeVkG #-}- writeVkG p- = pokeByteOff p #{offset VkComponentMapping, g}+ writeField p+ = pokeByteOff p #{offset VkComponentMapping, r} instance {-# OVERLAPPING #-} HasField "g" VkComponentMapping where type FieldType "g" VkComponentMapping = VkComponentSwizzle@@ -145,35 +113,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkComponentMapping, g} -instance CanReadField "g" VkComponentMapping where- {-# INLINE getField #-}- getField = vkG+instance {-# OVERLAPPING #-} CanReadField "g" VkComponentMapping+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkComponentMapping, g}) {-# INLINE readField #-}- readField = readVkG+ readField p+ = peekByteOff p #{offset VkComponentMapping, g} -instance CanWriteField "g" VkComponentMapping where+instance {-# OVERLAPPING #-} CanWriteField "g" VkComponentMapping+ where {-# INLINE writeField #-}- writeField = writeVkG--instance {-# OVERLAPPING #-} HasVkB VkComponentMapping where- type VkBMType VkComponentMapping = VkComponentSwizzle-- {-# NOINLINE vkB #-}- vkB x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkComponentMapping, b})-- {-# INLINE vkBByteOffset #-}- vkBByteOffset ~_ = #{offset VkComponentMapping, b}-- {-# INLINE readVkB #-}- readVkB p- = peekByteOff p #{offset VkComponentMapping, b}-- {-# INLINE writeVkB #-}- writeVkB p- = pokeByteOff p #{offset VkComponentMapping, b}+ writeField p+ = pokeByteOff p #{offset VkComponentMapping, g} instance {-# OVERLAPPING #-} HasField "b" VkComponentMapping where type FieldType "b" VkComponentMapping = VkComponentSwizzle@@ -188,35 +143,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkComponentMapping, b} -instance CanReadField "b" VkComponentMapping where- {-# INLINE getField #-}- getField = vkB+instance {-# OVERLAPPING #-} CanReadField "b" VkComponentMapping+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkComponentMapping, b}) {-# INLINE readField #-}- readField = readVkB+ readField p+ = peekByteOff p #{offset VkComponentMapping, b} -instance CanWriteField "b" VkComponentMapping where+instance {-# OVERLAPPING #-} CanWriteField "b" VkComponentMapping+ where {-# INLINE writeField #-}- writeField = writeVkB--instance {-# OVERLAPPING #-} HasVkA VkComponentMapping where- type VkAMType VkComponentMapping = VkComponentSwizzle-- {-# NOINLINE vkA #-}- vkA x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkComponentMapping, a})-- {-# INLINE vkAByteOffset #-}- vkAByteOffset ~_ = #{offset VkComponentMapping, a}-- {-# INLINE readVkA #-}- readVkA p- = peekByteOff p #{offset VkComponentMapping, a}-- {-# INLINE writeVkA #-}- writeVkA p- = pokeByteOff p #{offset VkComponentMapping, a}+ writeField p+ = pokeByteOff p #{offset VkComponentMapping, b} instance {-# OVERLAPPING #-} HasField "a" VkComponentMapping where type FieldType "a" VkComponentMapping = VkComponentSwizzle@@ -231,27 +173,33 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkComponentMapping, a} -instance CanReadField "a" VkComponentMapping where- {-# INLINE getField #-}- getField = vkA+instance {-# OVERLAPPING #-} CanReadField "a" VkComponentMapping+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkComponentMapping, a}) {-# INLINE readField #-}- readField = readVkA+ readField p+ = peekByteOff p #{offset VkComponentMapping, a} -instance CanWriteField "a" VkComponentMapping where+instance {-# OVERLAPPING #-} CanWriteField "a" VkComponentMapping+ where {-# INLINE writeField #-}- writeField = writeVkA+ writeField p+ = pokeByteOff p #{offset VkComponentMapping, a} instance Show VkComponentMapping where showsPrec d x = showString "VkComponentMapping {" .- showString "vkR = " .- showsPrec d (vkR x) .+ showString "r = " .+ showsPrec d (getField @"r" x) . showString ", " .- showString "vkG = " .- showsPrec d (vkG x) .+ showString "g = " .+ showsPrec d (getField @"g" x) . showString ", " .- showString "vkB = " .- showsPrec d (vkB x) .+ showString "b = " .+ showsPrec d (getField @"b" x) . showString ", " .- showString "vkA = " . showsPrec d (vkA x) . showChar '}'+ showString "a = " . showsPrec d (getField @"a" x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkComputePipelineCreateInfo (VkComputePipelineCreateInfo(..)) where@@ -17,7 +18,6 @@ import Graphics.Vulkan.Types.Handles (VkPipeline, VkPipelineLayout) import Graphics.Vulkan.Types.Struct.VkPipelineShaderStageCreateInfo (VkPipelineShaderStageCreateInfo)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkComputePipelineCreateInfo {@@ -30,7 +30,7 @@ -- > int32_t basePipelineIndex; -- > } VkComputePipelineCreateInfo; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkComputePipelineCreateInfo.html VkComputePipelineCreateInfo registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkComputePipelineCreateInfo.html VkComputePipelineCreateInfo registry at www.khronos.org> data VkComputePipelineCreateInfo = VkComputePipelineCreateInfo## Addr## ByteArray## @@ -83,27 +83,6 @@ type ReturnedOnly VkComputePipelineCreateInfo = 'False -- ' closing tick for hsc2hs type StructExtends VkComputePipelineCreateInfo = '[] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkSType VkComputePipelineCreateInfo- where- type VkSTypeMType VkComputePipelineCreateInfo = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkComputePipelineCreateInfo, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkComputePipelineCreateInfo, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkComputePipelineCreateInfo, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkComputePipelineCreateInfo, sType}- instance {-# OVERLAPPING #-} HasField "sType" VkComputePipelineCreateInfo where type FieldType "sType" VkComputePipelineCreateInfo =@@ -120,37 +99,22 @@ fieldOffset = #{offset VkComputePipelineCreateInfo, sType} -instance CanReadField "sType" VkComputePipelineCreateInfo where- {-# INLINE getField #-}- getField = vkSType+instance {-# OVERLAPPING #-}+ CanReadField "sType" VkComputePipelineCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkComputePipelineCreateInfo, sType}) {-# INLINE readField #-}- readField = readVkSType+ readField p+ = peekByteOff p #{offset VkComputePipelineCreateInfo, sType} -instance CanWriteField "sType" VkComputePipelineCreateInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkComputePipelineCreateInfo where {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-} HasVkPNext VkComputePipelineCreateInfo- where- type VkPNextMType VkComputePipelineCreateInfo = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkComputePipelineCreateInfo, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkComputePipelineCreateInfo, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkComputePipelineCreateInfo, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkComputePipelineCreateInfo, pNext}+ writeField p+ = pokeByteOff p #{offset VkComputePipelineCreateInfo, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkComputePipelineCreateInfo where@@ -167,38 +131,22 @@ fieldOffset = #{offset VkComputePipelineCreateInfo, pNext} -instance CanReadField "pNext" VkComputePipelineCreateInfo where- {-# INLINE getField #-}- getField = vkPNext+instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkComputePipelineCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkComputePipelineCreateInfo, pNext}) {-# INLINE readField #-}- readField = readVkPNext+ readField p+ = peekByteOff p #{offset VkComputePipelineCreateInfo, pNext} -instance CanWriteField "pNext" VkComputePipelineCreateInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkComputePipelineCreateInfo where {-# INLINE writeField #-}- writeField = writeVkPNext--instance {-# OVERLAPPING #-} HasVkFlags VkComputePipelineCreateInfo- where- type VkFlagsMType VkComputePipelineCreateInfo =- VkPipelineCreateFlags-- {-# NOINLINE vkFlags #-}- vkFlags x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkComputePipelineCreateInfo, flags})-- {-# INLINE vkFlagsByteOffset #-}- vkFlagsByteOffset ~_- = #{offset VkComputePipelineCreateInfo, flags}-- {-# INLINE readVkFlags #-}- readVkFlags p- = peekByteOff p #{offset VkComputePipelineCreateInfo, flags}-- {-# INLINE writeVkFlags #-}- writeVkFlags p- = pokeByteOff p #{offset VkComputePipelineCreateInfo, flags}+ writeField p+ = pokeByteOff p #{offset VkComputePipelineCreateInfo, pNext} instance {-# OVERLAPPING #-} HasField "flags" VkComputePipelineCreateInfo where@@ -216,38 +164,22 @@ fieldOffset = #{offset VkComputePipelineCreateInfo, flags} -instance CanReadField "flags" VkComputePipelineCreateInfo where- {-# INLINE getField #-}- getField = vkFlags+instance {-# OVERLAPPING #-}+ CanReadField "flags" VkComputePipelineCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkComputePipelineCreateInfo, flags}) {-# INLINE readField #-}- readField = readVkFlags+ readField p+ = peekByteOff p #{offset VkComputePipelineCreateInfo, flags} -instance CanWriteField "flags" VkComputePipelineCreateInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "flags" VkComputePipelineCreateInfo where {-# INLINE writeField #-}- writeField = writeVkFlags--instance {-# OVERLAPPING #-} HasVkStage VkComputePipelineCreateInfo- where- type VkStageMType VkComputePipelineCreateInfo =- VkPipelineShaderStageCreateInfo-- {-# NOINLINE vkStage #-}- vkStage x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkComputePipelineCreateInfo, stage})-- {-# INLINE vkStageByteOffset #-}- vkStageByteOffset ~_- = #{offset VkComputePipelineCreateInfo, stage}-- {-# INLINE readVkStage #-}- readVkStage p- = peekByteOff p #{offset VkComputePipelineCreateInfo, stage}-- {-# INLINE writeVkStage #-}- writeVkStage p- = pokeByteOff p #{offset VkComputePipelineCreateInfo, stage}+ writeField p+ = pokeByteOff p #{offset VkComputePipelineCreateInfo, flags} instance {-# OVERLAPPING #-} HasField "stage" VkComputePipelineCreateInfo where@@ -265,37 +197,22 @@ fieldOffset = #{offset VkComputePipelineCreateInfo, stage} -instance CanReadField "stage" VkComputePipelineCreateInfo where- {-# INLINE getField #-}- getField = vkStage-- {-# INLINE readField #-}- readField = readVkStage--instance CanWriteField "stage" VkComputePipelineCreateInfo where- {-# INLINE writeField #-}- writeField = writeVkStage- instance {-# OVERLAPPING #-}- HasVkLayout VkComputePipelineCreateInfo where- type VkLayoutMType VkComputePipelineCreateInfo = VkPipelineLayout-- {-# NOINLINE vkLayout #-}- vkLayout x+ CanReadField "stage" VkComputePipelineCreateInfo where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkComputePipelineCreateInfo, layout})-- {-# INLINE vkLayoutByteOffset #-}- vkLayoutByteOffset ~_- = #{offset VkComputePipelineCreateInfo, layout}+ (peekByteOff (unsafePtr x) #{offset VkComputePipelineCreateInfo, stage}) - {-# INLINE readVkLayout #-}- readVkLayout p- = peekByteOff p #{offset VkComputePipelineCreateInfo, layout}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkComputePipelineCreateInfo, stage} - {-# INLINE writeVkLayout #-}- writeVkLayout p- = pokeByteOff p #{offset VkComputePipelineCreateInfo, layout}+instance {-# OVERLAPPING #-}+ CanWriteField "stage" VkComputePipelineCreateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkComputePipelineCreateInfo, stage} instance {-# OVERLAPPING #-} HasField "layout" VkComputePipelineCreateInfo where@@ -313,38 +230,22 @@ fieldOffset = #{offset VkComputePipelineCreateInfo, layout} -instance CanReadField "layout" VkComputePipelineCreateInfo where- {-# INLINE getField #-}- getField = vkLayout-- {-# INLINE readField #-}- readField = readVkLayout--instance CanWriteField "layout" VkComputePipelineCreateInfo where- {-# INLINE writeField #-}- writeField = writeVkLayout- instance {-# OVERLAPPING #-}- HasVkBasePipelineHandle VkComputePipelineCreateInfo where- type VkBasePipelineHandleMType VkComputePipelineCreateInfo =- VkPipeline-- {-# NOINLINE vkBasePipelineHandle #-}- vkBasePipelineHandle x+ CanReadField "layout" VkComputePipelineCreateInfo where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkComputePipelineCreateInfo, basePipelineHandle})-- {-# INLINE vkBasePipelineHandleByteOffset #-}- vkBasePipelineHandleByteOffset ~_- = #{offset VkComputePipelineCreateInfo, basePipelineHandle}+ (peekByteOff (unsafePtr x) #{offset VkComputePipelineCreateInfo, layout}) - {-# INLINE readVkBasePipelineHandle #-}- readVkBasePipelineHandle p- = peekByteOff p #{offset VkComputePipelineCreateInfo, basePipelineHandle}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkComputePipelineCreateInfo, layout} - {-# INLINE writeVkBasePipelineHandle #-}- writeVkBasePipelineHandle p- = pokeByteOff p #{offset VkComputePipelineCreateInfo, basePipelineHandle}+instance {-# OVERLAPPING #-}+ CanWriteField "layout" VkComputePipelineCreateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkComputePipelineCreateInfo, layout} instance {-# OVERLAPPING #-} HasField "basePipelineHandle" VkComputePipelineCreateInfo where@@ -364,41 +265,23 @@ fieldOffset = #{offset VkComputePipelineCreateInfo, basePipelineHandle} -instance CanReadField "basePipelineHandle"- VkComputePipelineCreateInfo- where- {-# INLINE getField #-}- getField = vkBasePipelineHandle+instance {-# OVERLAPPING #-}+ CanReadField "basePipelineHandle" VkComputePipelineCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkComputePipelineCreateInfo, basePipelineHandle}) {-# INLINE readField #-}- readField = readVkBasePipelineHandle+ readField p+ = peekByteOff p #{offset VkComputePipelineCreateInfo, basePipelineHandle} -instance CanWriteField "basePipelineHandle"- VkComputePipelineCreateInfo+instance {-# OVERLAPPING #-}+ CanWriteField "basePipelineHandle" VkComputePipelineCreateInfo where {-# INLINE writeField #-}- writeField = writeVkBasePipelineHandle--instance {-# OVERLAPPING #-}- HasVkBasePipelineIndex VkComputePipelineCreateInfo where- type VkBasePipelineIndexMType VkComputePipelineCreateInfo = Int32-- {-# NOINLINE vkBasePipelineIndex #-}- vkBasePipelineIndex x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkComputePipelineCreateInfo, basePipelineIndex})-- {-# INLINE vkBasePipelineIndexByteOffset #-}- vkBasePipelineIndexByteOffset ~_- = #{offset VkComputePipelineCreateInfo, basePipelineIndex}-- {-# INLINE readVkBasePipelineIndex #-}- readVkBasePipelineIndex p- = peekByteOff p #{offset VkComputePipelineCreateInfo, basePipelineIndex}-- {-# INLINE writeVkBasePipelineIndex #-}- writeVkBasePipelineIndex p- = pokeByteOff p #{offset VkComputePipelineCreateInfo, basePipelineIndex}+ writeField p+ = pokeByteOff p #{offset VkComputePipelineCreateInfo, basePipelineHandle} instance {-# OVERLAPPING #-} HasField "basePipelineIndex" VkComputePipelineCreateInfo where@@ -418,42 +301,44 @@ fieldOffset = #{offset VkComputePipelineCreateInfo, basePipelineIndex} -instance CanReadField "basePipelineIndex"- VkComputePipelineCreateInfo- where- {-# INLINE getField #-}- getField = vkBasePipelineIndex+instance {-# OVERLAPPING #-}+ CanReadField "basePipelineIndex" VkComputePipelineCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkComputePipelineCreateInfo, basePipelineIndex}) {-# INLINE readField #-}- readField = readVkBasePipelineIndex+ readField p+ = peekByteOff p #{offset VkComputePipelineCreateInfo, basePipelineIndex} -instance CanWriteField "basePipelineIndex"- VkComputePipelineCreateInfo- where+instance {-# OVERLAPPING #-}+ CanWriteField "basePipelineIndex" VkComputePipelineCreateInfo where {-# INLINE writeField #-}- writeField = writeVkBasePipelineIndex+ writeField p+ = pokeByteOff p #{offset VkComputePipelineCreateInfo, basePipelineIndex} instance Show VkComputePipelineCreateInfo where showsPrec d x = showString "VkComputePipelineCreateInfo {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkFlags = " .- showsPrec d (vkFlags x) .+ showString "flags = " .+ showsPrec d (getField @"flags" x) . showString ", " .- showString "vkStage = " .- showsPrec d (vkStage x) .+ showString "stage = " .+ showsPrec d (getField @"stage" x) . showString ", " .- showString "vkLayout = " .- showsPrec d (vkLayout x) .+ showString "layout = " .+ showsPrec d (getField @"layout" x) . showString ", " .- showString "vkBasePipelineHandle = " .- showsPrec d (vkBasePipelineHandle x) .+ showString "basePipelineHandle = " .+ showsPrec d (getField @"basePipelineHandle" x) . showString ", " .- showString "vkBasePipelineIndex = " .- showsPrec d (vkBasePipelineIndex x) .+ showString "basePipelineIndex = " .+ showsPrec d (getField @"basePipelineIndex" x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkCopyDescriptorSet (VkCopyDescriptorSet(..)) where@@ -14,7 +15,6 @@ import Graphics.Vulkan.Marshal.Internal import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType) import Graphics.Vulkan.Types.Handles (VkDescriptorSet)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkCopyDescriptorSet {@@ -29,7 +29,7 @@ -- > uint32_t descriptorCount; -- > } VkCopyDescriptorSet; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkCopyDescriptorSet.html VkCopyDescriptorSet registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkCopyDescriptorSet.html VkCopyDescriptorSet registry at www.khronos.org> data VkCopyDescriptorSet = VkCopyDescriptorSet## Addr## ByteArray## instance Eq VkCopyDescriptorSet where@@ -78,26 +78,6 @@ type ReturnedOnly VkCopyDescriptorSet = 'False -- ' closing tick for hsc2hs type StructExtends VkCopyDescriptorSet = '[] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkSType VkCopyDescriptorSet where- type VkSTypeMType VkCopyDescriptorSet = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCopyDescriptorSet, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkCopyDescriptorSet, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkCopyDescriptorSet, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkCopyDescriptorSet, sType}- instance {-# OVERLAPPING #-} HasField "sType" VkCopyDescriptorSet where type FieldType "sType" VkCopyDescriptorSet = VkStructureType@@ -112,36 +92,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkCopyDescriptorSet, sType} -instance CanReadField "sType" VkCopyDescriptorSet where- {-# INLINE getField #-}- getField = vkSType+instance {-# OVERLAPPING #-}+ CanReadField "sType" VkCopyDescriptorSet where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkCopyDescriptorSet, sType}) {-# INLINE readField #-}- readField = readVkSType+ readField p+ = peekByteOff p #{offset VkCopyDescriptorSet, sType} -instance CanWriteField "sType" VkCopyDescriptorSet where+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkCopyDescriptorSet where {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-} HasVkPNext VkCopyDescriptorSet where- type VkPNextMType VkCopyDescriptorSet = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCopyDescriptorSet, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkCopyDescriptorSet, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkCopyDescriptorSet, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkCopyDescriptorSet, pNext}+ writeField p+ = pokeByteOff p #{offset VkCopyDescriptorSet, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkCopyDescriptorSet where@@ -157,36 +123,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkCopyDescriptorSet, pNext} -instance CanReadField "pNext" VkCopyDescriptorSet where- {-# INLINE getField #-}- getField = vkPNext+instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkCopyDescriptorSet where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkCopyDescriptorSet, pNext}) {-# INLINE readField #-}- readField = readVkPNext+ readField p+ = peekByteOff p #{offset VkCopyDescriptorSet, pNext} -instance CanWriteField "pNext" VkCopyDescriptorSet where+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkCopyDescriptorSet where {-# INLINE writeField #-}- writeField = writeVkPNext--instance {-# OVERLAPPING #-} HasVkSrcSet VkCopyDescriptorSet where- type VkSrcSetMType VkCopyDescriptorSet = VkDescriptorSet-- {-# NOINLINE vkSrcSet #-}- vkSrcSet x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCopyDescriptorSet, srcSet})-- {-# INLINE vkSrcSetByteOffset #-}- vkSrcSetByteOffset ~_- = #{offset VkCopyDescriptorSet, srcSet}-- {-# INLINE readVkSrcSet #-}- readVkSrcSet p- = peekByteOff p #{offset VkCopyDescriptorSet, srcSet}-- {-# INLINE writeVkSrcSet #-}- writeVkSrcSet p- = pokeByteOff p #{offset VkCopyDescriptorSet, srcSet}+ writeField p+ = pokeByteOff p #{offset VkCopyDescriptorSet, pNext} instance {-# OVERLAPPING #-} HasField "srcSet" VkCopyDescriptorSet where@@ -202,37 +154,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkCopyDescriptorSet, srcSet} -instance CanReadField "srcSet" VkCopyDescriptorSet where- {-# INLINE getField #-}- getField = vkSrcSet+instance {-# OVERLAPPING #-}+ CanReadField "srcSet" VkCopyDescriptorSet where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkCopyDescriptorSet, srcSet}) {-# INLINE readField #-}- readField = readVkSrcSet+ readField p+ = peekByteOff p #{offset VkCopyDescriptorSet, srcSet} -instance CanWriteField "srcSet" VkCopyDescriptorSet where+instance {-# OVERLAPPING #-}+ CanWriteField "srcSet" VkCopyDescriptorSet where {-# INLINE writeField #-}- writeField = writeVkSrcSet--instance {-# OVERLAPPING #-} HasVkSrcBinding VkCopyDescriptorSet- where- type VkSrcBindingMType VkCopyDescriptorSet = Word32-- {-# NOINLINE vkSrcBinding #-}- vkSrcBinding x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCopyDescriptorSet, srcBinding})-- {-# INLINE vkSrcBindingByteOffset #-}- vkSrcBindingByteOffset ~_- = #{offset VkCopyDescriptorSet, srcBinding}-- {-# INLINE readVkSrcBinding #-}- readVkSrcBinding p- = peekByteOff p #{offset VkCopyDescriptorSet, srcBinding}-- {-# INLINE writeVkSrcBinding #-}- writeVkSrcBinding p- = pokeByteOff p #{offset VkCopyDescriptorSet, srcBinding}+ writeField p+ = pokeByteOff p #{offset VkCopyDescriptorSet, srcSet} instance {-# OVERLAPPING #-} HasField "srcBinding" VkCopyDescriptorSet where@@ -248,37 +185,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkCopyDescriptorSet, srcBinding} -instance CanReadField "srcBinding" VkCopyDescriptorSet where- {-# INLINE getField #-}- getField = vkSrcBinding-- {-# INLINE readField #-}- readField = readVkSrcBinding--instance CanWriteField "srcBinding" VkCopyDescriptorSet where- {-# INLINE writeField #-}- writeField = writeVkSrcBinding- instance {-# OVERLAPPING #-}- HasVkSrcArrayElement VkCopyDescriptorSet where- type VkSrcArrayElementMType VkCopyDescriptorSet = Word32-- {-# NOINLINE vkSrcArrayElement #-}- vkSrcArrayElement x+ CanReadField "srcBinding" VkCopyDescriptorSet where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCopyDescriptorSet, srcArrayElement})-- {-# INLINE vkSrcArrayElementByteOffset #-}- vkSrcArrayElementByteOffset ~_- = #{offset VkCopyDescriptorSet, srcArrayElement}+ (peekByteOff (unsafePtr x) #{offset VkCopyDescriptorSet, srcBinding}) - {-# INLINE readVkSrcArrayElement #-}- readVkSrcArrayElement p- = peekByteOff p #{offset VkCopyDescriptorSet, srcArrayElement}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkCopyDescriptorSet, srcBinding} - {-# INLINE writeVkSrcArrayElement #-}- writeVkSrcArrayElement p- = pokeByteOff p #{offset VkCopyDescriptorSet, srcArrayElement}+instance {-# OVERLAPPING #-}+ CanWriteField "srcBinding" VkCopyDescriptorSet where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkCopyDescriptorSet, srcBinding} instance {-# OVERLAPPING #-} HasField "srcArrayElement" VkCopyDescriptorSet where@@ -295,36 +217,22 @@ fieldOffset = #{offset VkCopyDescriptorSet, srcArrayElement} -instance CanReadField "srcArrayElement" VkCopyDescriptorSet where- {-# INLINE getField #-}- getField = vkSrcArrayElement+instance {-# OVERLAPPING #-}+ CanReadField "srcArrayElement" VkCopyDescriptorSet where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkCopyDescriptorSet, srcArrayElement}) {-# INLINE readField #-}- readField = readVkSrcArrayElement+ readField p+ = peekByteOff p #{offset VkCopyDescriptorSet, srcArrayElement} -instance CanWriteField "srcArrayElement" VkCopyDescriptorSet where+instance {-# OVERLAPPING #-}+ CanWriteField "srcArrayElement" VkCopyDescriptorSet where {-# INLINE writeField #-}- writeField = writeVkSrcArrayElement--instance {-# OVERLAPPING #-} HasVkDstSet VkCopyDescriptorSet where- type VkDstSetMType VkCopyDescriptorSet = VkDescriptorSet-- {-# NOINLINE vkDstSet #-}- vkDstSet x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCopyDescriptorSet, dstSet})-- {-# INLINE vkDstSetByteOffset #-}- vkDstSetByteOffset ~_- = #{offset VkCopyDescriptorSet, dstSet}-- {-# INLINE readVkDstSet #-}- readVkDstSet p- = peekByteOff p #{offset VkCopyDescriptorSet, dstSet}-- {-# INLINE writeVkDstSet #-}- writeVkDstSet p- = pokeByteOff p #{offset VkCopyDescriptorSet, dstSet}+ writeField p+ = pokeByteOff p #{offset VkCopyDescriptorSet, srcArrayElement} instance {-# OVERLAPPING #-} HasField "dstSet" VkCopyDescriptorSet where@@ -340,37 +248,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkCopyDescriptorSet, dstSet} -instance CanReadField "dstSet" VkCopyDescriptorSet where- {-# INLINE getField #-}- getField = vkDstSet+instance {-# OVERLAPPING #-}+ CanReadField "dstSet" VkCopyDescriptorSet where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkCopyDescriptorSet, dstSet}) {-# INLINE readField #-}- readField = readVkDstSet+ readField p+ = peekByteOff p #{offset VkCopyDescriptorSet, dstSet} -instance CanWriteField "dstSet" VkCopyDescriptorSet where+instance {-# OVERLAPPING #-}+ CanWriteField "dstSet" VkCopyDescriptorSet where {-# INLINE writeField #-}- writeField = writeVkDstSet--instance {-# OVERLAPPING #-} HasVkDstBinding VkCopyDescriptorSet- where- type VkDstBindingMType VkCopyDescriptorSet = Word32-- {-# NOINLINE vkDstBinding #-}- vkDstBinding x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCopyDescriptorSet, dstBinding})-- {-# INLINE vkDstBindingByteOffset #-}- vkDstBindingByteOffset ~_- = #{offset VkCopyDescriptorSet, dstBinding}-- {-# INLINE readVkDstBinding #-}- readVkDstBinding p- = peekByteOff p #{offset VkCopyDescriptorSet, dstBinding}-- {-# INLINE writeVkDstBinding #-}- writeVkDstBinding p- = pokeByteOff p #{offset VkCopyDescriptorSet, dstBinding}+ writeField p+ = pokeByteOff p #{offset VkCopyDescriptorSet, dstSet} instance {-# OVERLAPPING #-} HasField "dstBinding" VkCopyDescriptorSet where@@ -386,37 +279,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkCopyDescriptorSet, dstBinding} -instance CanReadField "dstBinding" VkCopyDescriptorSet where- {-# INLINE getField #-}- getField = vkDstBinding-- {-# INLINE readField #-}- readField = readVkDstBinding--instance CanWriteField "dstBinding" VkCopyDescriptorSet where- {-# INLINE writeField #-}- writeField = writeVkDstBinding- instance {-# OVERLAPPING #-}- HasVkDstArrayElement VkCopyDescriptorSet where- type VkDstArrayElementMType VkCopyDescriptorSet = Word32-- {-# NOINLINE vkDstArrayElement #-}- vkDstArrayElement x+ CanReadField "dstBinding" VkCopyDescriptorSet where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCopyDescriptorSet, dstArrayElement})-- {-# INLINE vkDstArrayElementByteOffset #-}- vkDstArrayElementByteOffset ~_- = #{offset VkCopyDescriptorSet, dstArrayElement}+ (peekByteOff (unsafePtr x) #{offset VkCopyDescriptorSet, dstBinding}) - {-# INLINE readVkDstArrayElement #-}- readVkDstArrayElement p- = peekByteOff p #{offset VkCopyDescriptorSet, dstArrayElement}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkCopyDescriptorSet, dstBinding} - {-# INLINE writeVkDstArrayElement #-}- writeVkDstArrayElement p- = pokeByteOff p #{offset VkCopyDescriptorSet, dstArrayElement}+instance {-# OVERLAPPING #-}+ CanWriteField "dstBinding" VkCopyDescriptorSet where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkCopyDescriptorSet, dstBinding} instance {-# OVERLAPPING #-} HasField "dstArrayElement" VkCopyDescriptorSet where@@ -433,37 +311,22 @@ fieldOffset = #{offset VkCopyDescriptorSet, dstArrayElement} -instance CanReadField "dstArrayElement" VkCopyDescriptorSet where- {-# INLINE getField #-}- getField = vkDstArrayElement-- {-# INLINE readField #-}- readField = readVkDstArrayElement--instance CanWriteField "dstArrayElement" VkCopyDescriptorSet where- {-# INLINE writeField #-}- writeField = writeVkDstArrayElement- instance {-# OVERLAPPING #-}- HasVkDescriptorCount VkCopyDescriptorSet where- type VkDescriptorCountMType VkCopyDescriptorSet = Word32-- {-# NOINLINE vkDescriptorCount #-}- vkDescriptorCount x+ CanReadField "dstArrayElement" VkCopyDescriptorSet where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkCopyDescriptorSet, descriptorCount})-- {-# INLINE vkDescriptorCountByteOffset #-}- vkDescriptorCountByteOffset ~_- = #{offset VkCopyDescriptorSet, descriptorCount}+ (peekByteOff (unsafePtr x) #{offset VkCopyDescriptorSet, dstArrayElement}) - {-# INLINE readVkDescriptorCount #-}- readVkDescriptorCount p- = peekByteOff p #{offset VkCopyDescriptorSet, descriptorCount}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkCopyDescriptorSet, dstArrayElement} - {-# INLINE writeVkDescriptorCount #-}- writeVkDescriptorCount p- = pokeByteOff p #{offset VkCopyDescriptorSet, descriptorCount}+instance {-# OVERLAPPING #-}+ CanWriteField "dstArrayElement" VkCopyDescriptorSet where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkCopyDescriptorSet, dstArrayElement} instance {-# OVERLAPPING #-} HasField "descriptorCount" VkCopyDescriptorSet where@@ -480,44 +343,53 @@ fieldOffset = #{offset VkCopyDescriptorSet, descriptorCount} -instance CanReadField "descriptorCount" VkCopyDescriptorSet where- {-# INLINE getField #-}- getField = vkDescriptorCount+instance {-# OVERLAPPING #-}+ CanReadField "descriptorCount" VkCopyDescriptorSet where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkCopyDescriptorSet, descriptorCount}) {-# INLINE readField #-}- readField = readVkDescriptorCount+ readField p+ = peekByteOff p #{offset VkCopyDescriptorSet, descriptorCount} -instance CanWriteField "descriptorCount" VkCopyDescriptorSet where+instance {-# OVERLAPPING #-}+ CanWriteField "descriptorCount" VkCopyDescriptorSet where {-# INLINE writeField #-}- writeField = writeVkDescriptorCount+ writeField p+ = pokeByteOff p #{offset VkCopyDescriptorSet, descriptorCount} instance Show VkCopyDescriptorSet where showsPrec d x = showString "VkCopyDescriptorSet {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkSrcSet = " .- showsPrec d (vkSrcSet x) .+ showString "srcSet = " .+ showsPrec d (getField @"srcSet" x) . showString ", " .- showString "vkSrcBinding = " .- showsPrec d (vkSrcBinding x) .+ showString "srcBinding = " .+ showsPrec d (getField @"srcBinding" x) . showString ", " .- showString "vkSrcArrayElement = " .- showsPrec d (vkSrcArrayElement x) .+ showString "srcArrayElement = " .+ showsPrec d (getField @"srcArrayElement" x) . showString ", " .- showString "vkDstSet = " .- showsPrec d (vkDstSet x) .+ showString "dstSet = " .+ showsPrec d (getField @"dstSet" x) . showString ", " .- showString "vkDstBinding = " .- showsPrec d (vkDstBinding x) .+ showString "dstBinding = " .+ showsPrec d (getField @"dstBinding" x) . showString ", " .- showString "vkDstArrayElement = " .- showsPrec d (vkDstArrayElement x) .+ showString "dstArrayElement = " .+ showsPrec d+ (getField @"dstArrayElement" x)+ . showString ", " .- showString "vkDescriptorCount = " .- showsPrec d (vkDescriptorCount x) .- showChar '}'+ showString "descriptorCount = " .+ showsPrec d+ (getField @"descriptorCount" x)+ . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkD3D12FenceSubmitInfoKHR (VkD3D12FenceSubmitInfoKHR(..)) where@@ -14,7 +15,6 @@ import Graphics.Vulkan.Marshal.Internal import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType) import Graphics.Vulkan.Types.Struct.VkSubmitInfo (VkSubmitInfo)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkD3D12FenceSubmitInfoKHR {@@ -26,7 +26,7 @@ -- > const uint64_t* pSignalSemaphoreValues; -- > } VkD3D12FenceSubmitInfoKHR; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkD3D12FenceSubmitInfoKHR.html VkD3D12FenceSubmitInfoKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkD3D12FenceSubmitInfoKHR.html VkD3D12FenceSubmitInfoKHR registry at www.khronos.org> data VkD3D12FenceSubmitInfoKHR = VkD3D12FenceSubmitInfoKHR## Addr## ByteArray## @@ -78,27 +78,6 @@ type ReturnedOnly VkD3D12FenceSubmitInfoKHR = 'False -- ' closing tick for hsc2hs type StructExtends VkD3D12FenceSubmitInfoKHR = '[VkSubmitInfo] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkSType VkD3D12FenceSubmitInfoKHR- where- type VkSTypeMType VkD3D12FenceSubmitInfoKHR = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkD3D12FenceSubmitInfoKHR, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkD3D12FenceSubmitInfoKHR, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkD3D12FenceSubmitInfoKHR, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkD3D12FenceSubmitInfoKHR, sType}- instance {-# OVERLAPPING #-} HasField "sType" VkD3D12FenceSubmitInfoKHR where type FieldType "sType" VkD3D12FenceSubmitInfoKHR = VkStructureType@@ -114,37 +93,22 @@ fieldOffset = #{offset VkD3D12FenceSubmitInfoKHR, sType} -instance CanReadField "sType" VkD3D12FenceSubmitInfoKHR where- {-# INLINE getField #-}- getField = vkSType+instance {-# OVERLAPPING #-}+ CanReadField "sType" VkD3D12FenceSubmitInfoKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkD3D12FenceSubmitInfoKHR, sType}) {-# INLINE readField #-}- readField = readVkSType+ readField p+ = peekByteOff p #{offset VkD3D12FenceSubmitInfoKHR, sType} -instance CanWriteField "sType" VkD3D12FenceSubmitInfoKHR where+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkD3D12FenceSubmitInfoKHR where {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-} HasVkPNext VkD3D12FenceSubmitInfoKHR- where- type VkPNextMType VkD3D12FenceSubmitInfoKHR = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkD3D12FenceSubmitInfoKHR, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkD3D12FenceSubmitInfoKHR, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkD3D12FenceSubmitInfoKHR, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkD3D12FenceSubmitInfoKHR, pNext}+ writeField p+ = pokeByteOff p #{offset VkD3D12FenceSubmitInfoKHR, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkD3D12FenceSubmitInfoKHR where@@ -161,38 +125,22 @@ fieldOffset = #{offset VkD3D12FenceSubmitInfoKHR, pNext} -instance CanReadField "pNext" VkD3D12FenceSubmitInfoKHR where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkD3D12FenceSubmitInfoKHR where- {-# INLINE writeField #-}- writeField = writeVkPNext- instance {-# OVERLAPPING #-}- HasVkWaitSemaphoreValuesCount VkD3D12FenceSubmitInfoKHR where- type VkWaitSemaphoreValuesCountMType VkD3D12FenceSubmitInfoKHR =- Word32-- {-# NOINLINE vkWaitSemaphoreValuesCount #-}- vkWaitSemaphoreValuesCount x+ CanReadField "pNext" VkD3D12FenceSubmitInfoKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkD3D12FenceSubmitInfoKHR, waitSemaphoreValuesCount})-- {-# INLINE vkWaitSemaphoreValuesCountByteOffset #-}- vkWaitSemaphoreValuesCountByteOffset ~_- = #{offset VkD3D12FenceSubmitInfoKHR, waitSemaphoreValuesCount}+ (peekByteOff (unsafePtr x) #{offset VkD3D12FenceSubmitInfoKHR, pNext}) - {-# INLINE readVkWaitSemaphoreValuesCount #-}- readVkWaitSemaphoreValuesCount p- = peekByteOff p #{offset VkD3D12FenceSubmitInfoKHR, waitSemaphoreValuesCount}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkD3D12FenceSubmitInfoKHR, pNext} - {-# INLINE writeVkWaitSemaphoreValuesCount #-}- writeVkWaitSemaphoreValuesCount p- = pokeByteOff p #{offset VkD3D12FenceSubmitInfoKHR, waitSemaphoreValuesCount}+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkD3D12FenceSubmitInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkD3D12FenceSubmitInfoKHR, pNext} instance {-# OVERLAPPING #-} HasField "waitSemaphoreValuesCount" VkD3D12FenceSubmitInfoKHR where@@ -216,42 +164,24 @@ fieldOffset = #{offset VkD3D12FenceSubmitInfoKHR, waitSemaphoreValuesCount} -instance CanReadField "waitSemaphoreValuesCount"- VkD3D12FenceSubmitInfoKHR+instance {-# OVERLAPPING #-}+ CanReadField "waitSemaphoreValuesCount" VkD3D12FenceSubmitInfoKHR where- {-# INLINE getField #-}- getField = vkWaitSemaphoreValuesCount+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkD3D12FenceSubmitInfoKHR, waitSemaphoreValuesCount}) {-# INLINE readField #-}- readField = readVkWaitSemaphoreValuesCount+ readField p+ = peekByteOff p #{offset VkD3D12FenceSubmitInfoKHR, waitSemaphoreValuesCount} -instance CanWriteField "waitSemaphoreValuesCount"- VkD3D12FenceSubmitInfoKHR+instance {-# OVERLAPPING #-}+ CanWriteField "waitSemaphoreValuesCount" VkD3D12FenceSubmitInfoKHR where {-# INLINE writeField #-}- writeField = writeVkWaitSemaphoreValuesCount--instance {-# OVERLAPPING #-}- HasVkPWaitSemaphoreValues VkD3D12FenceSubmitInfoKHR where- type VkPWaitSemaphoreValuesMType VkD3D12FenceSubmitInfoKHR =- Ptr Word64-- {-# NOINLINE vkPWaitSemaphoreValues #-}- vkPWaitSemaphoreValues x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkD3D12FenceSubmitInfoKHR, pWaitSemaphoreValues})-- {-# INLINE vkPWaitSemaphoreValuesByteOffset #-}- vkPWaitSemaphoreValuesByteOffset ~_- = #{offset VkD3D12FenceSubmitInfoKHR, pWaitSemaphoreValues}-- {-# INLINE readVkPWaitSemaphoreValues #-}- readVkPWaitSemaphoreValues p- = peekByteOff p #{offset VkD3D12FenceSubmitInfoKHR, pWaitSemaphoreValues}-- {-# INLINE writeVkPWaitSemaphoreValues #-}- writeVkPWaitSemaphoreValues p- = pokeByteOff p #{offset VkD3D12FenceSubmitInfoKHR, pWaitSemaphoreValues}+ writeField p+ = pokeByteOff p #{offset VkD3D12FenceSubmitInfoKHR, waitSemaphoreValuesCount} instance {-# OVERLAPPING #-} HasField "pWaitSemaphoreValues" VkD3D12FenceSubmitInfoKHR where@@ -271,42 +201,23 @@ fieldOffset = #{offset VkD3D12FenceSubmitInfoKHR, pWaitSemaphoreValues} -instance CanReadField "pWaitSemaphoreValues"- VkD3D12FenceSubmitInfoKHR- where- {-# INLINE getField #-}- getField = vkPWaitSemaphoreValues+instance {-# OVERLAPPING #-}+ CanReadField "pWaitSemaphoreValues" VkD3D12FenceSubmitInfoKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkD3D12FenceSubmitInfoKHR, pWaitSemaphoreValues}) {-# INLINE readField #-}- readField = readVkPWaitSemaphoreValues+ readField p+ = peekByteOff p #{offset VkD3D12FenceSubmitInfoKHR, pWaitSemaphoreValues} -instance CanWriteField "pWaitSemaphoreValues"- VkD3D12FenceSubmitInfoKHR+instance {-# OVERLAPPING #-}+ CanWriteField "pWaitSemaphoreValues" VkD3D12FenceSubmitInfoKHR where {-# INLINE writeField #-}- writeField = writeVkPWaitSemaphoreValues--instance {-# OVERLAPPING #-}- HasVkSignalSemaphoreValuesCount VkD3D12FenceSubmitInfoKHR where- type VkSignalSemaphoreValuesCountMType VkD3D12FenceSubmitInfoKHR =- Word32-- {-# NOINLINE vkSignalSemaphoreValuesCount #-}- vkSignalSemaphoreValuesCount x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkD3D12FenceSubmitInfoKHR, signalSemaphoreValuesCount})-- {-# INLINE vkSignalSemaphoreValuesCountByteOffset #-}- vkSignalSemaphoreValuesCountByteOffset ~_- = #{offset VkD3D12FenceSubmitInfoKHR, signalSemaphoreValuesCount}-- {-# INLINE readVkSignalSemaphoreValuesCount #-}- readVkSignalSemaphoreValuesCount p- = peekByteOff p #{offset VkD3D12FenceSubmitInfoKHR, signalSemaphoreValuesCount}-- {-# INLINE writeVkSignalSemaphoreValuesCount #-}- writeVkSignalSemaphoreValuesCount p- = pokeByteOff p #{offset VkD3D12FenceSubmitInfoKHR, signalSemaphoreValuesCount}+ writeField p+ = pokeByteOff p #{offset VkD3D12FenceSubmitInfoKHR, pWaitSemaphoreValues} instance {-# OVERLAPPING #-} HasField "signalSemaphoreValuesCount" VkD3D12FenceSubmitInfoKHR@@ -332,42 +243,25 @@ fieldOffset = #{offset VkD3D12FenceSubmitInfoKHR, signalSemaphoreValuesCount} -instance CanReadField "signalSemaphoreValuesCount"- VkD3D12FenceSubmitInfoKHR+instance {-# OVERLAPPING #-}+ CanReadField "signalSemaphoreValuesCount" VkD3D12FenceSubmitInfoKHR where- {-# INLINE getField #-}- getField = vkSignalSemaphoreValuesCount+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkD3D12FenceSubmitInfoKHR, signalSemaphoreValuesCount}) {-# INLINE readField #-}- readField = readVkSignalSemaphoreValuesCount+ readField p+ = peekByteOff p #{offset VkD3D12FenceSubmitInfoKHR, signalSemaphoreValuesCount} -instance CanWriteField "signalSemaphoreValuesCount"+instance {-# OVERLAPPING #-}+ CanWriteField "signalSemaphoreValuesCount" VkD3D12FenceSubmitInfoKHR where {-# INLINE writeField #-}- writeField = writeVkSignalSemaphoreValuesCount--instance {-# OVERLAPPING #-}- HasVkPSignalSemaphoreValues VkD3D12FenceSubmitInfoKHR where- type VkPSignalSemaphoreValuesMType VkD3D12FenceSubmitInfoKHR =- Ptr Word64-- {-# NOINLINE vkPSignalSemaphoreValues #-}- vkPSignalSemaphoreValues x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkD3D12FenceSubmitInfoKHR, pSignalSemaphoreValues})-- {-# INLINE vkPSignalSemaphoreValuesByteOffset #-}- vkPSignalSemaphoreValuesByteOffset ~_- = #{offset VkD3D12FenceSubmitInfoKHR, pSignalSemaphoreValues}-- {-# INLINE readVkPSignalSemaphoreValues #-}- readVkPSignalSemaphoreValues p- = peekByteOff p #{offset VkD3D12FenceSubmitInfoKHR, pSignalSemaphoreValues}-- {-# INLINE writeVkPSignalSemaphoreValues #-}- writeVkPSignalSemaphoreValues p- = pokeByteOff p #{offset VkD3D12FenceSubmitInfoKHR, pSignalSemaphoreValues}+ writeField p+ = pokeByteOff p #{offset VkD3D12FenceSubmitInfoKHR, signalSemaphoreValuesCount} instance {-# OVERLAPPING #-} HasField "pSignalSemaphoreValues" VkD3D12FenceSubmitInfoKHR where@@ -390,39 +284,43 @@ fieldOffset = #{offset VkD3D12FenceSubmitInfoKHR, pSignalSemaphoreValues} -instance CanReadField "pSignalSemaphoreValues"- VkD3D12FenceSubmitInfoKHR+instance {-# OVERLAPPING #-}+ CanReadField "pSignalSemaphoreValues" VkD3D12FenceSubmitInfoKHR where- {-# INLINE getField #-}- getField = vkPSignalSemaphoreValues+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkD3D12FenceSubmitInfoKHR, pSignalSemaphoreValues}) {-# INLINE readField #-}- readField = readVkPSignalSemaphoreValues+ readField p+ = peekByteOff p #{offset VkD3D12FenceSubmitInfoKHR, pSignalSemaphoreValues} -instance CanWriteField "pSignalSemaphoreValues"- VkD3D12FenceSubmitInfoKHR+instance {-# OVERLAPPING #-}+ CanWriteField "pSignalSemaphoreValues" VkD3D12FenceSubmitInfoKHR where {-# INLINE writeField #-}- writeField = writeVkPSignalSemaphoreValues+ writeField p+ = pokeByteOff p #{offset VkD3D12FenceSubmitInfoKHR, pSignalSemaphoreValues} instance Show VkD3D12FenceSubmitInfoKHR where showsPrec d x = showString "VkD3D12FenceSubmitInfoKHR {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkWaitSemaphoreValuesCount = " .- showsPrec d (vkWaitSemaphoreValuesCount x) .+ showString "waitSemaphoreValuesCount = " .+ showsPrec d (getField @"waitSemaphoreValuesCount" x) . showString ", " .- showString "vkPWaitSemaphoreValues = " .- showsPrec d (vkPWaitSemaphoreValues x) .+ showString "pWaitSemaphoreValues = " .+ showsPrec d (getField @"pWaitSemaphoreValues" x) . showString ", " .- showString "vkSignalSemaphoreValuesCount = " .- showsPrec d (vkSignalSemaphoreValuesCount x) .+ showString "signalSemaphoreValuesCount = " .+ showsPrec d (getField @"signalSemaphoreValuesCount" x) . showString ", " .- showString "vkPSignalSemaphoreValues = " .- showsPrec d (vkPSignalSemaphoreValues x) .+ showString "pSignalSemaphoreValues = " .+ showsPrec d (getField @"pSignalSemaphoreValues" x) . showChar '}'
@@ -8,6 +8,7 @@ {-# LANGUAGE PatternSynonyms #-} {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} {-# LANGUAGE UndecidableInstances #-} module Graphics.Vulkan.Types.Struct.VkDebugMarkerMarkerInfoEXT@@ -18,7 +19,6 @@ import Graphics.Vulkan.Marshal import Graphics.Vulkan.Marshal.Internal import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkDebugMarkerMarkerInfoEXT {@@ -28,7 +28,7 @@ -- > float color[4]; -- > } VkDebugMarkerMarkerInfoEXT; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDebugMarkerMarkerInfoEXT.html VkDebugMarkerMarkerInfoEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDebugMarkerMarkerInfoEXT.html VkDebugMarkerMarkerInfoEXT registry at www.khronos.org> data VkDebugMarkerMarkerInfoEXT = VkDebugMarkerMarkerInfoEXT## Addr## ByteArray## @@ -80,27 +80,6 @@ type ReturnedOnly VkDebugMarkerMarkerInfoEXT = 'False -- ' closing tick for hsc2hs type StructExtends VkDebugMarkerMarkerInfoEXT = '[] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkSType VkDebugMarkerMarkerInfoEXT- where- type VkSTypeMType VkDebugMarkerMarkerInfoEXT = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDebugMarkerMarkerInfoEXT, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkDebugMarkerMarkerInfoEXT, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkDebugMarkerMarkerInfoEXT, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkDebugMarkerMarkerInfoEXT, sType}- instance {-# OVERLAPPING #-} HasField "sType" VkDebugMarkerMarkerInfoEXT where type FieldType "sType" VkDebugMarkerMarkerInfoEXT = VkStructureType@@ -116,37 +95,22 @@ fieldOffset = #{offset VkDebugMarkerMarkerInfoEXT, sType} -instance CanReadField "sType" VkDebugMarkerMarkerInfoEXT where- {-# INLINE getField #-}- getField = vkSType+instance {-# OVERLAPPING #-}+ CanReadField "sType" VkDebugMarkerMarkerInfoEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDebugMarkerMarkerInfoEXT, sType}) {-# INLINE readField #-}- readField = readVkSType+ readField p+ = peekByteOff p #{offset VkDebugMarkerMarkerInfoEXT, sType} -instance CanWriteField "sType" VkDebugMarkerMarkerInfoEXT where+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkDebugMarkerMarkerInfoEXT where {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-} HasVkPNext VkDebugMarkerMarkerInfoEXT- where- type VkPNextMType VkDebugMarkerMarkerInfoEXT = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDebugMarkerMarkerInfoEXT, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkDebugMarkerMarkerInfoEXT, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkDebugMarkerMarkerInfoEXT, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkDebugMarkerMarkerInfoEXT, pNext}+ writeField p+ = pokeByteOff p #{offset VkDebugMarkerMarkerInfoEXT, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkDebugMarkerMarkerInfoEXT where@@ -163,37 +127,22 @@ fieldOffset = #{offset VkDebugMarkerMarkerInfoEXT, pNext} -instance CanReadField "pNext" VkDebugMarkerMarkerInfoEXT where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkDebugMarkerMarkerInfoEXT where- {-# INLINE writeField #-}- writeField = writeVkPNext- instance {-# OVERLAPPING #-}- HasVkPMarkerName VkDebugMarkerMarkerInfoEXT where- type VkPMarkerNameMType VkDebugMarkerMarkerInfoEXT = CString-- {-# NOINLINE vkPMarkerName #-}- vkPMarkerName x+ CanReadField "pNext" VkDebugMarkerMarkerInfoEXT where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDebugMarkerMarkerInfoEXT, pMarkerName})-- {-# INLINE vkPMarkerNameByteOffset #-}- vkPMarkerNameByteOffset ~_- = #{offset VkDebugMarkerMarkerInfoEXT, pMarkerName}+ (peekByteOff (unsafePtr x) #{offset VkDebugMarkerMarkerInfoEXT, pNext}) - {-# INLINE readVkPMarkerName #-}- readVkPMarkerName p- = peekByteOff p #{offset VkDebugMarkerMarkerInfoEXT, pMarkerName}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugMarkerMarkerInfoEXT, pNext} - {-# INLINE writeVkPMarkerName #-}- writeVkPMarkerName p- = pokeByteOff p #{offset VkDebugMarkerMarkerInfoEXT, pMarkerName}+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkDebugMarkerMarkerInfoEXT where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugMarkerMarkerInfoEXT, pNext} instance {-# OVERLAPPING #-} HasField "pMarkerName" VkDebugMarkerMarkerInfoEXT where@@ -211,46 +160,22 @@ fieldOffset = #{offset VkDebugMarkerMarkerInfoEXT, pMarkerName} -instance CanReadField "pMarkerName" VkDebugMarkerMarkerInfoEXT- where- {-# INLINE getField #-}- getField = vkPMarkerName-- {-# INLINE readField #-}- readField = readVkPMarkerName--instance CanWriteField "pMarkerName" VkDebugMarkerMarkerInfoEXT- where- {-# INLINE writeField #-}- writeField = writeVkPMarkerName- instance {-# OVERLAPPING #-}- HasVkColorArray VkDebugMarkerMarkerInfoEXT where- type VkColorArrayMType VkDebugMarkerMarkerInfoEXT =- #{type float}-- {-# NOINLINE vkColorArray #-}- vkColorArray x idx+ CanReadField "pMarkerName" VkDebugMarkerMarkerInfoEXT where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x)- (idx * sizeOf (undefined :: #{type float}) +- #{offset VkDebugMarkerMarkerInfoEXT, color}))-- {-# INLINE vkColorArrayByteOffset #-}- vkColorArrayByteOffset ~_- = #{offset VkDebugMarkerMarkerInfoEXT, color}+ (peekByteOff (unsafePtr x) #{offset VkDebugMarkerMarkerInfoEXT, pMarkerName}) - {-# INLINE readVkColorArray #-}- readVkColorArray p idx- = peekByteOff p- (idx * sizeOf (undefined :: #{type float}) +- #{offset VkDebugMarkerMarkerInfoEXT, color})+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugMarkerMarkerInfoEXT, pMarkerName} - {-# INLINE writeVkColorArray #-}- writeVkColorArray p idx- = pokeByteOff p- (idx * sizeOf (undefined :: #{type float}) +- #{offset VkDebugMarkerMarkerInfoEXT, color})+instance {-# OVERLAPPING #-}+ CanWriteField "pMarkerName" VkDebugMarkerMarkerInfoEXT where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugMarkerMarkerInfoEXT, pMarkerName} instance {-# OVERLAPPING #-} HasField "color" VkDebugMarkerMarkerInfoEXT where@@ -268,7 +193,8 @@ fieldOffset = #{offset VkDebugMarkerMarkerInfoEXT, color} -instance (KnownNat idx,+instance {-# OVERLAPPING #-}+ (KnownNat idx, IndexInBounds "color" idx VkDebugMarkerMarkerInfoEXT) => CanReadFieldArray "color" idx VkDebugMarkerMarkerInfoEXT where@@ -289,14 +215,23 @@ fieldArrayLength = 4 {-# INLINE getFieldArray #-}- getFieldArray x- = vkColorArray x (fromInteger $ natVal' (proxy## :: Proxy## idx)) -- ' closing tick for hsc2hs+ getFieldArray = f+ where {-# NOINLINE f #-}+ f x = unsafeDupablePerformIO (peekByteOff (unsafePtr x) off)+ off+ = #{offset VkDebugMarkerMarkerInfoEXT, color} ++ sizeOf (undefined :: #{type float}) *+ fromInteger (natVal' (proxy## :: Proxy## idx)) -- ' closing tick for hsc2hs {-# INLINE readFieldArray #-}- readFieldArray x- = readVkColorArray x (fromInteger $ natVal' (proxy## :: Proxy## idx)) -- ' closing tick for hsc2hs+ readFieldArray p+ = peekByteOff p+ (#{offset VkDebugMarkerMarkerInfoEXT, color} ++ sizeOf (undefined :: #{type float}) *+ fromInteger (natVal' (proxy## :: Proxy## idx))) -- ' closing tick for hsc2hs -instance (KnownNat idx,+instance {-# OVERLAPPING #-}+ (KnownNat idx, IndexInBounds "color" idx VkDebugMarkerMarkerInfoEXT) => CanWriteFieldArray "color" idx VkDebugMarkerMarkerInfoEXT where@@ -313,22 +248,35 @@ CanWriteFieldArray "color" 3 VkDebugMarkerMarkerInfoEXT #-} {-# INLINE writeFieldArray #-}- writeFieldArray x- = writeVkColorArray x- (fromInteger $ natVal' (proxy## :: Proxy## idx)) -- ' closing tick for hsc2hs+ writeFieldArray p+ = pokeByteOff p+ (#{offset VkDebugMarkerMarkerInfoEXT, color} ++ sizeOf (undefined :: #{type float}) *+ fromInteger (natVal' (proxy## :: Proxy## idx))) -- ' closing tick for hsc2hs instance Show VkDebugMarkerMarkerInfoEXT where showsPrec d x = showString "VkDebugMarkerMarkerInfoEXT {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkPMarkerName = " .- showsPrec d (vkPMarkerName x) .+ showString "pMarkerName = " .+ showsPrec d (getField @"pMarkerName" x) . showString ", " .- showString "vkColorArray = [" .- showsPrec d (map (vkColorArray x) [1 .. 4]) .- showChar ']' . showChar '}'+ (showString "color = [" .+ showsPrec d+ (let s = sizeOf+ (undefined ::+ FieldType "color" VkDebugMarkerMarkerInfoEXT)+ o = fieldOffset @"color" @VkDebugMarkerMarkerInfoEXT+ f i+ = peekByteOff (unsafePtr x) i ::+ IO (FieldType "color" VkDebugMarkerMarkerInfoEXT)+ in+ unsafeDupablePerformIO . mapM f $+ map (\ i -> o + i * s) [0 .. 4 - 1])+ . showChar ']')+ . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkDebugMarkerObjectNameInfoEXT (VkDebugMarkerObjectNameInfoEXT(..)) where@@ -14,7 +15,6 @@ import Graphics.Vulkan.Marshal.Internal import Graphics.Vulkan.Types.Enum.VkDebugReportObjectTypeEXT (VkDebugReportObjectTypeEXT) import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkDebugMarkerObjectNameInfoEXT {@@ -25,7 +25,7 @@ -- > const char* pObjectName; -- > } VkDebugMarkerObjectNameInfoEXT; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDebugMarkerObjectNameInfoEXT.html VkDebugMarkerObjectNameInfoEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDebugMarkerObjectNameInfoEXT.html VkDebugMarkerObjectNameInfoEXT registry at www.khronos.org> data VkDebugMarkerObjectNameInfoEXT = VkDebugMarkerObjectNameInfoEXT## Addr## ByteArray## @@ -79,27 +79,6 @@ type StructExtends VkDebugMarkerObjectNameInfoEXT = '[] -- ' closing tick for hsc2hs instance {-# OVERLAPPING #-}- HasVkSType VkDebugMarkerObjectNameInfoEXT where- type VkSTypeMType VkDebugMarkerObjectNameInfoEXT = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDebugMarkerObjectNameInfoEXT, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkDebugMarkerObjectNameInfoEXT, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkDebugMarkerObjectNameInfoEXT, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkDebugMarkerObjectNameInfoEXT, sType}--instance {-# OVERLAPPING #-} HasField "sType" VkDebugMarkerObjectNameInfoEXT where type FieldType "sType" VkDebugMarkerObjectNameInfoEXT = VkStructureType@@ -115,37 +94,22 @@ fieldOffset = #{offset VkDebugMarkerObjectNameInfoEXT, sType} -instance CanReadField "sType" VkDebugMarkerObjectNameInfoEXT where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance CanWriteField "sType" VkDebugMarkerObjectNameInfoEXT where- {-# INLINE writeField #-}- writeField = writeVkSType- instance {-# OVERLAPPING #-}- HasVkPNext VkDebugMarkerObjectNameInfoEXT where- type VkPNextMType VkDebugMarkerObjectNameInfoEXT = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x+ CanReadField "sType" VkDebugMarkerObjectNameInfoEXT where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDebugMarkerObjectNameInfoEXT, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkDebugMarkerObjectNameInfoEXT, pNext}+ (peekByteOff (unsafePtr x) #{offset VkDebugMarkerObjectNameInfoEXT, sType}) - {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkDebugMarkerObjectNameInfoEXT, pNext}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugMarkerObjectNameInfoEXT, sType} - {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkDebugMarkerObjectNameInfoEXT, pNext}+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkDebugMarkerObjectNameInfoEXT where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugMarkerObjectNameInfoEXT, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkDebugMarkerObjectNameInfoEXT where@@ -162,38 +126,22 @@ fieldOffset = #{offset VkDebugMarkerObjectNameInfoEXT, pNext} -instance CanReadField "pNext" VkDebugMarkerObjectNameInfoEXT where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkDebugMarkerObjectNameInfoEXT where- {-# INLINE writeField #-}- writeField = writeVkPNext- instance {-# OVERLAPPING #-}- HasVkObjectType VkDebugMarkerObjectNameInfoEXT where- type VkObjectTypeMType VkDebugMarkerObjectNameInfoEXT =- VkDebugReportObjectTypeEXT-- {-# NOINLINE vkObjectType #-}- vkObjectType x+ CanReadField "pNext" VkDebugMarkerObjectNameInfoEXT where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDebugMarkerObjectNameInfoEXT, objectType})-- {-# INLINE vkObjectTypeByteOffset #-}- vkObjectTypeByteOffset ~_- = #{offset VkDebugMarkerObjectNameInfoEXT, objectType}+ (peekByteOff (unsafePtr x) #{offset VkDebugMarkerObjectNameInfoEXT, pNext}) - {-# INLINE readVkObjectType #-}- readVkObjectType p- = peekByteOff p #{offset VkDebugMarkerObjectNameInfoEXT, objectType}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugMarkerObjectNameInfoEXT, pNext} - {-# INLINE writeVkObjectType #-}- writeVkObjectType p- = pokeByteOff p #{offset VkDebugMarkerObjectNameInfoEXT, objectType}+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkDebugMarkerObjectNameInfoEXT where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugMarkerObjectNameInfoEXT, pNext} instance {-# OVERLAPPING #-} HasField "objectType" VkDebugMarkerObjectNameInfoEXT where@@ -213,39 +161,22 @@ fieldOffset = #{offset VkDebugMarkerObjectNameInfoEXT, objectType} -instance CanReadField "objectType" VkDebugMarkerObjectNameInfoEXT- where- {-# INLINE getField #-}- getField = vkObjectType-- {-# INLINE readField #-}- readField = readVkObjectType--instance CanWriteField "objectType" VkDebugMarkerObjectNameInfoEXT- where- {-# INLINE writeField #-}- writeField = writeVkObjectType- instance {-# OVERLAPPING #-}- HasVkObject VkDebugMarkerObjectNameInfoEXT where- type VkObjectMType VkDebugMarkerObjectNameInfoEXT = Word64-- {-# NOINLINE vkObject #-}- vkObject x+ CanReadField "objectType" VkDebugMarkerObjectNameInfoEXT where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDebugMarkerObjectNameInfoEXT, object})-- {-# INLINE vkObjectByteOffset #-}- vkObjectByteOffset ~_- = #{offset VkDebugMarkerObjectNameInfoEXT, object}+ (peekByteOff (unsafePtr x) #{offset VkDebugMarkerObjectNameInfoEXT, objectType}) - {-# INLINE readVkObject #-}- readVkObject p- = peekByteOff p #{offset VkDebugMarkerObjectNameInfoEXT, object}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugMarkerObjectNameInfoEXT, objectType} - {-# INLINE writeVkObject #-}- writeVkObject p- = pokeByteOff p #{offset VkDebugMarkerObjectNameInfoEXT, object}+instance {-# OVERLAPPING #-}+ CanWriteField "objectType" VkDebugMarkerObjectNameInfoEXT where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugMarkerObjectNameInfoEXT, objectType} instance {-# OVERLAPPING #-} HasField "object" VkDebugMarkerObjectNameInfoEXT where@@ -262,38 +193,22 @@ fieldOffset = #{offset VkDebugMarkerObjectNameInfoEXT, object} -instance CanReadField "object" VkDebugMarkerObjectNameInfoEXT where- {-# INLINE getField #-}- getField = vkObject-- {-# INLINE readField #-}- readField = readVkObject--instance CanWriteField "object" VkDebugMarkerObjectNameInfoEXT- where- {-# INLINE writeField #-}- writeField = writeVkObject- instance {-# OVERLAPPING #-}- HasVkPObjectName VkDebugMarkerObjectNameInfoEXT where- type VkPObjectNameMType VkDebugMarkerObjectNameInfoEXT = CString-- {-# NOINLINE vkPObjectName #-}- vkPObjectName x+ CanReadField "object" VkDebugMarkerObjectNameInfoEXT where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDebugMarkerObjectNameInfoEXT, pObjectName})-- {-# INLINE vkPObjectNameByteOffset #-}- vkPObjectNameByteOffset ~_- = #{offset VkDebugMarkerObjectNameInfoEXT, pObjectName}+ (peekByteOff (unsafePtr x) #{offset VkDebugMarkerObjectNameInfoEXT, object}) - {-# INLINE readVkPObjectName #-}- readVkPObjectName p- = peekByteOff p #{offset VkDebugMarkerObjectNameInfoEXT, pObjectName}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugMarkerObjectNameInfoEXT, object} - {-# INLINE writeVkPObjectName #-}- writeVkPObjectName p- = pokeByteOff p #{offset VkDebugMarkerObjectNameInfoEXT, pObjectName}+instance {-# OVERLAPPING #-}+ CanWriteField "object" VkDebugMarkerObjectNameInfoEXT where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugMarkerObjectNameInfoEXT, object} instance {-# OVERLAPPING #-} HasField "pObjectName" VkDebugMarkerObjectNameInfoEXT where@@ -313,33 +228,37 @@ fieldOffset = #{offset VkDebugMarkerObjectNameInfoEXT, pObjectName} -instance CanReadField "pObjectName" VkDebugMarkerObjectNameInfoEXT- where- {-# INLINE getField #-}- getField = vkPObjectName+instance {-# OVERLAPPING #-}+ CanReadField "pObjectName" VkDebugMarkerObjectNameInfoEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDebugMarkerObjectNameInfoEXT, pObjectName}) {-# INLINE readField #-}- readField = readVkPObjectName+ readField p+ = peekByteOff p #{offset VkDebugMarkerObjectNameInfoEXT, pObjectName} -instance CanWriteField "pObjectName" VkDebugMarkerObjectNameInfoEXT- where+instance {-# OVERLAPPING #-}+ CanWriteField "pObjectName" VkDebugMarkerObjectNameInfoEXT where {-# INLINE writeField #-}- writeField = writeVkPObjectName+ writeField p+ = pokeByteOff p #{offset VkDebugMarkerObjectNameInfoEXT, pObjectName} instance Show VkDebugMarkerObjectNameInfoEXT where showsPrec d x = showString "VkDebugMarkerObjectNameInfoEXT {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkObjectType = " .- showsPrec d (vkObjectType x) .+ showString "objectType = " .+ showsPrec d (getField @"objectType" x) . showString ", " .- showString "vkObject = " .- showsPrec d (vkObject x) .+ showString "object = " .+ showsPrec d (getField @"object" x) . showString ", " .- showString "vkPObjectName = " .- showsPrec d (vkPObjectName x) . showChar '}'+ showString "pObjectName = " .+ showsPrec d (getField @"pObjectName" x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkDebugMarkerObjectTagInfoEXT (VkDebugMarkerObjectTagInfoEXT(..)) where@@ -14,7 +15,6 @@ import Graphics.Vulkan.Marshal.Internal import Graphics.Vulkan.Types.Enum.VkDebugReportObjectTypeEXT (VkDebugReportObjectTypeEXT) import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkDebugMarkerObjectTagInfoEXT {@@ -27,7 +27,7 @@ -- > const void* pTag; -- > } VkDebugMarkerObjectTagInfoEXT; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDebugMarkerObjectTagInfoEXT.html VkDebugMarkerObjectTagInfoEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDebugMarkerObjectTagInfoEXT.html VkDebugMarkerObjectTagInfoEXT registry at www.khronos.org> data VkDebugMarkerObjectTagInfoEXT = VkDebugMarkerObjectTagInfoEXT## Addr## ByteArray## @@ -82,27 +82,6 @@ type StructExtends VkDebugMarkerObjectTagInfoEXT = '[] -- ' closing tick for hsc2hs instance {-# OVERLAPPING #-}- HasVkSType VkDebugMarkerObjectTagInfoEXT where- type VkSTypeMType VkDebugMarkerObjectTagInfoEXT = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDebugMarkerObjectTagInfoEXT, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkDebugMarkerObjectTagInfoEXT, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkDebugMarkerObjectTagInfoEXT, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkDebugMarkerObjectTagInfoEXT, sType}--instance {-# OVERLAPPING #-} HasField "sType" VkDebugMarkerObjectTagInfoEXT where type FieldType "sType" VkDebugMarkerObjectTagInfoEXT = VkStructureType@@ -118,37 +97,22 @@ fieldOffset = #{offset VkDebugMarkerObjectTagInfoEXT, sType} -instance CanReadField "sType" VkDebugMarkerObjectTagInfoEXT where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance CanWriteField "sType" VkDebugMarkerObjectTagInfoEXT where- {-# INLINE writeField #-}- writeField = writeVkSType- instance {-# OVERLAPPING #-}- HasVkPNext VkDebugMarkerObjectTagInfoEXT where- type VkPNextMType VkDebugMarkerObjectTagInfoEXT = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x+ CanReadField "sType" VkDebugMarkerObjectTagInfoEXT where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDebugMarkerObjectTagInfoEXT, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkDebugMarkerObjectTagInfoEXT, pNext}+ (peekByteOff (unsafePtr x) #{offset VkDebugMarkerObjectTagInfoEXT, sType}) - {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkDebugMarkerObjectTagInfoEXT, pNext}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugMarkerObjectTagInfoEXT, sType} - {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkDebugMarkerObjectTagInfoEXT, pNext}+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkDebugMarkerObjectTagInfoEXT where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugMarkerObjectTagInfoEXT, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkDebugMarkerObjectTagInfoEXT where@@ -165,38 +129,22 @@ fieldOffset = #{offset VkDebugMarkerObjectTagInfoEXT, pNext} -instance CanReadField "pNext" VkDebugMarkerObjectTagInfoEXT where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkDebugMarkerObjectTagInfoEXT where- {-# INLINE writeField #-}- writeField = writeVkPNext- instance {-# OVERLAPPING #-}- HasVkObjectType VkDebugMarkerObjectTagInfoEXT where- type VkObjectTypeMType VkDebugMarkerObjectTagInfoEXT =- VkDebugReportObjectTypeEXT-- {-# NOINLINE vkObjectType #-}- vkObjectType x+ CanReadField "pNext" VkDebugMarkerObjectTagInfoEXT where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDebugMarkerObjectTagInfoEXT, objectType})-- {-# INLINE vkObjectTypeByteOffset #-}- vkObjectTypeByteOffset ~_- = #{offset VkDebugMarkerObjectTagInfoEXT, objectType}+ (peekByteOff (unsafePtr x) #{offset VkDebugMarkerObjectTagInfoEXT, pNext}) - {-# INLINE readVkObjectType #-}- readVkObjectType p- = peekByteOff p #{offset VkDebugMarkerObjectTagInfoEXT, objectType}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugMarkerObjectTagInfoEXT, pNext} - {-# INLINE writeVkObjectType #-}- writeVkObjectType p- = pokeByteOff p #{offset VkDebugMarkerObjectTagInfoEXT, objectType}+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkDebugMarkerObjectTagInfoEXT where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugMarkerObjectTagInfoEXT, pNext} instance {-# OVERLAPPING #-} HasField "objectType" VkDebugMarkerObjectTagInfoEXT where@@ -216,39 +164,22 @@ fieldOffset = #{offset VkDebugMarkerObjectTagInfoEXT, objectType} -instance CanReadField "objectType" VkDebugMarkerObjectTagInfoEXT- where- {-# INLINE getField #-}- getField = vkObjectType-- {-# INLINE readField #-}- readField = readVkObjectType--instance CanWriteField "objectType" VkDebugMarkerObjectTagInfoEXT- where- {-# INLINE writeField #-}- writeField = writeVkObjectType- instance {-# OVERLAPPING #-}- HasVkObject VkDebugMarkerObjectTagInfoEXT where- type VkObjectMType VkDebugMarkerObjectTagInfoEXT = Word64-- {-# NOINLINE vkObject #-}- vkObject x+ CanReadField "objectType" VkDebugMarkerObjectTagInfoEXT where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDebugMarkerObjectTagInfoEXT, object})-- {-# INLINE vkObjectByteOffset #-}- vkObjectByteOffset ~_- = #{offset VkDebugMarkerObjectTagInfoEXT, object}+ (peekByteOff (unsafePtr x) #{offset VkDebugMarkerObjectTagInfoEXT, objectType}) - {-# INLINE readVkObject #-}- readVkObject p- = peekByteOff p #{offset VkDebugMarkerObjectTagInfoEXT, object}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugMarkerObjectTagInfoEXT, objectType} - {-# INLINE writeVkObject #-}- writeVkObject p- = pokeByteOff p #{offset VkDebugMarkerObjectTagInfoEXT, object}+instance {-# OVERLAPPING #-}+ CanWriteField "objectType" VkDebugMarkerObjectTagInfoEXT where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugMarkerObjectTagInfoEXT, objectType} instance {-# OVERLAPPING #-} HasField "object" VkDebugMarkerObjectTagInfoEXT where@@ -265,37 +196,22 @@ fieldOffset = #{offset VkDebugMarkerObjectTagInfoEXT, object} -instance CanReadField "object" VkDebugMarkerObjectTagInfoEXT where- {-# INLINE getField #-}- getField = vkObject-- {-# INLINE readField #-}- readField = readVkObject--instance CanWriteField "object" VkDebugMarkerObjectTagInfoEXT where- {-# INLINE writeField #-}- writeField = writeVkObject- instance {-# OVERLAPPING #-}- HasVkTagName VkDebugMarkerObjectTagInfoEXT where- type VkTagNameMType VkDebugMarkerObjectTagInfoEXT = Word64-- {-# NOINLINE vkTagName #-}- vkTagName x+ CanReadField "object" VkDebugMarkerObjectTagInfoEXT where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDebugMarkerObjectTagInfoEXT, tagName})-- {-# INLINE vkTagNameByteOffset #-}- vkTagNameByteOffset ~_- = #{offset VkDebugMarkerObjectTagInfoEXT, tagName}+ (peekByteOff (unsafePtr x) #{offset VkDebugMarkerObjectTagInfoEXT, object}) - {-# INLINE readVkTagName #-}- readVkTagName p- = peekByteOff p #{offset VkDebugMarkerObjectTagInfoEXT, tagName}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugMarkerObjectTagInfoEXT, object} - {-# INLINE writeVkTagName #-}- writeVkTagName p- = pokeByteOff p #{offset VkDebugMarkerObjectTagInfoEXT, tagName}+instance {-# OVERLAPPING #-}+ CanWriteField "object" VkDebugMarkerObjectTagInfoEXT where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugMarkerObjectTagInfoEXT, object} instance {-# OVERLAPPING #-} HasField "tagName" VkDebugMarkerObjectTagInfoEXT where@@ -312,38 +228,22 @@ fieldOffset = #{offset VkDebugMarkerObjectTagInfoEXT, tagName} -instance CanReadField "tagName" VkDebugMarkerObjectTagInfoEXT where- {-# INLINE getField #-}- getField = vkTagName-- {-# INLINE readField #-}- readField = readVkTagName--instance CanWriteField "tagName" VkDebugMarkerObjectTagInfoEXT- where- {-# INLINE writeField #-}- writeField = writeVkTagName- instance {-# OVERLAPPING #-}- HasVkTagSize VkDebugMarkerObjectTagInfoEXT where- type VkTagSizeMType VkDebugMarkerObjectTagInfoEXT = CSize-- {-# NOINLINE vkTagSize #-}- vkTagSize x+ CanReadField "tagName" VkDebugMarkerObjectTagInfoEXT where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDebugMarkerObjectTagInfoEXT, tagSize})-- {-# INLINE vkTagSizeByteOffset #-}- vkTagSizeByteOffset ~_- = #{offset VkDebugMarkerObjectTagInfoEXT, tagSize}+ (peekByteOff (unsafePtr x) #{offset VkDebugMarkerObjectTagInfoEXT, tagName}) - {-# INLINE readVkTagSize #-}- readVkTagSize p- = peekByteOff p #{offset VkDebugMarkerObjectTagInfoEXT, tagSize}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugMarkerObjectTagInfoEXT, tagName} - {-# INLINE writeVkTagSize #-}- writeVkTagSize p- = pokeByteOff p #{offset VkDebugMarkerObjectTagInfoEXT, tagSize}+instance {-# OVERLAPPING #-}+ CanWriteField "tagName" VkDebugMarkerObjectTagInfoEXT where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugMarkerObjectTagInfoEXT, tagName} instance {-# OVERLAPPING #-} HasField "tagSize" VkDebugMarkerObjectTagInfoEXT where@@ -360,38 +260,22 @@ fieldOffset = #{offset VkDebugMarkerObjectTagInfoEXT, tagSize} -instance CanReadField "tagSize" VkDebugMarkerObjectTagInfoEXT where- {-# INLINE getField #-}- getField = vkTagSize-- {-# INLINE readField #-}- readField = readVkTagSize--instance CanWriteField "tagSize" VkDebugMarkerObjectTagInfoEXT- where- {-# INLINE writeField #-}- writeField = writeVkTagSize- instance {-# OVERLAPPING #-}- HasVkPTag VkDebugMarkerObjectTagInfoEXT where- type VkPTagMType VkDebugMarkerObjectTagInfoEXT = Ptr Void-- {-# NOINLINE vkPTag #-}- vkPTag x+ CanReadField "tagSize" VkDebugMarkerObjectTagInfoEXT where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDebugMarkerObjectTagInfoEXT, pTag})-- {-# INLINE vkPTagByteOffset #-}- vkPTagByteOffset ~_- = #{offset VkDebugMarkerObjectTagInfoEXT, pTag}+ (peekByteOff (unsafePtr x) #{offset VkDebugMarkerObjectTagInfoEXT, tagSize}) - {-# INLINE readVkPTag #-}- readVkPTag p- = peekByteOff p #{offset VkDebugMarkerObjectTagInfoEXT, pTag}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugMarkerObjectTagInfoEXT, tagSize} - {-# INLINE writeVkPTag #-}- writeVkPTag p- = pokeByteOff p #{offset VkDebugMarkerObjectTagInfoEXT, pTag}+instance {-# OVERLAPPING #-}+ CanWriteField "tagSize" VkDebugMarkerObjectTagInfoEXT where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugMarkerObjectTagInfoEXT, tagSize} instance {-# OVERLAPPING #-} HasField "pTag" VkDebugMarkerObjectTagInfoEXT where@@ -408,37 +292,43 @@ fieldOffset = #{offset VkDebugMarkerObjectTagInfoEXT, pTag} -instance CanReadField "pTag" VkDebugMarkerObjectTagInfoEXT where- {-# INLINE getField #-}- getField = vkPTag+instance {-# OVERLAPPING #-}+ CanReadField "pTag" VkDebugMarkerObjectTagInfoEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDebugMarkerObjectTagInfoEXT, pTag}) {-# INLINE readField #-}- readField = readVkPTag+ readField p+ = peekByteOff p #{offset VkDebugMarkerObjectTagInfoEXT, pTag} -instance CanWriteField "pTag" VkDebugMarkerObjectTagInfoEXT where+instance {-# OVERLAPPING #-}+ CanWriteField "pTag" VkDebugMarkerObjectTagInfoEXT where {-# INLINE writeField #-}- writeField = writeVkPTag+ writeField p+ = pokeByteOff p #{offset VkDebugMarkerObjectTagInfoEXT, pTag} instance Show VkDebugMarkerObjectTagInfoEXT where showsPrec d x = showString "VkDebugMarkerObjectTagInfoEXT {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkObjectType = " .- showsPrec d (vkObjectType x) .+ showString "objectType = " .+ showsPrec d (getField @"objectType" x) . showString ", " .- showString "vkObject = " .- showsPrec d (vkObject x) .+ showString "object = " .+ showsPrec d (getField @"object" x) . showString ", " .- showString "vkTagName = " .- showsPrec d (vkTagName x) .+ showString "tagName = " .+ showsPrec d (getField @"tagName" x) . showString ", " .- showString "vkTagSize = " .- showsPrec d (vkTagSize x) .+ showString "tagSize = " .+ showsPrec d (getField @"tagSize" x) . showString ", " .- showString "vkPTag = " .- showsPrec d (vkPTag x) . showChar '}'+ showString "pTag = " .+ showsPrec d (getField @"pTag" x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkDebugReportCallbackCreateInfoEXT (VkDebugReportCallbackCreateInfoEXT(..)) where@@ -16,7 +17,6 @@ import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType) import Graphics.Vulkan.Types.Funcpointers (PFN_vkDebugReportCallbackEXT) import Graphics.Vulkan.Types.Struct.VkInstanceCreateInfo (VkInstanceCreateInfo)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkDebugReportCallbackCreateInfoEXT {@@ -27,7 +27,7 @@ -- > void* pUserData; -- > } VkDebugReportCallbackCreateInfoEXT; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDebugReportCallbackCreateInfoEXT.html VkDebugReportCallbackCreateInfoEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDebugReportCallbackCreateInfoEXT.html VkDebugReportCallbackCreateInfoEXT registry at www.khronos.org> data VkDebugReportCallbackCreateInfoEXT = VkDebugReportCallbackCreateInfoEXT## Addr## ByteArray## @@ -83,28 +83,6 @@ '[VkInstanceCreateInfo] -- ' closing tick for hsc2hs instance {-# OVERLAPPING #-}- HasVkSType VkDebugReportCallbackCreateInfoEXT where- type VkSTypeMType VkDebugReportCallbackCreateInfoEXT =- VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDebugReportCallbackCreateInfoEXT, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkDebugReportCallbackCreateInfoEXT, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkDebugReportCallbackCreateInfoEXT, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkDebugReportCallbackCreateInfoEXT, sType}--instance {-# OVERLAPPING #-} HasField "sType" VkDebugReportCallbackCreateInfoEXT where type FieldType "sType" VkDebugReportCallbackCreateInfoEXT = VkStructureType@@ -122,39 +100,22 @@ fieldOffset = #{offset VkDebugReportCallbackCreateInfoEXT, sType} -instance CanReadField "sType" VkDebugReportCallbackCreateInfoEXT- where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance CanWriteField "sType" VkDebugReportCallbackCreateInfoEXT- where- {-# INLINE writeField #-}- writeField = writeVkSType- instance {-# OVERLAPPING #-}- HasVkPNext VkDebugReportCallbackCreateInfoEXT where- type VkPNextMType VkDebugReportCallbackCreateInfoEXT = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x+ CanReadField "sType" VkDebugReportCallbackCreateInfoEXT where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDebugReportCallbackCreateInfoEXT, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkDebugReportCallbackCreateInfoEXT, pNext}+ (peekByteOff (unsafePtr x) #{offset VkDebugReportCallbackCreateInfoEXT, sType}) - {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkDebugReportCallbackCreateInfoEXT, pNext}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugReportCallbackCreateInfoEXT, sType} - {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkDebugReportCallbackCreateInfoEXT, pNext}+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkDebugReportCallbackCreateInfoEXT where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugReportCallbackCreateInfoEXT, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkDebugReportCallbackCreateInfoEXT where@@ -174,40 +135,22 @@ fieldOffset = #{offset VkDebugReportCallbackCreateInfoEXT, pNext} -instance CanReadField "pNext" VkDebugReportCallbackCreateInfoEXT- where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkDebugReportCallbackCreateInfoEXT- where- {-# INLINE writeField #-}- writeField = writeVkPNext- instance {-# OVERLAPPING #-}- HasVkFlags VkDebugReportCallbackCreateInfoEXT where- type VkFlagsMType VkDebugReportCallbackCreateInfoEXT =- VkDebugReportFlagsEXT-- {-# NOINLINE vkFlags #-}- vkFlags x+ CanReadField "pNext" VkDebugReportCallbackCreateInfoEXT where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDebugReportCallbackCreateInfoEXT, flags})-- {-# INLINE vkFlagsByteOffset #-}- vkFlagsByteOffset ~_- = #{offset VkDebugReportCallbackCreateInfoEXT, flags}+ (peekByteOff (unsafePtr x) #{offset VkDebugReportCallbackCreateInfoEXT, pNext}) - {-# INLINE readVkFlags #-}- readVkFlags p- = peekByteOff p #{offset VkDebugReportCallbackCreateInfoEXT, flags}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugReportCallbackCreateInfoEXT, pNext} - {-# INLINE writeVkFlags #-}- writeVkFlags p- = pokeByteOff p #{offset VkDebugReportCallbackCreateInfoEXT, flags}+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkDebugReportCallbackCreateInfoEXT where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugReportCallbackCreateInfoEXT, pNext} instance {-# OVERLAPPING #-} HasField "flags" VkDebugReportCallbackCreateInfoEXT where@@ -227,40 +170,22 @@ fieldOffset = #{offset VkDebugReportCallbackCreateInfoEXT, flags} -instance CanReadField "flags" VkDebugReportCallbackCreateInfoEXT- where- {-# INLINE getField #-}- getField = vkFlags-- {-# INLINE readField #-}- readField = readVkFlags--instance CanWriteField "flags" VkDebugReportCallbackCreateInfoEXT- where- {-# INLINE writeField #-}- writeField = writeVkFlags- instance {-# OVERLAPPING #-}- HasVkPfnCallback VkDebugReportCallbackCreateInfoEXT where- type VkPfnCallbackMType VkDebugReportCallbackCreateInfoEXT =- PFN_vkDebugReportCallbackEXT-- {-# NOINLINE vkPfnCallback #-}- vkPfnCallback x+ CanReadField "flags" VkDebugReportCallbackCreateInfoEXT where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDebugReportCallbackCreateInfoEXT, pfnCallback})-- {-# INLINE vkPfnCallbackByteOffset #-}- vkPfnCallbackByteOffset ~_- = #{offset VkDebugReportCallbackCreateInfoEXT, pfnCallback}+ (peekByteOff (unsafePtr x) #{offset VkDebugReportCallbackCreateInfoEXT, flags}) - {-# INLINE readVkPfnCallback #-}- readVkPfnCallback p- = peekByteOff p #{offset VkDebugReportCallbackCreateInfoEXT, pfnCallback}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugReportCallbackCreateInfoEXT, flags} - {-# INLINE writeVkPfnCallback #-}- writeVkPfnCallback p- = pokeByteOff p #{offset VkDebugReportCallbackCreateInfoEXT, pfnCallback}+instance {-# OVERLAPPING #-}+ CanWriteField "flags" VkDebugReportCallbackCreateInfoEXT where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugReportCallbackCreateInfoEXT, flags} instance {-# OVERLAPPING #-} HasField "pfnCallback" VkDebugReportCallbackCreateInfoEXT where@@ -280,41 +205,23 @@ fieldOffset = #{offset VkDebugReportCallbackCreateInfoEXT, pfnCallback} -instance CanReadField "pfnCallback"- VkDebugReportCallbackCreateInfoEXT- where- {-# INLINE getField #-}- getField = vkPfnCallback+instance {-# OVERLAPPING #-}+ CanReadField "pfnCallback" VkDebugReportCallbackCreateInfoEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDebugReportCallbackCreateInfoEXT, pfnCallback}) {-# INLINE readField #-}- readField = readVkPfnCallback+ readField p+ = peekByteOff p #{offset VkDebugReportCallbackCreateInfoEXT, pfnCallback} -instance CanWriteField "pfnCallback"- VkDebugReportCallbackCreateInfoEXT+instance {-# OVERLAPPING #-}+ CanWriteField "pfnCallback" VkDebugReportCallbackCreateInfoEXT where {-# INLINE writeField #-}- writeField = writeVkPfnCallback--instance {-# OVERLAPPING #-}- HasVkPUserData VkDebugReportCallbackCreateInfoEXT where- type VkPUserDataMType VkDebugReportCallbackCreateInfoEXT = Ptr Void-- {-# NOINLINE vkPUserData #-}- vkPUserData x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDebugReportCallbackCreateInfoEXT, pUserData})-- {-# INLINE vkPUserDataByteOffset #-}- vkPUserDataByteOffset ~_- = #{offset VkDebugReportCallbackCreateInfoEXT, pUserData}-- {-# INLINE readVkPUserData #-}- readVkPUserData p- = peekByteOff p #{offset VkDebugReportCallbackCreateInfoEXT, pUserData}-- {-# INLINE writeVkPUserData #-}- writeVkPUserData p- = pokeByteOff p #{offset VkDebugReportCallbackCreateInfoEXT, pUserData}+ writeField p+ = pokeByteOff p #{offset VkDebugReportCallbackCreateInfoEXT, pfnCallback} instance {-# OVERLAPPING #-} HasField "pUserData" VkDebugReportCallbackCreateInfoEXT where@@ -334,35 +241,37 @@ fieldOffset = #{offset VkDebugReportCallbackCreateInfoEXT, pUserData} -instance CanReadField "pUserData"- VkDebugReportCallbackCreateInfoEXT- where- {-# INLINE getField #-}- getField = vkPUserData+instance {-# OVERLAPPING #-}+ CanReadField "pUserData" VkDebugReportCallbackCreateInfoEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDebugReportCallbackCreateInfoEXT, pUserData}) {-# INLINE readField #-}- readField = readVkPUserData+ readField p+ = peekByteOff p #{offset VkDebugReportCallbackCreateInfoEXT, pUserData} -instance CanWriteField "pUserData"- VkDebugReportCallbackCreateInfoEXT- where+instance {-# OVERLAPPING #-}+ CanWriteField "pUserData" VkDebugReportCallbackCreateInfoEXT where {-# INLINE writeField #-}- writeField = writeVkPUserData+ writeField p+ = pokeByteOff p #{offset VkDebugReportCallbackCreateInfoEXT, pUserData} instance Show VkDebugReportCallbackCreateInfoEXT where showsPrec d x = showString "VkDebugReportCallbackCreateInfoEXT {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkFlags = " .- showsPrec d (vkFlags x) .+ showString "flags = " .+ showsPrec d (getField @"flags" x) . showString ", " .- showString "vkPfnCallback = " .- showsPrec d (vkPfnCallback x) .+ showString "pfnCallback = " .+ showsPrec d (getField @"pfnCallback" x) . showString ", " .- showString "vkPUserData = " .- showsPrec d (vkPUserData x) . showChar '}'+ showString "pUserData = " .+ showsPrec d (getField @"pUserData" x) . showChar '}'
@@ -0,0 +1,272 @@+#include "vulkan/vulkan.h"++{-# LANGUAGE DataKinds #-}+{-# LANGUAGE FlexibleContexts #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE ScopedTypeVariables #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE UndecidableInstances #-}+module Graphics.Vulkan.Types.Struct.VkDebugUtilsLabelEXT+ (VkDebugUtilsLabelEXT(..)) where+import Foreign.Storable (Storable (..))+import GHC.Prim+import GHC.TypeLits (KnownNat, natVal') -- ' closing tick for hsc2hs+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Marshal.Internal+import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)+import System.IO.Unsafe (unsafeDupablePerformIO)++-- | > typedef struct VkDebugUtilsLabelEXT {+-- > VkStructureType sType;+-- > const void* pNext;+-- > const char* pLabelName;+-- > float color[4];+-- > } VkDebugUtilsLabelEXT;+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDebugUtilsLabelEXT.html VkDebugUtilsLabelEXT registry at www.khronos.org>+data VkDebugUtilsLabelEXT = VkDebugUtilsLabelEXT## Addr## ByteArray##++instance Eq VkDebugUtilsLabelEXT where+ (VkDebugUtilsLabelEXT## a _) == x@(VkDebugUtilsLabelEXT## b _)+ = EQ == cmpBytes## (sizeOf x) a b++ {-# INLINE (==) #-}++instance Ord VkDebugUtilsLabelEXT where+ (VkDebugUtilsLabelEXT## a _) `compare` x@(VkDebugUtilsLabelEXT## b _)+ = cmpBytes## (sizeOf x) a b++ {-# INLINE compare #-}++instance Storable VkDebugUtilsLabelEXT where+ sizeOf ~_ = #{size VkDebugUtilsLabelEXT}++ {-# INLINE sizeOf #-}+ alignment ~_ = #{alignment VkDebugUtilsLabelEXT}++ {-# INLINE alignment #-}+ peek = peekVkData##++ {-# INLINE peek #-}+ poke = pokeVkData##++ {-# INLINE poke #-}++instance VulkanMarshalPrim VkDebugUtilsLabelEXT where+ unsafeAddr (VkDebugUtilsLabelEXT## a _) = a++ {-# INLINE unsafeAddr #-}+ unsafeByteArray (VkDebugUtilsLabelEXT## _ b) = b++ {-# INLINE unsafeByteArray #-}+ unsafeFromByteArrayOffset off b+ = VkDebugUtilsLabelEXT## (plusAddr## (byteArrayContents## b) off) b++ {-# INLINE unsafeFromByteArrayOffset #-}++instance VulkanMarshal VkDebugUtilsLabelEXT where+ type StructFields VkDebugUtilsLabelEXT =+ '["sType", "pNext", "pLabelName", "color"] -- ' closing tick for hsc2hs+ type CUnionType VkDebugUtilsLabelEXT = 'False -- ' closing tick for hsc2hs+ type ReturnedOnly VkDebugUtilsLabelEXT = 'False -- ' closing tick for hsc2hs+ type StructExtends VkDebugUtilsLabelEXT = '[] -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-} HasField "sType" VkDebugUtilsLabelEXT+ where+ type FieldType "sType" VkDebugUtilsLabelEXT = VkStructureType+ type FieldOptional "sType" VkDebugUtilsLabelEXT = 'False -- ' closing tick for hsc2hs+ type FieldOffset "sType" VkDebugUtilsLabelEXT =+ #{offset VkDebugUtilsLabelEXT, sType}+ type FieldIsArray "sType" VkDebugUtilsLabelEXT = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset = #{offset VkDebugUtilsLabelEXT, sType}++instance {-# OVERLAPPING #-}+ CanReadField "sType" VkDebugUtilsLabelEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDebugUtilsLabelEXT, sType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugUtilsLabelEXT, sType}++instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkDebugUtilsLabelEXT where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugUtilsLabelEXT, sType}++instance {-# OVERLAPPING #-} HasField "pNext" VkDebugUtilsLabelEXT+ where+ type FieldType "pNext" VkDebugUtilsLabelEXT = Ptr Void+ type FieldOptional "pNext" VkDebugUtilsLabelEXT = 'False -- ' closing tick for hsc2hs+ type FieldOffset "pNext" VkDebugUtilsLabelEXT =+ #{offset VkDebugUtilsLabelEXT, pNext}+ type FieldIsArray "pNext" VkDebugUtilsLabelEXT = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset = #{offset VkDebugUtilsLabelEXT, pNext}++instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkDebugUtilsLabelEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDebugUtilsLabelEXT, pNext})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugUtilsLabelEXT, pNext}++instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkDebugUtilsLabelEXT where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugUtilsLabelEXT, pNext}++instance {-# OVERLAPPING #-}+ HasField "pLabelName" VkDebugUtilsLabelEXT where+ type FieldType "pLabelName" VkDebugUtilsLabelEXT = CString+ type FieldOptional "pLabelName" VkDebugUtilsLabelEXT = 'False -- ' closing tick for hsc2hs+ type FieldOffset "pLabelName" VkDebugUtilsLabelEXT =+ #{offset VkDebugUtilsLabelEXT, pLabelName}+ type FieldIsArray "pLabelName" VkDebugUtilsLabelEXT = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDebugUtilsLabelEXT, pLabelName}++instance {-# OVERLAPPING #-}+ CanReadField "pLabelName" VkDebugUtilsLabelEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDebugUtilsLabelEXT, pLabelName})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugUtilsLabelEXT, pLabelName}++instance {-# OVERLAPPING #-}+ CanWriteField "pLabelName" VkDebugUtilsLabelEXT where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugUtilsLabelEXT, pLabelName}++instance {-# OVERLAPPING #-} HasField "color" VkDebugUtilsLabelEXT+ where+ type FieldType "color" VkDebugUtilsLabelEXT =+ #{type float}+ type FieldOptional "color" VkDebugUtilsLabelEXT = 'True -- ' closing tick for hsc2hs+ type FieldOffset "color" VkDebugUtilsLabelEXT =+ #{offset VkDebugUtilsLabelEXT, color}+ type FieldIsArray "color" VkDebugUtilsLabelEXT = 'True -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = True++ {-# INLINE fieldOffset #-}+ fieldOffset = #{offset VkDebugUtilsLabelEXT, color}++instance {-# OVERLAPPING #-}+ (KnownNat idx, IndexInBounds "color" idx VkDebugUtilsLabelEXT) =>+ CanReadFieldArray "color" idx VkDebugUtilsLabelEXT+ where+ {-# SPECIALISE instance+ CanReadFieldArray "color" 0 VkDebugUtilsLabelEXT #-}++ {-# SPECIALISE instance+ CanReadFieldArray "color" 1 VkDebugUtilsLabelEXT #-}++ {-# SPECIALISE instance+ CanReadFieldArray "color" 2 VkDebugUtilsLabelEXT #-}++ {-# SPECIALISE instance+ CanReadFieldArray "color" 3 VkDebugUtilsLabelEXT #-}+ type FieldArrayLength "color" VkDebugUtilsLabelEXT = 4++ {-# INLINE fieldArrayLength #-}+ fieldArrayLength = 4++ {-# INLINE getFieldArray #-}+ getFieldArray = f+ where {-# NOINLINE f #-}+ f x = unsafeDupablePerformIO (peekByteOff (unsafePtr x) off)+ off+ = #{offset VkDebugUtilsLabelEXT, color} ++ sizeOf (undefined :: #{type float}) *+ fromInteger (natVal' (proxy## :: Proxy## idx)) -- ' closing tick for hsc2hs++ {-# INLINE readFieldArray #-}+ readFieldArray p+ = peekByteOff p+ (#{offset VkDebugUtilsLabelEXT, color} ++ sizeOf (undefined :: #{type float}) *+ fromInteger (natVal' (proxy## :: Proxy## idx))) -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-}+ (KnownNat idx, IndexInBounds "color" idx VkDebugUtilsLabelEXT) =>+ CanWriteFieldArray "color" idx VkDebugUtilsLabelEXT+ where+ {-# SPECIALISE instance+ CanWriteFieldArray "color" 0 VkDebugUtilsLabelEXT #-}++ {-# SPECIALISE instance+ CanWriteFieldArray "color" 1 VkDebugUtilsLabelEXT #-}++ {-# SPECIALISE instance+ CanWriteFieldArray "color" 2 VkDebugUtilsLabelEXT #-}++ {-# SPECIALISE instance+ CanWriteFieldArray "color" 3 VkDebugUtilsLabelEXT #-}++ {-# INLINE writeFieldArray #-}+ writeFieldArray p+ = pokeByteOff p+ (#{offset VkDebugUtilsLabelEXT, color} ++ sizeOf (undefined :: #{type float}) *+ fromInteger (natVal' (proxy## :: Proxy## idx))) -- ' closing tick for hsc2hs++instance Show VkDebugUtilsLabelEXT where+ showsPrec d x+ = showString "VkDebugUtilsLabelEXT {" .+ showString "sType = " .+ showsPrec d (getField @"sType" x) .+ showString ", " .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) .+ showString ", " .+ showString "pLabelName = " .+ showsPrec d (getField @"pLabelName" x) .+ showString ", " .+ (showString "color = [" .+ showsPrec d+ (let s = sizeOf+ (undefined ::+ FieldType "color" VkDebugUtilsLabelEXT)+ o = fieldOffset @"color" @VkDebugUtilsLabelEXT+ f i+ = peekByteOff (unsafePtr x) i ::+ IO (FieldType "color" VkDebugUtilsLabelEXT)+ in+ unsafeDupablePerformIO . mapM f $+ map (\ i -> o + i * s) [0 .. 4 - 1])+ . showChar ']')+ . showChar '}'
@@ -0,0 +1,622 @@+#include "vulkan/vulkan.h"++{-# LANGUAGE DataKinds #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-}+{-# LANGUAGE TypeFamilies #-}+module Graphics.Vulkan.Types.Struct.VkDebugUtilsMessengerCallbackDataEXT+ (VkDebugUtilsMessengerCallbackDataEXT(..)) where+import Foreign.Storable (Storable (..))+import GHC.Prim+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Marshal.Internal+import Graphics.Vulkan.Types.Bitmasks (VkDebugUtilsMessengerCallbackDataFlagsEXT)+import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)+import Graphics.Vulkan.Types.Struct.VkDebugUtilsLabelEXT (VkDebugUtilsLabelEXT)+import Graphics.Vulkan.Types.Struct.VkDebugUtilsObjectNameInfoEXT (VkDebugUtilsObjectNameInfoEXT)+import System.IO.Unsafe (unsafeDupablePerformIO)++-- | > typedef struct VkDebugUtilsMessengerCallbackDataEXT {+-- > VkStructureType sType;+-- > const void* pNext;+-- > VkDebugUtilsMessengerCallbackDataFlagsEXT flags;+-- > const char* pMessageIdName;+-- > int32_t messageIdNumber;+-- > const char* pMessage;+-- > uint32_t queueLabelCount;+-- > VkDebugUtilsLabelEXT* pQueueLabels;+-- > uint32_t cmdBufLabelCount;+-- > VkDebugUtilsLabelEXT* pCmdBufLabels;+-- > uint32_t objectCount;+-- > VkDebugUtilsObjectNameInfoEXT* pObjects;+-- > } VkDebugUtilsMessengerCallbackDataEXT;+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDebugUtilsMessengerCallbackDataEXT.html VkDebugUtilsMessengerCallbackDataEXT registry at www.khronos.org>+data VkDebugUtilsMessengerCallbackDataEXT = VkDebugUtilsMessengerCallbackDataEXT## Addr##+ ByteArray##++instance Eq VkDebugUtilsMessengerCallbackDataEXT where+ (VkDebugUtilsMessengerCallbackDataEXT## a _) ==+ x@(VkDebugUtilsMessengerCallbackDataEXT## b _)+ = EQ == cmpBytes## (sizeOf x) a b++ {-# INLINE (==) #-}++instance Ord VkDebugUtilsMessengerCallbackDataEXT where+ (VkDebugUtilsMessengerCallbackDataEXT## a _) `compare`+ x@(VkDebugUtilsMessengerCallbackDataEXT## b _)+ = cmpBytes## (sizeOf x) a b++ {-# INLINE compare #-}++instance Storable VkDebugUtilsMessengerCallbackDataEXT where+ sizeOf ~_+ = #{size VkDebugUtilsMessengerCallbackDataEXT}++ {-# INLINE sizeOf #-}+ alignment ~_+ = #{alignment VkDebugUtilsMessengerCallbackDataEXT}++ {-# INLINE alignment #-}+ peek = peekVkData##++ {-# INLINE peek #-}+ poke = pokeVkData##++ {-# INLINE poke #-}++instance VulkanMarshalPrim VkDebugUtilsMessengerCallbackDataEXT+ where+ unsafeAddr (VkDebugUtilsMessengerCallbackDataEXT## a _) = a++ {-# INLINE unsafeAddr #-}+ unsafeByteArray (VkDebugUtilsMessengerCallbackDataEXT## _ b) = b++ {-# INLINE unsafeByteArray #-}+ unsafeFromByteArrayOffset off b+ = VkDebugUtilsMessengerCallbackDataEXT##+ (plusAddr## (byteArrayContents## b) off)+ b++ {-# INLINE unsafeFromByteArrayOffset #-}++instance VulkanMarshal VkDebugUtilsMessengerCallbackDataEXT where+ type StructFields VkDebugUtilsMessengerCallbackDataEXT =+ '["sType", "pNext", "flags", "pMessageIdName", "messageIdNumber", -- ' closing tick for hsc2hs+ "pMessage", "queueLabelCount", "pQueueLabels", "cmdBufLabelCount",+ "pCmdBufLabels", "objectCount", "pObjects"]+ type CUnionType VkDebugUtilsMessengerCallbackDataEXT = 'False -- ' closing tick for hsc2hs+ type ReturnedOnly VkDebugUtilsMessengerCallbackDataEXT = 'False -- ' closing tick for hsc2hs+ type StructExtends VkDebugUtilsMessengerCallbackDataEXT = '[] -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-}+ HasField "sType" VkDebugUtilsMessengerCallbackDataEXT where+ type FieldType "sType" VkDebugUtilsMessengerCallbackDataEXT =+ VkStructureType+ type FieldOptional "sType" VkDebugUtilsMessengerCallbackDataEXT =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "sType" VkDebugUtilsMessengerCallbackDataEXT =+ #{offset VkDebugUtilsMessengerCallbackDataEXT, sType}+ type FieldIsArray "sType" VkDebugUtilsMessengerCallbackDataEXT =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDebugUtilsMessengerCallbackDataEXT, sType}++instance {-# OVERLAPPING #-}+ CanReadField "sType" VkDebugUtilsMessengerCallbackDataEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDebugUtilsMessengerCallbackDataEXT, sType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugUtilsMessengerCallbackDataEXT, sType}++instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkDebugUtilsMessengerCallbackDataEXT where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugUtilsMessengerCallbackDataEXT, sType}++instance {-# OVERLAPPING #-}+ HasField "pNext" VkDebugUtilsMessengerCallbackDataEXT where+ type FieldType "pNext" VkDebugUtilsMessengerCallbackDataEXT =+ Ptr Void+ type FieldOptional "pNext" VkDebugUtilsMessengerCallbackDataEXT =+ 'True -- ' closing tick for hsc2hs+ type FieldOffset "pNext" VkDebugUtilsMessengerCallbackDataEXT =+ #{offset VkDebugUtilsMessengerCallbackDataEXT, pNext}+ type FieldIsArray "pNext" VkDebugUtilsMessengerCallbackDataEXT =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = True++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDebugUtilsMessengerCallbackDataEXT, pNext}++instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkDebugUtilsMessengerCallbackDataEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDebugUtilsMessengerCallbackDataEXT, pNext})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugUtilsMessengerCallbackDataEXT, pNext}++instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkDebugUtilsMessengerCallbackDataEXT where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugUtilsMessengerCallbackDataEXT, pNext}++instance {-# OVERLAPPING #-}+ HasField "flags" VkDebugUtilsMessengerCallbackDataEXT where+ type FieldType "flags" VkDebugUtilsMessengerCallbackDataEXT =+ VkDebugUtilsMessengerCallbackDataFlagsEXT+ type FieldOptional "flags" VkDebugUtilsMessengerCallbackDataEXT =+ 'True -- ' closing tick for hsc2hs+ type FieldOffset "flags" VkDebugUtilsMessengerCallbackDataEXT =+ #{offset VkDebugUtilsMessengerCallbackDataEXT, flags}+ type FieldIsArray "flags" VkDebugUtilsMessengerCallbackDataEXT =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = True++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDebugUtilsMessengerCallbackDataEXT, flags}++instance {-# OVERLAPPING #-}+ CanReadField "flags" VkDebugUtilsMessengerCallbackDataEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDebugUtilsMessengerCallbackDataEXT, flags})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugUtilsMessengerCallbackDataEXT, flags}++instance {-# OVERLAPPING #-}+ CanWriteField "flags" VkDebugUtilsMessengerCallbackDataEXT where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugUtilsMessengerCallbackDataEXT, flags}++instance {-# OVERLAPPING #-}+ HasField "pMessageIdName" VkDebugUtilsMessengerCallbackDataEXT+ where+ type FieldType "pMessageIdName"+ VkDebugUtilsMessengerCallbackDataEXT+ = CString+ type FieldOptional "pMessageIdName"+ VkDebugUtilsMessengerCallbackDataEXT+ = 'True -- ' closing tick for hsc2hs+ type FieldOffset "pMessageIdName"+ VkDebugUtilsMessengerCallbackDataEXT+ =+ #{offset VkDebugUtilsMessengerCallbackDataEXT, pMessageIdName}+ type FieldIsArray "pMessageIdName"+ VkDebugUtilsMessengerCallbackDataEXT+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = True++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDebugUtilsMessengerCallbackDataEXT, pMessageIdName}++instance {-# OVERLAPPING #-}+ CanReadField "pMessageIdName" VkDebugUtilsMessengerCallbackDataEXT+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDebugUtilsMessengerCallbackDataEXT, pMessageIdName})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugUtilsMessengerCallbackDataEXT, pMessageIdName}++instance {-# OVERLAPPING #-}+ CanWriteField "pMessageIdName" VkDebugUtilsMessengerCallbackDataEXT+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugUtilsMessengerCallbackDataEXT, pMessageIdName}++instance {-# OVERLAPPING #-}+ HasField "messageIdNumber" VkDebugUtilsMessengerCallbackDataEXT+ where+ type FieldType "messageIdNumber"+ VkDebugUtilsMessengerCallbackDataEXT+ = Int32+ type FieldOptional "messageIdNumber"+ VkDebugUtilsMessengerCallbackDataEXT+ = 'True -- ' closing tick for hsc2hs+ type FieldOffset "messageIdNumber"+ VkDebugUtilsMessengerCallbackDataEXT+ =+ #{offset VkDebugUtilsMessengerCallbackDataEXT, messageIdNumber}+ type FieldIsArray "messageIdNumber"+ VkDebugUtilsMessengerCallbackDataEXT+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = True++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDebugUtilsMessengerCallbackDataEXT, messageIdNumber}++instance {-# OVERLAPPING #-}+ CanReadField "messageIdNumber" VkDebugUtilsMessengerCallbackDataEXT+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDebugUtilsMessengerCallbackDataEXT, messageIdNumber})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugUtilsMessengerCallbackDataEXT, messageIdNumber}++instance {-# OVERLAPPING #-}+ CanWriteField "messageIdNumber"+ VkDebugUtilsMessengerCallbackDataEXT+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugUtilsMessengerCallbackDataEXT, messageIdNumber}++instance {-# OVERLAPPING #-}+ HasField "pMessage" VkDebugUtilsMessengerCallbackDataEXT where+ type FieldType "pMessage" VkDebugUtilsMessengerCallbackDataEXT =+ CString+ type FieldOptional "pMessage" VkDebugUtilsMessengerCallbackDataEXT+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "pMessage" VkDebugUtilsMessengerCallbackDataEXT =+ #{offset VkDebugUtilsMessengerCallbackDataEXT, pMessage}+ type FieldIsArray "pMessage" VkDebugUtilsMessengerCallbackDataEXT =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDebugUtilsMessengerCallbackDataEXT, pMessage}++instance {-# OVERLAPPING #-}+ CanReadField "pMessage" VkDebugUtilsMessengerCallbackDataEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDebugUtilsMessengerCallbackDataEXT, pMessage})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugUtilsMessengerCallbackDataEXT, pMessage}++instance {-# OVERLAPPING #-}+ CanWriteField "pMessage" VkDebugUtilsMessengerCallbackDataEXT where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugUtilsMessengerCallbackDataEXT, pMessage}++instance {-# OVERLAPPING #-}+ HasField "queueLabelCount" VkDebugUtilsMessengerCallbackDataEXT+ where+ type FieldType "queueLabelCount"+ VkDebugUtilsMessengerCallbackDataEXT+ = Word32+ type FieldOptional "queueLabelCount"+ VkDebugUtilsMessengerCallbackDataEXT+ = 'True -- ' closing tick for hsc2hs+ type FieldOffset "queueLabelCount"+ VkDebugUtilsMessengerCallbackDataEXT+ =+ #{offset VkDebugUtilsMessengerCallbackDataEXT, queueLabelCount}+ type FieldIsArray "queueLabelCount"+ VkDebugUtilsMessengerCallbackDataEXT+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = True++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDebugUtilsMessengerCallbackDataEXT, queueLabelCount}++instance {-# OVERLAPPING #-}+ CanReadField "queueLabelCount" VkDebugUtilsMessengerCallbackDataEXT+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDebugUtilsMessengerCallbackDataEXT, queueLabelCount})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugUtilsMessengerCallbackDataEXT, queueLabelCount}++instance {-# OVERLAPPING #-}+ CanWriteField "queueLabelCount"+ VkDebugUtilsMessengerCallbackDataEXT+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugUtilsMessengerCallbackDataEXT, queueLabelCount}++instance {-# OVERLAPPING #-}+ HasField "pQueueLabels" VkDebugUtilsMessengerCallbackDataEXT where+ type FieldType "pQueueLabels" VkDebugUtilsMessengerCallbackDataEXT+ = Ptr VkDebugUtilsLabelEXT+ type FieldOptional "pQueueLabels"+ VkDebugUtilsMessengerCallbackDataEXT+ = 'True -- ' closing tick for hsc2hs+ type FieldOffset "pQueueLabels"+ VkDebugUtilsMessengerCallbackDataEXT+ =+ #{offset VkDebugUtilsMessengerCallbackDataEXT, pQueueLabels}+ type FieldIsArray "pQueueLabels"+ VkDebugUtilsMessengerCallbackDataEXT+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = True++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDebugUtilsMessengerCallbackDataEXT, pQueueLabels}++instance {-# OVERLAPPING #-}+ CanReadField "pQueueLabels" VkDebugUtilsMessengerCallbackDataEXT+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDebugUtilsMessengerCallbackDataEXT, pQueueLabels})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugUtilsMessengerCallbackDataEXT, pQueueLabels}++instance {-# OVERLAPPING #-}+ CanWriteField "pQueueLabels" VkDebugUtilsMessengerCallbackDataEXT+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugUtilsMessengerCallbackDataEXT, pQueueLabels}++instance {-# OVERLAPPING #-}+ HasField "cmdBufLabelCount" VkDebugUtilsMessengerCallbackDataEXT+ where+ type FieldType "cmdBufLabelCount"+ VkDebugUtilsMessengerCallbackDataEXT+ = Word32+ type FieldOptional "cmdBufLabelCount"+ VkDebugUtilsMessengerCallbackDataEXT+ = 'True -- ' closing tick for hsc2hs+ type FieldOffset "cmdBufLabelCount"+ VkDebugUtilsMessengerCallbackDataEXT+ =+ #{offset VkDebugUtilsMessengerCallbackDataEXT, cmdBufLabelCount}+ type FieldIsArray "cmdBufLabelCount"+ VkDebugUtilsMessengerCallbackDataEXT+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = True++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDebugUtilsMessengerCallbackDataEXT, cmdBufLabelCount}++instance {-# OVERLAPPING #-}+ CanReadField "cmdBufLabelCount"+ VkDebugUtilsMessengerCallbackDataEXT+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDebugUtilsMessengerCallbackDataEXT, cmdBufLabelCount})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugUtilsMessengerCallbackDataEXT, cmdBufLabelCount}++instance {-# OVERLAPPING #-}+ CanWriteField "cmdBufLabelCount"+ VkDebugUtilsMessengerCallbackDataEXT+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugUtilsMessengerCallbackDataEXT, cmdBufLabelCount}++instance {-# OVERLAPPING #-}+ HasField "pCmdBufLabels" VkDebugUtilsMessengerCallbackDataEXT where+ type FieldType "pCmdBufLabels" VkDebugUtilsMessengerCallbackDataEXT+ = Ptr VkDebugUtilsLabelEXT+ type FieldOptional "pCmdBufLabels"+ VkDebugUtilsMessengerCallbackDataEXT+ = 'True -- ' closing tick for hsc2hs+ type FieldOffset "pCmdBufLabels"+ VkDebugUtilsMessengerCallbackDataEXT+ =+ #{offset VkDebugUtilsMessengerCallbackDataEXT, pCmdBufLabels}+ type FieldIsArray "pCmdBufLabels"+ VkDebugUtilsMessengerCallbackDataEXT+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = True++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDebugUtilsMessengerCallbackDataEXT, pCmdBufLabels}++instance {-# OVERLAPPING #-}+ CanReadField "pCmdBufLabels" VkDebugUtilsMessengerCallbackDataEXT+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDebugUtilsMessengerCallbackDataEXT, pCmdBufLabels})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugUtilsMessengerCallbackDataEXT, pCmdBufLabels}++instance {-# OVERLAPPING #-}+ CanWriteField "pCmdBufLabels" VkDebugUtilsMessengerCallbackDataEXT+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugUtilsMessengerCallbackDataEXT, pCmdBufLabels}++instance {-# OVERLAPPING #-}+ HasField "objectCount" VkDebugUtilsMessengerCallbackDataEXT where+ type FieldType "objectCount" VkDebugUtilsMessengerCallbackDataEXT =+ Word32+ type FieldOptional "objectCount"+ VkDebugUtilsMessengerCallbackDataEXT+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "objectCount" VkDebugUtilsMessengerCallbackDataEXT+ =+ #{offset VkDebugUtilsMessengerCallbackDataEXT, objectCount}+ type FieldIsArray "objectCount"+ VkDebugUtilsMessengerCallbackDataEXT+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDebugUtilsMessengerCallbackDataEXT, objectCount}++instance {-# OVERLAPPING #-}+ CanReadField "objectCount" VkDebugUtilsMessengerCallbackDataEXT+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDebugUtilsMessengerCallbackDataEXT, objectCount})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugUtilsMessengerCallbackDataEXT, objectCount}++instance {-# OVERLAPPING #-}+ CanWriteField "objectCount" VkDebugUtilsMessengerCallbackDataEXT+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugUtilsMessengerCallbackDataEXT, objectCount}++instance {-# OVERLAPPING #-}+ HasField "pObjects" VkDebugUtilsMessengerCallbackDataEXT where+ type FieldType "pObjects" VkDebugUtilsMessengerCallbackDataEXT =+ Ptr VkDebugUtilsObjectNameInfoEXT+ type FieldOptional "pObjects" VkDebugUtilsMessengerCallbackDataEXT+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "pObjects" VkDebugUtilsMessengerCallbackDataEXT =+ #{offset VkDebugUtilsMessengerCallbackDataEXT, pObjects}+ type FieldIsArray "pObjects" VkDebugUtilsMessengerCallbackDataEXT =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDebugUtilsMessengerCallbackDataEXT, pObjects}++instance {-# OVERLAPPING #-}+ CanReadField "pObjects" VkDebugUtilsMessengerCallbackDataEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDebugUtilsMessengerCallbackDataEXT, pObjects})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugUtilsMessengerCallbackDataEXT, pObjects}++instance {-# OVERLAPPING #-}+ CanWriteField "pObjects" VkDebugUtilsMessengerCallbackDataEXT where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugUtilsMessengerCallbackDataEXT, pObjects}++instance Show VkDebugUtilsMessengerCallbackDataEXT where+ showsPrec d x+ = showString "VkDebugUtilsMessengerCallbackDataEXT {" .+ showString "sType = " .+ showsPrec d (getField @"sType" x) .+ showString ", " .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) .+ showString ", " .+ showString "flags = " .+ showsPrec d (getField @"flags" x) .+ showString ", " .+ showString "pMessageIdName = " .+ showsPrec d (getField @"pMessageIdName" x) .+ showString ", " .+ showString "messageIdNumber = " .+ showsPrec d (getField @"messageIdNumber" x) .+ showString ", " .+ showString "pMessage = " .+ showsPrec d (getField @"pMessage" x) .+ showString ", " .+ showString "queueLabelCount = " .+ showsPrec d (getField @"queueLabelCount" x) .+ showString ", " .+ showString "pQueueLabels = " .+ showsPrec d (getField @"pQueueLabels" x) .+ showString ", " .+ showString "cmdBufLabelCount = " .+ showsPrec d+ (getField @"cmdBufLabelCount" x)+ .+ showString ", " .+ showString "pCmdBufLabels = " .+ showsPrec d+ (getField @"pCmdBufLabels"+ x)+ .+ showString ", " .+ showString+ "objectCount = "+ .+ showsPrec d+ (getField+ @"objectCount"+ x)+ .+ showString ", " .+ showString+ "pObjects = "+ .+ showsPrec d+ (getField+ @"pObjects"+ x)+ . showChar '}'
@@ -0,0 +1,371 @@+#include "vulkan/vulkan.h"++{-# LANGUAGE DataKinds #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-}+{-# LANGUAGE TypeFamilies #-}+module Graphics.Vulkan.Types.Struct.VkDebugUtilsMessengerCreateInfoEXT+ (VkDebugUtilsMessengerCreateInfoEXT(..)) where+import Foreign.Storable (Storable (..))+import GHC.Prim+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Marshal.Internal+import Graphics.Vulkan.Types.Bitmasks (VkDebugUtilsMessengerCreateFlagsEXT)+import Graphics.Vulkan.Types.Enum.VkDebugUtilsMessageSeverityFlagsEXT (VkDebugUtilsMessageSeverityFlagsEXT)+import Graphics.Vulkan.Types.Enum.VkDebugUtilsMessageTypeFlagsEXT (VkDebugUtilsMessageTypeFlagsEXT)+import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)+import Graphics.Vulkan.Types.Funcpointers (PFN_vkDebugUtilsMessengerCallbackEXT)+import Graphics.Vulkan.Types.Struct.VkInstanceCreateInfo (VkInstanceCreateInfo)+import System.IO.Unsafe (unsafeDupablePerformIO)++-- | > typedef struct VkDebugUtilsMessengerCreateInfoEXT {+-- > VkStructureType sType;+-- > const void* pNext;+-- > VkDebugUtilsMessengerCreateFlagsEXT flags;+-- > VkDebugUtilsMessageSeverityFlagsEXT messageSeverity;+-- > VkDebugUtilsMessageTypeFlagsEXT messageType;+-- > PFN_vkDebugUtilsMessengerCallbackEXT pfnUserCallback;+-- > void* pUserData;+-- > } VkDebugUtilsMessengerCreateInfoEXT;+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDebugUtilsMessengerCreateInfoEXT.html VkDebugUtilsMessengerCreateInfoEXT registry at www.khronos.org>+data VkDebugUtilsMessengerCreateInfoEXT = VkDebugUtilsMessengerCreateInfoEXT## Addr##+ ByteArray##++instance Eq VkDebugUtilsMessengerCreateInfoEXT where+ (VkDebugUtilsMessengerCreateInfoEXT## a _) ==+ x@(VkDebugUtilsMessengerCreateInfoEXT## b _)+ = EQ == cmpBytes## (sizeOf x) a b++ {-# INLINE (==) #-}++instance Ord VkDebugUtilsMessengerCreateInfoEXT where+ (VkDebugUtilsMessengerCreateInfoEXT## a _) `compare`+ x@(VkDebugUtilsMessengerCreateInfoEXT## b _)+ = cmpBytes## (sizeOf x) a b++ {-# INLINE compare #-}++instance Storable VkDebugUtilsMessengerCreateInfoEXT where+ sizeOf ~_ = #{size VkDebugUtilsMessengerCreateInfoEXT}++ {-# INLINE sizeOf #-}+ alignment ~_+ = #{alignment VkDebugUtilsMessengerCreateInfoEXT}++ {-# INLINE alignment #-}+ peek = peekVkData##++ {-# INLINE peek #-}+ poke = pokeVkData##++ {-# INLINE poke #-}++instance VulkanMarshalPrim VkDebugUtilsMessengerCreateInfoEXT where+ unsafeAddr (VkDebugUtilsMessengerCreateInfoEXT## a _) = a++ {-# INLINE unsafeAddr #-}+ unsafeByteArray (VkDebugUtilsMessengerCreateInfoEXT## _ b) = b++ {-# INLINE unsafeByteArray #-}+ unsafeFromByteArrayOffset off b+ = VkDebugUtilsMessengerCreateInfoEXT##+ (plusAddr## (byteArrayContents## b) off)+ b++ {-# INLINE unsafeFromByteArrayOffset #-}++instance VulkanMarshal VkDebugUtilsMessengerCreateInfoEXT where+ type StructFields VkDebugUtilsMessengerCreateInfoEXT =+ '["sType", "pNext", "flags", "messageSeverity", "messageType", -- ' closing tick for hsc2hs+ "pfnUserCallback", "pUserData"]+ type CUnionType VkDebugUtilsMessengerCreateInfoEXT = 'False -- ' closing tick for hsc2hs+ type ReturnedOnly VkDebugUtilsMessengerCreateInfoEXT = 'False -- ' closing tick for hsc2hs+ type StructExtends VkDebugUtilsMessengerCreateInfoEXT =+ '[VkInstanceCreateInfo] -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-}+ HasField "sType" VkDebugUtilsMessengerCreateInfoEXT where+ type FieldType "sType" VkDebugUtilsMessengerCreateInfoEXT =+ VkStructureType+ type FieldOptional "sType" VkDebugUtilsMessengerCreateInfoEXT =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "sType" VkDebugUtilsMessengerCreateInfoEXT =+ #{offset VkDebugUtilsMessengerCreateInfoEXT, sType}+ type FieldIsArray "sType" VkDebugUtilsMessengerCreateInfoEXT =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDebugUtilsMessengerCreateInfoEXT, sType}++instance {-# OVERLAPPING #-}+ CanReadField "sType" VkDebugUtilsMessengerCreateInfoEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDebugUtilsMessengerCreateInfoEXT, sType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugUtilsMessengerCreateInfoEXT, sType}++instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkDebugUtilsMessengerCreateInfoEXT where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugUtilsMessengerCreateInfoEXT, sType}++instance {-# OVERLAPPING #-}+ HasField "pNext" VkDebugUtilsMessengerCreateInfoEXT where+ type FieldType "pNext" VkDebugUtilsMessengerCreateInfoEXT =+ Ptr Void+ type FieldOptional "pNext" VkDebugUtilsMessengerCreateInfoEXT =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "pNext" VkDebugUtilsMessengerCreateInfoEXT =+ #{offset VkDebugUtilsMessengerCreateInfoEXT, pNext}+ type FieldIsArray "pNext" VkDebugUtilsMessengerCreateInfoEXT =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDebugUtilsMessengerCreateInfoEXT, pNext}++instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkDebugUtilsMessengerCreateInfoEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDebugUtilsMessengerCreateInfoEXT, pNext})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugUtilsMessengerCreateInfoEXT, pNext}++instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkDebugUtilsMessengerCreateInfoEXT where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugUtilsMessengerCreateInfoEXT, pNext}++instance {-# OVERLAPPING #-}+ HasField "flags" VkDebugUtilsMessengerCreateInfoEXT where+ type FieldType "flags" VkDebugUtilsMessengerCreateInfoEXT =+ VkDebugUtilsMessengerCreateFlagsEXT+ type FieldOptional "flags" VkDebugUtilsMessengerCreateInfoEXT =+ 'True -- ' closing tick for hsc2hs+ type FieldOffset "flags" VkDebugUtilsMessengerCreateInfoEXT =+ #{offset VkDebugUtilsMessengerCreateInfoEXT, flags}+ type FieldIsArray "flags" VkDebugUtilsMessengerCreateInfoEXT =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = True++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDebugUtilsMessengerCreateInfoEXT, flags}++instance {-# OVERLAPPING #-}+ CanReadField "flags" VkDebugUtilsMessengerCreateInfoEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDebugUtilsMessengerCreateInfoEXT, flags})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugUtilsMessengerCreateInfoEXT, flags}++instance {-# OVERLAPPING #-}+ CanWriteField "flags" VkDebugUtilsMessengerCreateInfoEXT where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugUtilsMessengerCreateInfoEXT, flags}++instance {-# OVERLAPPING #-}+ HasField "messageSeverity" VkDebugUtilsMessengerCreateInfoEXT where+ type FieldType "messageSeverity" VkDebugUtilsMessengerCreateInfoEXT+ = VkDebugUtilsMessageSeverityFlagsEXT+ type FieldOptional "messageSeverity"+ VkDebugUtilsMessengerCreateInfoEXT+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "messageSeverity"+ VkDebugUtilsMessengerCreateInfoEXT+ =+ #{offset VkDebugUtilsMessengerCreateInfoEXT, messageSeverity}+ type FieldIsArray "messageSeverity"+ VkDebugUtilsMessengerCreateInfoEXT+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDebugUtilsMessengerCreateInfoEXT, messageSeverity}++instance {-# OVERLAPPING #-}+ CanReadField "messageSeverity" VkDebugUtilsMessengerCreateInfoEXT+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDebugUtilsMessengerCreateInfoEXT, messageSeverity})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugUtilsMessengerCreateInfoEXT, messageSeverity}++instance {-# OVERLAPPING #-}+ CanWriteField "messageSeverity" VkDebugUtilsMessengerCreateInfoEXT+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugUtilsMessengerCreateInfoEXT, messageSeverity}++instance {-# OVERLAPPING #-}+ HasField "messageType" VkDebugUtilsMessengerCreateInfoEXT where+ type FieldType "messageType" VkDebugUtilsMessengerCreateInfoEXT =+ VkDebugUtilsMessageTypeFlagsEXT+ type FieldOptional "messageType" VkDebugUtilsMessengerCreateInfoEXT+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "messageType" VkDebugUtilsMessengerCreateInfoEXT =+ #{offset VkDebugUtilsMessengerCreateInfoEXT, messageType}+ type FieldIsArray "messageType" VkDebugUtilsMessengerCreateInfoEXT+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDebugUtilsMessengerCreateInfoEXT, messageType}++instance {-# OVERLAPPING #-}+ CanReadField "messageType" VkDebugUtilsMessengerCreateInfoEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDebugUtilsMessengerCreateInfoEXT, messageType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugUtilsMessengerCreateInfoEXT, messageType}++instance {-# OVERLAPPING #-}+ CanWriteField "messageType" VkDebugUtilsMessengerCreateInfoEXT+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugUtilsMessengerCreateInfoEXT, messageType}++instance {-# OVERLAPPING #-}+ HasField "pfnUserCallback" VkDebugUtilsMessengerCreateInfoEXT where+ type FieldType "pfnUserCallback" VkDebugUtilsMessengerCreateInfoEXT+ = PFN_vkDebugUtilsMessengerCallbackEXT+ type FieldOptional "pfnUserCallback"+ VkDebugUtilsMessengerCreateInfoEXT+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "pfnUserCallback"+ VkDebugUtilsMessengerCreateInfoEXT+ =+ #{offset VkDebugUtilsMessengerCreateInfoEXT, pfnUserCallback}+ type FieldIsArray "pfnUserCallback"+ VkDebugUtilsMessengerCreateInfoEXT+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDebugUtilsMessengerCreateInfoEXT, pfnUserCallback}++instance {-# OVERLAPPING #-}+ CanReadField "pfnUserCallback" VkDebugUtilsMessengerCreateInfoEXT+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDebugUtilsMessengerCreateInfoEXT, pfnUserCallback})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugUtilsMessengerCreateInfoEXT, pfnUserCallback}++instance {-# OVERLAPPING #-}+ CanWriteField "pfnUserCallback" VkDebugUtilsMessengerCreateInfoEXT+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugUtilsMessengerCreateInfoEXT, pfnUserCallback}++instance {-# OVERLAPPING #-}+ HasField "pUserData" VkDebugUtilsMessengerCreateInfoEXT where+ type FieldType "pUserData" VkDebugUtilsMessengerCreateInfoEXT =+ Ptr Void+ type FieldOptional "pUserData" VkDebugUtilsMessengerCreateInfoEXT =+ 'True -- ' closing tick for hsc2hs+ type FieldOffset "pUserData" VkDebugUtilsMessengerCreateInfoEXT =+ #{offset VkDebugUtilsMessengerCreateInfoEXT, pUserData}+ type FieldIsArray "pUserData" VkDebugUtilsMessengerCreateInfoEXT =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = True++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDebugUtilsMessengerCreateInfoEXT, pUserData}++instance {-# OVERLAPPING #-}+ CanReadField "pUserData" VkDebugUtilsMessengerCreateInfoEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDebugUtilsMessengerCreateInfoEXT, pUserData})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugUtilsMessengerCreateInfoEXT, pUserData}++instance {-# OVERLAPPING #-}+ CanWriteField "pUserData" VkDebugUtilsMessengerCreateInfoEXT where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugUtilsMessengerCreateInfoEXT, pUserData}++instance Show VkDebugUtilsMessengerCreateInfoEXT where+ showsPrec d x+ = showString "VkDebugUtilsMessengerCreateInfoEXT {" .+ showString "sType = " .+ showsPrec d (getField @"sType" x) .+ showString ", " .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) .+ showString ", " .+ showString "flags = " .+ showsPrec d (getField @"flags" x) .+ showString ", " .+ showString "messageSeverity = " .+ showsPrec d (getField @"messageSeverity" x) .+ showString ", " .+ showString "messageType = " .+ showsPrec d (getField @"messageType" x) .+ showString ", " .+ showString "pfnUserCallback = " .+ showsPrec d (getField @"pfnUserCallback" x) .+ showString ", " .+ showString "pUserData = " .+ showsPrec d (getField @"pUserData" x) .+ showChar '}'
@@ -0,0 +1,267 @@+#include "vulkan/vulkan.h"++{-# LANGUAGE DataKinds #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-}+{-# LANGUAGE TypeFamilies #-}+module Graphics.Vulkan.Types.Struct.VkDebugUtilsObjectNameInfoEXT+ (VkDebugUtilsObjectNameInfoEXT(..)) where+import Foreign.Storable (Storable (..))+import GHC.Prim+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Marshal.Internal+import Graphics.Vulkan.Types.Enum.VkObjectType (VkObjectType)+import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)+import System.IO.Unsafe (unsafeDupablePerformIO)++-- | > typedef struct VkDebugUtilsObjectNameInfoEXT {+-- > VkStructureType sType;+-- > const void* pNext;+-- > VkObjectType objectType;+-- > uint64_t objectHandle;+-- > const char* pObjectName;+-- > } VkDebugUtilsObjectNameInfoEXT;+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDebugUtilsObjectNameInfoEXT.html VkDebugUtilsObjectNameInfoEXT registry at www.khronos.org>+data VkDebugUtilsObjectNameInfoEXT = VkDebugUtilsObjectNameInfoEXT## Addr##+ ByteArray##++instance Eq VkDebugUtilsObjectNameInfoEXT where+ (VkDebugUtilsObjectNameInfoEXT## a _) ==+ x@(VkDebugUtilsObjectNameInfoEXT## b _)+ = EQ == cmpBytes## (sizeOf x) a b++ {-# INLINE (==) #-}++instance Ord VkDebugUtilsObjectNameInfoEXT where+ (VkDebugUtilsObjectNameInfoEXT## a _) `compare`+ x@(VkDebugUtilsObjectNameInfoEXT## b _) = cmpBytes## (sizeOf x) a b++ {-# INLINE compare #-}++instance Storable VkDebugUtilsObjectNameInfoEXT where+ sizeOf ~_ = #{size VkDebugUtilsObjectNameInfoEXT}++ {-# INLINE sizeOf #-}+ alignment ~_+ = #{alignment VkDebugUtilsObjectNameInfoEXT}++ {-# INLINE alignment #-}+ peek = peekVkData##++ {-# INLINE peek #-}+ poke = pokeVkData##++ {-# INLINE poke #-}++instance VulkanMarshalPrim VkDebugUtilsObjectNameInfoEXT where+ unsafeAddr (VkDebugUtilsObjectNameInfoEXT## a _) = a++ {-# INLINE unsafeAddr #-}+ unsafeByteArray (VkDebugUtilsObjectNameInfoEXT## _ b) = b++ {-# INLINE unsafeByteArray #-}+ unsafeFromByteArrayOffset off b+ = VkDebugUtilsObjectNameInfoEXT##+ (plusAddr## (byteArrayContents## b) off)+ b++ {-# INLINE unsafeFromByteArrayOffset #-}++instance VulkanMarshal VkDebugUtilsObjectNameInfoEXT where+ type StructFields VkDebugUtilsObjectNameInfoEXT =+ '["sType", "pNext", "objectType", "objectHandle", "pObjectName"] -- ' closing tick for hsc2hs+ type CUnionType VkDebugUtilsObjectNameInfoEXT = 'False -- ' closing tick for hsc2hs+ type ReturnedOnly VkDebugUtilsObjectNameInfoEXT = 'False -- ' closing tick for hsc2hs+ type StructExtends VkDebugUtilsObjectNameInfoEXT = '[] -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-}+ HasField "sType" VkDebugUtilsObjectNameInfoEXT where+ type FieldType "sType" VkDebugUtilsObjectNameInfoEXT =+ VkStructureType+ type FieldOptional "sType" VkDebugUtilsObjectNameInfoEXT = 'False -- ' closing tick for hsc2hs+ type FieldOffset "sType" VkDebugUtilsObjectNameInfoEXT =+ #{offset VkDebugUtilsObjectNameInfoEXT, sType}+ type FieldIsArray "sType" VkDebugUtilsObjectNameInfoEXT = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDebugUtilsObjectNameInfoEXT, sType}++instance {-# OVERLAPPING #-}+ CanReadField "sType" VkDebugUtilsObjectNameInfoEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDebugUtilsObjectNameInfoEXT, sType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugUtilsObjectNameInfoEXT, sType}++instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkDebugUtilsObjectNameInfoEXT where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugUtilsObjectNameInfoEXT, sType}++instance {-# OVERLAPPING #-}+ HasField "pNext" VkDebugUtilsObjectNameInfoEXT where+ type FieldType "pNext" VkDebugUtilsObjectNameInfoEXT = Ptr Void+ type FieldOptional "pNext" VkDebugUtilsObjectNameInfoEXT = 'False -- ' closing tick for hsc2hs+ type FieldOffset "pNext" VkDebugUtilsObjectNameInfoEXT =+ #{offset VkDebugUtilsObjectNameInfoEXT, pNext}+ type FieldIsArray "pNext" VkDebugUtilsObjectNameInfoEXT = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDebugUtilsObjectNameInfoEXT, pNext}++instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkDebugUtilsObjectNameInfoEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDebugUtilsObjectNameInfoEXT, pNext})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugUtilsObjectNameInfoEXT, pNext}++instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkDebugUtilsObjectNameInfoEXT where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugUtilsObjectNameInfoEXT, pNext}++instance {-# OVERLAPPING #-}+ HasField "objectType" VkDebugUtilsObjectNameInfoEXT where+ type FieldType "objectType" VkDebugUtilsObjectNameInfoEXT =+ VkObjectType+ type FieldOptional "objectType" VkDebugUtilsObjectNameInfoEXT =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "objectType" VkDebugUtilsObjectNameInfoEXT =+ #{offset VkDebugUtilsObjectNameInfoEXT, objectType}+ type FieldIsArray "objectType" VkDebugUtilsObjectNameInfoEXT =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDebugUtilsObjectNameInfoEXT, objectType}++instance {-# OVERLAPPING #-}+ CanReadField "objectType" VkDebugUtilsObjectNameInfoEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDebugUtilsObjectNameInfoEXT, objectType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugUtilsObjectNameInfoEXT, objectType}++instance {-# OVERLAPPING #-}+ CanWriteField "objectType" VkDebugUtilsObjectNameInfoEXT where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugUtilsObjectNameInfoEXT, objectType}++instance {-# OVERLAPPING #-}+ HasField "objectHandle" VkDebugUtilsObjectNameInfoEXT where+ type FieldType "objectHandle" VkDebugUtilsObjectNameInfoEXT =+ Word64+ type FieldOptional "objectHandle" VkDebugUtilsObjectNameInfoEXT =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "objectHandle" VkDebugUtilsObjectNameInfoEXT =+ #{offset VkDebugUtilsObjectNameInfoEXT, objectHandle}+ type FieldIsArray "objectHandle" VkDebugUtilsObjectNameInfoEXT =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDebugUtilsObjectNameInfoEXT, objectHandle}++instance {-# OVERLAPPING #-}+ CanReadField "objectHandle" VkDebugUtilsObjectNameInfoEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDebugUtilsObjectNameInfoEXT, objectHandle})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugUtilsObjectNameInfoEXT, objectHandle}++instance {-# OVERLAPPING #-}+ CanWriteField "objectHandle" VkDebugUtilsObjectNameInfoEXT where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugUtilsObjectNameInfoEXT, objectHandle}++instance {-# OVERLAPPING #-}+ HasField "pObjectName" VkDebugUtilsObjectNameInfoEXT where+ type FieldType "pObjectName" VkDebugUtilsObjectNameInfoEXT =+ CString+ type FieldOptional "pObjectName" VkDebugUtilsObjectNameInfoEXT =+ 'True -- ' closing tick for hsc2hs+ type FieldOffset "pObjectName" VkDebugUtilsObjectNameInfoEXT =+ #{offset VkDebugUtilsObjectNameInfoEXT, pObjectName}+ type FieldIsArray "pObjectName" VkDebugUtilsObjectNameInfoEXT =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = True++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDebugUtilsObjectNameInfoEXT, pObjectName}++instance {-# OVERLAPPING #-}+ CanReadField "pObjectName" VkDebugUtilsObjectNameInfoEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDebugUtilsObjectNameInfoEXT, pObjectName})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugUtilsObjectNameInfoEXT, pObjectName}++instance {-# OVERLAPPING #-}+ CanWriteField "pObjectName" VkDebugUtilsObjectNameInfoEXT where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugUtilsObjectNameInfoEXT, pObjectName}++instance Show VkDebugUtilsObjectNameInfoEXT where+ showsPrec d x+ = showString "VkDebugUtilsObjectNameInfoEXT {" .+ showString "sType = " .+ showsPrec d (getField @"sType" x) .+ showString ", " .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) .+ showString ", " .+ showString "objectType = " .+ showsPrec d (getField @"objectType" x) .+ showString ", " .+ showString "objectHandle = " .+ showsPrec d (getField @"objectHandle" x) .+ showString ", " .+ showString "pObjectName = " .+ showsPrec d (getField @"pObjectName" x) . showChar '}'
@@ -0,0 +1,336 @@+#include "vulkan/vulkan.h"++{-# LANGUAGE DataKinds #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-}+{-# LANGUAGE TypeFamilies #-}+module Graphics.Vulkan.Types.Struct.VkDebugUtilsObjectTagInfoEXT+ (VkDebugUtilsObjectTagInfoEXT(..)) where+import Foreign.Storable (Storable (..))+import GHC.Prim+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Marshal.Internal+import Graphics.Vulkan.Types.Enum.VkObjectType (VkObjectType)+import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)+import System.IO.Unsafe (unsafeDupablePerformIO)++-- | > typedef struct VkDebugUtilsObjectTagInfoEXT {+-- > VkStructureType sType;+-- > const void* pNext;+-- > VkObjectType objectType;+-- > uint64_t objectHandle;+-- > uint64_t tagName;+-- > size_t tagSize;+-- > const void* pTag;+-- > } VkDebugUtilsObjectTagInfoEXT;+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDebugUtilsObjectTagInfoEXT.html VkDebugUtilsObjectTagInfoEXT registry at www.khronos.org>+data VkDebugUtilsObjectTagInfoEXT = VkDebugUtilsObjectTagInfoEXT## Addr##+ ByteArray##++instance Eq VkDebugUtilsObjectTagInfoEXT where+ (VkDebugUtilsObjectTagInfoEXT## a _) ==+ x@(VkDebugUtilsObjectTagInfoEXT## b _)+ = EQ == cmpBytes## (sizeOf x) a b++ {-# INLINE (==) #-}++instance Ord VkDebugUtilsObjectTagInfoEXT where+ (VkDebugUtilsObjectTagInfoEXT## a _) `compare`+ x@(VkDebugUtilsObjectTagInfoEXT## b _) = cmpBytes## (sizeOf x) a b++ {-# INLINE compare #-}++instance Storable VkDebugUtilsObjectTagInfoEXT where+ sizeOf ~_ = #{size VkDebugUtilsObjectTagInfoEXT}++ {-# INLINE sizeOf #-}+ alignment ~_+ = #{alignment VkDebugUtilsObjectTagInfoEXT}++ {-# INLINE alignment #-}+ peek = peekVkData##++ {-# INLINE peek #-}+ poke = pokeVkData##++ {-# INLINE poke #-}++instance VulkanMarshalPrim VkDebugUtilsObjectTagInfoEXT where+ unsafeAddr (VkDebugUtilsObjectTagInfoEXT## a _) = a++ {-# INLINE unsafeAddr #-}+ unsafeByteArray (VkDebugUtilsObjectTagInfoEXT## _ b) = b++ {-# INLINE unsafeByteArray #-}+ unsafeFromByteArrayOffset off b+ = VkDebugUtilsObjectTagInfoEXT##+ (plusAddr## (byteArrayContents## b) off)+ b++ {-# INLINE unsafeFromByteArrayOffset #-}++instance VulkanMarshal VkDebugUtilsObjectTagInfoEXT where+ type StructFields VkDebugUtilsObjectTagInfoEXT =+ '["sType", "pNext", "objectType", "objectHandle", "tagName", -- ' closing tick for hsc2hs+ "tagSize", "pTag"]+ type CUnionType VkDebugUtilsObjectTagInfoEXT = 'False -- ' closing tick for hsc2hs+ type ReturnedOnly VkDebugUtilsObjectTagInfoEXT = 'False -- ' closing tick for hsc2hs+ type StructExtends VkDebugUtilsObjectTagInfoEXT = '[] -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-}+ HasField "sType" VkDebugUtilsObjectTagInfoEXT where+ type FieldType "sType" VkDebugUtilsObjectTagInfoEXT =+ VkStructureType+ type FieldOptional "sType" VkDebugUtilsObjectTagInfoEXT = 'False -- ' closing tick for hsc2hs+ type FieldOffset "sType" VkDebugUtilsObjectTagInfoEXT =+ #{offset VkDebugUtilsObjectTagInfoEXT, sType}+ type FieldIsArray "sType" VkDebugUtilsObjectTagInfoEXT = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDebugUtilsObjectTagInfoEXT, sType}++instance {-# OVERLAPPING #-}+ CanReadField "sType" VkDebugUtilsObjectTagInfoEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDebugUtilsObjectTagInfoEXT, sType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugUtilsObjectTagInfoEXT, sType}++instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkDebugUtilsObjectTagInfoEXT where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugUtilsObjectTagInfoEXT, sType}++instance {-# OVERLAPPING #-}+ HasField "pNext" VkDebugUtilsObjectTagInfoEXT where+ type FieldType "pNext" VkDebugUtilsObjectTagInfoEXT = Ptr Void+ type FieldOptional "pNext" VkDebugUtilsObjectTagInfoEXT = 'False -- ' closing tick for hsc2hs+ type FieldOffset "pNext" VkDebugUtilsObjectTagInfoEXT =+ #{offset VkDebugUtilsObjectTagInfoEXT, pNext}+ type FieldIsArray "pNext" VkDebugUtilsObjectTagInfoEXT = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDebugUtilsObjectTagInfoEXT, pNext}++instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkDebugUtilsObjectTagInfoEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDebugUtilsObjectTagInfoEXT, pNext})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugUtilsObjectTagInfoEXT, pNext}++instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkDebugUtilsObjectTagInfoEXT where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugUtilsObjectTagInfoEXT, pNext}++instance {-# OVERLAPPING #-}+ HasField "objectType" VkDebugUtilsObjectTagInfoEXT where+ type FieldType "objectType" VkDebugUtilsObjectTagInfoEXT =+ VkObjectType+ type FieldOptional "objectType" VkDebugUtilsObjectTagInfoEXT =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "objectType" VkDebugUtilsObjectTagInfoEXT =+ #{offset VkDebugUtilsObjectTagInfoEXT, objectType}+ type FieldIsArray "objectType" VkDebugUtilsObjectTagInfoEXT =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDebugUtilsObjectTagInfoEXT, objectType}++instance {-# OVERLAPPING #-}+ CanReadField "objectType" VkDebugUtilsObjectTagInfoEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDebugUtilsObjectTagInfoEXT, objectType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugUtilsObjectTagInfoEXT, objectType}++instance {-# OVERLAPPING #-}+ CanWriteField "objectType" VkDebugUtilsObjectTagInfoEXT where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugUtilsObjectTagInfoEXT, objectType}++instance {-# OVERLAPPING #-}+ HasField "objectHandle" VkDebugUtilsObjectTagInfoEXT where+ type FieldType "objectHandle" VkDebugUtilsObjectTagInfoEXT = Word64+ type FieldOptional "objectHandle" VkDebugUtilsObjectTagInfoEXT =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "objectHandle" VkDebugUtilsObjectTagInfoEXT =+ #{offset VkDebugUtilsObjectTagInfoEXT, objectHandle}+ type FieldIsArray "objectHandle" VkDebugUtilsObjectTagInfoEXT =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDebugUtilsObjectTagInfoEXT, objectHandle}++instance {-# OVERLAPPING #-}+ CanReadField "objectHandle" VkDebugUtilsObjectTagInfoEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDebugUtilsObjectTagInfoEXT, objectHandle})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugUtilsObjectTagInfoEXT, objectHandle}++instance {-# OVERLAPPING #-}+ CanWriteField "objectHandle" VkDebugUtilsObjectTagInfoEXT where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugUtilsObjectTagInfoEXT, objectHandle}++instance {-# OVERLAPPING #-}+ HasField "tagName" VkDebugUtilsObjectTagInfoEXT where+ type FieldType "tagName" VkDebugUtilsObjectTagInfoEXT = Word64+ type FieldOptional "tagName" VkDebugUtilsObjectTagInfoEXT = 'False -- ' closing tick for hsc2hs+ type FieldOffset "tagName" VkDebugUtilsObjectTagInfoEXT =+ #{offset VkDebugUtilsObjectTagInfoEXT, tagName}+ type FieldIsArray "tagName" VkDebugUtilsObjectTagInfoEXT = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDebugUtilsObjectTagInfoEXT, tagName}++instance {-# OVERLAPPING #-}+ CanReadField "tagName" VkDebugUtilsObjectTagInfoEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDebugUtilsObjectTagInfoEXT, tagName})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugUtilsObjectTagInfoEXT, tagName}++instance {-# OVERLAPPING #-}+ CanWriteField "tagName" VkDebugUtilsObjectTagInfoEXT where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugUtilsObjectTagInfoEXT, tagName}++instance {-# OVERLAPPING #-}+ HasField "tagSize" VkDebugUtilsObjectTagInfoEXT where+ type FieldType "tagSize" VkDebugUtilsObjectTagInfoEXT = CSize+ type FieldOptional "tagSize" VkDebugUtilsObjectTagInfoEXT = 'False -- ' closing tick for hsc2hs+ type FieldOffset "tagSize" VkDebugUtilsObjectTagInfoEXT =+ #{offset VkDebugUtilsObjectTagInfoEXT, tagSize}+ type FieldIsArray "tagSize" VkDebugUtilsObjectTagInfoEXT = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDebugUtilsObjectTagInfoEXT, tagSize}++instance {-# OVERLAPPING #-}+ CanReadField "tagSize" VkDebugUtilsObjectTagInfoEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDebugUtilsObjectTagInfoEXT, tagSize})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugUtilsObjectTagInfoEXT, tagSize}++instance {-# OVERLAPPING #-}+ CanWriteField "tagSize" VkDebugUtilsObjectTagInfoEXT where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugUtilsObjectTagInfoEXT, tagSize}++instance {-# OVERLAPPING #-}+ HasField "pTag" VkDebugUtilsObjectTagInfoEXT where+ type FieldType "pTag" VkDebugUtilsObjectTagInfoEXT = Ptr Void+ type FieldOptional "pTag" VkDebugUtilsObjectTagInfoEXT = 'False -- ' closing tick for hsc2hs+ type FieldOffset "pTag" VkDebugUtilsObjectTagInfoEXT =+ #{offset VkDebugUtilsObjectTagInfoEXT, pTag}+ type FieldIsArray "pTag" VkDebugUtilsObjectTagInfoEXT = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDebugUtilsObjectTagInfoEXT, pTag}++instance {-# OVERLAPPING #-}+ CanReadField "pTag" VkDebugUtilsObjectTagInfoEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDebugUtilsObjectTagInfoEXT, pTag})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDebugUtilsObjectTagInfoEXT, pTag}++instance {-# OVERLAPPING #-}+ CanWriteField "pTag" VkDebugUtilsObjectTagInfoEXT where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDebugUtilsObjectTagInfoEXT, pTag}++instance Show VkDebugUtilsObjectTagInfoEXT where+ showsPrec d x+ = showString "VkDebugUtilsObjectTagInfoEXT {" .+ showString "sType = " .+ showsPrec d (getField @"sType" x) .+ showString ", " .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) .+ showString ", " .+ showString "objectType = " .+ showsPrec d (getField @"objectType" x) .+ showString ", " .+ showString "objectHandle = " .+ showsPrec d (getField @"objectHandle" x) .+ showString ", " .+ showString "tagName = " .+ showsPrec d (getField @"tagName" x) .+ showString ", " .+ showString "tagSize = " .+ showsPrec d (getField @"tagSize" x) .+ showString ", " .+ showString "pTag = " .+ showsPrec d (getField @"pTag" x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkDedicatedAllocationBufferCreateInfoNV (VkDedicatedAllocationBufferCreateInfoNV(..)) where@@ -15,7 +16,6 @@ import Graphics.Vulkan.Types.BaseTypes (VkBool32) import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType) import Graphics.Vulkan.Types.Struct.VkBufferCreateInfo (VkBufferCreateInfo)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkDedicatedAllocationBufferCreateInfoNV {@@ -24,7 +24,7 @@ -- > VkBool32 dedicatedAllocation; -- > } VkDedicatedAllocationBufferCreateInfoNV; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDedicatedAllocationBufferCreateInfoNV.html VkDedicatedAllocationBufferCreateInfoNV registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDedicatedAllocationBufferCreateInfoNV.html VkDedicatedAllocationBufferCreateInfoNV registry at www.khronos.org> data VkDedicatedAllocationBufferCreateInfoNV = VkDedicatedAllocationBufferCreateInfoNV## Addr## ByteArray## @@ -83,28 +83,6 @@ '[VkBufferCreateInfo] -- ' closing tick for hsc2hs instance {-# OVERLAPPING #-}- HasVkSType VkDedicatedAllocationBufferCreateInfoNV where- type VkSTypeMType VkDedicatedAllocationBufferCreateInfoNV =- VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDedicatedAllocationBufferCreateInfoNV, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkDedicatedAllocationBufferCreateInfoNV, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkDedicatedAllocationBufferCreateInfoNV, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkDedicatedAllocationBufferCreateInfoNV, sType}--instance {-# OVERLAPPING #-} HasField "sType" VkDedicatedAllocationBufferCreateInfoNV where type FieldType "sType" VkDedicatedAllocationBufferCreateInfoNV = VkStructureType@@ -122,42 +100,22 @@ fieldOffset = #{offset VkDedicatedAllocationBufferCreateInfoNV, sType} -instance CanReadField "sType"- VkDedicatedAllocationBufferCreateInfoNV- where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance CanWriteField "sType"- VkDedicatedAllocationBufferCreateInfoNV- where- {-# INLINE writeField #-}- writeField = writeVkSType- instance {-# OVERLAPPING #-}- HasVkPNext VkDedicatedAllocationBufferCreateInfoNV where- type VkPNextMType VkDedicatedAllocationBufferCreateInfoNV =- Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x+ CanReadField "sType" VkDedicatedAllocationBufferCreateInfoNV where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDedicatedAllocationBufferCreateInfoNV, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkDedicatedAllocationBufferCreateInfoNV, pNext}+ (peekByteOff (unsafePtr x) #{offset VkDedicatedAllocationBufferCreateInfoNV, sType}) - {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkDedicatedAllocationBufferCreateInfoNV, pNext}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDedicatedAllocationBufferCreateInfoNV, sType} - {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkDedicatedAllocationBufferCreateInfoNV, pNext}+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkDedicatedAllocationBufferCreateInfoNV where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDedicatedAllocationBufferCreateInfoNV, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkDedicatedAllocationBufferCreateInfoNV where@@ -177,44 +135,22 @@ fieldOffset = #{offset VkDedicatedAllocationBufferCreateInfoNV, pNext} -instance CanReadField "pNext"- VkDedicatedAllocationBufferCreateInfoNV- where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext"- VkDedicatedAllocationBufferCreateInfoNV- where- {-# INLINE writeField #-}- writeField = writeVkPNext- instance {-# OVERLAPPING #-}- HasVkDedicatedAllocation VkDedicatedAllocationBufferCreateInfoNV- where- type VkDedicatedAllocationMType- VkDedicatedAllocationBufferCreateInfoNV- = VkBool32-- {-# NOINLINE vkDedicatedAllocation #-}- vkDedicatedAllocation x+ CanReadField "pNext" VkDedicatedAllocationBufferCreateInfoNV where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDedicatedAllocationBufferCreateInfoNV, dedicatedAllocation})-- {-# INLINE vkDedicatedAllocationByteOffset #-}- vkDedicatedAllocationByteOffset ~_- = #{offset VkDedicatedAllocationBufferCreateInfoNV, dedicatedAllocation}+ (peekByteOff (unsafePtr x) #{offset VkDedicatedAllocationBufferCreateInfoNV, pNext}) - {-# INLINE readVkDedicatedAllocation #-}- readVkDedicatedAllocation p- = peekByteOff p #{offset VkDedicatedAllocationBufferCreateInfoNV, dedicatedAllocation}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDedicatedAllocationBufferCreateInfoNV, pNext} - {-# INLINE writeVkDedicatedAllocation #-}- writeVkDedicatedAllocation p- = pokeByteOff p #{offset VkDedicatedAllocationBufferCreateInfoNV, dedicatedAllocation}+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkDedicatedAllocationBufferCreateInfoNV where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDedicatedAllocationBufferCreateInfoNV, pNext} instance {-# OVERLAPPING #-} HasField "dedicatedAllocation"@@ -241,29 +177,35 @@ fieldOffset = #{offset VkDedicatedAllocationBufferCreateInfoNV, dedicatedAllocation} -instance CanReadField "dedicatedAllocation"+instance {-# OVERLAPPING #-}+ CanReadField "dedicatedAllocation" VkDedicatedAllocationBufferCreateInfoNV where- {-# INLINE getField #-}- getField = vkDedicatedAllocation+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDedicatedAllocationBufferCreateInfoNV, dedicatedAllocation}) {-# INLINE readField #-}- readField = readVkDedicatedAllocation+ readField p+ = peekByteOff p #{offset VkDedicatedAllocationBufferCreateInfoNV, dedicatedAllocation} -instance CanWriteField "dedicatedAllocation"+instance {-# OVERLAPPING #-}+ CanWriteField "dedicatedAllocation" VkDedicatedAllocationBufferCreateInfoNV where {-# INLINE writeField #-}- writeField = writeVkDedicatedAllocation+ writeField p+ = pokeByteOff p #{offset VkDedicatedAllocationBufferCreateInfoNV, dedicatedAllocation} instance Show VkDedicatedAllocationBufferCreateInfoNV where showsPrec d x = showString "VkDedicatedAllocationBufferCreateInfoNV {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkDedicatedAllocation = " .- showsPrec d (vkDedicatedAllocation x) . showChar '}'+ showString "dedicatedAllocation = " .+ showsPrec d (getField @"dedicatedAllocation" x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkDedicatedAllocationImageCreateInfoNV (VkDedicatedAllocationImageCreateInfoNV(..)) where@@ -15,7 +16,6 @@ import Graphics.Vulkan.Types.BaseTypes (VkBool32) import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType) import Graphics.Vulkan.Types.Struct.VkImageCreateInfo (VkImageCreateInfo)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkDedicatedAllocationImageCreateInfoNV {@@ -24,7 +24,7 @@ -- > VkBool32 dedicatedAllocation; -- > } VkDedicatedAllocationImageCreateInfoNV; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDedicatedAllocationImageCreateInfoNV.html VkDedicatedAllocationImageCreateInfoNV registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDedicatedAllocationImageCreateInfoNV.html VkDedicatedAllocationImageCreateInfoNV registry at www.khronos.org> data VkDedicatedAllocationImageCreateInfoNV = VkDedicatedAllocationImageCreateInfoNV## Addr## ByteArray## @@ -82,28 +82,6 @@ '[VkImageCreateInfo] -- ' closing tick for hsc2hs instance {-# OVERLAPPING #-}- HasVkSType VkDedicatedAllocationImageCreateInfoNV where- type VkSTypeMType VkDedicatedAllocationImageCreateInfoNV =- VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDedicatedAllocationImageCreateInfoNV, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkDedicatedAllocationImageCreateInfoNV, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkDedicatedAllocationImageCreateInfoNV, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkDedicatedAllocationImageCreateInfoNV, sType}--instance {-# OVERLAPPING #-} HasField "sType" VkDedicatedAllocationImageCreateInfoNV where type FieldType "sType" VkDedicatedAllocationImageCreateInfoNV = VkStructureType@@ -121,41 +99,22 @@ fieldOffset = #{offset VkDedicatedAllocationImageCreateInfoNV, sType} -instance CanReadField "sType"- VkDedicatedAllocationImageCreateInfoNV- where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance CanWriteField "sType"- VkDedicatedAllocationImageCreateInfoNV- where- {-# INLINE writeField #-}- writeField = writeVkSType- instance {-# OVERLAPPING #-}- HasVkPNext VkDedicatedAllocationImageCreateInfoNV where- type VkPNextMType VkDedicatedAllocationImageCreateInfoNV = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x+ CanReadField "sType" VkDedicatedAllocationImageCreateInfoNV where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDedicatedAllocationImageCreateInfoNV, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkDedicatedAllocationImageCreateInfoNV, pNext}+ (peekByteOff (unsafePtr x) #{offset VkDedicatedAllocationImageCreateInfoNV, sType}) - {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkDedicatedAllocationImageCreateInfoNV, pNext}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDedicatedAllocationImageCreateInfoNV, sType} - {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkDedicatedAllocationImageCreateInfoNV, pNext}+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkDedicatedAllocationImageCreateInfoNV where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDedicatedAllocationImageCreateInfoNV, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkDedicatedAllocationImageCreateInfoNV where@@ -175,44 +134,22 @@ fieldOffset = #{offset VkDedicatedAllocationImageCreateInfoNV, pNext} -instance CanReadField "pNext"- VkDedicatedAllocationImageCreateInfoNV- where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext"- VkDedicatedAllocationImageCreateInfoNV- where- {-# INLINE writeField #-}- writeField = writeVkPNext- instance {-# OVERLAPPING #-}- HasVkDedicatedAllocation VkDedicatedAllocationImageCreateInfoNV- where- type VkDedicatedAllocationMType- VkDedicatedAllocationImageCreateInfoNV- = VkBool32-- {-# NOINLINE vkDedicatedAllocation #-}- vkDedicatedAllocation x+ CanReadField "pNext" VkDedicatedAllocationImageCreateInfoNV where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDedicatedAllocationImageCreateInfoNV, dedicatedAllocation})-- {-# INLINE vkDedicatedAllocationByteOffset #-}- vkDedicatedAllocationByteOffset ~_- = #{offset VkDedicatedAllocationImageCreateInfoNV, dedicatedAllocation}+ (peekByteOff (unsafePtr x) #{offset VkDedicatedAllocationImageCreateInfoNV, pNext}) - {-# INLINE readVkDedicatedAllocation #-}- readVkDedicatedAllocation p- = peekByteOff p #{offset VkDedicatedAllocationImageCreateInfoNV, dedicatedAllocation}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDedicatedAllocationImageCreateInfoNV, pNext} - {-# INLINE writeVkDedicatedAllocation #-}- writeVkDedicatedAllocation p- = pokeByteOff p #{offset VkDedicatedAllocationImageCreateInfoNV, dedicatedAllocation}+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkDedicatedAllocationImageCreateInfoNV where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDedicatedAllocationImageCreateInfoNV, pNext} instance {-# OVERLAPPING #-} HasField "dedicatedAllocation"@@ -239,29 +176,35 @@ fieldOffset = #{offset VkDedicatedAllocationImageCreateInfoNV, dedicatedAllocation} -instance CanReadField "dedicatedAllocation"+instance {-# OVERLAPPING #-}+ CanReadField "dedicatedAllocation" VkDedicatedAllocationImageCreateInfoNV where- {-# INLINE getField #-}- getField = vkDedicatedAllocation+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDedicatedAllocationImageCreateInfoNV, dedicatedAllocation}) {-# INLINE readField #-}- readField = readVkDedicatedAllocation+ readField p+ = peekByteOff p #{offset VkDedicatedAllocationImageCreateInfoNV, dedicatedAllocation} -instance CanWriteField "dedicatedAllocation"+instance {-# OVERLAPPING #-}+ CanWriteField "dedicatedAllocation" VkDedicatedAllocationImageCreateInfoNV where {-# INLINE writeField #-}- writeField = writeVkDedicatedAllocation+ writeField p+ = pokeByteOff p #{offset VkDedicatedAllocationImageCreateInfoNV, dedicatedAllocation} instance Show VkDedicatedAllocationImageCreateInfoNV where showsPrec d x = showString "VkDedicatedAllocationImageCreateInfoNV {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkDedicatedAllocation = " .- showsPrec d (vkDedicatedAllocation x) . showChar '}'+ showString "dedicatedAllocation = " .+ showsPrec d (getField @"dedicatedAllocation" x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkDedicatedAllocationMemoryAllocateInfoNV (VkDedicatedAllocationMemoryAllocateInfoNV(..)) where@@ -16,7 +17,6 @@ import Graphics.Vulkan.Types.Handles (VkBuffer, VkImage) import Graphics.Vulkan.Types.Struct.VkMemoryAllocateInfo (VkMemoryAllocateInfo)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkDedicatedAllocationMemoryAllocateInfoNV {@@ -26,7 +26,7 @@ -- > VkBuffer buffer; -- > } VkDedicatedAllocationMemoryAllocateInfoNV; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDedicatedAllocationMemoryAllocateInfoNV.html VkDedicatedAllocationMemoryAllocateInfoNV registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDedicatedAllocationMemoryAllocateInfoNV.html VkDedicatedAllocationMemoryAllocateInfoNV registry at www.khronos.org> data VkDedicatedAllocationMemoryAllocateInfoNV = VkDedicatedAllocationMemoryAllocateInfoNV## Addr## ByteArray## @@ -88,28 +88,6 @@ '[VkMemoryAllocateInfo] -- ' closing tick for hsc2hs instance {-# OVERLAPPING #-}- HasVkSType VkDedicatedAllocationMemoryAllocateInfoNV where- type VkSTypeMType VkDedicatedAllocationMemoryAllocateInfoNV =- VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDedicatedAllocationMemoryAllocateInfoNV, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkDedicatedAllocationMemoryAllocateInfoNV, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkDedicatedAllocationMemoryAllocateInfoNV, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkDedicatedAllocationMemoryAllocateInfoNV, sType}--instance {-# OVERLAPPING #-} HasField "sType" VkDedicatedAllocationMemoryAllocateInfoNV where type FieldType "sType" VkDedicatedAllocationMemoryAllocateInfoNV = VkStructureType@@ -129,42 +107,24 @@ fieldOffset = #{offset VkDedicatedAllocationMemoryAllocateInfoNV, sType} -instance CanReadField "sType"- VkDedicatedAllocationMemoryAllocateInfoNV+instance {-# OVERLAPPING #-}+ CanReadField "sType" VkDedicatedAllocationMemoryAllocateInfoNV where- {-# INLINE getField #-}- getField = vkSType+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDedicatedAllocationMemoryAllocateInfoNV, sType}) {-# INLINE readField #-}- readField = readVkSType+ readField p+ = peekByteOff p #{offset VkDedicatedAllocationMemoryAllocateInfoNV, sType} -instance CanWriteField "sType"- VkDedicatedAllocationMemoryAllocateInfoNV+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkDedicatedAllocationMemoryAllocateInfoNV where {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-}- HasVkPNext VkDedicatedAllocationMemoryAllocateInfoNV where- type VkPNextMType VkDedicatedAllocationMemoryAllocateInfoNV =- Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDedicatedAllocationMemoryAllocateInfoNV, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkDedicatedAllocationMemoryAllocateInfoNV, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkDedicatedAllocationMemoryAllocateInfoNV, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkDedicatedAllocationMemoryAllocateInfoNV, pNext}+ writeField p+ = pokeByteOff p #{offset VkDedicatedAllocationMemoryAllocateInfoNV, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkDedicatedAllocationMemoryAllocateInfoNV where@@ -186,42 +146,24 @@ fieldOffset = #{offset VkDedicatedAllocationMemoryAllocateInfoNV, pNext} -instance CanReadField "pNext"- VkDedicatedAllocationMemoryAllocateInfoNV+instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkDedicatedAllocationMemoryAllocateInfoNV where- {-# INLINE getField #-}- getField = vkPNext+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDedicatedAllocationMemoryAllocateInfoNV, pNext}) {-# INLINE readField #-}- readField = readVkPNext+ readField p+ = peekByteOff p #{offset VkDedicatedAllocationMemoryAllocateInfoNV, pNext} -instance CanWriteField "pNext"- VkDedicatedAllocationMemoryAllocateInfoNV+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkDedicatedAllocationMemoryAllocateInfoNV where {-# INLINE writeField #-}- writeField = writeVkPNext--instance {-# OVERLAPPING #-}- HasVkImage VkDedicatedAllocationMemoryAllocateInfoNV where- type VkImageMType VkDedicatedAllocationMemoryAllocateInfoNV =- VkImage-- {-# NOINLINE vkImage #-}- vkImage x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDedicatedAllocationMemoryAllocateInfoNV, image})-- {-# INLINE vkImageByteOffset #-}- vkImageByteOffset ~_- = #{offset VkDedicatedAllocationMemoryAllocateInfoNV, image}-- {-# INLINE readVkImage #-}- readVkImage p- = peekByteOff p #{offset VkDedicatedAllocationMemoryAllocateInfoNV, image}-- {-# INLINE writeVkImage #-}- writeVkImage p- = pokeByteOff p #{offset VkDedicatedAllocationMemoryAllocateInfoNV, image}+ writeField p+ = pokeByteOff p #{offset VkDedicatedAllocationMemoryAllocateInfoNV, pNext} instance {-# OVERLAPPING #-} HasField "image" VkDedicatedAllocationMemoryAllocateInfoNV where@@ -243,42 +185,24 @@ fieldOffset = #{offset VkDedicatedAllocationMemoryAllocateInfoNV, image} -instance CanReadField "image"- VkDedicatedAllocationMemoryAllocateInfoNV+instance {-# OVERLAPPING #-}+ CanReadField "image" VkDedicatedAllocationMemoryAllocateInfoNV where- {-# INLINE getField #-}- getField = vkImage+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDedicatedAllocationMemoryAllocateInfoNV, image}) {-# INLINE readField #-}- readField = readVkImage+ readField p+ = peekByteOff p #{offset VkDedicatedAllocationMemoryAllocateInfoNV, image} -instance CanWriteField "image"- VkDedicatedAllocationMemoryAllocateInfoNV+instance {-# OVERLAPPING #-}+ CanWriteField "image" VkDedicatedAllocationMemoryAllocateInfoNV where {-# INLINE writeField #-}- writeField = writeVkImage--instance {-# OVERLAPPING #-}- HasVkBuffer VkDedicatedAllocationMemoryAllocateInfoNV where- type VkBufferMType VkDedicatedAllocationMemoryAllocateInfoNV =- VkBuffer-- {-# NOINLINE vkBuffer #-}- vkBuffer x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDedicatedAllocationMemoryAllocateInfoNV, buffer})-- {-# INLINE vkBufferByteOffset #-}- vkBufferByteOffset ~_- = #{offset VkDedicatedAllocationMemoryAllocateInfoNV, buffer}-- {-# INLINE readVkBuffer #-}- readVkBuffer p- = peekByteOff p #{offset VkDedicatedAllocationMemoryAllocateInfoNV, buffer}-- {-# INLINE writeVkBuffer #-}- writeVkBuffer p- = pokeByteOff p #{offset VkDedicatedAllocationMemoryAllocateInfoNV, buffer}+ writeField p+ = pokeByteOff p #{offset VkDedicatedAllocationMemoryAllocateInfoNV, image} instance {-# OVERLAPPING #-} HasField "buffer" VkDedicatedAllocationMemoryAllocateInfoNV where@@ -301,31 +225,36 @@ fieldOffset = #{offset VkDedicatedAllocationMemoryAllocateInfoNV, buffer} -instance CanReadField "buffer"- VkDedicatedAllocationMemoryAllocateInfoNV+instance {-# OVERLAPPING #-}+ CanReadField "buffer" VkDedicatedAllocationMemoryAllocateInfoNV where- {-# INLINE getField #-}- getField = vkBuffer+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDedicatedAllocationMemoryAllocateInfoNV, buffer}) {-# INLINE readField #-}- readField = readVkBuffer+ readField p+ = peekByteOff p #{offset VkDedicatedAllocationMemoryAllocateInfoNV, buffer} -instance CanWriteField "buffer"- VkDedicatedAllocationMemoryAllocateInfoNV+instance {-# OVERLAPPING #-}+ CanWriteField "buffer" VkDedicatedAllocationMemoryAllocateInfoNV where {-# INLINE writeField #-}- writeField = writeVkBuffer+ writeField p+ = pokeByteOff p #{offset VkDedicatedAllocationMemoryAllocateInfoNV, buffer} instance Show VkDedicatedAllocationMemoryAllocateInfoNV where showsPrec d x = showString "VkDedicatedAllocationMemoryAllocateInfoNV {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkImage = " .- showsPrec d (vkImage x) .+ showString "image = " .+ showsPrec d (getField @"image" x) . showString ", " .- showString "vkBuffer = " . showsPrec d (vkBuffer x) . showChar '}'+ showString "buffer = " .+ showsPrec d (getField @"buffer" x) . showChar '}'
@@ -5,17 +5,17 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkDescriptorBufferInfo (VkDescriptorBufferInfo(..)) where-import Foreign.Storable (Storable (..))+import Foreign.Storable (Storable (..)) import GHC.Prim import Graphics.Vulkan.Marshal import Graphics.Vulkan.Marshal.Internal-import Graphics.Vulkan.Types.BaseTypes (VkDeviceSize)-import Graphics.Vulkan.Types.Handles (VkBuffer)-import Graphics.Vulkan.Types.StructMembers-import System.IO.Unsafe (unsafeDupablePerformIO)+import Graphics.Vulkan.Types.BaseTypes (VkDeviceSize)+import Graphics.Vulkan.Types.Handles (VkBuffer)+import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkDescriptorBufferInfo { -- > VkBuffer buffer;@@ -23,7 +23,7 @@ -- > VkDeviceSize range; -- > } VkDescriptorBufferInfo; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDescriptorBufferInfo.html VkDescriptorBufferInfo registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDescriptorBufferInfo.html VkDescriptorBufferInfo registry at www.khronos.org> data VkDescriptorBufferInfo = VkDescriptorBufferInfo## Addr## ByteArray## @@ -72,27 +72,6 @@ type ReturnedOnly VkDescriptorBufferInfo = 'False -- ' closing tick for hsc2hs type StructExtends VkDescriptorBufferInfo = '[] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkBuffer VkDescriptorBufferInfo- where- type VkBufferMType VkDescriptorBufferInfo = VkBuffer-- {-# NOINLINE vkBuffer #-}- vkBuffer x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorBufferInfo, buffer})-- {-# INLINE vkBufferByteOffset #-}- vkBufferByteOffset ~_- = #{offset VkDescriptorBufferInfo, buffer}-- {-# INLINE readVkBuffer #-}- readVkBuffer p- = peekByteOff p #{offset VkDescriptorBufferInfo, buffer}-- {-# INLINE writeVkBuffer #-}- writeVkBuffer p- = pokeByteOff p #{offset VkDescriptorBufferInfo, buffer}- instance {-# OVERLAPPING #-} HasField "buffer" VkDescriptorBufferInfo where type FieldType "buffer" VkDescriptorBufferInfo = VkBuffer@@ -107,37 +86,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkDescriptorBufferInfo, buffer} -instance CanReadField "buffer" VkDescriptorBufferInfo where- {-# INLINE getField #-}- getField = vkBuffer+instance {-# OVERLAPPING #-}+ CanReadField "buffer" VkDescriptorBufferInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDescriptorBufferInfo, buffer}) {-# INLINE readField #-}- readField = readVkBuffer+ readField p+ = peekByteOff p #{offset VkDescriptorBufferInfo, buffer} -instance CanWriteField "buffer" VkDescriptorBufferInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "buffer" VkDescriptorBufferInfo where {-# INLINE writeField #-}- writeField = writeVkBuffer--instance {-# OVERLAPPING #-} HasVkOffset VkDescriptorBufferInfo- where- type VkOffsetMType VkDescriptorBufferInfo = VkDeviceSize-- {-# NOINLINE vkOffset #-}- vkOffset x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorBufferInfo, offset})-- {-# INLINE vkOffsetByteOffset #-}- vkOffsetByteOffset ~_- = #{offset VkDescriptorBufferInfo, offset}-- {-# INLINE readVkOffset #-}- readVkOffset p- = peekByteOff p #{offset VkDescriptorBufferInfo, offset}-- {-# INLINE writeVkOffset #-}- writeVkOffset p- = pokeByteOff p #{offset VkDescriptorBufferInfo, offset}+ writeField p+ = pokeByteOff p #{offset VkDescriptorBufferInfo, buffer} instance {-# OVERLAPPING #-} HasField "offset" VkDescriptorBufferInfo where@@ -153,37 +117,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkDescriptorBufferInfo, offset} -instance CanReadField "offset" VkDescriptorBufferInfo where- {-# INLINE getField #-}- getField = vkOffset+instance {-# OVERLAPPING #-}+ CanReadField "offset" VkDescriptorBufferInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDescriptorBufferInfo, offset}) {-# INLINE readField #-}- readField = readVkOffset+ readField p+ = peekByteOff p #{offset VkDescriptorBufferInfo, offset} -instance CanWriteField "offset" VkDescriptorBufferInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "offset" VkDescriptorBufferInfo where {-# INLINE writeField #-}- writeField = writeVkOffset--instance {-# OVERLAPPING #-} HasVkRange VkDescriptorBufferInfo- where- type VkRangeMType VkDescriptorBufferInfo = VkDeviceSize-- {-# NOINLINE vkRange #-}- vkRange x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorBufferInfo, range})-- {-# INLINE vkRangeByteOffset #-}- vkRangeByteOffset ~_- = #{offset VkDescriptorBufferInfo, range}-- {-# INLINE readVkRange #-}- readVkRange p- = peekByteOff p #{offset VkDescriptorBufferInfo, range}-- {-# INLINE writeVkRange #-}- writeVkRange p- = pokeByteOff p #{offset VkDescriptorBufferInfo, range}+ writeField p+ = pokeByteOff p #{offset VkDescriptorBufferInfo, offset} instance {-# OVERLAPPING #-} HasField "range" VkDescriptorBufferInfo where@@ -199,24 +148,31 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkDescriptorBufferInfo, range} -instance CanReadField "range" VkDescriptorBufferInfo where- {-# INLINE getField #-}- getField = vkRange+instance {-# OVERLAPPING #-}+ CanReadField "range" VkDescriptorBufferInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDescriptorBufferInfo, range}) {-# INLINE readField #-}- readField = readVkRange+ readField p+ = peekByteOff p #{offset VkDescriptorBufferInfo, range} -instance CanWriteField "range" VkDescriptorBufferInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "range" VkDescriptorBufferInfo where {-# INLINE writeField #-}- writeField = writeVkRange+ writeField p+ = pokeByteOff p #{offset VkDescriptorBufferInfo, range} instance Show VkDescriptorBufferInfo where showsPrec d x = showString "VkDescriptorBufferInfo {" .- showString "vkBuffer = " .- showsPrec d (vkBuffer x) .+ showString "buffer = " .+ showsPrec d (getField @"buffer" x) . showString ", " .- showString "vkOffset = " .- showsPrec d (vkOffset x) .+ showString "offset = " .+ showsPrec d (getField @"offset" x) . showString ", " .- showString "vkRange = " . showsPrec d (vkRange x) . showChar '}'+ showString "range = " .+ showsPrec d (getField @"range" x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkDescriptorImageInfo (VkDescriptorImageInfo(..)) where@@ -15,7 +16,6 @@ import Graphics.Vulkan.Types.Enum.VkImageLayout (VkImageLayout) import Graphics.Vulkan.Types.Handles (VkImageView, VkSampler)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkDescriptorImageInfo {@@ -24,7 +24,7 @@ -- > VkImageLayout imageLayout; -- > } VkDescriptorImageInfo; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDescriptorImageInfo.html VkDescriptorImageInfo registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDescriptorImageInfo.html VkDescriptorImageInfo registry at www.khronos.org> data VkDescriptorImageInfo = VkDescriptorImageInfo## Addr## ByteArray## @@ -73,27 +73,6 @@ type ReturnedOnly VkDescriptorImageInfo = 'False -- ' closing tick for hsc2hs type StructExtends VkDescriptorImageInfo = '[] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkSampler VkDescriptorImageInfo- where- type VkSamplerMType VkDescriptorImageInfo = VkSampler-- {-# NOINLINE vkSampler #-}- vkSampler x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorImageInfo, sampler})-- {-# INLINE vkSamplerByteOffset #-}- vkSamplerByteOffset ~_- = #{offset VkDescriptorImageInfo, sampler}-- {-# INLINE readVkSampler #-}- readVkSampler p- = peekByteOff p #{offset VkDescriptorImageInfo, sampler}-- {-# INLINE writeVkSampler #-}- writeVkSampler p- = pokeByteOff p #{offset VkDescriptorImageInfo, sampler}- instance {-# OVERLAPPING #-} HasField "sampler" VkDescriptorImageInfo where type FieldType "sampler" VkDescriptorImageInfo = VkSampler@@ -108,37 +87,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkDescriptorImageInfo, sampler} -instance CanReadField "sampler" VkDescriptorImageInfo where- {-# INLINE getField #-}- getField = vkSampler+instance {-# OVERLAPPING #-}+ CanReadField "sampler" VkDescriptorImageInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDescriptorImageInfo, sampler}) {-# INLINE readField #-}- readField = readVkSampler+ readField p+ = peekByteOff p #{offset VkDescriptorImageInfo, sampler} -instance CanWriteField "sampler" VkDescriptorImageInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "sampler" VkDescriptorImageInfo where {-# INLINE writeField #-}- writeField = writeVkSampler--instance {-# OVERLAPPING #-} HasVkImageView VkDescriptorImageInfo- where- type VkImageViewMType VkDescriptorImageInfo = VkImageView-- {-# NOINLINE vkImageView #-}- vkImageView x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorImageInfo, imageView})-- {-# INLINE vkImageViewByteOffset #-}- vkImageViewByteOffset ~_- = #{offset VkDescriptorImageInfo, imageView}-- {-# INLINE readVkImageView #-}- readVkImageView p- = peekByteOff p #{offset VkDescriptorImageInfo, imageView}-- {-# INLINE writeVkImageView #-}- writeVkImageView p- = pokeByteOff p #{offset VkDescriptorImageInfo, imageView}+ writeField p+ = pokeByteOff p #{offset VkDescriptorImageInfo, sampler} instance {-# OVERLAPPING #-} HasField "imageView" VkDescriptorImageInfo where@@ -155,37 +119,22 @@ fieldOffset = #{offset VkDescriptorImageInfo, imageView} -instance CanReadField "imageView" VkDescriptorImageInfo where- {-# INLINE getField #-}- getField = vkImageView+instance {-# OVERLAPPING #-}+ CanReadField "imageView" VkDescriptorImageInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDescriptorImageInfo, imageView}) {-# INLINE readField #-}- readField = readVkImageView+ readField p+ = peekByteOff p #{offset VkDescriptorImageInfo, imageView} -instance CanWriteField "imageView" VkDescriptorImageInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "imageView" VkDescriptorImageInfo where {-# INLINE writeField #-}- writeField = writeVkImageView--instance {-# OVERLAPPING #-} HasVkImageLayout VkDescriptorImageInfo- where- type VkImageLayoutMType VkDescriptorImageInfo = VkImageLayout-- {-# NOINLINE vkImageLayout #-}- vkImageLayout x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorImageInfo, imageLayout})-- {-# INLINE vkImageLayoutByteOffset #-}- vkImageLayoutByteOffset ~_- = #{offset VkDescriptorImageInfo, imageLayout}-- {-# INLINE readVkImageLayout #-}- readVkImageLayout p- = peekByteOff p #{offset VkDescriptorImageInfo, imageLayout}-- {-# INLINE writeVkImageLayout #-}- writeVkImageLayout p- = pokeByteOff p #{offset VkDescriptorImageInfo, imageLayout}+ writeField p+ = pokeByteOff p #{offset VkDescriptorImageInfo, imageView} instance {-# OVERLAPPING #-} HasField "imageLayout" VkDescriptorImageInfo where@@ -202,25 +151,31 @@ fieldOffset = #{offset VkDescriptorImageInfo, imageLayout} -instance CanReadField "imageLayout" VkDescriptorImageInfo where- {-# INLINE getField #-}- getField = vkImageLayout+instance {-# OVERLAPPING #-}+ CanReadField "imageLayout" VkDescriptorImageInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDescriptorImageInfo, imageLayout}) {-# INLINE readField #-}- readField = readVkImageLayout+ readField p+ = peekByteOff p #{offset VkDescriptorImageInfo, imageLayout} -instance CanWriteField "imageLayout" VkDescriptorImageInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "imageLayout" VkDescriptorImageInfo where {-# INLINE writeField #-}- writeField = writeVkImageLayout+ writeField p+ = pokeByteOff p #{offset VkDescriptorImageInfo, imageLayout} instance Show VkDescriptorImageInfo where showsPrec d x = showString "VkDescriptorImageInfo {" .- showString "vkSampler = " .- showsPrec d (vkSampler x) .+ showString "sampler = " .+ showsPrec d (getField @"sampler" x) . showString ", " .- showString "vkImageView = " .- showsPrec d (vkImageView x) .+ showString "imageView = " .+ showsPrec d (getField @"imageView" x) . showString ", " .- showString "vkImageLayout = " .- showsPrec d (vkImageLayout x) . showChar '}'+ showString "imageLayout = " .+ showsPrec d (getField @"imageLayout" x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkDescriptorPoolCreateInfo (VkDescriptorPoolCreateInfo(..)) where@@ -15,7 +16,6 @@ import Graphics.Vulkan.Types.Enum.VkDescriptorPoolCreateFlags (VkDescriptorPoolCreateFlags) import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType) import Graphics.Vulkan.Types.Struct.VkDescriptorPoolSize (VkDescriptorPoolSize)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkDescriptorPoolCreateInfo {@@ -27,7 +27,7 @@ -- > const VkDescriptorPoolSize* pPoolSizes; -- > } VkDescriptorPoolCreateInfo; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDescriptorPoolCreateInfo.html VkDescriptorPoolCreateInfo registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDescriptorPoolCreateInfo.html VkDescriptorPoolCreateInfo registry at www.khronos.org> data VkDescriptorPoolCreateInfo = VkDescriptorPoolCreateInfo## Addr## ByteArray## @@ -80,27 +80,6 @@ type ReturnedOnly VkDescriptorPoolCreateInfo = 'False -- ' closing tick for hsc2hs type StructExtends VkDescriptorPoolCreateInfo = '[] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkSType VkDescriptorPoolCreateInfo- where- type VkSTypeMType VkDescriptorPoolCreateInfo = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorPoolCreateInfo, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkDescriptorPoolCreateInfo, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkDescriptorPoolCreateInfo, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkDescriptorPoolCreateInfo, sType}- instance {-# OVERLAPPING #-} HasField "sType" VkDescriptorPoolCreateInfo where type FieldType "sType" VkDescriptorPoolCreateInfo = VkStructureType@@ -116,37 +95,22 @@ fieldOffset = #{offset VkDescriptorPoolCreateInfo, sType} -instance CanReadField "sType" VkDescriptorPoolCreateInfo where- {-# INLINE getField #-}- getField = vkSType+instance {-# OVERLAPPING #-}+ CanReadField "sType" VkDescriptorPoolCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDescriptorPoolCreateInfo, sType}) {-# INLINE readField #-}- readField = readVkSType+ readField p+ = peekByteOff p #{offset VkDescriptorPoolCreateInfo, sType} -instance CanWriteField "sType" VkDescriptorPoolCreateInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkDescriptorPoolCreateInfo where {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-} HasVkPNext VkDescriptorPoolCreateInfo- where- type VkPNextMType VkDescriptorPoolCreateInfo = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorPoolCreateInfo, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkDescriptorPoolCreateInfo, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkDescriptorPoolCreateInfo, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkDescriptorPoolCreateInfo, pNext}+ writeField p+ = pokeByteOff p #{offset VkDescriptorPoolCreateInfo, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkDescriptorPoolCreateInfo where@@ -163,38 +127,22 @@ fieldOffset = #{offset VkDescriptorPoolCreateInfo, pNext} -instance CanReadField "pNext" VkDescriptorPoolCreateInfo where- {-# INLINE getField #-}- getField = vkPNext+instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkDescriptorPoolCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDescriptorPoolCreateInfo, pNext}) {-# INLINE readField #-}- readField = readVkPNext+ readField p+ = peekByteOff p #{offset VkDescriptorPoolCreateInfo, pNext} -instance CanWriteField "pNext" VkDescriptorPoolCreateInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkDescriptorPoolCreateInfo where {-# INLINE writeField #-}- writeField = writeVkPNext--instance {-# OVERLAPPING #-} HasVkFlags VkDescriptorPoolCreateInfo- where- type VkFlagsMType VkDescriptorPoolCreateInfo =- VkDescriptorPoolCreateFlags-- {-# NOINLINE vkFlags #-}- vkFlags x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorPoolCreateInfo, flags})-- {-# INLINE vkFlagsByteOffset #-}- vkFlagsByteOffset ~_- = #{offset VkDescriptorPoolCreateInfo, flags}-- {-# INLINE readVkFlags #-}- readVkFlags p- = peekByteOff p #{offset VkDescriptorPoolCreateInfo, flags}-- {-# INLINE writeVkFlags #-}- writeVkFlags p- = pokeByteOff p #{offset VkDescriptorPoolCreateInfo, flags}+ writeField p+ = pokeByteOff p #{offset VkDescriptorPoolCreateInfo, pNext} instance {-# OVERLAPPING #-} HasField "flags" VkDescriptorPoolCreateInfo where@@ -212,37 +160,22 @@ fieldOffset = #{offset VkDescriptorPoolCreateInfo, flags} -instance CanReadField "flags" VkDescriptorPoolCreateInfo where- {-# INLINE getField #-}- getField = vkFlags-- {-# INLINE readField #-}- readField = readVkFlags--instance CanWriteField "flags" VkDescriptorPoolCreateInfo where- {-# INLINE writeField #-}- writeField = writeVkFlags- instance {-# OVERLAPPING #-}- HasVkMaxSets VkDescriptorPoolCreateInfo where- type VkMaxSetsMType VkDescriptorPoolCreateInfo = Word32-- {-# NOINLINE vkMaxSets #-}- vkMaxSets x+ CanReadField "flags" VkDescriptorPoolCreateInfo where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorPoolCreateInfo, maxSets})-- {-# INLINE vkMaxSetsByteOffset #-}- vkMaxSetsByteOffset ~_- = #{offset VkDescriptorPoolCreateInfo, maxSets}+ (peekByteOff (unsafePtr x) #{offset VkDescriptorPoolCreateInfo, flags}) - {-# INLINE readVkMaxSets #-}- readVkMaxSets p- = peekByteOff p #{offset VkDescriptorPoolCreateInfo, maxSets}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDescriptorPoolCreateInfo, flags} - {-# INLINE writeVkMaxSets #-}- writeVkMaxSets p- = pokeByteOff p #{offset VkDescriptorPoolCreateInfo, maxSets}+instance {-# OVERLAPPING #-}+ CanWriteField "flags" VkDescriptorPoolCreateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDescriptorPoolCreateInfo, flags} instance {-# OVERLAPPING #-} HasField "maxSets" VkDescriptorPoolCreateInfo where@@ -259,37 +192,22 @@ fieldOffset = #{offset VkDescriptorPoolCreateInfo, maxSets} -instance CanReadField "maxSets" VkDescriptorPoolCreateInfo where- {-# INLINE getField #-}- getField = vkMaxSets-- {-# INLINE readField #-}- readField = readVkMaxSets--instance CanWriteField "maxSets" VkDescriptorPoolCreateInfo where- {-# INLINE writeField #-}- writeField = writeVkMaxSets- instance {-# OVERLAPPING #-}- HasVkPoolSizeCount VkDescriptorPoolCreateInfo where- type VkPoolSizeCountMType VkDescriptorPoolCreateInfo = Word32-- {-# NOINLINE vkPoolSizeCount #-}- vkPoolSizeCount x+ CanReadField "maxSets" VkDescriptorPoolCreateInfo where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorPoolCreateInfo, poolSizeCount})-- {-# INLINE vkPoolSizeCountByteOffset #-}- vkPoolSizeCountByteOffset ~_- = #{offset VkDescriptorPoolCreateInfo, poolSizeCount}+ (peekByteOff (unsafePtr x) #{offset VkDescriptorPoolCreateInfo, maxSets}) - {-# INLINE readVkPoolSizeCount #-}- readVkPoolSizeCount p- = peekByteOff p #{offset VkDescriptorPoolCreateInfo, poolSizeCount}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDescriptorPoolCreateInfo, maxSets} - {-# INLINE writeVkPoolSizeCount #-}- writeVkPoolSizeCount p- = pokeByteOff p #{offset VkDescriptorPoolCreateInfo, poolSizeCount}+instance {-# OVERLAPPING #-}+ CanWriteField "maxSets" VkDescriptorPoolCreateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDescriptorPoolCreateInfo, maxSets} instance {-# OVERLAPPING #-} HasField "poolSizeCount" VkDescriptorPoolCreateInfo where@@ -308,40 +226,22 @@ fieldOffset = #{offset VkDescriptorPoolCreateInfo, poolSizeCount} -instance CanReadField "poolSizeCount" VkDescriptorPoolCreateInfo- where- {-# INLINE getField #-}- getField = vkPoolSizeCount-- {-# INLINE readField #-}- readField = readVkPoolSizeCount--instance CanWriteField "poolSizeCount" VkDescriptorPoolCreateInfo- where- {-# INLINE writeField #-}- writeField = writeVkPoolSizeCount- instance {-# OVERLAPPING #-}- HasVkPPoolSizes VkDescriptorPoolCreateInfo where- type VkPPoolSizesMType VkDescriptorPoolCreateInfo =- Ptr VkDescriptorPoolSize-- {-# NOINLINE vkPPoolSizes #-}- vkPPoolSizes x+ CanReadField "poolSizeCount" VkDescriptorPoolCreateInfo where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorPoolCreateInfo, pPoolSizes})-- {-# INLINE vkPPoolSizesByteOffset #-}- vkPPoolSizesByteOffset ~_- = #{offset VkDescriptorPoolCreateInfo, pPoolSizes}+ (peekByteOff (unsafePtr x) #{offset VkDescriptorPoolCreateInfo, poolSizeCount}) - {-# INLINE readVkPPoolSizes #-}- readVkPPoolSizes p- = peekByteOff p #{offset VkDescriptorPoolCreateInfo, pPoolSizes}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDescriptorPoolCreateInfo, poolSizeCount} - {-# INLINE writeVkPPoolSizes #-}- writeVkPPoolSizes p- = pokeByteOff p #{offset VkDescriptorPoolCreateInfo, pPoolSizes}+instance {-# OVERLAPPING #-}+ CanWriteField "poolSizeCount" VkDescriptorPoolCreateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDescriptorPoolCreateInfo, poolSizeCount} instance {-# OVERLAPPING #-} HasField "pPoolSizes" VkDescriptorPoolCreateInfo where@@ -359,35 +259,40 @@ fieldOffset = #{offset VkDescriptorPoolCreateInfo, pPoolSizes} -instance CanReadField "pPoolSizes" VkDescriptorPoolCreateInfo where- {-# INLINE getField #-}- getField = vkPPoolSizes+instance {-# OVERLAPPING #-}+ CanReadField "pPoolSizes" VkDescriptorPoolCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDescriptorPoolCreateInfo, pPoolSizes}) {-# INLINE readField #-}- readField = readVkPPoolSizes+ readField p+ = peekByteOff p #{offset VkDescriptorPoolCreateInfo, pPoolSizes} -instance CanWriteField "pPoolSizes" VkDescriptorPoolCreateInfo- where+instance {-# OVERLAPPING #-}+ CanWriteField "pPoolSizes" VkDescriptorPoolCreateInfo where {-# INLINE writeField #-}- writeField = writeVkPPoolSizes+ writeField p+ = pokeByteOff p #{offset VkDescriptorPoolCreateInfo, pPoolSizes} instance Show VkDescriptorPoolCreateInfo where showsPrec d x = showString "VkDescriptorPoolCreateInfo {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkFlags = " .- showsPrec d (vkFlags x) .+ showString "flags = " .+ showsPrec d (getField @"flags" x) . showString ", " .- showString "vkMaxSets = " .- showsPrec d (vkMaxSets x) .+ showString "maxSets = " .+ showsPrec d (getField @"maxSets" x) . showString ", " .- showString "vkPoolSizeCount = " .- showsPrec d (vkPoolSizeCount x) .+ showString "poolSizeCount = " .+ showsPrec d (getField @"poolSizeCount" x) . showString ", " .- showString "vkPPoolSizes = " .- showsPrec d (vkPPoolSizes x) . showChar '}'+ showString "pPoolSizes = " .+ showsPrec d (getField @"pPoolSizes" x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkDescriptorPoolSize (VkDescriptorPoolSize(..)) where@@ -13,7 +14,6 @@ import Graphics.Vulkan.Marshal import Graphics.Vulkan.Marshal.Internal import Graphics.Vulkan.Types.Enum.VkDescriptorType (VkDescriptorType)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkDescriptorPoolSize {@@ -21,7 +21,7 @@ -- > uint32_t descriptorCount; -- > } VkDescriptorPoolSize; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDescriptorPoolSize.html VkDescriptorPoolSize registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDescriptorPoolSize.html VkDescriptorPoolSize registry at www.khronos.org> data VkDescriptorPoolSize = VkDescriptorPoolSize## Addr## ByteArray## instance Eq VkDescriptorPoolSize where@@ -69,26 +69,6 @@ type ReturnedOnly VkDescriptorPoolSize = 'False -- ' closing tick for hsc2hs type StructExtends VkDescriptorPoolSize = '[] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkType VkDescriptorPoolSize where- type VkTypeMType VkDescriptorPoolSize = VkDescriptorType-- {-# NOINLINE vkType #-}- vkType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorPoolSize, type})-- {-# INLINE vkTypeByteOffset #-}- vkTypeByteOffset ~_- = #{offset VkDescriptorPoolSize, type}-- {-# INLINE readVkType #-}- readVkType p- = peekByteOff p #{offset VkDescriptorPoolSize, type}-- {-# INLINE writeVkType #-}- writeVkType p- = pokeByteOff p #{offset VkDescriptorPoolSize, type}- instance {-# OVERLAPPING #-} HasField "type" VkDescriptorPoolSize where type FieldType "type" VkDescriptorPoolSize = VkDescriptorType@@ -103,37 +83,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkDescriptorPoolSize, type} -instance CanReadField "type" VkDescriptorPoolSize where- {-# INLINE getField #-}- getField = vkType-- {-# INLINE readField #-}- readField = readVkType--instance CanWriteField "type" VkDescriptorPoolSize where- {-# INLINE writeField #-}- writeField = writeVkType- instance {-# OVERLAPPING #-}- HasVkDescriptorCount VkDescriptorPoolSize where- type VkDescriptorCountMType VkDescriptorPoolSize = Word32-- {-# NOINLINE vkDescriptorCount #-}- vkDescriptorCount x+ CanReadField "type" VkDescriptorPoolSize where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorPoolSize, descriptorCount})-- {-# INLINE vkDescriptorCountByteOffset #-}- vkDescriptorCountByteOffset ~_- = #{offset VkDescriptorPoolSize, descriptorCount}+ (peekByteOff (unsafePtr x) #{offset VkDescriptorPoolSize, type}) - {-# INLINE readVkDescriptorCount #-}- readVkDescriptorCount p- = peekByteOff p #{offset VkDescriptorPoolSize, descriptorCount}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDescriptorPoolSize, type} - {-# INLINE writeVkDescriptorCount #-}- writeVkDescriptorCount p- = pokeByteOff p #{offset VkDescriptorPoolSize, descriptorCount}+instance {-# OVERLAPPING #-}+ CanWriteField "type" VkDescriptorPoolSize where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDescriptorPoolSize, type} instance {-# OVERLAPPING #-} HasField "descriptorCount" VkDescriptorPoolSize where@@ -150,22 +115,28 @@ fieldOffset = #{offset VkDescriptorPoolSize, descriptorCount} -instance CanReadField "descriptorCount" VkDescriptorPoolSize where- {-# INLINE getField #-}- getField = vkDescriptorCount+instance {-# OVERLAPPING #-}+ CanReadField "descriptorCount" VkDescriptorPoolSize where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDescriptorPoolSize, descriptorCount}) {-# INLINE readField #-}- readField = readVkDescriptorCount+ readField p+ = peekByteOff p #{offset VkDescriptorPoolSize, descriptorCount} -instance CanWriteField "descriptorCount" VkDescriptorPoolSize where+instance {-# OVERLAPPING #-}+ CanWriteField "descriptorCount" VkDescriptorPoolSize where {-# INLINE writeField #-}- writeField = writeVkDescriptorCount+ writeField p+ = pokeByteOff p #{offset VkDescriptorPoolSize, descriptorCount} instance Show VkDescriptorPoolSize where showsPrec d x = showString "VkDescriptorPoolSize {" .- showString "vkType = " .- showsPrec d (vkType x) .+ showString "type = " .+ showsPrec d (getField @"type" x) . showString ", " .- showString "vkDescriptorCount = " .- showsPrec d (vkDescriptorCount x) . showChar '}'+ showString "descriptorCount = " .+ showsPrec d (getField @"descriptorCount" x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkDescriptorSetAllocateInfo (VkDescriptorSetAllocateInfo(..)) where@@ -14,7 +15,6 @@ import Graphics.Vulkan.Marshal.Internal import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType) import Graphics.Vulkan.Types.Handles (VkDescriptorPool, VkDescriptorSetLayout)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkDescriptorSetAllocateInfo {@@ -25,7 +25,7 @@ -- > const VkDescriptorSetLayout* pSetLayouts; -- > } VkDescriptorSetAllocateInfo; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDescriptorSetAllocateInfo.html VkDescriptorSetAllocateInfo registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDescriptorSetAllocateInfo.html VkDescriptorSetAllocateInfo registry at www.khronos.org> data VkDescriptorSetAllocateInfo = VkDescriptorSetAllocateInfo## Addr## ByteArray## @@ -78,27 +78,6 @@ type ReturnedOnly VkDescriptorSetAllocateInfo = 'False -- ' closing tick for hsc2hs type StructExtends VkDescriptorSetAllocateInfo = '[] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkSType VkDescriptorSetAllocateInfo- where- type VkSTypeMType VkDescriptorSetAllocateInfo = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorSetAllocateInfo, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkDescriptorSetAllocateInfo, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkDescriptorSetAllocateInfo, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkDescriptorSetAllocateInfo, sType}- instance {-# OVERLAPPING #-} HasField "sType" VkDescriptorSetAllocateInfo where type FieldType "sType" VkDescriptorSetAllocateInfo =@@ -115,37 +94,22 @@ fieldOffset = #{offset VkDescriptorSetAllocateInfo, sType} -instance CanReadField "sType" VkDescriptorSetAllocateInfo where- {-# INLINE getField #-}- getField = vkSType+instance {-# OVERLAPPING #-}+ CanReadField "sType" VkDescriptorSetAllocateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDescriptorSetAllocateInfo, sType}) {-# INLINE readField #-}- readField = readVkSType+ readField p+ = peekByteOff p #{offset VkDescriptorSetAllocateInfo, sType} -instance CanWriteField "sType" VkDescriptorSetAllocateInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkDescriptorSetAllocateInfo where {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-} HasVkPNext VkDescriptorSetAllocateInfo- where- type VkPNextMType VkDescriptorSetAllocateInfo = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorSetAllocateInfo, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkDescriptorSetAllocateInfo, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkDescriptorSetAllocateInfo, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkDescriptorSetAllocateInfo, pNext}+ writeField p+ = pokeByteOff p #{offset VkDescriptorSetAllocateInfo, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkDescriptorSetAllocateInfo where@@ -162,38 +126,22 @@ fieldOffset = #{offset VkDescriptorSetAllocateInfo, pNext} -instance CanReadField "pNext" VkDescriptorSetAllocateInfo where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkDescriptorSetAllocateInfo where- {-# INLINE writeField #-}- writeField = writeVkPNext- instance {-# OVERLAPPING #-}- HasVkDescriptorPool VkDescriptorSetAllocateInfo where- type VkDescriptorPoolMType VkDescriptorSetAllocateInfo =- VkDescriptorPool-- {-# NOINLINE vkDescriptorPool #-}- vkDescriptorPool x+ CanReadField "pNext" VkDescriptorSetAllocateInfo where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorSetAllocateInfo, descriptorPool})-- {-# INLINE vkDescriptorPoolByteOffset #-}- vkDescriptorPoolByteOffset ~_- = #{offset VkDescriptorSetAllocateInfo, descriptorPool}+ (peekByteOff (unsafePtr x) #{offset VkDescriptorSetAllocateInfo, pNext}) - {-# INLINE readVkDescriptorPool #-}- readVkDescriptorPool p- = peekByteOff p #{offset VkDescriptorSetAllocateInfo, descriptorPool}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDescriptorSetAllocateInfo, pNext} - {-# INLINE writeVkDescriptorPool #-}- writeVkDescriptorPool p- = pokeByteOff p #{offset VkDescriptorSetAllocateInfo, descriptorPool}+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkDescriptorSetAllocateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDescriptorSetAllocateInfo, pNext} instance {-# OVERLAPPING #-} HasField "descriptorPool" VkDescriptorSetAllocateInfo where@@ -213,39 +161,22 @@ fieldOffset = #{offset VkDescriptorSetAllocateInfo, descriptorPool} -instance CanReadField "descriptorPool" VkDescriptorSetAllocateInfo- where- {-# INLINE getField #-}- getField = vkDescriptorPool-- {-# INLINE readField #-}- readField = readVkDescriptorPool--instance CanWriteField "descriptorPool" VkDescriptorSetAllocateInfo- where- {-# INLINE writeField #-}- writeField = writeVkDescriptorPool- instance {-# OVERLAPPING #-}- HasVkDescriptorSetCount VkDescriptorSetAllocateInfo where- type VkDescriptorSetCountMType VkDescriptorSetAllocateInfo = Word32-- {-# NOINLINE vkDescriptorSetCount #-}- vkDescriptorSetCount x+ CanReadField "descriptorPool" VkDescriptorSetAllocateInfo where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorSetAllocateInfo, descriptorSetCount})-- {-# INLINE vkDescriptorSetCountByteOffset #-}- vkDescriptorSetCountByteOffset ~_- = #{offset VkDescriptorSetAllocateInfo, descriptorSetCount}+ (peekByteOff (unsafePtr x) #{offset VkDescriptorSetAllocateInfo, descriptorPool}) - {-# INLINE readVkDescriptorSetCount #-}- readVkDescriptorSetCount p- = peekByteOff p #{offset VkDescriptorSetAllocateInfo, descriptorSetCount}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDescriptorSetAllocateInfo, descriptorPool} - {-# INLINE writeVkDescriptorSetCount #-}- writeVkDescriptorSetCount p- = pokeByteOff p #{offset VkDescriptorSetAllocateInfo, descriptorSetCount}+instance {-# OVERLAPPING #-}+ CanWriteField "descriptorPool" VkDescriptorSetAllocateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDescriptorSetAllocateInfo, descriptorPool} instance {-# OVERLAPPING #-} HasField "descriptorSetCount" VkDescriptorSetAllocateInfo where@@ -265,42 +196,23 @@ fieldOffset = #{offset VkDescriptorSetAllocateInfo, descriptorSetCount} -instance CanReadField "descriptorSetCount"- VkDescriptorSetAllocateInfo- where- {-# INLINE getField #-}- getField = vkDescriptorSetCount+instance {-# OVERLAPPING #-}+ CanReadField "descriptorSetCount" VkDescriptorSetAllocateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDescriptorSetAllocateInfo, descriptorSetCount}) {-# INLINE readField #-}- readField = readVkDescriptorSetCount+ readField p+ = peekByteOff p #{offset VkDescriptorSetAllocateInfo, descriptorSetCount} -instance CanWriteField "descriptorSetCount"- VkDescriptorSetAllocateInfo+instance {-# OVERLAPPING #-}+ CanWriteField "descriptorSetCount" VkDescriptorSetAllocateInfo where {-# INLINE writeField #-}- writeField = writeVkDescriptorSetCount--instance {-# OVERLAPPING #-}- HasVkPSetLayouts VkDescriptorSetAllocateInfo where- type VkPSetLayoutsMType VkDescriptorSetAllocateInfo =- Ptr VkDescriptorSetLayout-- {-# NOINLINE vkPSetLayouts #-}- vkPSetLayouts x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorSetAllocateInfo, pSetLayouts})-- {-# INLINE vkPSetLayoutsByteOffset #-}- vkPSetLayoutsByteOffset ~_- = #{offset VkDescriptorSetAllocateInfo, pSetLayouts}-- {-# INLINE readVkPSetLayouts #-}- readVkPSetLayouts p- = peekByteOff p #{offset VkDescriptorSetAllocateInfo, pSetLayouts}-- {-# INLINE writeVkPSetLayouts #-}- writeVkPSetLayouts p- = pokeByteOff p #{offset VkDescriptorSetAllocateInfo, pSetLayouts}+ writeField p+ = pokeByteOff p #{offset VkDescriptorSetAllocateInfo, descriptorSetCount} instance {-# OVERLAPPING #-} HasField "pSetLayouts" VkDescriptorSetAllocateInfo where@@ -320,33 +232,37 @@ fieldOffset = #{offset VkDescriptorSetAllocateInfo, pSetLayouts} -instance CanReadField "pSetLayouts" VkDescriptorSetAllocateInfo- where- {-# INLINE getField #-}- getField = vkPSetLayouts+instance {-# OVERLAPPING #-}+ CanReadField "pSetLayouts" VkDescriptorSetAllocateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDescriptorSetAllocateInfo, pSetLayouts}) {-# INLINE readField #-}- readField = readVkPSetLayouts+ readField p+ = peekByteOff p #{offset VkDescriptorSetAllocateInfo, pSetLayouts} -instance CanWriteField "pSetLayouts" VkDescriptorSetAllocateInfo- where+instance {-# OVERLAPPING #-}+ CanWriteField "pSetLayouts" VkDescriptorSetAllocateInfo where {-# INLINE writeField #-}- writeField = writeVkPSetLayouts+ writeField p+ = pokeByteOff p #{offset VkDescriptorSetAllocateInfo, pSetLayouts} instance Show VkDescriptorSetAllocateInfo where showsPrec d x = showString "VkDescriptorSetAllocateInfo {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkDescriptorPool = " .- showsPrec d (vkDescriptorPool x) .+ showString "descriptorPool = " .+ showsPrec d (getField @"descriptorPool" x) . showString ", " .- showString "vkDescriptorSetCount = " .- showsPrec d (vkDescriptorSetCount x) .+ showString "descriptorSetCount = " .+ showsPrec d (getField @"descriptorSetCount" x) . showString ", " .- showString "vkPSetLayouts = " .- showsPrec d (vkPSetLayouts x) . showChar '}'+ showString "pSetLayouts = " .+ showsPrec d (getField @"pSetLayouts" x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkDescriptorSetLayoutBinding (VkDescriptorSetLayoutBinding(..)) where@@ -15,7 +16,6 @@ import Graphics.Vulkan.Types.Enum.VkDescriptorType (VkDescriptorType) import Graphics.Vulkan.Types.Enum.VkShaderStageFlags (VkShaderStageFlags) import Graphics.Vulkan.Types.Handles (VkSampler)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkDescriptorSetLayoutBinding {@@ -26,7 +26,7 @@ -- > const VkSampler* pImmutableSamplers; -- > } VkDescriptorSetLayoutBinding; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDescriptorSetLayoutBinding.html VkDescriptorSetLayoutBinding registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDescriptorSetLayoutBinding.html VkDescriptorSetLayoutBinding registry at www.khronos.org> data VkDescriptorSetLayoutBinding = VkDescriptorSetLayoutBinding## Addr## ByteArray## @@ -81,27 +81,6 @@ type StructExtends VkDescriptorSetLayoutBinding = '[] -- ' closing tick for hsc2hs instance {-# OVERLAPPING #-}- HasVkBinding VkDescriptorSetLayoutBinding where- type VkBindingMType VkDescriptorSetLayoutBinding = Word32-- {-# NOINLINE vkBinding #-}- vkBinding x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorSetLayoutBinding, binding})-- {-# INLINE vkBindingByteOffset #-}- vkBindingByteOffset ~_- = #{offset VkDescriptorSetLayoutBinding, binding}-- {-# INLINE readVkBinding #-}- readVkBinding p- = peekByteOff p #{offset VkDescriptorSetLayoutBinding, binding}-- {-# INLINE writeVkBinding #-}- writeVkBinding p- = pokeByteOff p #{offset VkDescriptorSetLayoutBinding, binding}--instance {-# OVERLAPPING #-} HasField "binding" VkDescriptorSetLayoutBinding where type FieldType "binding" VkDescriptorSetLayoutBinding = Word32 type FieldOptional "binding" VkDescriptorSetLayoutBinding = 'False -- ' closing tick for hsc2hs@@ -116,38 +95,22 @@ fieldOffset = #{offset VkDescriptorSetLayoutBinding, binding} -instance CanReadField "binding" VkDescriptorSetLayoutBinding where- {-# INLINE getField #-}- getField = vkBinding-- {-# INLINE readField #-}- readField = readVkBinding--instance CanWriteField "binding" VkDescriptorSetLayoutBinding where- {-# INLINE writeField #-}- writeField = writeVkBinding- instance {-# OVERLAPPING #-}- HasVkDescriptorType VkDescriptorSetLayoutBinding where- type VkDescriptorTypeMType VkDescriptorSetLayoutBinding =- VkDescriptorType-- {-# NOINLINE vkDescriptorType #-}- vkDescriptorType x+ CanReadField "binding" VkDescriptorSetLayoutBinding where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorSetLayoutBinding, descriptorType})-- {-# INLINE vkDescriptorTypeByteOffset #-}- vkDescriptorTypeByteOffset ~_- = #{offset VkDescriptorSetLayoutBinding, descriptorType}+ (peekByteOff (unsafePtr x) #{offset VkDescriptorSetLayoutBinding, binding}) - {-# INLINE readVkDescriptorType #-}- readVkDescriptorType p- = peekByteOff p #{offset VkDescriptorSetLayoutBinding, descriptorType}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDescriptorSetLayoutBinding, binding} - {-# INLINE writeVkDescriptorType #-}- writeVkDescriptorType p- = pokeByteOff p #{offset VkDescriptorSetLayoutBinding, descriptorType}+instance {-# OVERLAPPING #-}+ CanWriteField "binding" VkDescriptorSetLayoutBinding where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDescriptorSetLayoutBinding, binding} instance {-# OVERLAPPING #-} HasField "descriptorType" VkDescriptorSetLayoutBinding where@@ -167,40 +130,22 @@ fieldOffset = #{offset VkDescriptorSetLayoutBinding, descriptorType} -instance CanReadField "descriptorType" VkDescriptorSetLayoutBinding- where- {-# INLINE getField #-}- getField = vkDescriptorType-- {-# INLINE readField #-}- readField = readVkDescriptorType--instance CanWriteField "descriptorType"- VkDescriptorSetLayoutBinding- where- {-# INLINE writeField #-}- writeField = writeVkDescriptorType- instance {-# OVERLAPPING #-}- HasVkDescriptorCount VkDescriptorSetLayoutBinding where- type VkDescriptorCountMType VkDescriptorSetLayoutBinding = Word32-- {-# NOINLINE vkDescriptorCount #-}- vkDescriptorCount x+ CanReadField "descriptorType" VkDescriptorSetLayoutBinding where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorSetLayoutBinding, descriptorCount})-- {-# INLINE vkDescriptorCountByteOffset #-}- vkDescriptorCountByteOffset ~_- = #{offset VkDescriptorSetLayoutBinding, descriptorCount}+ (peekByteOff (unsafePtr x) #{offset VkDescriptorSetLayoutBinding, descriptorType}) - {-# INLINE readVkDescriptorCount #-}- readVkDescriptorCount p- = peekByteOff p #{offset VkDescriptorSetLayoutBinding, descriptorCount}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDescriptorSetLayoutBinding, descriptorType} - {-# INLINE writeVkDescriptorCount #-}- writeVkDescriptorCount p- = pokeByteOff p #{offset VkDescriptorSetLayoutBinding, descriptorCount}+instance {-# OVERLAPPING #-}+ CanWriteField "descriptorType" VkDescriptorSetLayoutBinding where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDescriptorSetLayoutBinding, descriptorType} instance {-# OVERLAPPING #-} HasField "descriptorCount" VkDescriptorSetLayoutBinding where@@ -220,42 +165,22 @@ fieldOffset = #{offset VkDescriptorSetLayoutBinding, descriptorCount} -instance CanReadField "descriptorCount"- VkDescriptorSetLayoutBinding- where- {-# INLINE getField #-}- getField = vkDescriptorCount-- {-# INLINE readField #-}- readField = readVkDescriptorCount--instance CanWriteField "descriptorCount"- VkDescriptorSetLayoutBinding- where- {-# INLINE writeField #-}- writeField = writeVkDescriptorCount- instance {-# OVERLAPPING #-}- HasVkStageFlags VkDescriptorSetLayoutBinding where- type VkStageFlagsMType VkDescriptorSetLayoutBinding =- VkShaderStageFlags-- {-# NOINLINE vkStageFlags #-}- vkStageFlags x+ CanReadField "descriptorCount" VkDescriptorSetLayoutBinding where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorSetLayoutBinding, stageFlags})-- {-# INLINE vkStageFlagsByteOffset #-}- vkStageFlagsByteOffset ~_- = #{offset VkDescriptorSetLayoutBinding, stageFlags}+ (peekByteOff (unsafePtr x) #{offset VkDescriptorSetLayoutBinding, descriptorCount}) - {-# INLINE readVkStageFlags #-}- readVkStageFlags p- = peekByteOff p #{offset VkDescriptorSetLayoutBinding, stageFlags}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDescriptorSetLayoutBinding, descriptorCount} - {-# INLINE writeVkStageFlags #-}- writeVkStageFlags p- = pokeByteOff p #{offset VkDescriptorSetLayoutBinding, stageFlags}+instance {-# OVERLAPPING #-}+ CanWriteField "descriptorCount" VkDescriptorSetLayoutBinding where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDescriptorSetLayoutBinding, descriptorCount} instance {-# OVERLAPPING #-} HasField "stageFlags" VkDescriptorSetLayoutBinding where@@ -275,40 +200,22 @@ fieldOffset = #{offset VkDescriptorSetLayoutBinding, stageFlags} -instance CanReadField "stageFlags" VkDescriptorSetLayoutBinding- where- {-# INLINE getField #-}- getField = vkStageFlags-- {-# INLINE readField #-}- readField = readVkStageFlags--instance CanWriteField "stageFlags" VkDescriptorSetLayoutBinding- where- {-# INLINE writeField #-}- writeField = writeVkStageFlags- instance {-# OVERLAPPING #-}- HasVkPImmutableSamplers VkDescriptorSetLayoutBinding where- type VkPImmutableSamplersMType VkDescriptorSetLayoutBinding =- Ptr VkSampler-- {-# NOINLINE vkPImmutableSamplers #-}- vkPImmutableSamplers x+ CanReadField "stageFlags" VkDescriptorSetLayoutBinding where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorSetLayoutBinding, pImmutableSamplers})-- {-# INLINE vkPImmutableSamplersByteOffset #-}- vkPImmutableSamplersByteOffset ~_- = #{offset VkDescriptorSetLayoutBinding, pImmutableSamplers}+ (peekByteOff (unsafePtr x) #{offset VkDescriptorSetLayoutBinding, stageFlags}) - {-# INLINE readVkPImmutableSamplers #-}- readVkPImmutableSamplers p- = peekByteOff p #{offset VkDescriptorSetLayoutBinding, pImmutableSamplers}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDescriptorSetLayoutBinding, stageFlags} - {-# INLINE writeVkPImmutableSamplers #-}- writeVkPImmutableSamplers p- = pokeByteOff p #{offset VkDescriptorSetLayoutBinding, pImmutableSamplers}+instance {-# OVERLAPPING #-}+ CanWriteField "stageFlags" VkDescriptorSetLayoutBinding where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDescriptorSetLayoutBinding, stageFlags} instance {-# OVERLAPPING #-} HasField "pImmutableSamplers" VkDescriptorSetLayoutBinding where@@ -330,35 +237,40 @@ fieldOffset = #{offset VkDescriptorSetLayoutBinding, pImmutableSamplers} -instance CanReadField "pImmutableSamplers"- VkDescriptorSetLayoutBinding+instance {-# OVERLAPPING #-}+ CanReadField "pImmutableSamplers" VkDescriptorSetLayoutBinding where- {-# INLINE getField #-}- getField = vkPImmutableSamplers+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDescriptorSetLayoutBinding, pImmutableSamplers}) {-# INLINE readField #-}- readField = readVkPImmutableSamplers+ readField p+ = peekByteOff p #{offset VkDescriptorSetLayoutBinding, pImmutableSamplers} -instance CanWriteField "pImmutableSamplers"- VkDescriptorSetLayoutBinding+instance {-# OVERLAPPING #-}+ CanWriteField "pImmutableSamplers" VkDescriptorSetLayoutBinding where {-# INLINE writeField #-}- writeField = writeVkPImmutableSamplers+ writeField p+ = pokeByteOff p #{offset VkDescriptorSetLayoutBinding, pImmutableSamplers} instance Show VkDescriptorSetLayoutBinding where showsPrec d x = showString "VkDescriptorSetLayoutBinding {" .- showString "vkBinding = " .- showsPrec d (vkBinding x) .+ showString "binding = " .+ showsPrec d (getField @"binding" x) . showString ", " .- showString "vkDescriptorType = " .- showsPrec d (vkDescriptorType x) .+ showString "descriptorType = " .+ showsPrec d (getField @"descriptorType" x) . showString ", " .- showString "vkDescriptorCount = " .- showsPrec d (vkDescriptorCount x) .+ showString "descriptorCount = " .+ showsPrec d (getField @"descriptorCount" x) . showString ", " .- showString "vkStageFlags = " .- showsPrec d (vkStageFlags x) .+ showString "stageFlags = " .+ showsPrec d (getField @"stageFlags" x) . showString ", " .- showString "vkPImmutableSamplers = " .- showsPrec d (vkPImmutableSamplers x) . showChar '}'+ showString "pImmutableSamplers = " .+ showsPrec d (getField @"pImmutableSamplers" x) .+ showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkDescriptorSetLayoutCreateInfo (VkDescriptorSetLayoutCreateInfo(..)) where@@ -15,7 +16,6 @@ import Graphics.Vulkan.Types.Enum.VkDescriptorSetLayoutCreateFlags (VkDescriptorSetLayoutCreateFlags) import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType) import Graphics.Vulkan.Types.Struct.VkDescriptorSetLayoutBinding (VkDescriptorSetLayoutBinding)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkDescriptorSetLayoutCreateInfo {@@ -26,7 +26,7 @@ -- > const VkDescriptorSetLayoutBinding* pBindings; -- > } VkDescriptorSetLayoutCreateInfo; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDescriptorSetLayoutCreateInfo.html VkDescriptorSetLayoutCreateInfo registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDescriptorSetLayoutCreateInfo.html VkDescriptorSetLayoutCreateInfo registry at www.khronos.org> data VkDescriptorSetLayoutCreateInfo = VkDescriptorSetLayoutCreateInfo## Addr## ByteArray## @@ -80,27 +80,6 @@ type StructExtends VkDescriptorSetLayoutCreateInfo = '[] -- ' closing tick for hsc2hs instance {-# OVERLAPPING #-}- HasVkSType VkDescriptorSetLayoutCreateInfo where- type VkSTypeMType VkDescriptorSetLayoutCreateInfo = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorSetLayoutCreateInfo, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkDescriptorSetLayoutCreateInfo, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkDescriptorSetLayoutCreateInfo, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkDescriptorSetLayoutCreateInfo, sType}--instance {-# OVERLAPPING #-} HasField "sType" VkDescriptorSetLayoutCreateInfo where type FieldType "sType" VkDescriptorSetLayoutCreateInfo = VkStructureType@@ -116,38 +95,22 @@ fieldOffset = #{offset VkDescriptorSetLayoutCreateInfo, sType} -instance CanReadField "sType" VkDescriptorSetLayoutCreateInfo where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance CanWriteField "sType" VkDescriptorSetLayoutCreateInfo- where- {-# INLINE writeField #-}- writeField = writeVkSType- instance {-# OVERLAPPING #-}- HasVkPNext VkDescriptorSetLayoutCreateInfo where- type VkPNextMType VkDescriptorSetLayoutCreateInfo = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x+ CanReadField "sType" VkDescriptorSetLayoutCreateInfo where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorSetLayoutCreateInfo, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkDescriptorSetLayoutCreateInfo, pNext}+ (peekByteOff (unsafePtr x) #{offset VkDescriptorSetLayoutCreateInfo, sType}) - {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkDescriptorSetLayoutCreateInfo, pNext}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDescriptorSetLayoutCreateInfo, sType} - {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkDescriptorSetLayoutCreateInfo, pNext}+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkDescriptorSetLayoutCreateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDescriptorSetLayoutCreateInfo, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkDescriptorSetLayoutCreateInfo where@@ -164,39 +127,22 @@ fieldOffset = #{offset VkDescriptorSetLayoutCreateInfo, pNext} -instance CanReadField "pNext" VkDescriptorSetLayoutCreateInfo where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkDescriptorSetLayoutCreateInfo- where- {-# INLINE writeField #-}- writeField = writeVkPNext- instance {-# OVERLAPPING #-}- HasVkFlags VkDescriptorSetLayoutCreateInfo where- type VkFlagsMType VkDescriptorSetLayoutCreateInfo =- VkDescriptorSetLayoutCreateFlags-- {-# NOINLINE vkFlags #-}- vkFlags x+ CanReadField "pNext" VkDescriptorSetLayoutCreateInfo where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorSetLayoutCreateInfo, flags})-- {-# INLINE vkFlagsByteOffset #-}- vkFlagsByteOffset ~_- = #{offset VkDescriptorSetLayoutCreateInfo, flags}+ (peekByteOff (unsafePtr x) #{offset VkDescriptorSetLayoutCreateInfo, pNext}) - {-# INLINE readVkFlags #-}- readVkFlags p- = peekByteOff p #{offset VkDescriptorSetLayoutCreateInfo, flags}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDescriptorSetLayoutCreateInfo, pNext} - {-# INLINE writeVkFlags #-}- writeVkFlags p- = pokeByteOff p #{offset VkDescriptorSetLayoutCreateInfo, flags}+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkDescriptorSetLayoutCreateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDescriptorSetLayoutCreateInfo, pNext} instance {-# OVERLAPPING #-} HasField "flags" VkDescriptorSetLayoutCreateInfo where@@ -214,38 +160,22 @@ fieldOffset = #{offset VkDescriptorSetLayoutCreateInfo, flags} -instance CanReadField "flags" VkDescriptorSetLayoutCreateInfo where- {-# INLINE getField #-}- getField = vkFlags-- {-# INLINE readField #-}- readField = readVkFlags--instance CanWriteField "flags" VkDescriptorSetLayoutCreateInfo- where- {-# INLINE writeField #-}- writeField = writeVkFlags- instance {-# OVERLAPPING #-}- HasVkBindingCount VkDescriptorSetLayoutCreateInfo where- type VkBindingCountMType VkDescriptorSetLayoutCreateInfo = Word32-- {-# NOINLINE vkBindingCount #-}- vkBindingCount x+ CanReadField "flags" VkDescriptorSetLayoutCreateInfo where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorSetLayoutCreateInfo, bindingCount})-- {-# INLINE vkBindingCountByteOffset #-}- vkBindingCountByteOffset ~_- = #{offset VkDescriptorSetLayoutCreateInfo, bindingCount}+ (peekByteOff (unsafePtr x) #{offset VkDescriptorSetLayoutCreateInfo, flags}) - {-# INLINE readVkBindingCount #-}- readVkBindingCount p- = peekByteOff p #{offset VkDescriptorSetLayoutCreateInfo, bindingCount}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDescriptorSetLayoutCreateInfo, flags} - {-# INLINE writeVkBindingCount #-}- writeVkBindingCount p- = pokeByteOff p #{offset VkDescriptorSetLayoutCreateInfo, bindingCount}+instance {-# OVERLAPPING #-}+ CanWriteField "flags" VkDescriptorSetLayoutCreateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDescriptorSetLayoutCreateInfo, flags} instance {-# OVERLAPPING #-} HasField "bindingCount" VkDescriptorSetLayoutCreateInfo where@@ -265,42 +195,22 @@ fieldOffset = #{offset VkDescriptorSetLayoutCreateInfo, bindingCount} -instance CanReadField "bindingCount"- VkDescriptorSetLayoutCreateInfo- where- {-# INLINE getField #-}- getField = vkBindingCount-- {-# INLINE readField #-}- readField = readVkBindingCount--instance CanWriteField "bindingCount"- VkDescriptorSetLayoutCreateInfo- where- {-# INLINE writeField #-}- writeField = writeVkBindingCount- instance {-# OVERLAPPING #-}- HasVkPBindings VkDescriptorSetLayoutCreateInfo where- type VkPBindingsMType VkDescriptorSetLayoutCreateInfo =- Ptr VkDescriptorSetLayoutBinding-- {-# NOINLINE vkPBindings #-}- vkPBindings x+ CanReadField "bindingCount" VkDescriptorSetLayoutCreateInfo where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorSetLayoutCreateInfo, pBindings})-- {-# INLINE vkPBindingsByteOffset #-}- vkPBindingsByteOffset ~_- = #{offset VkDescriptorSetLayoutCreateInfo, pBindings}+ (peekByteOff (unsafePtr x) #{offset VkDescriptorSetLayoutCreateInfo, bindingCount}) - {-# INLINE readVkPBindings #-}- readVkPBindings p- = peekByteOff p #{offset VkDescriptorSetLayoutCreateInfo, pBindings}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDescriptorSetLayoutCreateInfo, bindingCount} - {-# INLINE writeVkPBindings #-}- writeVkPBindings p- = pokeByteOff p #{offset VkDescriptorSetLayoutCreateInfo, pBindings}+instance {-# OVERLAPPING #-}+ CanWriteField "bindingCount" VkDescriptorSetLayoutCreateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDescriptorSetLayoutCreateInfo, bindingCount} instance {-# OVERLAPPING #-} HasField "pBindings" VkDescriptorSetLayoutCreateInfo where@@ -320,33 +230,37 @@ fieldOffset = #{offset VkDescriptorSetLayoutCreateInfo, pBindings} -instance CanReadField "pBindings" VkDescriptorSetLayoutCreateInfo- where- {-# INLINE getField #-}- getField = vkPBindings+instance {-# OVERLAPPING #-}+ CanReadField "pBindings" VkDescriptorSetLayoutCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDescriptorSetLayoutCreateInfo, pBindings}) {-# INLINE readField #-}- readField = readVkPBindings+ readField p+ = peekByteOff p #{offset VkDescriptorSetLayoutCreateInfo, pBindings} -instance CanWriteField "pBindings" VkDescriptorSetLayoutCreateInfo- where+instance {-# OVERLAPPING #-}+ CanWriteField "pBindings" VkDescriptorSetLayoutCreateInfo where {-# INLINE writeField #-}- writeField = writeVkPBindings+ writeField p+ = pokeByteOff p #{offset VkDescriptorSetLayoutCreateInfo, pBindings} instance Show VkDescriptorSetLayoutCreateInfo where showsPrec d x = showString "VkDescriptorSetLayoutCreateInfo {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkFlags = " .- showsPrec d (vkFlags x) .+ showString "flags = " .+ showsPrec d (getField @"flags" x) . showString ", " .- showString "vkBindingCount = " .- showsPrec d (vkBindingCount x) .+ showString "bindingCount = " .+ showsPrec d (getField @"bindingCount" x) . showString ", " .- showString "vkPBindings = " .- showsPrec d (vkPBindings x) . showChar '}'+ showString "pBindings = " .+ showsPrec d (getField @"pBindings" x) . showChar '}'
@@ -0,0 +1,187 @@+#include "vulkan/vulkan.h"++{-# LANGUAGE DataKinds #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-}+{-# LANGUAGE TypeFamilies #-}+module Graphics.Vulkan.Types.Struct.VkDescriptorSetLayoutSupport+ (VkDescriptorSetLayoutSupport(..)) where+import Foreign.Storable (Storable (..))+import GHC.Prim+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Marshal.Internal+import Graphics.Vulkan.Types.BaseTypes (VkBool32)+import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)+import System.IO.Unsafe (unsafeDupablePerformIO)++-- | > typedef struct VkDescriptorSetLayoutSupport {+-- > VkStructureType sType;+-- > void* pNext;+-- > VkBool32 supported;+-- > } VkDescriptorSetLayoutSupport;+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDescriptorSetLayoutSupport.html VkDescriptorSetLayoutSupport registry at www.khronos.org>+data VkDescriptorSetLayoutSupport = VkDescriptorSetLayoutSupport## Addr##+ ByteArray##++instance Eq VkDescriptorSetLayoutSupport where+ (VkDescriptorSetLayoutSupport## a _) ==+ x@(VkDescriptorSetLayoutSupport## b _)+ = EQ == cmpBytes## (sizeOf x) a b++ {-# INLINE (==) #-}++instance Ord VkDescriptorSetLayoutSupport where+ (VkDescriptorSetLayoutSupport## a _) `compare`+ x@(VkDescriptorSetLayoutSupport## b _) = cmpBytes## (sizeOf x) a b++ {-# INLINE compare #-}++instance Storable VkDescriptorSetLayoutSupport where+ sizeOf ~_ = #{size VkDescriptorSetLayoutSupport}++ {-# INLINE sizeOf #-}+ alignment ~_+ = #{alignment VkDescriptorSetLayoutSupport}++ {-# INLINE alignment #-}+ peek = peekVkData##++ {-# INLINE peek #-}+ poke = pokeVkData##++ {-# INLINE poke #-}++instance VulkanMarshalPrim VkDescriptorSetLayoutSupport where+ unsafeAddr (VkDescriptorSetLayoutSupport## a _) = a++ {-# INLINE unsafeAddr #-}+ unsafeByteArray (VkDescriptorSetLayoutSupport## _ b) = b++ {-# INLINE unsafeByteArray #-}+ unsafeFromByteArrayOffset off b+ = VkDescriptorSetLayoutSupport##+ (plusAddr## (byteArrayContents## b) off)+ b++ {-# INLINE unsafeFromByteArrayOffset #-}++instance VulkanMarshal VkDescriptorSetLayoutSupport where+ type StructFields VkDescriptorSetLayoutSupport =+ '["sType", "pNext", "supported"] -- ' closing tick for hsc2hs+ type CUnionType VkDescriptorSetLayoutSupport = 'False -- ' closing tick for hsc2hs+ type ReturnedOnly VkDescriptorSetLayoutSupport = 'True -- ' closing tick for hsc2hs+ type StructExtends VkDescriptorSetLayoutSupport = '[] -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-}+ HasField "sType" VkDescriptorSetLayoutSupport where+ type FieldType "sType" VkDescriptorSetLayoutSupport =+ VkStructureType+ type FieldOptional "sType" VkDescriptorSetLayoutSupport = 'False -- ' closing tick for hsc2hs+ type FieldOffset "sType" VkDescriptorSetLayoutSupport =+ #{offset VkDescriptorSetLayoutSupport, sType}+ type FieldIsArray "sType" VkDescriptorSetLayoutSupport = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDescriptorSetLayoutSupport, sType}++instance {-# OVERLAPPING #-}+ CanReadField "sType" VkDescriptorSetLayoutSupport where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDescriptorSetLayoutSupport, sType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDescriptorSetLayoutSupport, sType}++instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkDescriptorSetLayoutSupport where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDescriptorSetLayoutSupport, sType}++instance {-# OVERLAPPING #-}+ HasField "pNext" VkDescriptorSetLayoutSupport where+ type FieldType "pNext" VkDescriptorSetLayoutSupport = Ptr Void+ type FieldOptional "pNext" VkDescriptorSetLayoutSupport = 'False -- ' closing tick for hsc2hs+ type FieldOffset "pNext" VkDescriptorSetLayoutSupport =+ #{offset VkDescriptorSetLayoutSupport, pNext}+ type FieldIsArray "pNext" VkDescriptorSetLayoutSupport = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDescriptorSetLayoutSupport, pNext}++instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkDescriptorSetLayoutSupport where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDescriptorSetLayoutSupport, pNext})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDescriptorSetLayoutSupport, pNext}++instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkDescriptorSetLayoutSupport where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDescriptorSetLayoutSupport, pNext}++instance {-# OVERLAPPING #-}+ HasField "supported" VkDescriptorSetLayoutSupport where+ type FieldType "supported" VkDescriptorSetLayoutSupport = VkBool32+ type FieldOptional "supported" VkDescriptorSetLayoutSupport =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "supported" VkDescriptorSetLayoutSupport =+ #{offset VkDescriptorSetLayoutSupport, supported}+ type FieldIsArray "supported" VkDescriptorSetLayoutSupport = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDescriptorSetLayoutSupport, supported}++instance {-# OVERLAPPING #-}+ CanReadField "supported" VkDescriptorSetLayoutSupport where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDescriptorSetLayoutSupport, supported})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDescriptorSetLayoutSupport, supported}++instance {-# OVERLAPPING #-}+ CanWriteField "supported" VkDescriptorSetLayoutSupport where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDescriptorSetLayoutSupport, supported}++instance Show VkDescriptorSetLayoutSupport where+ showsPrec d x+ = showString "VkDescriptorSetLayoutSupport {" .+ showString "sType = " .+ showsPrec d (getField @"sType" x) .+ showString ", " .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) .+ showString ", " .+ showString "supported = " .+ showsPrec d (getField @"supported" x) . showChar '}'
@@ -0,0 +1,9 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Types.Struct.VkDescriptorSetLayoutSupportKHR+ (VkDescriptorSetLayoutSupport(..), VkDescriptorSetLayoutSupportKHR)+ where+import Graphics.Vulkan.Types.Struct.VkDescriptorSetLayoutSupport (VkDescriptorSetLayoutSupport (..))++-- | Alias for `VkDescriptorSetLayoutSupport`+type VkDescriptorSetLayoutSupportKHR = VkDescriptorSetLayoutSupport
@@ -0,0 +1,539 @@+#include "vulkan/vulkan.h"++{-# LANGUAGE DataKinds #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-}+{-# LANGUAGE TypeFamilies #-}+module Graphics.Vulkan.Types.Struct.VkDescriptorUpdateTemplateCreateInfo+ (VkDescriptorUpdateTemplateCreateInfo(..)) where+import Foreign.Storable (Storable (..))+import GHC.Prim+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Marshal.Internal+import Graphics.Vulkan.Types.Bitmasks (VkDescriptorUpdateTemplateCreateFlags)+import Graphics.Vulkan.Types.Enum.VkDescriptorUpdateTemplateType (VkDescriptorUpdateTemplateType)+import Graphics.Vulkan.Types.Enum.VkPipelineBindPoint (VkPipelineBindPoint)+import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)+import Graphics.Vulkan.Types.Handles (VkDescriptorSetLayout,+ VkPipelineLayout)+import Graphics.Vulkan.Types.Struct.VkDescriptorUpdateTemplateEntry (VkDescriptorUpdateTemplateEntry)+import System.IO.Unsafe (unsafeDupablePerformIO)++-- | > typedef struct VkDescriptorUpdateTemplateCreateInfo {+-- > VkStructureType sType;+-- > void* pNext;+-- > VkDescriptorUpdateTemplateCreateFlags flags;+-- > uint32_t descriptorUpdateEntryCount;+-- > const VkDescriptorUpdateTemplateEntry* pDescriptorUpdateEntries;+-- > VkDescriptorUpdateTemplateType templateType;+-- > VkDescriptorSetLayout descriptorSetLayout;+-- > VkPipelineBindPoint pipelineBindPoint;+-- > VkPipelineLayoutpipelineLayout;+-- > uint32_t set;+-- > } VkDescriptorUpdateTemplateCreateInfo;+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDescriptorUpdateTemplateCreateInfo.html VkDescriptorUpdateTemplateCreateInfo registry at www.khronos.org>+data VkDescriptorUpdateTemplateCreateInfo = VkDescriptorUpdateTemplateCreateInfo## Addr##+ ByteArray##++instance Eq VkDescriptorUpdateTemplateCreateInfo where+ (VkDescriptorUpdateTemplateCreateInfo## a _) ==+ x@(VkDescriptorUpdateTemplateCreateInfo## b _)+ = EQ == cmpBytes## (sizeOf x) a b++ {-# INLINE (==) #-}++instance Ord VkDescriptorUpdateTemplateCreateInfo where+ (VkDescriptorUpdateTemplateCreateInfo## a _) `compare`+ x@(VkDescriptorUpdateTemplateCreateInfo## b _)+ = cmpBytes## (sizeOf x) a b++ {-# INLINE compare #-}++instance Storable VkDescriptorUpdateTemplateCreateInfo where+ sizeOf ~_+ = #{size VkDescriptorUpdateTemplateCreateInfo}++ {-# INLINE sizeOf #-}+ alignment ~_+ = #{alignment VkDescriptorUpdateTemplateCreateInfo}++ {-# INLINE alignment #-}+ peek = peekVkData##++ {-# INLINE peek #-}+ poke = pokeVkData##++ {-# INLINE poke #-}++instance VulkanMarshalPrim VkDescriptorUpdateTemplateCreateInfo+ where+ unsafeAddr (VkDescriptorUpdateTemplateCreateInfo## a _) = a++ {-# INLINE unsafeAddr #-}+ unsafeByteArray (VkDescriptorUpdateTemplateCreateInfo## _ b) = b++ {-# INLINE unsafeByteArray #-}+ unsafeFromByteArrayOffset off b+ = VkDescriptorUpdateTemplateCreateInfo##+ (plusAddr## (byteArrayContents## b) off)+ b++ {-# INLINE unsafeFromByteArrayOffset #-}++instance VulkanMarshal VkDescriptorUpdateTemplateCreateInfo where+ type StructFields VkDescriptorUpdateTemplateCreateInfo =+ '["sType", "pNext", "flags", "descriptorUpdateEntryCount", -- ' closing tick for hsc2hs+ "pDescriptorUpdateEntries", "templateType", "descriptorSetLayout",+ "pipelineBindPoint", "pipelineLayout", "set"]+ type CUnionType VkDescriptorUpdateTemplateCreateInfo = 'False -- ' closing tick for hsc2hs+ type ReturnedOnly VkDescriptorUpdateTemplateCreateInfo = 'False -- ' closing tick for hsc2hs+ type StructExtends VkDescriptorUpdateTemplateCreateInfo = '[] -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-}+ HasField "sType" VkDescriptorUpdateTemplateCreateInfo where+ type FieldType "sType" VkDescriptorUpdateTemplateCreateInfo =+ VkStructureType+ type FieldOptional "sType" VkDescriptorUpdateTemplateCreateInfo =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "sType" VkDescriptorUpdateTemplateCreateInfo =+ #{offset VkDescriptorUpdateTemplateCreateInfo, sType}+ type FieldIsArray "sType" VkDescriptorUpdateTemplateCreateInfo =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDescriptorUpdateTemplateCreateInfo, sType}++instance {-# OVERLAPPING #-}+ CanReadField "sType" VkDescriptorUpdateTemplateCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDescriptorUpdateTemplateCreateInfo, sType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDescriptorUpdateTemplateCreateInfo, sType}++instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkDescriptorUpdateTemplateCreateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDescriptorUpdateTemplateCreateInfo, sType}++instance {-# OVERLAPPING #-}+ HasField "pNext" VkDescriptorUpdateTemplateCreateInfo where+ type FieldType "pNext" VkDescriptorUpdateTemplateCreateInfo =+ Ptr Void+ type FieldOptional "pNext" VkDescriptorUpdateTemplateCreateInfo =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "pNext" VkDescriptorUpdateTemplateCreateInfo =+ #{offset VkDescriptorUpdateTemplateCreateInfo, pNext}+ type FieldIsArray "pNext" VkDescriptorUpdateTemplateCreateInfo =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDescriptorUpdateTemplateCreateInfo, pNext}++instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkDescriptorUpdateTemplateCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDescriptorUpdateTemplateCreateInfo, pNext})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDescriptorUpdateTemplateCreateInfo, pNext}++instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkDescriptorUpdateTemplateCreateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDescriptorUpdateTemplateCreateInfo, pNext}++instance {-# OVERLAPPING #-}+ HasField "flags" VkDescriptorUpdateTemplateCreateInfo where+ type FieldType "flags" VkDescriptorUpdateTemplateCreateInfo =+ VkDescriptorUpdateTemplateCreateFlags+ type FieldOptional "flags" VkDescriptorUpdateTemplateCreateInfo =+ 'True -- ' closing tick for hsc2hs+ type FieldOffset "flags" VkDescriptorUpdateTemplateCreateInfo =+ #{offset VkDescriptorUpdateTemplateCreateInfo, flags}+ type FieldIsArray "flags" VkDescriptorUpdateTemplateCreateInfo =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = True++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDescriptorUpdateTemplateCreateInfo, flags}++instance {-# OVERLAPPING #-}+ CanReadField "flags" VkDescriptorUpdateTemplateCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDescriptorUpdateTemplateCreateInfo, flags})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDescriptorUpdateTemplateCreateInfo, flags}++instance {-# OVERLAPPING #-}+ CanWriteField "flags" VkDescriptorUpdateTemplateCreateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDescriptorUpdateTemplateCreateInfo, flags}++instance {-# OVERLAPPING #-}+ HasField "descriptorUpdateEntryCount"+ VkDescriptorUpdateTemplateCreateInfo+ where+ type FieldType "descriptorUpdateEntryCount"+ VkDescriptorUpdateTemplateCreateInfo+ = Word32+ type FieldOptional "descriptorUpdateEntryCount"+ VkDescriptorUpdateTemplateCreateInfo+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "descriptorUpdateEntryCount"+ VkDescriptorUpdateTemplateCreateInfo+ =+ #{offset VkDescriptorUpdateTemplateCreateInfo, descriptorUpdateEntryCount}+ type FieldIsArray "descriptorUpdateEntryCount"+ VkDescriptorUpdateTemplateCreateInfo+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDescriptorUpdateTemplateCreateInfo, descriptorUpdateEntryCount}++instance {-# OVERLAPPING #-}+ CanReadField "descriptorUpdateEntryCount"+ VkDescriptorUpdateTemplateCreateInfo+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDescriptorUpdateTemplateCreateInfo, descriptorUpdateEntryCount})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDescriptorUpdateTemplateCreateInfo, descriptorUpdateEntryCount}++instance {-# OVERLAPPING #-}+ CanWriteField "descriptorUpdateEntryCount"+ VkDescriptorUpdateTemplateCreateInfo+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDescriptorUpdateTemplateCreateInfo, descriptorUpdateEntryCount}++instance {-# OVERLAPPING #-}+ HasField "pDescriptorUpdateEntries"+ VkDescriptorUpdateTemplateCreateInfo+ where+ type FieldType "pDescriptorUpdateEntries"+ VkDescriptorUpdateTemplateCreateInfo+ = Ptr VkDescriptorUpdateTemplateEntry+ type FieldOptional "pDescriptorUpdateEntries"+ VkDescriptorUpdateTemplateCreateInfo+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "pDescriptorUpdateEntries"+ VkDescriptorUpdateTemplateCreateInfo+ =+ #{offset VkDescriptorUpdateTemplateCreateInfo, pDescriptorUpdateEntries}+ type FieldIsArray "pDescriptorUpdateEntries"+ VkDescriptorUpdateTemplateCreateInfo+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDescriptorUpdateTemplateCreateInfo, pDescriptorUpdateEntries}++instance {-# OVERLAPPING #-}+ CanReadField "pDescriptorUpdateEntries"+ VkDescriptorUpdateTemplateCreateInfo+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDescriptorUpdateTemplateCreateInfo, pDescriptorUpdateEntries})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDescriptorUpdateTemplateCreateInfo, pDescriptorUpdateEntries}++instance {-# OVERLAPPING #-}+ CanWriteField "pDescriptorUpdateEntries"+ VkDescriptorUpdateTemplateCreateInfo+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDescriptorUpdateTemplateCreateInfo, pDescriptorUpdateEntries}++instance {-# OVERLAPPING #-}+ HasField "templateType" VkDescriptorUpdateTemplateCreateInfo where+ type FieldType "templateType" VkDescriptorUpdateTemplateCreateInfo+ = VkDescriptorUpdateTemplateType+ type FieldOptional "templateType"+ VkDescriptorUpdateTemplateCreateInfo+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "templateType"+ VkDescriptorUpdateTemplateCreateInfo+ =+ #{offset VkDescriptorUpdateTemplateCreateInfo, templateType}+ type FieldIsArray "templateType"+ VkDescriptorUpdateTemplateCreateInfo+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDescriptorUpdateTemplateCreateInfo, templateType}++instance {-# OVERLAPPING #-}+ CanReadField "templateType" VkDescriptorUpdateTemplateCreateInfo+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDescriptorUpdateTemplateCreateInfo, templateType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDescriptorUpdateTemplateCreateInfo, templateType}++instance {-# OVERLAPPING #-}+ CanWriteField "templateType" VkDescriptorUpdateTemplateCreateInfo+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDescriptorUpdateTemplateCreateInfo, templateType}++instance {-# OVERLAPPING #-}+ HasField "descriptorSetLayout" VkDescriptorUpdateTemplateCreateInfo+ where+ type FieldType "descriptorSetLayout"+ VkDescriptorUpdateTemplateCreateInfo+ = VkDescriptorSetLayout+ type FieldOptional "descriptorSetLayout"+ VkDescriptorUpdateTemplateCreateInfo+ = 'True -- ' closing tick for hsc2hs+ type FieldOffset "descriptorSetLayout"+ VkDescriptorUpdateTemplateCreateInfo+ =+ #{offset VkDescriptorUpdateTemplateCreateInfo, descriptorSetLayout}+ type FieldIsArray "descriptorSetLayout"+ VkDescriptorUpdateTemplateCreateInfo+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = True++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDescriptorUpdateTemplateCreateInfo, descriptorSetLayout}++instance {-# OVERLAPPING #-}+ CanReadField "descriptorSetLayout"+ VkDescriptorUpdateTemplateCreateInfo+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDescriptorUpdateTemplateCreateInfo, descriptorSetLayout})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDescriptorUpdateTemplateCreateInfo, descriptorSetLayout}++instance {-# OVERLAPPING #-}+ CanWriteField "descriptorSetLayout"+ VkDescriptorUpdateTemplateCreateInfo+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDescriptorUpdateTemplateCreateInfo, descriptorSetLayout}++instance {-# OVERLAPPING #-}+ HasField "pipelineBindPoint" VkDescriptorUpdateTemplateCreateInfo+ where+ type FieldType "pipelineBindPoint"+ VkDescriptorUpdateTemplateCreateInfo+ = VkPipelineBindPoint+ type FieldOptional "pipelineBindPoint"+ VkDescriptorUpdateTemplateCreateInfo+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "pipelineBindPoint"+ VkDescriptorUpdateTemplateCreateInfo+ =+ #{offset VkDescriptorUpdateTemplateCreateInfo, pipelineBindPoint}+ type FieldIsArray "pipelineBindPoint"+ VkDescriptorUpdateTemplateCreateInfo+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDescriptorUpdateTemplateCreateInfo, pipelineBindPoint}++instance {-# OVERLAPPING #-}+ CanReadField "pipelineBindPoint"+ VkDescriptorUpdateTemplateCreateInfo+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDescriptorUpdateTemplateCreateInfo, pipelineBindPoint})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDescriptorUpdateTemplateCreateInfo, pipelineBindPoint}++instance {-# OVERLAPPING #-}+ CanWriteField "pipelineBindPoint"+ VkDescriptorUpdateTemplateCreateInfo+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDescriptorUpdateTemplateCreateInfo, pipelineBindPoint}++instance {-# OVERLAPPING #-}+ HasField "pipelineLayout" VkDescriptorUpdateTemplateCreateInfo+ where+ type FieldType "pipelineLayout"+ VkDescriptorUpdateTemplateCreateInfo+ = VkPipelineLayout+ type FieldOptional "pipelineLayout"+ VkDescriptorUpdateTemplateCreateInfo+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "pipelineLayout"+ VkDescriptorUpdateTemplateCreateInfo+ =+ #{offset VkDescriptorUpdateTemplateCreateInfo, pipelineLayout}+ type FieldIsArray "pipelineLayout"+ VkDescriptorUpdateTemplateCreateInfo+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDescriptorUpdateTemplateCreateInfo, pipelineLayout}++instance {-# OVERLAPPING #-}+ CanReadField "pipelineLayout" VkDescriptorUpdateTemplateCreateInfo+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDescriptorUpdateTemplateCreateInfo, pipelineLayout})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDescriptorUpdateTemplateCreateInfo, pipelineLayout}++instance {-# OVERLAPPING #-}+ CanWriteField "pipelineLayout" VkDescriptorUpdateTemplateCreateInfo+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDescriptorUpdateTemplateCreateInfo, pipelineLayout}++instance {-# OVERLAPPING #-}+ HasField "set" VkDescriptorUpdateTemplateCreateInfo where+ type FieldType "set" VkDescriptorUpdateTemplateCreateInfo = Word32+ type FieldOptional "set" VkDescriptorUpdateTemplateCreateInfo =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "set" VkDescriptorUpdateTemplateCreateInfo =+ #{offset VkDescriptorUpdateTemplateCreateInfo, set}+ type FieldIsArray "set" VkDescriptorUpdateTemplateCreateInfo =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDescriptorUpdateTemplateCreateInfo, set}++instance {-# OVERLAPPING #-}+ CanReadField "set" VkDescriptorUpdateTemplateCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDescriptorUpdateTemplateCreateInfo, set})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDescriptorUpdateTemplateCreateInfo, set}++instance {-# OVERLAPPING #-}+ CanWriteField "set" VkDescriptorUpdateTemplateCreateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDescriptorUpdateTemplateCreateInfo, set}++instance Show VkDescriptorUpdateTemplateCreateInfo where+ showsPrec d x+ = showString "VkDescriptorUpdateTemplateCreateInfo {" .+ showString "sType = " .+ showsPrec d (getField @"sType" x) .+ showString ", " .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) .+ showString ", " .+ showString "flags = " .+ showsPrec d (getField @"flags" x) .+ showString ", " .+ showString "descriptorUpdateEntryCount = " .+ showsPrec d (getField @"descriptorUpdateEntryCount" x) .+ showString ", " .+ showString "pDescriptorUpdateEntries = " .+ showsPrec d (getField @"pDescriptorUpdateEntries" x) .+ showString ", " .+ showString "templateType = " .+ showsPrec d (getField @"templateType" x) .+ showString ", " .+ showString "descriptorSetLayout = " .+ showsPrec d (getField @"descriptorSetLayout" x)+ .+ showString ", " .+ showString "pipelineBindPoint = " .+ showsPrec d+ (getField @"pipelineBindPoint" x)+ .+ showString ", " .+ showString "pipelineLayout = " .+ showsPrec d+ (getField @"pipelineLayout" x)+ .+ showString ", " .+ showString "set = " .+ showsPrec d+ (getField @"set" x)+ . showChar '}'
@@ -0,0 +1,12 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Types.Struct.VkDescriptorUpdateTemplateCreateInfoKHR+ (VkDescriptorUpdateTemplateCreateInfo(..),+ VkDescriptorUpdateTemplateCreateInfoKHR)+ where+import Graphics.Vulkan.Types.Struct.VkDescriptorUpdateTemplateCreateInfo+ (VkDescriptorUpdateTemplateCreateInfo (..))++-- | Alias for `VkDescriptorUpdateTemplateCreateInfo`+type VkDescriptorUpdateTemplateCreateInfoKHR =+ VkDescriptorUpdateTemplateCreateInfo
@@ -1,727 +0,0 @@-#include "vulkan/vulkan.h"--{-# LANGUAGE DataKinds #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE MagicHash #-}-{-# LANGUAGE MultiParamTypeClasses #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE TypeFamilies #-}-module Graphics.Vulkan.Types.Struct.VkDescriptorUpdateTemplateCreateInfoKHR- (VkDescriptorUpdateTemplateCreateInfoKHR(..)) where-import Foreign.Storable (Storable (..))-import GHC.Prim-import Graphics.Vulkan.Marshal-import Graphics.Vulkan.Marshal.Internal-import Graphics.Vulkan.Types.Bitmasks (VkDescriptorUpdateTemplateCreateFlagsKHR)-import Graphics.Vulkan.Types.Enum.VkDescriptorUpdateTemplateTypeKHR (VkDescriptorUpdateTemplateTypeKHR)-import Graphics.Vulkan.Types.Enum.VkPipelineBindPoint (VkPipelineBindPoint)-import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)-import Graphics.Vulkan.Types.Handles (VkDescriptorSetLayout,- VkPipelineLayout)-import Graphics.Vulkan.Types.Struct.VkDescriptorUpdateTemplateEntryKHR (VkDescriptorUpdateTemplateEntryKHR)-import Graphics.Vulkan.Types.StructMembers-import System.IO.Unsafe (unsafeDupablePerformIO)---- | > typedef struct VkDescriptorUpdateTemplateCreateInfoKHR {--- > VkStructureType sType;--- > void* pNext;--- > VkDescriptorUpdateTemplateCreateFlagsKHR flags;--- > uint32_t descriptorUpdateEntryCount;--- > const VkDescriptorUpdateTemplateEntryKHR* pDescriptorUpdateEntries;--- > VkDescriptorUpdateTemplateTypeKHR templateType;--- > VkDescriptorSetLayout descriptorSetLayout;--- > VkPipelineBindPoint pipelineBindPoint;--- > VkPipelineLayoutpipelineLayout;--- > uint32_t set;--- > } VkDescriptorUpdateTemplateCreateInfoKHR;------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDescriptorUpdateTemplateCreateInfoKHR.html VkDescriptorUpdateTemplateCreateInfoKHR registry at www.khronos.org>-data VkDescriptorUpdateTemplateCreateInfoKHR = VkDescriptorUpdateTemplateCreateInfoKHR## Addr##- ByteArray##--instance Eq VkDescriptorUpdateTemplateCreateInfoKHR where- (VkDescriptorUpdateTemplateCreateInfoKHR## a _) ==- x@(VkDescriptorUpdateTemplateCreateInfoKHR## b _)- = EQ == cmpBytes## (sizeOf x) a b-- {-# INLINE (==) #-}--instance Ord VkDescriptorUpdateTemplateCreateInfoKHR where- (VkDescriptorUpdateTemplateCreateInfoKHR## a _) `compare`- x@(VkDescriptorUpdateTemplateCreateInfoKHR## b _)- = cmpBytes## (sizeOf x) a b-- {-# INLINE compare #-}--instance Storable VkDescriptorUpdateTemplateCreateInfoKHR where- sizeOf ~_- = #{size VkDescriptorUpdateTemplateCreateInfoKHR}-- {-# INLINE sizeOf #-}- alignment ~_- = #{alignment VkDescriptorUpdateTemplateCreateInfoKHR}-- {-# INLINE alignment #-}- peek = peekVkData##-- {-# INLINE peek #-}- poke = pokeVkData##-- {-# INLINE poke #-}--instance VulkanMarshalPrim VkDescriptorUpdateTemplateCreateInfoKHR- where- unsafeAddr (VkDescriptorUpdateTemplateCreateInfoKHR## a _) = a-- {-# INLINE unsafeAddr #-}- unsafeByteArray (VkDescriptorUpdateTemplateCreateInfoKHR## _ b) = b-- {-# INLINE unsafeByteArray #-}- unsafeFromByteArrayOffset off b- = VkDescriptorUpdateTemplateCreateInfoKHR##- (plusAddr## (byteArrayContents## b) off)- b-- {-# INLINE unsafeFromByteArrayOffset #-}--instance VulkanMarshal VkDescriptorUpdateTemplateCreateInfoKHR- where- type StructFields VkDescriptorUpdateTemplateCreateInfoKHR =- '["sType", "pNext", "flags", "descriptorUpdateEntryCount", -- ' closing tick for hsc2hs- "pDescriptorUpdateEntries", "templateType", "descriptorSetLayout",- "pipelineBindPoint", "pipelineLayout", "set"]- type CUnionType VkDescriptorUpdateTemplateCreateInfoKHR = 'False -- ' closing tick for hsc2hs- type ReturnedOnly VkDescriptorUpdateTemplateCreateInfoKHR = 'False -- ' closing tick for hsc2hs- type StructExtends VkDescriptorUpdateTemplateCreateInfoKHR = '[] -- ' closing tick for hsc2hs--instance {-# OVERLAPPING #-}- HasVkSType VkDescriptorUpdateTemplateCreateInfoKHR where- type VkSTypeMType VkDescriptorUpdateTemplateCreateInfoKHR =- VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorUpdateTemplateCreateInfoKHR, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkDescriptorUpdateTemplateCreateInfoKHR, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkDescriptorUpdateTemplateCreateInfoKHR, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkDescriptorUpdateTemplateCreateInfoKHR, sType}--instance {-# OVERLAPPING #-}- HasField "sType" VkDescriptorUpdateTemplateCreateInfoKHR where- type FieldType "sType" VkDescriptorUpdateTemplateCreateInfoKHR =- VkStructureType- type FieldOptional "sType" VkDescriptorUpdateTemplateCreateInfoKHR- = 'False -- ' closing tick for hsc2hs- type FieldOffset "sType" VkDescriptorUpdateTemplateCreateInfoKHR =- #{offset VkDescriptorUpdateTemplateCreateInfoKHR, sType}- type FieldIsArray "sType" VkDescriptorUpdateTemplateCreateInfoKHR =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDescriptorUpdateTemplateCreateInfoKHR, sType}--instance CanReadField "sType"- VkDescriptorUpdateTemplateCreateInfoKHR- where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance CanWriteField "sType"- VkDescriptorUpdateTemplateCreateInfoKHR- where- {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-}- HasVkPNext VkDescriptorUpdateTemplateCreateInfoKHR where- type VkPNextMType VkDescriptorUpdateTemplateCreateInfoKHR =- Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorUpdateTemplateCreateInfoKHR, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkDescriptorUpdateTemplateCreateInfoKHR, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkDescriptorUpdateTemplateCreateInfoKHR, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkDescriptorUpdateTemplateCreateInfoKHR, pNext}--instance {-# OVERLAPPING #-}- HasField "pNext" VkDescriptorUpdateTemplateCreateInfoKHR where- type FieldType "pNext" VkDescriptorUpdateTemplateCreateInfoKHR =- Ptr Void- type FieldOptional "pNext" VkDescriptorUpdateTemplateCreateInfoKHR- = 'False -- ' closing tick for hsc2hs- type FieldOffset "pNext" VkDescriptorUpdateTemplateCreateInfoKHR =- #{offset VkDescriptorUpdateTemplateCreateInfoKHR, pNext}- type FieldIsArray "pNext" VkDescriptorUpdateTemplateCreateInfoKHR =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDescriptorUpdateTemplateCreateInfoKHR, pNext}--instance CanReadField "pNext"- VkDescriptorUpdateTemplateCreateInfoKHR- where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext"- VkDescriptorUpdateTemplateCreateInfoKHR- where- {-# INLINE writeField #-}- writeField = writeVkPNext--instance {-# OVERLAPPING #-}- HasVkFlags VkDescriptorUpdateTemplateCreateInfoKHR where- type VkFlagsMType VkDescriptorUpdateTemplateCreateInfoKHR =- VkDescriptorUpdateTemplateCreateFlagsKHR-- {-# NOINLINE vkFlags #-}- vkFlags x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorUpdateTemplateCreateInfoKHR, flags})-- {-# INLINE vkFlagsByteOffset #-}- vkFlagsByteOffset ~_- = #{offset VkDescriptorUpdateTemplateCreateInfoKHR, flags}-- {-# INLINE readVkFlags #-}- readVkFlags p- = peekByteOff p #{offset VkDescriptorUpdateTemplateCreateInfoKHR, flags}-- {-# INLINE writeVkFlags #-}- writeVkFlags p- = pokeByteOff p #{offset VkDescriptorUpdateTemplateCreateInfoKHR, flags}--instance {-# OVERLAPPING #-}- HasField "flags" VkDescriptorUpdateTemplateCreateInfoKHR where- type FieldType "flags" VkDescriptorUpdateTemplateCreateInfoKHR =- VkDescriptorUpdateTemplateCreateFlagsKHR- type FieldOptional "flags" VkDescriptorUpdateTemplateCreateInfoKHR- = 'True -- ' closing tick for hsc2hs- type FieldOffset "flags" VkDescriptorUpdateTemplateCreateInfoKHR =- #{offset VkDescriptorUpdateTemplateCreateInfoKHR, flags}- type FieldIsArray "flags" VkDescriptorUpdateTemplateCreateInfoKHR =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = True-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDescriptorUpdateTemplateCreateInfoKHR, flags}--instance CanReadField "flags"- VkDescriptorUpdateTemplateCreateInfoKHR- where- {-# INLINE getField #-}- getField = vkFlags-- {-# INLINE readField #-}- readField = readVkFlags--instance CanWriteField "flags"- VkDescriptorUpdateTemplateCreateInfoKHR- where- {-# INLINE writeField #-}- writeField = writeVkFlags--instance {-# OVERLAPPING #-}- HasVkDescriptorUpdateEntryCount- VkDescriptorUpdateTemplateCreateInfoKHR- where- type VkDescriptorUpdateEntryCountMType- VkDescriptorUpdateTemplateCreateInfoKHR- = Word32-- {-# NOINLINE vkDescriptorUpdateEntryCount #-}- vkDescriptorUpdateEntryCount x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorUpdateTemplateCreateInfoKHR, descriptorUpdateEntryCount})-- {-# INLINE vkDescriptorUpdateEntryCountByteOffset #-}- vkDescriptorUpdateEntryCountByteOffset ~_- = #{offset VkDescriptorUpdateTemplateCreateInfoKHR, descriptorUpdateEntryCount}-- {-# INLINE readVkDescriptorUpdateEntryCount #-}- readVkDescriptorUpdateEntryCount p- = peekByteOff p #{offset VkDescriptorUpdateTemplateCreateInfoKHR, descriptorUpdateEntryCount}-- {-# INLINE writeVkDescriptorUpdateEntryCount #-}- writeVkDescriptorUpdateEntryCount p- = pokeByteOff p #{offset VkDescriptorUpdateTemplateCreateInfoKHR, descriptorUpdateEntryCount}--instance {-# OVERLAPPING #-}- HasField "descriptorUpdateEntryCount"- VkDescriptorUpdateTemplateCreateInfoKHR- where- type FieldType "descriptorUpdateEntryCount"- VkDescriptorUpdateTemplateCreateInfoKHR- = Word32- type FieldOptional "descriptorUpdateEntryCount"- VkDescriptorUpdateTemplateCreateInfoKHR- = 'False -- ' closing tick for hsc2hs- type FieldOffset "descriptorUpdateEntryCount"- VkDescriptorUpdateTemplateCreateInfoKHR- =- #{offset VkDescriptorUpdateTemplateCreateInfoKHR, descriptorUpdateEntryCount}- type FieldIsArray "descriptorUpdateEntryCount"- VkDescriptorUpdateTemplateCreateInfoKHR- = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDescriptorUpdateTemplateCreateInfoKHR, descriptorUpdateEntryCount}--instance CanReadField "descriptorUpdateEntryCount"- VkDescriptorUpdateTemplateCreateInfoKHR- where- {-# INLINE getField #-}- getField = vkDescriptorUpdateEntryCount-- {-# INLINE readField #-}- readField = readVkDescriptorUpdateEntryCount--instance CanWriteField "descriptorUpdateEntryCount"- VkDescriptorUpdateTemplateCreateInfoKHR- where- {-# INLINE writeField #-}- writeField = writeVkDescriptorUpdateEntryCount--instance {-# OVERLAPPING #-}- HasVkPDescriptorUpdateEntries- VkDescriptorUpdateTemplateCreateInfoKHR- where- type VkPDescriptorUpdateEntriesMType- VkDescriptorUpdateTemplateCreateInfoKHR- = Ptr VkDescriptorUpdateTemplateEntryKHR-- {-# NOINLINE vkPDescriptorUpdateEntries #-}- vkPDescriptorUpdateEntries x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorUpdateTemplateCreateInfoKHR, pDescriptorUpdateEntries})-- {-# INLINE vkPDescriptorUpdateEntriesByteOffset #-}- vkPDescriptorUpdateEntriesByteOffset ~_- = #{offset VkDescriptorUpdateTemplateCreateInfoKHR, pDescriptorUpdateEntries}-- {-# INLINE readVkPDescriptorUpdateEntries #-}- readVkPDescriptorUpdateEntries p- = peekByteOff p #{offset VkDescriptorUpdateTemplateCreateInfoKHR, pDescriptorUpdateEntries}-- {-# INLINE writeVkPDescriptorUpdateEntries #-}- writeVkPDescriptorUpdateEntries p- = pokeByteOff p #{offset VkDescriptorUpdateTemplateCreateInfoKHR, pDescriptorUpdateEntries}--instance {-# OVERLAPPING #-}- HasField "pDescriptorUpdateEntries"- VkDescriptorUpdateTemplateCreateInfoKHR- where- type FieldType "pDescriptorUpdateEntries"- VkDescriptorUpdateTemplateCreateInfoKHR- = Ptr VkDescriptorUpdateTemplateEntryKHR- type FieldOptional "pDescriptorUpdateEntries"- VkDescriptorUpdateTemplateCreateInfoKHR- = 'False -- ' closing tick for hsc2hs- type FieldOffset "pDescriptorUpdateEntries"- VkDescriptorUpdateTemplateCreateInfoKHR- =- #{offset VkDescriptorUpdateTemplateCreateInfoKHR, pDescriptorUpdateEntries}- type FieldIsArray "pDescriptorUpdateEntries"- VkDescriptorUpdateTemplateCreateInfoKHR- = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDescriptorUpdateTemplateCreateInfoKHR, pDescriptorUpdateEntries}--instance CanReadField "pDescriptorUpdateEntries"- VkDescriptorUpdateTemplateCreateInfoKHR- where- {-# INLINE getField #-}- getField = vkPDescriptorUpdateEntries-- {-# INLINE readField #-}- readField = readVkPDescriptorUpdateEntries--instance CanWriteField "pDescriptorUpdateEntries"- VkDescriptorUpdateTemplateCreateInfoKHR- where- {-# INLINE writeField #-}- writeField = writeVkPDescriptorUpdateEntries--instance {-# OVERLAPPING #-}- HasVkTemplateType VkDescriptorUpdateTemplateCreateInfoKHR where- type VkTemplateTypeMType VkDescriptorUpdateTemplateCreateInfoKHR =- VkDescriptorUpdateTemplateTypeKHR-- {-# NOINLINE vkTemplateType #-}- vkTemplateType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorUpdateTemplateCreateInfoKHR, templateType})-- {-# INLINE vkTemplateTypeByteOffset #-}- vkTemplateTypeByteOffset ~_- = #{offset VkDescriptorUpdateTemplateCreateInfoKHR, templateType}-- {-# INLINE readVkTemplateType #-}- readVkTemplateType p- = peekByteOff p #{offset VkDescriptorUpdateTemplateCreateInfoKHR, templateType}-- {-# INLINE writeVkTemplateType #-}- writeVkTemplateType p- = pokeByteOff p #{offset VkDescriptorUpdateTemplateCreateInfoKHR, templateType}--instance {-# OVERLAPPING #-}- HasField "templateType" VkDescriptorUpdateTemplateCreateInfoKHR- where- type FieldType "templateType"- VkDescriptorUpdateTemplateCreateInfoKHR- = VkDescriptorUpdateTemplateTypeKHR- type FieldOptional "templateType"- VkDescriptorUpdateTemplateCreateInfoKHR- = 'False -- ' closing tick for hsc2hs- type FieldOffset "templateType"- VkDescriptorUpdateTemplateCreateInfoKHR- =- #{offset VkDescriptorUpdateTemplateCreateInfoKHR, templateType}- type FieldIsArray "templateType"- VkDescriptorUpdateTemplateCreateInfoKHR- = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDescriptorUpdateTemplateCreateInfoKHR, templateType}--instance CanReadField "templateType"- VkDescriptorUpdateTemplateCreateInfoKHR- where- {-# INLINE getField #-}- getField = vkTemplateType-- {-# INLINE readField #-}- readField = readVkTemplateType--instance CanWriteField "templateType"- VkDescriptorUpdateTemplateCreateInfoKHR- where- {-# INLINE writeField #-}- writeField = writeVkTemplateType--instance {-# OVERLAPPING #-}- HasVkDescriptorSetLayout VkDescriptorUpdateTemplateCreateInfoKHR- where- type VkDescriptorSetLayoutMType- VkDescriptorUpdateTemplateCreateInfoKHR- = VkDescriptorSetLayout-- {-# NOINLINE vkDescriptorSetLayout #-}- vkDescriptorSetLayout x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorUpdateTemplateCreateInfoKHR, descriptorSetLayout})-- {-# INLINE vkDescriptorSetLayoutByteOffset #-}- vkDescriptorSetLayoutByteOffset ~_- = #{offset VkDescriptorUpdateTemplateCreateInfoKHR, descriptorSetLayout}-- {-# INLINE readVkDescriptorSetLayout #-}- readVkDescriptorSetLayout p- = peekByteOff p #{offset VkDescriptorUpdateTemplateCreateInfoKHR, descriptorSetLayout}-- {-# INLINE writeVkDescriptorSetLayout #-}- writeVkDescriptorSetLayout p- = pokeByteOff p #{offset VkDescriptorUpdateTemplateCreateInfoKHR, descriptorSetLayout}--instance {-# OVERLAPPING #-}- HasField "descriptorSetLayout"- VkDescriptorUpdateTemplateCreateInfoKHR- where- type FieldType "descriptorSetLayout"- VkDescriptorUpdateTemplateCreateInfoKHR- = VkDescriptorSetLayout- type FieldOptional "descriptorSetLayout"- VkDescriptorUpdateTemplateCreateInfoKHR- = 'True -- ' closing tick for hsc2hs- type FieldOffset "descriptorSetLayout"- VkDescriptorUpdateTemplateCreateInfoKHR- =- #{offset VkDescriptorUpdateTemplateCreateInfoKHR, descriptorSetLayout}- type FieldIsArray "descriptorSetLayout"- VkDescriptorUpdateTemplateCreateInfoKHR- = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = True-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDescriptorUpdateTemplateCreateInfoKHR, descriptorSetLayout}--instance CanReadField "descriptorSetLayout"- VkDescriptorUpdateTemplateCreateInfoKHR- where- {-# INLINE getField #-}- getField = vkDescriptorSetLayout-- {-# INLINE readField #-}- readField = readVkDescriptorSetLayout--instance CanWriteField "descriptorSetLayout"- VkDescriptorUpdateTemplateCreateInfoKHR- where- {-# INLINE writeField #-}- writeField = writeVkDescriptorSetLayout--instance {-# OVERLAPPING #-}- HasVkPipelineBindPoint VkDescriptorUpdateTemplateCreateInfoKHR- where- type VkPipelineBindPointMType- VkDescriptorUpdateTemplateCreateInfoKHR- = VkPipelineBindPoint-- {-# NOINLINE vkPipelineBindPoint #-}- vkPipelineBindPoint x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorUpdateTemplateCreateInfoKHR, pipelineBindPoint})-- {-# INLINE vkPipelineBindPointByteOffset #-}- vkPipelineBindPointByteOffset ~_- = #{offset VkDescriptorUpdateTemplateCreateInfoKHR, pipelineBindPoint}-- {-# INLINE readVkPipelineBindPoint #-}- readVkPipelineBindPoint p- = peekByteOff p #{offset VkDescriptorUpdateTemplateCreateInfoKHR, pipelineBindPoint}-- {-# INLINE writeVkPipelineBindPoint #-}- writeVkPipelineBindPoint p- = pokeByteOff p #{offset VkDescriptorUpdateTemplateCreateInfoKHR, pipelineBindPoint}--instance {-# OVERLAPPING #-}- HasField "pipelineBindPoint"- VkDescriptorUpdateTemplateCreateInfoKHR- where- type FieldType "pipelineBindPoint"- VkDescriptorUpdateTemplateCreateInfoKHR- = VkPipelineBindPoint- type FieldOptional "pipelineBindPoint"- VkDescriptorUpdateTemplateCreateInfoKHR- = 'True -- ' closing tick for hsc2hs- type FieldOffset "pipelineBindPoint"- VkDescriptorUpdateTemplateCreateInfoKHR- =- #{offset VkDescriptorUpdateTemplateCreateInfoKHR, pipelineBindPoint}- type FieldIsArray "pipelineBindPoint"- VkDescriptorUpdateTemplateCreateInfoKHR- = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = True-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDescriptorUpdateTemplateCreateInfoKHR, pipelineBindPoint}--instance CanReadField "pipelineBindPoint"- VkDescriptorUpdateTemplateCreateInfoKHR- where- {-# INLINE getField #-}- getField = vkPipelineBindPoint-- {-# INLINE readField #-}- readField = readVkPipelineBindPoint--instance CanWriteField "pipelineBindPoint"- VkDescriptorUpdateTemplateCreateInfoKHR- where- {-# INLINE writeField #-}- writeField = writeVkPipelineBindPoint--instance {-# OVERLAPPING #-}- HasVkPipelineLayout VkDescriptorUpdateTemplateCreateInfoKHR where- type VkPipelineLayoutMType VkDescriptorUpdateTemplateCreateInfoKHR- = VkPipelineLayout-- {-# NOINLINE vkPipelineLayout #-}- vkPipelineLayout x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorUpdateTemplateCreateInfoKHR, pipelineLayout})-- {-# INLINE vkPipelineLayoutByteOffset #-}- vkPipelineLayoutByteOffset ~_- = #{offset VkDescriptorUpdateTemplateCreateInfoKHR, pipelineLayout}-- {-# INLINE readVkPipelineLayout #-}- readVkPipelineLayout p- = peekByteOff p #{offset VkDescriptorUpdateTemplateCreateInfoKHR, pipelineLayout}-- {-# INLINE writeVkPipelineLayout #-}- writeVkPipelineLayout p- = pokeByteOff p #{offset VkDescriptorUpdateTemplateCreateInfoKHR, pipelineLayout}--instance {-# OVERLAPPING #-}- HasField "pipelineLayout" VkDescriptorUpdateTemplateCreateInfoKHR- where- type FieldType "pipelineLayout"- VkDescriptorUpdateTemplateCreateInfoKHR- = VkPipelineLayout- type FieldOptional "pipelineLayout"- VkDescriptorUpdateTemplateCreateInfoKHR- = 'True -- ' closing tick for hsc2hs- type FieldOffset "pipelineLayout"- VkDescriptorUpdateTemplateCreateInfoKHR- =- #{offset VkDescriptorUpdateTemplateCreateInfoKHR, pipelineLayout}- type FieldIsArray "pipelineLayout"- VkDescriptorUpdateTemplateCreateInfoKHR- = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = True-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDescriptorUpdateTemplateCreateInfoKHR, pipelineLayout}--instance CanReadField "pipelineLayout"- VkDescriptorUpdateTemplateCreateInfoKHR- where- {-# INLINE getField #-}- getField = vkPipelineLayout-- {-# INLINE readField #-}- readField = readVkPipelineLayout--instance CanWriteField "pipelineLayout"- VkDescriptorUpdateTemplateCreateInfoKHR- where- {-# INLINE writeField #-}- writeField = writeVkPipelineLayout--instance {-# OVERLAPPING #-}- HasVkSet VkDescriptorUpdateTemplateCreateInfoKHR where- type VkSetMType VkDescriptorUpdateTemplateCreateInfoKHR = Word32-- {-# NOINLINE vkSet #-}- vkSet x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorUpdateTemplateCreateInfoKHR, set})-- {-# INLINE vkSetByteOffset #-}- vkSetByteOffset ~_- = #{offset VkDescriptorUpdateTemplateCreateInfoKHR, set}-- {-# INLINE readVkSet #-}- readVkSet p- = peekByteOff p #{offset VkDescriptorUpdateTemplateCreateInfoKHR, set}-- {-# INLINE writeVkSet #-}- writeVkSet p- = pokeByteOff p #{offset VkDescriptorUpdateTemplateCreateInfoKHR, set}--instance {-# OVERLAPPING #-}- HasField "set" VkDescriptorUpdateTemplateCreateInfoKHR where- type FieldType "set" VkDescriptorUpdateTemplateCreateInfoKHR =- Word32- type FieldOptional "set" VkDescriptorUpdateTemplateCreateInfoKHR =- 'True -- ' closing tick for hsc2hs- type FieldOffset "set" VkDescriptorUpdateTemplateCreateInfoKHR =- #{offset VkDescriptorUpdateTemplateCreateInfoKHR, set}- type FieldIsArray "set" VkDescriptorUpdateTemplateCreateInfoKHR =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = True-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDescriptorUpdateTemplateCreateInfoKHR, set}--instance CanReadField "set" VkDescriptorUpdateTemplateCreateInfoKHR- where- {-# INLINE getField #-}- getField = vkSet-- {-# INLINE readField #-}- readField = readVkSet--instance CanWriteField "set"- VkDescriptorUpdateTemplateCreateInfoKHR- where- {-# INLINE writeField #-}- writeField = writeVkSet--instance Show VkDescriptorUpdateTemplateCreateInfoKHR where- showsPrec d x- = showString "VkDescriptorUpdateTemplateCreateInfoKHR {" .- showString "vkSType = " .- showsPrec d (vkSType x) .- showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .- showString ", " .- showString "vkFlags = " .- showsPrec d (vkFlags x) .- showString ", " .- showString "vkDescriptorUpdateEntryCount = " .- showsPrec d (vkDescriptorUpdateEntryCount x) .- showString ", " .- showString "vkPDescriptorUpdateEntries = " .- showsPrec d (vkPDescriptorUpdateEntries x) .- showString ", " .- showString "vkTemplateType = " .- showsPrec d (vkTemplateType x) .- showString ", " .- showString "vkDescriptorSetLayout = " .- showsPrec d (vkDescriptorSetLayout x) .- showString ", " .- showString "vkPipelineBindPoint = " .- showsPrec d (vkPipelineBindPoint x) .- showString ", " .- showString "vkPipelineLayout = " .- showsPrec d (vkPipelineLayout x) .- showString ", " .- showString "vkSet = " .- showsPrec d (vkSet x) .- showChar '}'
@@ -0,0 +1,316 @@+#include "vulkan/vulkan.h"++{-# LANGUAGE DataKinds #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-}+{-# LANGUAGE TypeFamilies #-}+module Graphics.Vulkan.Types.Struct.VkDescriptorUpdateTemplateEntry+ (VkDescriptorUpdateTemplateEntry(..)) where+import Foreign.Storable (Storable (..))+import GHC.Prim+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Marshal.Internal+import Graphics.Vulkan.Types.Enum.VkDescriptorType (VkDescriptorType)+import System.IO.Unsafe (unsafeDupablePerformIO)++-- | > typedef struct VkDescriptorUpdateTemplateEntry {+-- > uint32_t dstBinding;+-- > uint32_t dstArrayElement;+-- > uint32_t descriptorCount;+-- > VkDescriptorType descriptorType;+-- > size_t offset;+-- > size_t stride;+-- > } VkDescriptorUpdateTemplateEntry;+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDescriptorUpdateTemplateEntry.html VkDescriptorUpdateTemplateEntry registry at www.khronos.org>+data VkDescriptorUpdateTemplateEntry = VkDescriptorUpdateTemplateEntry## Addr##+ ByteArray##++instance Eq VkDescriptorUpdateTemplateEntry where+ (VkDescriptorUpdateTemplateEntry## a _) ==+ x@(VkDescriptorUpdateTemplateEntry## b _)+ = EQ == cmpBytes## (sizeOf x) a b++ {-# INLINE (==) #-}++instance Ord VkDescriptorUpdateTemplateEntry where+ (VkDescriptorUpdateTemplateEntry## a _) `compare`+ x@(VkDescriptorUpdateTemplateEntry## b _) = cmpBytes## (sizeOf x) a b++ {-# INLINE compare #-}++instance Storable VkDescriptorUpdateTemplateEntry where+ sizeOf ~_ = #{size VkDescriptorUpdateTemplateEntry}++ {-# INLINE sizeOf #-}+ alignment ~_+ = #{alignment VkDescriptorUpdateTemplateEntry}++ {-# INLINE alignment #-}+ peek = peekVkData##++ {-# INLINE peek #-}+ poke = pokeVkData##++ {-# INLINE poke #-}++instance VulkanMarshalPrim VkDescriptorUpdateTemplateEntry where+ unsafeAddr (VkDescriptorUpdateTemplateEntry## a _) = a++ {-# INLINE unsafeAddr #-}+ unsafeByteArray (VkDescriptorUpdateTemplateEntry## _ b) = b++ {-# INLINE unsafeByteArray #-}+ unsafeFromByteArrayOffset off b+ = VkDescriptorUpdateTemplateEntry##+ (plusAddr## (byteArrayContents## b) off)+ b++ {-# INLINE unsafeFromByteArrayOffset #-}++instance VulkanMarshal VkDescriptorUpdateTemplateEntry where+ type StructFields VkDescriptorUpdateTemplateEntry =+ '["dstBinding", "dstArrayElement", "descriptorCount", -- ' closing tick for hsc2hs+ "descriptorType", "offset", "stride"]+ type CUnionType VkDescriptorUpdateTemplateEntry = 'False -- ' closing tick for hsc2hs+ type ReturnedOnly VkDescriptorUpdateTemplateEntry = 'False -- ' closing tick for hsc2hs+ type StructExtends VkDescriptorUpdateTemplateEntry = '[] -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-}+ HasField "dstBinding" VkDescriptorUpdateTemplateEntry where+ type FieldType "dstBinding" VkDescriptorUpdateTemplateEntry =+ Word32+ type FieldOptional "dstBinding" VkDescriptorUpdateTemplateEntry =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "dstBinding" VkDescriptorUpdateTemplateEntry =+ #{offset VkDescriptorUpdateTemplateEntry, dstBinding}+ type FieldIsArray "dstBinding" VkDescriptorUpdateTemplateEntry =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDescriptorUpdateTemplateEntry, dstBinding}++instance {-# OVERLAPPING #-}+ CanReadField "dstBinding" VkDescriptorUpdateTemplateEntry where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDescriptorUpdateTemplateEntry, dstBinding})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDescriptorUpdateTemplateEntry, dstBinding}++instance {-# OVERLAPPING #-}+ CanWriteField "dstBinding" VkDescriptorUpdateTemplateEntry where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDescriptorUpdateTemplateEntry, dstBinding}++instance {-# OVERLAPPING #-}+ HasField "dstArrayElement" VkDescriptorUpdateTemplateEntry where+ type FieldType "dstArrayElement" VkDescriptorUpdateTemplateEntry =+ Word32+ type FieldOptional "dstArrayElement"+ VkDescriptorUpdateTemplateEntry+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "dstArrayElement" VkDescriptorUpdateTemplateEntry+ =+ #{offset VkDescriptorUpdateTemplateEntry, dstArrayElement}+ type FieldIsArray "dstArrayElement" VkDescriptorUpdateTemplateEntry+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDescriptorUpdateTemplateEntry, dstArrayElement}++instance {-# OVERLAPPING #-}+ CanReadField "dstArrayElement" VkDescriptorUpdateTemplateEntry+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDescriptorUpdateTemplateEntry, dstArrayElement})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDescriptorUpdateTemplateEntry, dstArrayElement}++instance {-# OVERLAPPING #-}+ CanWriteField "dstArrayElement" VkDescriptorUpdateTemplateEntry+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDescriptorUpdateTemplateEntry, dstArrayElement}++instance {-# OVERLAPPING #-}+ HasField "descriptorCount" VkDescriptorUpdateTemplateEntry where+ type FieldType "descriptorCount" VkDescriptorUpdateTemplateEntry =+ Word32+ type FieldOptional "descriptorCount"+ VkDescriptorUpdateTemplateEntry+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "descriptorCount" VkDescriptorUpdateTemplateEntry+ =+ #{offset VkDescriptorUpdateTemplateEntry, descriptorCount}+ type FieldIsArray "descriptorCount" VkDescriptorUpdateTemplateEntry+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDescriptorUpdateTemplateEntry, descriptorCount}++instance {-# OVERLAPPING #-}+ CanReadField "descriptorCount" VkDescriptorUpdateTemplateEntry+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDescriptorUpdateTemplateEntry, descriptorCount})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDescriptorUpdateTemplateEntry, descriptorCount}++instance {-# OVERLAPPING #-}+ CanWriteField "descriptorCount" VkDescriptorUpdateTemplateEntry+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDescriptorUpdateTemplateEntry, descriptorCount}++instance {-# OVERLAPPING #-}+ HasField "descriptorType" VkDescriptorUpdateTemplateEntry where+ type FieldType "descriptorType" VkDescriptorUpdateTemplateEntry =+ VkDescriptorType+ type FieldOptional "descriptorType" VkDescriptorUpdateTemplateEntry+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "descriptorType" VkDescriptorUpdateTemplateEntry =+ #{offset VkDescriptorUpdateTemplateEntry, descriptorType}+ type FieldIsArray "descriptorType" VkDescriptorUpdateTemplateEntry+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDescriptorUpdateTemplateEntry, descriptorType}++instance {-# OVERLAPPING #-}+ CanReadField "descriptorType" VkDescriptorUpdateTemplateEntry where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDescriptorUpdateTemplateEntry, descriptorType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDescriptorUpdateTemplateEntry, descriptorType}++instance {-# OVERLAPPING #-}+ CanWriteField "descriptorType" VkDescriptorUpdateTemplateEntry+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDescriptorUpdateTemplateEntry, descriptorType}++instance {-# OVERLAPPING #-}+ HasField "offset" VkDescriptorUpdateTemplateEntry where+ type FieldType "offset" VkDescriptorUpdateTemplateEntry = CSize+ type FieldOptional "offset" VkDescriptorUpdateTemplateEntry =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "offset" VkDescriptorUpdateTemplateEntry =+ #{offset VkDescriptorUpdateTemplateEntry, offset}+ type FieldIsArray "offset" VkDescriptorUpdateTemplateEntry = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDescriptorUpdateTemplateEntry, offset}++instance {-# OVERLAPPING #-}+ CanReadField "offset" VkDescriptorUpdateTemplateEntry where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDescriptorUpdateTemplateEntry, offset})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDescriptorUpdateTemplateEntry, offset}++instance {-# OVERLAPPING #-}+ CanWriteField "offset" VkDescriptorUpdateTemplateEntry where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDescriptorUpdateTemplateEntry, offset}++instance {-# OVERLAPPING #-}+ HasField "stride" VkDescriptorUpdateTemplateEntry where+ type FieldType "stride" VkDescriptorUpdateTemplateEntry = CSize+ type FieldOptional "stride" VkDescriptorUpdateTemplateEntry =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "stride" VkDescriptorUpdateTemplateEntry =+ #{offset VkDescriptorUpdateTemplateEntry, stride}+ type FieldIsArray "stride" VkDescriptorUpdateTemplateEntry = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDescriptorUpdateTemplateEntry, stride}++instance {-# OVERLAPPING #-}+ CanReadField "stride" VkDescriptorUpdateTemplateEntry where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDescriptorUpdateTemplateEntry, stride})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDescriptorUpdateTemplateEntry, stride}++instance {-# OVERLAPPING #-}+ CanWriteField "stride" VkDescriptorUpdateTemplateEntry where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDescriptorUpdateTemplateEntry, stride}++instance Show VkDescriptorUpdateTemplateEntry where+ showsPrec d x+ = showString "VkDescriptorUpdateTemplateEntry {" .+ showString "dstBinding = " .+ showsPrec d (getField @"dstBinding" x) .+ showString ", " .+ showString "dstArrayElement = " .+ showsPrec d (getField @"dstArrayElement" x) .+ showString ", " .+ showString "descriptorCount = " .+ showsPrec d (getField @"descriptorCount" x) .+ showString ", " .+ showString "descriptorType = " .+ showsPrec d (getField @"descriptorType" x) .+ showString ", " .+ showString "offset = " .+ showsPrec d (getField @"offset" x) .+ showString ", " .+ showString "stride = " .+ showsPrec d (getField @"stride" x) . showChar '}'
@@ -0,0 +1,11 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Types.Struct.VkDescriptorUpdateTemplateEntryKHR+ (VkDescriptorUpdateTemplateEntry(..),+ VkDescriptorUpdateTemplateEntryKHR)+ where+import Graphics.Vulkan.Types.Struct.VkDescriptorUpdateTemplateEntry (VkDescriptorUpdateTemplateEntry (..))++-- | Alias for `VkDescriptorUpdateTemplateEntry`+type VkDescriptorUpdateTemplateEntryKHR =+ VkDescriptorUpdateTemplateEntry
@@ -1,435 +0,0 @@-#include "vulkan/vulkan.h"--{-# LANGUAGE DataKinds #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE MagicHash #-}-{-# LANGUAGE MultiParamTypeClasses #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE TypeFamilies #-}-module Graphics.Vulkan.Types.Struct.VkDescriptorUpdateTemplateEntryKHR- (VkDescriptorUpdateTemplateEntryKHR(..)) where-import Foreign.Storable (Storable (..))-import GHC.Prim-import Graphics.Vulkan.Marshal-import Graphics.Vulkan.Marshal.Internal-import Graphics.Vulkan.Types.Enum.VkDescriptorType (VkDescriptorType)-import Graphics.Vulkan.Types.StructMembers-import System.IO.Unsafe (unsafeDupablePerformIO)---- | > typedef struct VkDescriptorUpdateTemplateEntryKHR {--- > uint32_t dstBinding;--- > uint32_t dstArrayElement;--- > uint32_t descriptorCount;--- > VkDescriptorType descriptorType;--- > size_t offset;--- > size_t stride;--- > } VkDescriptorUpdateTemplateEntryKHR;------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDescriptorUpdateTemplateEntryKHR.html VkDescriptorUpdateTemplateEntryKHR registry at www.khronos.org>-data VkDescriptorUpdateTemplateEntryKHR = VkDescriptorUpdateTemplateEntryKHR## Addr##- ByteArray##--instance Eq VkDescriptorUpdateTemplateEntryKHR where- (VkDescriptorUpdateTemplateEntryKHR## a _) ==- x@(VkDescriptorUpdateTemplateEntryKHR## b _)- = EQ == cmpBytes## (sizeOf x) a b-- {-# INLINE (==) #-}--instance Ord VkDescriptorUpdateTemplateEntryKHR where- (VkDescriptorUpdateTemplateEntryKHR## a _) `compare`- x@(VkDescriptorUpdateTemplateEntryKHR## b _)- = cmpBytes## (sizeOf x) a b-- {-# INLINE compare #-}--instance Storable VkDescriptorUpdateTemplateEntryKHR where- sizeOf ~_ = #{size VkDescriptorUpdateTemplateEntryKHR}-- {-# INLINE sizeOf #-}- alignment ~_- = #{alignment VkDescriptorUpdateTemplateEntryKHR}-- {-# INLINE alignment #-}- peek = peekVkData##-- {-# INLINE peek #-}- poke = pokeVkData##-- {-# INLINE poke #-}--instance VulkanMarshalPrim VkDescriptorUpdateTemplateEntryKHR where- unsafeAddr (VkDescriptorUpdateTemplateEntryKHR## a _) = a-- {-# INLINE unsafeAddr #-}- unsafeByteArray (VkDescriptorUpdateTemplateEntryKHR## _ b) = b-- {-# INLINE unsafeByteArray #-}- unsafeFromByteArrayOffset off b- = VkDescriptorUpdateTemplateEntryKHR##- (plusAddr## (byteArrayContents## b) off)- b-- {-# INLINE unsafeFromByteArrayOffset #-}--instance VulkanMarshal VkDescriptorUpdateTemplateEntryKHR where- type StructFields VkDescriptorUpdateTemplateEntryKHR =- '["dstBinding", "dstArrayElement", "descriptorCount", -- ' closing tick for hsc2hs- "descriptorType", "offset", "stride"]- type CUnionType VkDescriptorUpdateTemplateEntryKHR = 'False -- ' closing tick for hsc2hs- type ReturnedOnly VkDescriptorUpdateTemplateEntryKHR = 'False -- ' closing tick for hsc2hs- type StructExtends VkDescriptorUpdateTemplateEntryKHR = '[] -- ' closing tick for hsc2hs--instance {-# OVERLAPPING #-}- HasVkDstBinding VkDescriptorUpdateTemplateEntryKHR where- type VkDstBindingMType VkDescriptorUpdateTemplateEntryKHR = Word32-- {-# NOINLINE vkDstBinding #-}- vkDstBinding x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorUpdateTemplateEntryKHR, dstBinding})-- {-# INLINE vkDstBindingByteOffset #-}- vkDstBindingByteOffset ~_- = #{offset VkDescriptorUpdateTemplateEntryKHR, dstBinding}-- {-# INLINE readVkDstBinding #-}- readVkDstBinding p- = peekByteOff p #{offset VkDescriptorUpdateTemplateEntryKHR, dstBinding}-- {-# INLINE writeVkDstBinding #-}- writeVkDstBinding p- = pokeByteOff p #{offset VkDescriptorUpdateTemplateEntryKHR, dstBinding}--instance {-# OVERLAPPING #-}- HasField "dstBinding" VkDescriptorUpdateTemplateEntryKHR where- type FieldType "dstBinding" VkDescriptorUpdateTemplateEntryKHR =- Word32- type FieldOptional "dstBinding" VkDescriptorUpdateTemplateEntryKHR- = 'False -- ' closing tick for hsc2hs- type FieldOffset "dstBinding" VkDescriptorUpdateTemplateEntryKHR =- #{offset VkDescriptorUpdateTemplateEntryKHR, dstBinding}- type FieldIsArray "dstBinding" VkDescriptorUpdateTemplateEntryKHR =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDescriptorUpdateTemplateEntryKHR, dstBinding}--instance CanReadField "dstBinding"- VkDescriptorUpdateTemplateEntryKHR- where- {-# INLINE getField #-}- getField = vkDstBinding-- {-# INLINE readField #-}- readField = readVkDstBinding--instance CanWriteField "dstBinding"- VkDescriptorUpdateTemplateEntryKHR- where- {-# INLINE writeField #-}- writeField = writeVkDstBinding--instance {-# OVERLAPPING #-}- HasVkDstArrayElement VkDescriptorUpdateTemplateEntryKHR where- type VkDstArrayElementMType VkDescriptorUpdateTemplateEntryKHR =- Word32-- {-# NOINLINE vkDstArrayElement #-}- vkDstArrayElement x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorUpdateTemplateEntryKHR, dstArrayElement})-- {-# INLINE vkDstArrayElementByteOffset #-}- vkDstArrayElementByteOffset ~_- = #{offset VkDescriptorUpdateTemplateEntryKHR, dstArrayElement}-- {-# INLINE readVkDstArrayElement #-}- readVkDstArrayElement p- = peekByteOff p #{offset VkDescriptorUpdateTemplateEntryKHR, dstArrayElement}-- {-# INLINE writeVkDstArrayElement #-}- writeVkDstArrayElement p- = pokeByteOff p #{offset VkDescriptorUpdateTemplateEntryKHR, dstArrayElement}--instance {-# OVERLAPPING #-}- HasField "dstArrayElement" VkDescriptorUpdateTemplateEntryKHR where- type FieldType "dstArrayElement" VkDescriptorUpdateTemplateEntryKHR- = Word32- type FieldOptional "dstArrayElement"- VkDescriptorUpdateTemplateEntryKHR- = 'False -- ' closing tick for hsc2hs- type FieldOffset "dstArrayElement"- VkDescriptorUpdateTemplateEntryKHR- =- #{offset VkDescriptorUpdateTemplateEntryKHR, dstArrayElement}- type FieldIsArray "dstArrayElement"- VkDescriptorUpdateTemplateEntryKHR- = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDescriptorUpdateTemplateEntryKHR, dstArrayElement}--instance CanReadField "dstArrayElement"- VkDescriptorUpdateTemplateEntryKHR- where- {-# INLINE getField #-}- getField = vkDstArrayElement-- {-# INLINE readField #-}- readField = readVkDstArrayElement--instance CanWriteField "dstArrayElement"- VkDescriptorUpdateTemplateEntryKHR- where- {-# INLINE writeField #-}- writeField = writeVkDstArrayElement--instance {-# OVERLAPPING #-}- HasVkDescriptorCount VkDescriptorUpdateTemplateEntryKHR where- type VkDescriptorCountMType VkDescriptorUpdateTemplateEntryKHR =- Word32-- {-# NOINLINE vkDescriptorCount #-}- vkDescriptorCount x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorUpdateTemplateEntryKHR, descriptorCount})-- {-# INLINE vkDescriptorCountByteOffset #-}- vkDescriptorCountByteOffset ~_- = #{offset VkDescriptorUpdateTemplateEntryKHR, descriptorCount}-- {-# INLINE readVkDescriptorCount #-}- readVkDescriptorCount p- = peekByteOff p #{offset VkDescriptorUpdateTemplateEntryKHR, descriptorCount}-- {-# INLINE writeVkDescriptorCount #-}- writeVkDescriptorCount p- = pokeByteOff p #{offset VkDescriptorUpdateTemplateEntryKHR, descriptorCount}--instance {-# OVERLAPPING #-}- HasField "descriptorCount" VkDescriptorUpdateTemplateEntryKHR where- type FieldType "descriptorCount" VkDescriptorUpdateTemplateEntryKHR- = Word32- type FieldOptional "descriptorCount"- VkDescriptorUpdateTemplateEntryKHR- = 'False -- ' closing tick for hsc2hs- type FieldOffset "descriptorCount"- VkDescriptorUpdateTemplateEntryKHR- =- #{offset VkDescriptorUpdateTemplateEntryKHR, descriptorCount}- type FieldIsArray "descriptorCount"- VkDescriptorUpdateTemplateEntryKHR- = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDescriptorUpdateTemplateEntryKHR, descriptorCount}--instance CanReadField "descriptorCount"- VkDescriptorUpdateTemplateEntryKHR- where- {-# INLINE getField #-}- getField = vkDescriptorCount-- {-# INLINE readField #-}- readField = readVkDescriptorCount--instance CanWriteField "descriptorCount"- VkDescriptorUpdateTemplateEntryKHR- where- {-# INLINE writeField #-}- writeField = writeVkDescriptorCount--instance {-# OVERLAPPING #-}- HasVkDescriptorType VkDescriptorUpdateTemplateEntryKHR where- type VkDescriptorTypeMType VkDescriptorUpdateTemplateEntryKHR =- VkDescriptorType-- {-# NOINLINE vkDescriptorType #-}- vkDescriptorType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorUpdateTemplateEntryKHR, descriptorType})-- {-# INLINE vkDescriptorTypeByteOffset #-}- vkDescriptorTypeByteOffset ~_- = #{offset VkDescriptorUpdateTemplateEntryKHR, descriptorType}-- {-# INLINE readVkDescriptorType #-}- readVkDescriptorType p- = peekByteOff p #{offset VkDescriptorUpdateTemplateEntryKHR, descriptorType}-- {-# INLINE writeVkDescriptorType #-}- writeVkDescriptorType p- = pokeByteOff p #{offset VkDescriptorUpdateTemplateEntryKHR, descriptorType}--instance {-# OVERLAPPING #-}- HasField "descriptorType" VkDescriptorUpdateTemplateEntryKHR where- type FieldType "descriptorType" VkDescriptorUpdateTemplateEntryKHR- = VkDescriptorType- type FieldOptional "descriptorType"- VkDescriptorUpdateTemplateEntryKHR- = 'False -- ' closing tick for hsc2hs- type FieldOffset "descriptorType"- VkDescriptorUpdateTemplateEntryKHR- =- #{offset VkDescriptorUpdateTemplateEntryKHR, descriptorType}- type FieldIsArray "descriptorType"- VkDescriptorUpdateTemplateEntryKHR- = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDescriptorUpdateTemplateEntryKHR, descriptorType}--instance CanReadField "descriptorType"- VkDescriptorUpdateTemplateEntryKHR- where- {-# INLINE getField #-}- getField = vkDescriptorType-- {-# INLINE readField #-}- readField = readVkDescriptorType--instance CanWriteField "descriptorType"- VkDescriptorUpdateTemplateEntryKHR- where- {-# INLINE writeField #-}- writeField = writeVkDescriptorType--instance {-# OVERLAPPING #-}- HasVkOffset VkDescriptorUpdateTemplateEntryKHR where- type VkOffsetMType VkDescriptorUpdateTemplateEntryKHR = CSize-- {-# NOINLINE vkOffset #-}- vkOffset x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorUpdateTemplateEntryKHR, offset})-- {-# INLINE vkOffsetByteOffset #-}- vkOffsetByteOffset ~_- = #{offset VkDescriptorUpdateTemplateEntryKHR, offset}-- {-# INLINE readVkOffset #-}- readVkOffset p- = peekByteOff p #{offset VkDescriptorUpdateTemplateEntryKHR, offset}-- {-# INLINE writeVkOffset #-}- writeVkOffset p- = pokeByteOff p #{offset VkDescriptorUpdateTemplateEntryKHR, offset}--instance {-# OVERLAPPING #-}- HasField "offset" VkDescriptorUpdateTemplateEntryKHR where- type FieldType "offset" VkDescriptorUpdateTemplateEntryKHR = CSize- type FieldOptional "offset" VkDescriptorUpdateTemplateEntryKHR =- 'False -- ' closing tick for hsc2hs- type FieldOffset "offset" VkDescriptorUpdateTemplateEntryKHR =- #{offset VkDescriptorUpdateTemplateEntryKHR, offset}- type FieldIsArray "offset" VkDescriptorUpdateTemplateEntryKHR =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDescriptorUpdateTemplateEntryKHR, offset}--instance CanReadField "offset" VkDescriptorUpdateTemplateEntryKHR- where- {-# INLINE getField #-}- getField = vkOffset-- {-# INLINE readField #-}- readField = readVkOffset--instance CanWriteField "offset" VkDescriptorUpdateTemplateEntryKHR- where- {-# INLINE writeField #-}- writeField = writeVkOffset--instance {-# OVERLAPPING #-}- HasVkStride VkDescriptorUpdateTemplateEntryKHR where- type VkStrideMType VkDescriptorUpdateTemplateEntryKHR = CSize-- {-# NOINLINE vkStride #-}- vkStride x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDescriptorUpdateTemplateEntryKHR, stride})-- {-# INLINE vkStrideByteOffset #-}- vkStrideByteOffset ~_- = #{offset VkDescriptorUpdateTemplateEntryKHR, stride}-- {-# INLINE readVkStride #-}- readVkStride p- = peekByteOff p #{offset VkDescriptorUpdateTemplateEntryKHR, stride}-- {-# INLINE writeVkStride #-}- writeVkStride p- = pokeByteOff p #{offset VkDescriptorUpdateTemplateEntryKHR, stride}--instance {-# OVERLAPPING #-}- HasField "stride" VkDescriptorUpdateTemplateEntryKHR where- type FieldType "stride" VkDescriptorUpdateTemplateEntryKHR = CSize- type FieldOptional "stride" VkDescriptorUpdateTemplateEntryKHR =- 'False -- ' closing tick for hsc2hs- type FieldOffset "stride" VkDescriptorUpdateTemplateEntryKHR =- #{offset VkDescriptorUpdateTemplateEntryKHR, stride}- type FieldIsArray "stride" VkDescriptorUpdateTemplateEntryKHR =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDescriptorUpdateTemplateEntryKHR, stride}--instance CanReadField "stride" VkDescriptorUpdateTemplateEntryKHR- where- {-# INLINE getField #-}- getField = vkStride-- {-# INLINE readField #-}- readField = readVkStride--instance CanWriteField "stride" VkDescriptorUpdateTemplateEntryKHR- where- {-# INLINE writeField #-}- writeField = writeVkStride--instance Show VkDescriptorUpdateTemplateEntryKHR where- showsPrec d x- = showString "VkDescriptorUpdateTemplateEntryKHR {" .- showString "vkDstBinding = " .- showsPrec d (vkDstBinding x) .- showString ", " .- showString "vkDstArrayElement = " .- showsPrec d (vkDstArrayElement x) .- showString ", " .- showString "vkDescriptorCount = " .- showsPrec d (vkDescriptorCount x) .- showString ", " .- showString "vkDescriptorType = " .- showsPrec d (vkDescriptorType x) .- showString ", " .- showString "vkOffset = " .- showsPrec d (vkOffset x) .- showString ", " .- showString "vkStride = " .- showsPrec d (vkStride x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkDeviceCreateInfo (VkDeviceCreateInfo(..)) where@@ -16,7 +17,6 @@ import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType) import Graphics.Vulkan.Types.Struct.VkDeviceQueueCreateInfo (VkDeviceQueueCreateInfo) import Graphics.Vulkan.Types.Struct.VkPhysicalDeviceFeatures (VkPhysicalDeviceFeatures)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkDeviceCreateInfo {@@ -32,7 +32,7 @@ -- > const VkPhysicalDeviceFeatures* pEnabledFeatures; -- > } VkDeviceCreateInfo; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDeviceCreateInfo.html VkDeviceCreateInfo registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDeviceCreateInfo.html VkDeviceCreateInfo registry at www.khronos.org> data VkDeviceCreateInfo = VkDeviceCreateInfo## Addr## ByteArray## instance Eq VkDeviceCreateInfo where@@ -83,26 +83,6 @@ type ReturnedOnly VkDeviceCreateInfo = 'False -- ' closing tick for hsc2hs type StructExtends VkDeviceCreateInfo = '[] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkSType VkDeviceCreateInfo where- type VkSTypeMType VkDeviceCreateInfo = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceCreateInfo, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkDeviceCreateInfo, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkDeviceCreateInfo, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkDeviceCreateInfo, sType}- instance {-# OVERLAPPING #-} HasField "sType" VkDeviceCreateInfo where type FieldType "sType" VkDeviceCreateInfo = VkStructureType@@ -117,36 +97,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkDeviceCreateInfo, sType} -instance CanReadField "sType" VkDeviceCreateInfo where- {-# INLINE getField #-}- getField = vkSType+instance {-# OVERLAPPING #-}+ CanReadField "sType" VkDeviceCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceCreateInfo, sType}) {-# INLINE readField #-}- readField = readVkSType+ readField p+ = peekByteOff p #{offset VkDeviceCreateInfo, sType} -instance CanWriteField "sType" VkDeviceCreateInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkDeviceCreateInfo where {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-} HasVkPNext VkDeviceCreateInfo where- type VkPNextMType VkDeviceCreateInfo = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceCreateInfo, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkDeviceCreateInfo, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkDeviceCreateInfo, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkDeviceCreateInfo, pNext}+ writeField p+ = pokeByteOff p #{offset VkDeviceCreateInfo, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkDeviceCreateInfo where@@ -162,36 +128,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkDeviceCreateInfo, pNext} -instance CanReadField "pNext" VkDeviceCreateInfo where- {-# INLINE getField #-}- getField = vkPNext+instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkDeviceCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceCreateInfo, pNext}) {-# INLINE readField #-}- readField = readVkPNext+ readField p+ = peekByteOff p #{offset VkDeviceCreateInfo, pNext} -instance CanWriteField "pNext" VkDeviceCreateInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkDeviceCreateInfo where {-# INLINE writeField #-}- writeField = writeVkPNext--instance {-# OVERLAPPING #-} HasVkFlags VkDeviceCreateInfo where- type VkFlagsMType VkDeviceCreateInfo = VkDeviceCreateFlags-- {-# NOINLINE vkFlags #-}- vkFlags x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceCreateInfo, flags})-- {-# INLINE vkFlagsByteOffset #-}- vkFlagsByteOffset ~_- = #{offset VkDeviceCreateInfo, flags}-- {-# INLINE readVkFlags #-}- readVkFlags p- = peekByteOff p #{offset VkDeviceCreateInfo, flags}-- {-# INLINE writeVkFlags #-}- writeVkFlags p- = pokeByteOff p #{offset VkDeviceCreateInfo, flags}+ writeField p+ = pokeByteOff p #{offset VkDeviceCreateInfo, pNext} instance {-# OVERLAPPING #-} HasField "flags" VkDeviceCreateInfo where@@ -207,37 +159,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkDeviceCreateInfo, flags} -instance CanReadField "flags" VkDeviceCreateInfo where- {-# INLINE getField #-}- getField = vkFlags-- {-# INLINE readField #-}- readField = readVkFlags--instance CanWriteField "flags" VkDeviceCreateInfo where- {-# INLINE writeField #-}- writeField = writeVkFlags- instance {-# OVERLAPPING #-}- HasVkQueueCreateInfoCount VkDeviceCreateInfo where- type VkQueueCreateInfoCountMType VkDeviceCreateInfo = Word32-- {-# NOINLINE vkQueueCreateInfoCount #-}- vkQueueCreateInfoCount x+ CanReadField "flags" VkDeviceCreateInfo where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceCreateInfo, queueCreateInfoCount})-- {-# INLINE vkQueueCreateInfoCountByteOffset #-}- vkQueueCreateInfoCountByteOffset ~_- = #{offset VkDeviceCreateInfo, queueCreateInfoCount}+ (peekByteOff (unsafePtr x) #{offset VkDeviceCreateInfo, flags}) - {-# INLINE readVkQueueCreateInfoCount #-}- readVkQueueCreateInfoCount p- = peekByteOff p #{offset VkDeviceCreateInfo, queueCreateInfoCount}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceCreateInfo, flags} - {-# INLINE writeVkQueueCreateInfoCount #-}- writeVkQueueCreateInfoCount p- = pokeByteOff p #{offset VkDeviceCreateInfo, queueCreateInfoCount}+instance {-# OVERLAPPING #-}+ CanWriteField "flags" VkDeviceCreateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceCreateInfo, flags} instance {-# OVERLAPPING #-} HasField "queueCreateInfoCount" VkDeviceCreateInfo where@@ -256,40 +193,22 @@ fieldOffset = #{offset VkDeviceCreateInfo, queueCreateInfoCount} -instance CanReadField "queueCreateInfoCount" VkDeviceCreateInfo- where- {-# INLINE getField #-}- getField = vkQueueCreateInfoCount-- {-# INLINE readField #-}- readField = readVkQueueCreateInfoCount--instance CanWriteField "queueCreateInfoCount" VkDeviceCreateInfo- where- {-# INLINE writeField #-}- writeField = writeVkQueueCreateInfoCount- instance {-# OVERLAPPING #-}- HasVkPQueueCreateInfos VkDeviceCreateInfo where- type VkPQueueCreateInfosMType VkDeviceCreateInfo =- Ptr VkDeviceQueueCreateInfo-- {-# NOINLINE vkPQueueCreateInfos #-}- vkPQueueCreateInfos x+ CanReadField "queueCreateInfoCount" VkDeviceCreateInfo where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceCreateInfo, pQueueCreateInfos})-- {-# INLINE vkPQueueCreateInfosByteOffset #-}- vkPQueueCreateInfosByteOffset ~_- = #{offset VkDeviceCreateInfo, pQueueCreateInfos}+ (peekByteOff (unsafePtr x) #{offset VkDeviceCreateInfo, queueCreateInfoCount}) - {-# INLINE readVkPQueueCreateInfos #-}- readVkPQueueCreateInfos p- = peekByteOff p #{offset VkDeviceCreateInfo, pQueueCreateInfos}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceCreateInfo, queueCreateInfoCount} - {-# INLINE writeVkPQueueCreateInfos #-}- writeVkPQueueCreateInfos p- = pokeByteOff p #{offset VkDeviceCreateInfo, pQueueCreateInfos}+instance {-# OVERLAPPING #-}+ CanWriteField "queueCreateInfoCount" VkDeviceCreateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceCreateInfo, queueCreateInfoCount} instance {-# OVERLAPPING #-} HasField "pQueueCreateInfos" VkDeviceCreateInfo where@@ -307,37 +226,22 @@ fieldOffset = #{offset VkDeviceCreateInfo, pQueueCreateInfos} -instance CanReadField "pQueueCreateInfos" VkDeviceCreateInfo where- {-# INLINE getField #-}- getField = vkPQueueCreateInfos-- {-# INLINE readField #-}- readField = readVkPQueueCreateInfos--instance CanWriteField "pQueueCreateInfos" VkDeviceCreateInfo where- {-# INLINE writeField #-}- writeField = writeVkPQueueCreateInfos- instance {-# OVERLAPPING #-}- HasVkEnabledLayerCount VkDeviceCreateInfo where- type VkEnabledLayerCountMType VkDeviceCreateInfo = Word32-- {-# NOINLINE vkEnabledLayerCount #-}- vkEnabledLayerCount x+ CanReadField "pQueueCreateInfos" VkDeviceCreateInfo where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceCreateInfo, enabledLayerCount})-- {-# INLINE vkEnabledLayerCountByteOffset #-}- vkEnabledLayerCountByteOffset ~_- = #{offset VkDeviceCreateInfo, enabledLayerCount}+ (peekByteOff (unsafePtr x) #{offset VkDeviceCreateInfo, pQueueCreateInfos}) - {-# INLINE readVkEnabledLayerCount #-}- readVkEnabledLayerCount p- = peekByteOff p #{offset VkDeviceCreateInfo, enabledLayerCount}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceCreateInfo, pQueueCreateInfos} - {-# INLINE writeVkEnabledLayerCount #-}- writeVkEnabledLayerCount p- = pokeByteOff p #{offset VkDeviceCreateInfo, enabledLayerCount}+instance {-# OVERLAPPING #-}+ CanWriteField "pQueueCreateInfos" VkDeviceCreateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceCreateInfo, pQueueCreateInfos} instance {-# OVERLAPPING #-} HasField "enabledLayerCount" VkDeviceCreateInfo where@@ -354,37 +258,22 @@ fieldOffset = #{offset VkDeviceCreateInfo, enabledLayerCount} -instance CanReadField "enabledLayerCount" VkDeviceCreateInfo where- {-# INLINE getField #-}- getField = vkEnabledLayerCount-- {-# INLINE readField #-}- readField = readVkEnabledLayerCount--instance CanWriteField "enabledLayerCount" VkDeviceCreateInfo where- {-# INLINE writeField #-}- writeField = writeVkEnabledLayerCount- instance {-# OVERLAPPING #-}- HasVkPpEnabledLayerNames VkDeviceCreateInfo where- type VkPpEnabledLayerNamesMType VkDeviceCreateInfo = Ptr CString-- {-# NOINLINE vkPpEnabledLayerNames #-}- vkPpEnabledLayerNames x+ CanReadField "enabledLayerCount" VkDeviceCreateInfo where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceCreateInfo, ppEnabledLayerNames})-- {-# INLINE vkPpEnabledLayerNamesByteOffset #-}- vkPpEnabledLayerNamesByteOffset ~_- = #{offset VkDeviceCreateInfo, ppEnabledLayerNames}+ (peekByteOff (unsafePtr x) #{offset VkDeviceCreateInfo, enabledLayerCount}) - {-# INLINE readVkPpEnabledLayerNames #-}- readVkPpEnabledLayerNames p- = peekByteOff p #{offset VkDeviceCreateInfo, ppEnabledLayerNames}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceCreateInfo, enabledLayerCount} - {-# INLINE writeVkPpEnabledLayerNames #-}- writeVkPpEnabledLayerNames p- = pokeByteOff p #{offset VkDeviceCreateInfo, ppEnabledLayerNames}+instance {-# OVERLAPPING #-}+ CanWriteField "enabledLayerCount" VkDeviceCreateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceCreateInfo, enabledLayerCount} instance {-# OVERLAPPING #-} HasField "ppEnabledLayerNames" VkDeviceCreateInfo where@@ -403,39 +292,22 @@ fieldOffset = #{offset VkDeviceCreateInfo, ppEnabledLayerNames} -instance CanReadField "ppEnabledLayerNames" VkDeviceCreateInfo- where- {-# INLINE getField #-}- getField = vkPpEnabledLayerNames-- {-# INLINE readField #-}- readField = readVkPpEnabledLayerNames--instance CanWriteField "ppEnabledLayerNames" VkDeviceCreateInfo- where- {-# INLINE writeField #-}- writeField = writeVkPpEnabledLayerNames- instance {-# OVERLAPPING #-}- HasVkEnabledExtensionCount VkDeviceCreateInfo where- type VkEnabledExtensionCountMType VkDeviceCreateInfo = Word32-- {-# NOINLINE vkEnabledExtensionCount #-}- vkEnabledExtensionCount x+ CanReadField "ppEnabledLayerNames" VkDeviceCreateInfo where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceCreateInfo, enabledExtensionCount})-- {-# INLINE vkEnabledExtensionCountByteOffset #-}- vkEnabledExtensionCountByteOffset ~_- = #{offset VkDeviceCreateInfo, enabledExtensionCount}+ (peekByteOff (unsafePtr x) #{offset VkDeviceCreateInfo, ppEnabledLayerNames}) - {-# INLINE readVkEnabledExtensionCount #-}- readVkEnabledExtensionCount p- = peekByteOff p #{offset VkDeviceCreateInfo, enabledExtensionCount}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceCreateInfo, ppEnabledLayerNames} - {-# INLINE writeVkEnabledExtensionCount #-}- writeVkEnabledExtensionCount p- = pokeByteOff p #{offset VkDeviceCreateInfo, enabledExtensionCount}+instance {-# OVERLAPPING #-}+ CanWriteField "ppEnabledLayerNames" VkDeviceCreateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceCreateInfo, ppEnabledLayerNames} instance {-# OVERLAPPING #-} HasField "enabledExtensionCount" VkDeviceCreateInfo where@@ -454,40 +326,22 @@ fieldOffset = #{offset VkDeviceCreateInfo, enabledExtensionCount} -instance CanReadField "enabledExtensionCount" VkDeviceCreateInfo- where- {-# INLINE getField #-}- getField = vkEnabledExtensionCount-- {-# INLINE readField #-}- readField = readVkEnabledExtensionCount--instance CanWriteField "enabledExtensionCount" VkDeviceCreateInfo- where- {-# INLINE writeField #-}- writeField = writeVkEnabledExtensionCount- instance {-# OVERLAPPING #-}- HasVkPpEnabledExtensionNames VkDeviceCreateInfo where- type VkPpEnabledExtensionNamesMType VkDeviceCreateInfo =- Ptr CString-- {-# NOINLINE vkPpEnabledExtensionNames #-}- vkPpEnabledExtensionNames x+ CanReadField "enabledExtensionCount" VkDeviceCreateInfo where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceCreateInfo, ppEnabledExtensionNames})-- {-# INLINE vkPpEnabledExtensionNamesByteOffset #-}- vkPpEnabledExtensionNamesByteOffset ~_- = #{offset VkDeviceCreateInfo, ppEnabledExtensionNames}+ (peekByteOff (unsafePtr x) #{offset VkDeviceCreateInfo, enabledExtensionCount}) - {-# INLINE readVkPpEnabledExtensionNames #-}- readVkPpEnabledExtensionNames p- = peekByteOff p #{offset VkDeviceCreateInfo, ppEnabledExtensionNames}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceCreateInfo, enabledExtensionCount} - {-# INLINE writeVkPpEnabledExtensionNames #-}- writeVkPpEnabledExtensionNames p- = pokeByteOff p #{offset VkDeviceCreateInfo, ppEnabledExtensionNames}+instance {-# OVERLAPPING #-}+ CanWriteField "enabledExtensionCount" VkDeviceCreateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceCreateInfo, enabledExtensionCount} instance {-# OVERLAPPING #-} HasField "ppEnabledExtensionNames" VkDeviceCreateInfo where@@ -507,40 +361,22 @@ fieldOffset = #{offset VkDeviceCreateInfo, ppEnabledExtensionNames} -instance CanReadField "ppEnabledExtensionNames" VkDeviceCreateInfo- where- {-# INLINE getField #-}- getField = vkPpEnabledExtensionNames-- {-# INLINE readField #-}- readField = readVkPpEnabledExtensionNames--instance CanWriteField "ppEnabledExtensionNames" VkDeviceCreateInfo- where- {-# INLINE writeField #-}- writeField = writeVkPpEnabledExtensionNames- instance {-# OVERLAPPING #-}- HasVkPEnabledFeatures VkDeviceCreateInfo where- type VkPEnabledFeaturesMType VkDeviceCreateInfo =- Ptr VkPhysicalDeviceFeatures-- {-# NOINLINE vkPEnabledFeatures #-}- vkPEnabledFeatures x+ CanReadField "ppEnabledExtensionNames" VkDeviceCreateInfo where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceCreateInfo, pEnabledFeatures})-- {-# INLINE vkPEnabledFeaturesByteOffset #-}- vkPEnabledFeaturesByteOffset ~_- = #{offset VkDeviceCreateInfo, pEnabledFeatures}+ (peekByteOff (unsafePtr x) #{offset VkDeviceCreateInfo, ppEnabledExtensionNames}) - {-# INLINE readVkPEnabledFeatures #-}- readVkPEnabledFeatures p- = peekByteOff p #{offset VkDeviceCreateInfo, pEnabledFeatures}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceCreateInfo, ppEnabledExtensionNames} - {-# INLINE writeVkPEnabledFeatures #-}- writeVkPEnabledFeatures p- = pokeByteOff p #{offset VkDeviceCreateInfo, pEnabledFeatures}+instance {-# OVERLAPPING #-}+ CanWriteField "ppEnabledExtensionNames" VkDeviceCreateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceCreateInfo, ppEnabledExtensionNames} instance {-# OVERLAPPING #-} HasField "pEnabledFeatures" VkDeviceCreateInfo where@@ -558,54 +394,66 @@ fieldOffset = #{offset VkDeviceCreateInfo, pEnabledFeatures} -instance CanReadField "pEnabledFeatures" VkDeviceCreateInfo where- {-# INLINE getField #-}- getField = vkPEnabledFeatures+instance {-# OVERLAPPING #-}+ CanReadField "pEnabledFeatures" VkDeviceCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceCreateInfo, pEnabledFeatures}) {-# INLINE readField #-}- readField = readVkPEnabledFeatures+ readField p+ = peekByteOff p #{offset VkDeviceCreateInfo, pEnabledFeatures} -instance CanWriteField "pEnabledFeatures" VkDeviceCreateInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "pEnabledFeatures" VkDeviceCreateInfo where {-# INLINE writeField #-}- writeField = writeVkPEnabledFeatures+ writeField p+ = pokeByteOff p #{offset VkDeviceCreateInfo, pEnabledFeatures} instance Show VkDeviceCreateInfo where showsPrec d x = showString "VkDeviceCreateInfo {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkFlags = " .- showsPrec d (vkFlags x) .+ showString "flags = " .+ showsPrec d (getField @"flags" x) . showString ", " .- showString "vkQueueCreateInfoCount = " .- showsPrec d (vkQueueCreateInfoCount x) .+ showString "queueCreateInfoCount = " .+ showsPrec d (getField @"queueCreateInfoCount" x) . showString ", " .- showString "vkPQueueCreateInfos = " .- showsPrec d (vkPQueueCreateInfos x) .+ showString "pQueueCreateInfos = " .+ showsPrec d (getField @"pQueueCreateInfos" x) . showString ", " .- showString "vkEnabledLayerCount = " .- showsPrec d (vkEnabledLayerCount x) .+ showString "enabledLayerCount = " .+ showsPrec d (getField @"enabledLayerCount" x) . showString ", " .- showString "vkPpEnabledLayerNames = " .- showsPrec d (vkPpEnabledLayerNames x) .+ showString "ppEnabledLayerNames = " .+ showsPrec d (getField @"ppEnabledLayerNames" x)+ . showString ", " .- showString "vkEnabledExtensionCount = " .- showsPrec d (vkEnabledExtensionCount x) .+ showString "enabledExtensionCount = " .+ showsPrec d+ (getField @"enabledExtensionCount" x)+ . showString ", " . showString- "vkPpEnabledExtensionNames = "+ "ppEnabledExtensionNames = " . showsPrec d- (vkPpEnabledExtensionNames x)+ (getField+ @"ppEnabledExtensionNames"+ x) . showString ", " .- showString- "vkPEnabledFeatures = "+ showString "pEnabledFeatures = " . showsPrec d- (vkPEnabledFeatures x)+ (getField+ @"pEnabledFeatures"+ x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkDeviceEventInfoEXT (VkDeviceEventInfoEXT(..)) where@@ -14,7 +15,6 @@ import Graphics.Vulkan.Marshal.Internal import Graphics.Vulkan.Types.Enum.VkDeviceEventTypeEXT (VkDeviceEventTypeEXT) import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkDeviceEventInfoEXT {@@ -23,7 +23,7 @@ -- > VkDeviceEventTypeEXT deviceEvent; -- > } VkDeviceEventInfoEXT; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDeviceEventInfoEXT.html VkDeviceEventInfoEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDeviceEventInfoEXT.html VkDeviceEventInfoEXT registry at www.khronos.org> data VkDeviceEventInfoEXT = VkDeviceEventInfoEXT## Addr## ByteArray## instance Eq VkDeviceEventInfoEXT where@@ -71,26 +71,6 @@ type ReturnedOnly VkDeviceEventInfoEXT = 'False -- ' closing tick for hsc2hs type StructExtends VkDeviceEventInfoEXT = '[] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkSType VkDeviceEventInfoEXT where- type VkSTypeMType VkDeviceEventInfoEXT = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceEventInfoEXT, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkDeviceEventInfoEXT, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkDeviceEventInfoEXT, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkDeviceEventInfoEXT, sType}- instance {-# OVERLAPPING #-} HasField "sType" VkDeviceEventInfoEXT where type FieldType "sType" VkDeviceEventInfoEXT = VkStructureType@@ -105,36 +85,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkDeviceEventInfoEXT, sType} -instance CanReadField "sType" VkDeviceEventInfoEXT where- {-# INLINE getField #-}- getField = vkSType+instance {-# OVERLAPPING #-}+ CanReadField "sType" VkDeviceEventInfoEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceEventInfoEXT, sType}) {-# INLINE readField #-}- readField = readVkSType+ readField p+ = peekByteOff p #{offset VkDeviceEventInfoEXT, sType} -instance CanWriteField "sType" VkDeviceEventInfoEXT where+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkDeviceEventInfoEXT where {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-} HasVkPNext VkDeviceEventInfoEXT where- type VkPNextMType VkDeviceEventInfoEXT = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceEventInfoEXT, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkDeviceEventInfoEXT, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkDeviceEventInfoEXT, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkDeviceEventInfoEXT, pNext}+ writeField p+ = pokeByteOff p #{offset VkDeviceEventInfoEXT, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkDeviceEventInfoEXT where@@ -150,37 +116,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkDeviceEventInfoEXT, pNext} -instance CanReadField "pNext" VkDeviceEventInfoEXT where- {-# INLINE getField #-}- getField = vkPNext+instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkDeviceEventInfoEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceEventInfoEXT, pNext}) {-# INLINE readField #-}- readField = readVkPNext+ readField p+ = peekByteOff p #{offset VkDeviceEventInfoEXT, pNext} -instance CanWriteField "pNext" VkDeviceEventInfoEXT where+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkDeviceEventInfoEXT where {-# INLINE writeField #-}- writeField = writeVkPNext--instance {-# OVERLAPPING #-} HasVkDeviceEvent VkDeviceEventInfoEXT- where- type VkDeviceEventMType VkDeviceEventInfoEXT = VkDeviceEventTypeEXT-- {-# NOINLINE vkDeviceEvent #-}- vkDeviceEvent x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceEventInfoEXT, deviceEvent})-- {-# INLINE vkDeviceEventByteOffset #-}- vkDeviceEventByteOffset ~_- = #{offset VkDeviceEventInfoEXT, deviceEvent}-- {-# INLINE readVkDeviceEvent #-}- readVkDeviceEvent p- = peekByteOff p #{offset VkDeviceEventInfoEXT, deviceEvent}-- {-# INLINE writeVkDeviceEvent #-}- writeVkDeviceEvent p- = pokeByteOff p #{offset VkDeviceEventInfoEXT, deviceEvent}+ writeField p+ = pokeByteOff p #{offset VkDeviceEventInfoEXT, pNext} instance {-# OVERLAPPING #-} HasField "deviceEvent" VkDeviceEventInfoEXT where@@ -198,25 +149,31 @@ fieldOffset = #{offset VkDeviceEventInfoEXT, deviceEvent} -instance CanReadField "deviceEvent" VkDeviceEventInfoEXT where- {-# INLINE getField #-}- getField = vkDeviceEvent+instance {-# OVERLAPPING #-}+ CanReadField "deviceEvent" VkDeviceEventInfoEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceEventInfoEXT, deviceEvent}) {-# INLINE readField #-}- readField = readVkDeviceEvent+ readField p+ = peekByteOff p #{offset VkDeviceEventInfoEXT, deviceEvent} -instance CanWriteField "deviceEvent" VkDeviceEventInfoEXT where+instance {-# OVERLAPPING #-}+ CanWriteField "deviceEvent" VkDeviceEventInfoEXT where {-# INLINE writeField #-}- writeField = writeVkDeviceEvent+ writeField p+ = pokeByteOff p #{offset VkDeviceEventInfoEXT, deviceEvent} instance Show VkDeviceEventInfoEXT where showsPrec d x = showString "VkDeviceEventInfoEXT {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkDeviceEvent = " .- showsPrec d (vkDeviceEvent x) . showChar '}'+ showString "deviceEvent = " .+ showsPrec d (getField @"deviceEvent" x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkDeviceGeneratedCommandsFeaturesNVX (VkDeviceGeneratedCommandsFeaturesNVX(..)) where@@ -14,7 +15,6 @@ import Graphics.Vulkan.Marshal.Internal import Graphics.Vulkan.Types.BaseTypes (VkBool32) import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkDeviceGeneratedCommandsFeaturesNVX {@@ -23,7 +23,7 @@ -- > VkBool32 computeBindingPointSupport; -- > } VkDeviceGeneratedCommandsFeaturesNVX; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDeviceGeneratedCommandsFeaturesNVX.html VkDeviceGeneratedCommandsFeaturesNVX registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDeviceGeneratedCommandsFeaturesNVX.html VkDeviceGeneratedCommandsFeaturesNVX registry at www.khronos.org> data VkDeviceGeneratedCommandsFeaturesNVX = VkDeviceGeneratedCommandsFeaturesNVX## Addr## ByteArray## @@ -80,28 +80,6 @@ type StructExtends VkDeviceGeneratedCommandsFeaturesNVX = '[] -- ' closing tick for hsc2hs instance {-# OVERLAPPING #-}- HasVkSType VkDeviceGeneratedCommandsFeaturesNVX where- type VkSTypeMType VkDeviceGeneratedCommandsFeaturesNVX =- VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGeneratedCommandsFeaturesNVX, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkDeviceGeneratedCommandsFeaturesNVX, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkDeviceGeneratedCommandsFeaturesNVX, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkDeviceGeneratedCommandsFeaturesNVX, sType}--instance {-# OVERLAPPING #-} HasField "sType" VkDeviceGeneratedCommandsFeaturesNVX where type FieldType "sType" VkDeviceGeneratedCommandsFeaturesNVX = VkStructureType@@ -119,39 +97,22 @@ fieldOffset = #{offset VkDeviceGeneratedCommandsFeaturesNVX, sType} -instance CanReadField "sType" VkDeviceGeneratedCommandsFeaturesNVX- where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance CanWriteField "sType" VkDeviceGeneratedCommandsFeaturesNVX- where- {-# INLINE writeField #-}- writeField = writeVkSType- instance {-# OVERLAPPING #-}- HasVkPNext VkDeviceGeneratedCommandsFeaturesNVX where- type VkPNextMType VkDeviceGeneratedCommandsFeaturesNVX = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x+ CanReadField "sType" VkDeviceGeneratedCommandsFeaturesNVX where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGeneratedCommandsFeaturesNVX, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkDeviceGeneratedCommandsFeaturesNVX, pNext}+ (peekByteOff (unsafePtr x) #{offset VkDeviceGeneratedCommandsFeaturesNVX, sType}) - {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkDeviceGeneratedCommandsFeaturesNVX, pNext}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceGeneratedCommandsFeaturesNVX, sType} - {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkDeviceGeneratedCommandsFeaturesNVX, pNext}+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkDeviceGeneratedCommandsFeaturesNVX where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGeneratedCommandsFeaturesNVX, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkDeviceGeneratedCommandsFeaturesNVX where@@ -171,43 +132,22 @@ fieldOffset = #{offset VkDeviceGeneratedCommandsFeaturesNVX, pNext} -instance CanReadField "pNext" VkDeviceGeneratedCommandsFeaturesNVX- where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkDeviceGeneratedCommandsFeaturesNVX- where- {-# INLINE writeField #-}- writeField = writeVkPNext- instance {-# OVERLAPPING #-}- HasVkComputeBindingPointSupport- VkDeviceGeneratedCommandsFeaturesNVX- where- type VkComputeBindingPointSupportMType- VkDeviceGeneratedCommandsFeaturesNVX- = VkBool32-- {-# NOINLINE vkComputeBindingPointSupport #-}- vkComputeBindingPointSupport x+ CanReadField "pNext" VkDeviceGeneratedCommandsFeaturesNVX where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGeneratedCommandsFeaturesNVX, computeBindingPointSupport})-- {-# INLINE vkComputeBindingPointSupportByteOffset #-}- vkComputeBindingPointSupportByteOffset ~_- = #{offset VkDeviceGeneratedCommandsFeaturesNVX, computeBindingPointSupport}+ (peekByteOff (unsafePtr x) #{offset VkDeviceGeneratedCommandsFeaturesNVX, pNext}) - {-# INLINE readVkComputeBindingPointSupport #-}- readVkComputeBindingPointSupport p- = peekByteOff p #{offset VkDeviceGeneratedCommandsFeaturesNVX, computeBindingPointSupport}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceGeneratedCommandsFeaturesNVX, pNext} - {-# INLINE writeVkComputeBindingPointSupport #-}- writeVkComputeBindingPointSupport p- = pokeByteOff p #{offset VkDeviceGeneratedCommandsFeaturesNVX, computeBindingPointSupport}+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkDeviceGeneratedCommandsFeaturesNVX where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGeneratedCommandsFeaturesNVX, pNext} instance {-# OVERLAPPING #-} HasField "computeBindingPointSupport"@@ -234,29 +174,36 @@ fieldOffset = #{offset VkDeviceGeneratedCommandsFeaturesNVX, computeBindingPointSupport} -instance CanReadField "computeBindingPointSupport"+instance {-# OVERLAPPING #-}+ CanReadField "computeBindingPointSupport" VkDeviceGeneratedCommandsFeaturesNVX where- {-# INLINE getField #-}- getField = vkComputeBindingPointSupport+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGeneratedCommandsFeaturesNVX, computeBindingPointSupport}) {-# INLINE readField #-}- readField = readVkComputeBindingPointSupport+ readField p+ = peekByteOff p #{offset VkDeviceGeneratedCommandsFeaturesNVX, computeBindingPointSupport} -instance CanWriteField "computeBindingPointSupport"+instance {-# OVERLAPPING #-}+ CanWriteField "computeBindingPointSupport" VkDeviceGeneratedCommandsFeaturesNVX where {-# INLINE writeField #-}- writeField = writeVkComputeBindingPointSupport+ writeField p+ = pokeByteOff p #{offset VkDeviceGeneratedCommandsFeaturesNVX, computeBindingPointSupport} instance Show VkDeviceGeneratedCommandsFeaturesNVX where showsPrec d x = showString "VkDeviceGeneratedCommandsFeaturesNVX {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkComputeBindingPointSupport = " .- showsPrec d (vkComputeBindingPointSupport x) . showChar '}'+ showString "computeBindingPointSupport = " .+ showsPrec d (getField @"computeBindingPointSupport" x) .+ showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkDeviceGeneratedCommandsLimitsNVX (VkDeviceGeneratedCommandsLimitsNVX(..)) where@@ -13,7 +14,6 @@ import Graphics.Vulkan.Marshal import Graphics.Vulkan.Marshal.Internal import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkDeviceGeneratedCommandsLimitsNVX {@@ -26,7 +26,7 @@ -- > uint32_t minCommandsTokenBufferOffsetAlignment; -- > } VkDeviceGeneratedCommandsLimitsNVX; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDeviceGeneratedCommandsLimitsNVX.html VkDeviceGeneratedCommandsLimitsNVX registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDeviceGeneratedCommandsLimitsNVX.html VkDeviceGeneratedCommandsLimitsNVX registry at www.khronos.org> data VkDeviceGeneratedCommandsLimitsNVX = VkDeviceGeneratedCommandsLimitsNVX## Addr## ByteArray## @@ -84,28 +84,6 @@ type StructExtends VkDeviceGeneratedCommandsLimitsNVX = '[] -- ' closing tick for hsc2hs instance {-# OVERLAPPING #-}- HasVkSType VkDeviceGeneratedCommandsLimitsNVX where- type VkSTypeMType VkDeviceGeneratedCommandsLimitsNVX =- VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGeneratedCommandsLimitsNVX, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkDeviceGeneratedCommandsLimitsNVX, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkDeviceGeneratedCommandsLimitsNVX, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkDeviceGeneratedCommandsLimitsNVX, sType}--instance {-# OVERLAPPING #-} HasField "sType" VkDeviceGeneratedCommandsLimitsNVX where type FieldType "sType" VkDeviceGeneratedCommandsLimitsNVX = VkStructureType@@ -123,39 +101,22 @@ fieldOffset = #{offset VkDeviceGeneratedCommandsLimitsNVX, sType} -instance CanReadField "sType" VkDeviceGeneratedCommandsLimitsNVX- where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance CanWriteField "sType" VkDeviceGeneratedCommandsLimitsNVX- where- {-# INLINE writeField #-}- writeField = writeVkSType- instance {-# OVERLAPPING #-}- HasVkPNext VkDeviceGeneratedCommandsLimitsNVX where- type VkPNextMType VkDeviceGeneratedCommandsLimitsNVX = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x+ CanReadField "sType" VkDeviceGeneratedCommandsLimitsNVX where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGeneratedCommandsLimitsNVX, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkDeviceGeneratedCommandsLimitsNVX, pNext}+ (peekByteOff (unsafePtr x) #{offset VkDeviceGeneratedCommandsLimitsNVX, sType}) - {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkDeviceGeneratedCommandsLimitsNVX, pNext}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceGeneratedCommandsLimitsNVX, sType} - {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkDeviceGeneratedCommandsLimitsNVX, pNext}+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkDeviceGeneratedCommandsLimitsNVX where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGeneratedCommandsLimitsNVX, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkDeviceGeneratedCommandsLimitsNVX where@@ -175,43 +136,22 @@ fieldOffset = #{offset VkDeviceGeneratedCommandsLimitsNVX, pNext} -instance CanReadField "pNext" VkDeviceGeneratedCommandsLimitsNVX- where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkDeviceGeneratedCommandsLimitsNVX- where- {-# INLINE writeField #-}- writeField = writeVkPNext- instance {-# OVERLAPPING #-}- HasVkMaxIndirectCommandsLayoutTokenCount- VkDeviceGeneratedCommandsLimitsNVX- where- type VkMaxIndirectCommandsLayoutTokenCountMType- VkDeviceGeneratedCommandsLimitsNVX- = Word32-- {-# NOINLINE vkMaxIndirectCommandsLayoutTokenCount #-}- vkMaxIndirectCommandsLayoutTokenCount x+ CanReadField "pNext" VkDeviceGeneratedCommandsLimitsNVX where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGeneratedCommandsLimitsNVX, maxIndirectCommandsLayoutTokenCount})-- {-# INLINE vkMaxIndirectCommandsLayoutTokenCountByteOffset #-}- vkMaxIndirectCommandsLayoutTokenCountByteOffset ~_- = #{offset VkDeviceGeneratedCommandsLimitsNVX, maxIndirectCommandsLayoutTokenCount}+ (peekByteOff (unsafePtr x) #{offset VkDeviceGeneratedCommandsLimitsNVX, pNext}) - {-# INLINE readVkMaxIndirectCommandsLayoutTokenCount #-}- readVkMaxIndirectCommandsLayoutTokenCount p- = peekByteOff p #{offset VkDeviceGeneratedCommandsLimitsNVX, maxIndirectCommandsLayoutTokenCount}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceGeneratedCommandsLimitsNVX, pNext} - {-# INLINE writeVkMaxIndirectCommandsLayoutTokenCount #-}- writeVkMaxIndirectCommandsLayoutTokenCount p- = pokeByteOff p #{offset VkDeviceGeneratedCommandsLimitsNVX, maxIndirectCommandsLayoutTokenCount}+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkDeviceGeneratedCommandsLimitsNVX where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGeneratedCommandsLimitsNVX, pNext} instance {-# OVERLAPPING #-} HasField "maxIndirectCommandsLayoutTokenCount"@@ -238,42 +178,26 @@ fieldOffset = #{offset VkDeviceGeneratedCommandsLimitsNVX, maxIndirectCommandsLayoutTokenCount} -instance CanReadField "maxIndirectCommandsLayoutTokenCount"+instance {-# OVERLAPPING #-}+ CanReadField "maxIndirectCommandsLayoutTokenCount" VkDeviceGeneratedCommandsLimitsNVX where- {-# INLINE getField #-}- getField = vkMaxIndirectCommandsLayoutTokenCount+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGeneratedCommandsLimitsNVX, maxIndirectCommandsLayoutTokenCount}) {-# INLINE readField #-}- readField = readVkMaxIndirectCommandsLayoutTokenCount+ readField p+ = peekByteOff p #{offset VkDeviceGeneratedCommandsLimitsNVX, maxIndirectCommandsLayoutTokenCount} -instance CanWriteField "maxIndirectCommandsLayoutTokenCount"+instance {-# OVERLAPPING #-}+ CanWriteField "maxIndirectCommandsLayoutTokenCount" VkDeviceGeneratedCommandsLimitsNVX where {-# INLINE writeField #-}- writeField = writeVkMaxIndirectCommandsLayoutTokenCount--instance {-# OVERLAPPING #-}- HasVkMaxObjectEntryCounts VkDeviceGeneratedCommandsLimitsNVX where- type VkMaxObjectEntryCountsMType VkDeviceGeneratedCommandsLimitsNVX- = Word32-- {-# NOINLINE vkMaxObjectEntryCounts #-}- vkMaxObjectEntryCounts x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGeneratedCommandsLimitsNVX, maxObjectEntryCounts})-- {-# INLINE vkMaxObjectEntryCountsByteOffset #-}- vkMaxObjectEntryCountsByteOffset ~_- = #{offset VkDeviceGeneratedCommandsLimitsNVX, maxObjectEntryCounts}-- {-# INLINE readVkMaxObjectEntryCounts #-}- readVkMaxObjectEntryCounts p- = peekByteOff p #{offset VkDeviceGeneratedCommandsLimitsNVX, maxObjectEntryCounts}-- {-# INLINE writeVkMaxObjectEntryCounts #-}- writeVkMaxObjectEntryCounts p- = pokeByteOff p #{offset VkDeviceGeneratedCommandsLimitsNVX, maxObjectEntryCounts}+ writeField p+ = pokeByteOff p #{offset VkDeviceGeneratedCommandsLimitsNVX, maxIndirectCommandsLayoutTokenCount} instance {-# OVERLAPPING #-} HasField "maxObjectEntryCounts" VkDeviceGeneratedCommandsLimitsNVX@@ -299,45 +223,26 @@ fieldOffset = #{offset VkDeviceGeneratedCommandsLimitsNVX, maxObjectEntryCounts} -instance CanReadField "maxObjectEntryCounts"+instance {-# OVERLAPPING #-}+ CanReadField "maxObjectEntryCounts" VkDeviceGeneratedCommandsLimitsNVX where- {-# INLINE getField #-}- getField = vkMaxObjectEntryCounts+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGeneratedCommandsLimitsNVX, maxObjectEntryCounts}) {-# INLINE readField #-}- readField = readVkMaxObjectEntryCounts--instance CanWriteField "maxObjectEntryCounts"- VkDeviceGeneratedCommandsLimitsNVX- where- {-# INLINE writeField #-}- writeField = writeVkMaxObjectEntryCounts+ readField p+ = peekByteOff p #{offset VkDeviceGeneratedCommandsLimitsNVX, maxObjectEntryCounts} instance {-# OVERLAPPING #-}- HasVkMinSequenceCountBufferOffsetAlignment+ CanWriteField "maxObjectEntryCounts" VkDeviceGeneratedCommandsLimitsNVX where- type VkMinSequenceCountBufferOffsetAlignmentMType- VkDeviceGeneratedCommandsLimitsNVX- = Word32-- {-# NOINLINE vkMinSequenceCountBufferOffsetAlignment #-}- vkMinSequenceCountBufferOffsetAlignment x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGeneratedCommandsLimitsNVX, minSequenceCountBufferOffsetAlignment})-- {-# INLINE vkMinSequenceCountBufferOffsetAlignmentByteOffset #-}- vkMinSequenceCountBufferOffsetAlignmentByteOffset ~_- = #{offset VkDeviceGeneratedCommandsLimitsNVX, minSequenceCountBufferOffsetAlignment}-- {-# INLINE readVkMinSequenceCountBufferOffsetAlignment #-}- readVkMinSequenceCountBufferOffsetAlignment p- = peekByteOff p #{offset VkDeviceGeneratedCommandsLimitsNVX, minSequenceCountBufferOffsetAlignment}-- {-# INLINE writeVkMinSequenceCountBufferOffsetAlignment #-}- writeVkMinSequenceCountBufferOffsetAlignment p- = pokeByteOff p #{offset VkDeviceGeneratedCommandsLimitsNVX, minSequenceCountBufferOffsetAlignment}+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGeneratedCommandsLimitsNVX, maxObjectEntryCounts} instance {-# OVERLAPPING #-} HasField "minSequenceCountBufferOffsetAlignment"@@ -364,45 +269,26 @@ fieldOffset = #{offset VkDeviceGeneratedCommandsLimitsNVX, minSequenceCountBufferOffsetAlignment} -instance CanReadField "minSequenceCountBufferOffsetAlignment"+instance {-# OVERLAPPING #-}+ CanReadField "minSequenceCountBufferOffsetAlignment" VkDeviceGeneratedCommandsLimitsNVX where- {-# INLINE getField #-}- getField = vkMinSequenceCountBufferOffsetAlignment+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGeneratedCommandsLimitsNVX, minSequenceCountBufferOffsetAlignment}) {-# INLINE readField #-}- readField = readVkMinSequenceCountBufferOffsetAlignment--instance CanWriteField "minSequenceCountBufferOffsetAlignment"- VkDeviceGeneratedCommandsLimitsNVX- where- {-# INLINE writeField #-}- writeField = writeVkMinSequenceCountBufferOffsetAlignment+ readField p+ = peekByteOff p #{offset VkDeviceGeneratedCommandsLimitsNVX, minSequenceCountBufferOffsetAlignment} instance {-# OVERLAPPING #-}- HasVkMinSequenceIndexBufferOffsetAlignment+ CanWriteField "minSequenceCountBufferOffsetAlignment" VkDeviceGeneratedCommandsLimitsNVX where- type VkMinSequenceIndexBufferOffsetAlignmentMType- VkDeviceGeneratedCommandsLimitsNVX- = Word32-- {-# NOINLINE vkMinSequenceIndexBufferOffsetAlignment #-}- vkMinSequenceIndexBufferOffsetAlignment x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGeneratedCommandsLimitsNVX, minSequenceIndexBufferOffsetAlignment})-- {-# INLINE vkMinSequenceIndexBufferOffsetAlignmentByteOffset #-}- vkMinSequenceIndexBufferOffsetAlignmentByteOffset ~_- = #{offset VkDeviceGeneratedCommandsLimitsNVX, minSequenceIndexBufferOffsetAlignment}-- {-# INLINE readVkMinSequenceIndexBufferOffsetAlignment #-}- readVkMinSequenceIndexBufferOffsetAlignment p- = peekByteOff p #{offset VkDeviceGeneratedCommandsLimitsNVX, minSequenceIndexBufferOffsetAlignment}-- {-# INLINE writeVkMinSequenceIndexBufferOffsetAlignment #-}- writeVkMinSequenceIndexBufferOffsetAlignment p- = pokeByteOff p #{offset VkDeviceGeneratedCommandsLimitsNVX, minSequenceIndexBufferOffsetAlignment}+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGeneratedCommandsLimitsNVX, minSequenceCountBufferOffsetAlignment} instance {-# OVERLAPPING #-} HasField "minSequenceIndexBufferOffsetAlignment"@@ -429,45 +315,26 @@ fieldOffset = #{offset VkDeviceGeneratedCommandsLimitsNVX, minSequenceIndexBufferOffsetAlignment} -instance CanReadField "minSequenceIndexBufferOffsetAlignment"+instance {-# OVERLAPPING #-}+ CanReadField "minSequenceIndexBufferOffsetAlignment" VkDeviceGeneratedCommandsLimitsNVX where- {-# INLINE getField #-}- getField = vkMinSequenceIndexBufferOffsetAlignment+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGeneratedCommandsLimitsNVX, minSequenceIndexBufferOffsetAlignment}) {-# INLINE readField #-}- readField = readVkMinSequenceIndexBufferOffsetAlignment--instance CanWriteField "minSequenceIndexBufferOffsetAlignment"- VkDeviceGeneratedCommandsLimitsNVX- where- {-# INLINE writeField #-}- writeField = writeVkMinSequenceIndexBufferOffsetAlignment+ readField p+ = peekByteOff p #{offset VkDeviceGeneratedCommandsLimitsNVX, minSequenceIndexBufferOffsetAlignment} instance {-# OVERLAPPING #-}- HasVkMinCommandsTokenBufferOffsetAlignment+ CanWriteField "minSequenceIndexBufferOffsetAlignment" VkDeviceGeneratedCommandsLimitsNVX where- type VkMinCommandsTokenBufferOffsetAlignmentMType- VkDeviceGeneratedCommandsLimitsNVX- = Word32-- {-# NOINLINE vkMinCommandsTokenBufferOffsetAlignment #-}- vkMinCommandsTokenBufferOffsetAlignment x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGeneratedCommandsLimitsNVX, minCommandsTokenBufferOffsetAlignment})-- {-# INLINE vkMinCommandsTokenBufferOffsetAlignmentByteOffset #-}- vkMinCommandsTokenBufferOffsetAlignmentByteOffset ~_- = #{offset VkDeviceGeneratedCommandsLimitsNVX, minCommandsTokenBufferOffsetAlignment}-- {-# INLINE readVkMinCommandsTokenBufferOffsetAlignment #-}- readVkMinCommandsTokenBufferOffsetAlignment p- = peekByteOff p #{offset VkDeviceGeneratedCommandsLimitsNVX, minCommandsTokenBufferOffsetAlignment}-- {-# INLINE writeVkMinCommandsTokenBufferOffsetAlignment #-}- writeVkMinCommandsTokenBufferOffsetAlignment p- = pokeByteOff p #{offset VkDeviceGeneratedCommandsLimitsNVX, minCommandsTokenBufferOffsetAlignment}+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGeneratedCommandsLimitsNVX, minSequenceIndexBufferOffsetAlignment} instance {-# OVERLAPPING #-} HasField "minCommandsTokenBufferOffsetAlignment"@@ -494,48 +361,58 @@ fieldOffset = #{offset VkDeviceGeneratedCommandsLimitsNVX, minCommandsTokenBufferOffsetAlignment} -instance CanReadField "minCommandsTokenBufferOffsetAlignment"+instance {-# OVERLAPPING #-}+ CanReadField "minCommandsTokenBufferOffsetAlignment" VkDeviceGeneratedCommandsLimitsNVX where- {-# INLINE getField #-}- getField = vkMinCommandsTokenBufferOffsetAlignment+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGeneratedCommandsLimitsNVX, minCommandsTokenBufferOffsetAlignment}) {-# INLINE readField #-}- readField = readVkMinCommandsTokenBufferOffsetAlignment+ readField p+ = peekByteOff p #{offset VkDeviceGeneratedCommandsLimitsNVX, minCommandsTokenBufferOffsetAlignment} -instance CanWriteField "minCommandsTokenBufferOffsetAlignment"+instance {-# OVERLAPPING #-}+ CanWriteField "minCommandsTokenBufferOffsetAlignment" VkDeviceGeneratedCommandsLimitsNVX where {-# INLINE writeField #-}- writeField = writeVkMinCommandsTokenBufferOffsetAlignment+ writeField p+ = pokeByteOff p #{offset VkDeviceGeneratedCommandsLimitsNVX, minCommandsTokenBufferOffsetAlignment} instance Show VkDeviceGeneratedCommandsLimitsNVX where showsPrec d x = showString "VkDeviceGeneratedCommandsLimitsNVX {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkMaxIndirectCommandsLayoutTokenCount = " .- showsPrec d (vkMaxIndirectCommandsLayoutTokenCount x) .+ showString "maxIndirectCommandsLayoutTokenCount = " .+ showsPrec d (getField @"maxIndirectCommandsLayoutTokenCount" x) . showString ", " .- showString "vkMaxObjectEntryCounts = " .- showsPrec d (vkMaxObjectEntryCounts x) .+ showString "maxObjectEntryCounts = " .+ showsPrec d (getField @"maxObjectEntryCounts" x) . showString ", " .- showString "vkMinSequenceCountBufferOffsetAlignment = " .- showsPrec d (vkMinSequenceCountBufferOffsetAlignment x) .+ showString "minSequenceCountBufferOffsetAlignment = " .+ showsPrec d+ (getField @"minSequenceCountBufferOffsetAlignment" x)+ . showString ", " .- showString "vkMinSequenceIndexBufferOffsetAlignment = "- .+ showString "minSequenceIndexBufferOffsetAlignment = " . showsPrec d- (vkMinSequenceIndexBufferOffsetAlignment x)+ (getField @"minSequenceIndexBufferOffsetAlignment"+ x) . showString ", " . showString- "vkMinCommandsTokenBufferOffsetAlignment = "+ "minCommandsTokenBufferOffsetAlignment = " . showsPrec d- (vkMinCommandsTokenBufferOffsetAlignment x)+ (getField+ @"minCommandsTokenBufferOffsetAlignment"+ x) . showChar '}'
@@ -0,0 +1,232 @@+#include "vulkan/vulkan.h"++{-# LANGUAGE DataKinds #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-}+{-# LANGUAGE TypeFamilies #-}+module Graphics.Vulkan.Types.Struct.VkDeviceGroupBindSparseInfo+ (VkDeviceGroupBindSparseInfo(..)) where+import Foreign.Storable (Storable (..))+import GHC.Prim+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Marshal.Internal+import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)+import Graphics.Vulkan.Types.Struct.VkBindSparseInfo (VkBindSparseInfo)+import System.IO.Unsafe (unsafeDupablePerformIO)++-- | > typedef struct VkDeviceGroupBindSparseInfo {+-- > VkStructureType sType;+-- > const void* pNext;+-- > uint32_t resourceDeviceIndex;+-- > uint32_t memoryDeviceIndex;+-- > } VkDeviceGroupBindSparseInfo;+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDeviceGroupBindSparseInfo.html VkDeviceGroupBindSparseInfo registry at www.khronos.org>+data VkDeviceGroupBindSparseInfo = VkDeviceGroupBindSparseInfo## Addr##+ ByteArray##++instance Eq VkDeviceGroupBindSparseInfo where+ (VkDeviceGroupBindSparseInfo## a _) ==+ x@(VkDeviceGroupBindSparseInfo## b _)+ = EQ == cmpBytes## (sizeOf x) a b++ {-# INLINE (==) #-}++instance Ord VkDeviceGroupBindSparseInfo where+ (VkDeviceGroupBindSparseInfo## a _) `compare`+ x@(VkDeviceGroupBindSparseInfo## b _) = cmpBytes## (sizeOf x) a b++ {-# INLINE compare #-}++instance Storable VkDeviceGroupBindSparseInfo where+ sizeOf ~_ = #{size VkDeviceGroupBindSparseInfo}++ {-# INLINE sizeOf #-}+ alignment ~_ = #{alignment VkDeviceGroupBindSparseInfo}++ {-# INLINE alignment #-}+ peek = peekVkData##++ {-# INLINE peek #-}+ poke = pokeVkData##++ {-# INLINE poke #-}++instance VulkanMarshalPrim VkDeviceGroupBindSparseInfo where+ unsafeAddr (VkDeviceGroupBindSparseInfo## a _) = a++ {-# INLINE unsafeAddr #-}+ unsafeByteArray (VkDeviceGroupBindSparseInfo## _ b) = b++ {-# INLINE unsafeByteArray #-}+ unsafeFromByteArrayOffset off b+ = VkDeviceGroupBindSparseInfo##+ (plusAddr## (byteArrayContents## b) off)+ b++ {-# INLINE unsafeFromByteArrayOffset #-}++instance VulkanMarshal VkDeviceGroupBindSparseInfo where+ type StructFields VkDeviceGroupBindSparseInfo =+ '["sType", "pNext", "resourceDeviceIndex", "memoryDeviceIndex"] -- ' closing tick for hsc2hs+ type CUnionType VkDeviceGroupBindSparseInfo = 'False -- ' closing tick for hsc2hs+ type ReturnedOnly VkDeviceGroupBindSparseInfo = 'False -- ' closing tick for hsc2hs+ type StructExtends VkDeviceGroupBindSparseInfo =+ '[VkBindSparseInfo] -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-}+ HasField "sType" VkDeviceGroupBindSparseInfo where+ type FieldType "sType" VkDeviceGroupBindSparseInfo =+ VkStructureType+ type FieldOptional "sType" VkDeviceGroupBindSparseInfo = 'False -- ' closing tick for hsc2hs+ type FieldOffset "sType" VkDeviceGroupBindSparseInfo =+ #{offset VkDeviceGroupBindSparseInfo, sType}+ type FieldIsArray "sType" VkDeviceGroupBindSparseInfo = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDeviceGroupBindSparseInfo, sType}++instance {-# OVERLAPPING #-}+ CanReadField "sType" VkDeviceGroupBindSparseInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGroupBindSparseInfo, sType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceGroupBindSparseInfo, sType}++instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkDeviceGroupBindSparseInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGroupBindSparseInfo, sType}++instance {-# OVERLAPPING #-}+ HasField "pNext" VkDeviceGroupBindSparseInfo where+ type FieldType "pNext" VkDeviceGroupBindSparseInfo = Ptr Void+ type FieldOptional "pNext" VkDeviceGroupBindSparseInfo = 'False -- ' closing tick for hsc2hs+ type FieldOffset "pNext" VkDeviceGroupBindSparseInfo =+ #{offset VkDeviceGroupBindSparseInfo, pNext}+ type FieldIsArray "pNext" VkDeviceGroupBindSparseInfo = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDeviceGroupBindSparseInfo, pNext}++instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkDeviceGroupBindSparseInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGroupBindSparseInfo, pNext})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceGroupBindSparseInfo, pNext}++instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkDeviceGroupBindSparseInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGroupBindSparseInfo, pNext}++instance {-# OVERLAPPING #-}+ HasField "resourceDeviceIndex" VkDeviceGroupBindSparseInfo where+ type FieldType "resourceDeviceIndex" VkDeviceGroupBindSparseInfo =+ Word32+ type FieldOptional "resourceDeviceIndex"+ VkDeviceGroupBindSparseInfo+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "resourceDeviceIndex" VkDeviceGroupBindSparseInfo+ =+ #{offset VkDeviceGroupBindSparseInfo, resourceDeviceIndex}+ type FieldIsArray "resourceDeviceIndex" VkDeviceGroupBindSparseInfo+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDeviceGroupBindSparseInfo, resourceDeviceIndex}++instance {-# OVERLAPPING #-}+ CanReadField "resourceDeviceIndex" VkDeviceGroupBindSparseInfo+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGroupBindSparseInfo, resourceDeviceIndex})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceGroupBindSparseInfo, resourceDeviceIndex}++instance {-# OVERLAPPING #-}+ CanWriteField "resourceDeviceIndex" VkDeviceGroupBindSparseInfo+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGroupBindSparseInfo, resourceDeviceIndex}++instance {-# OVERLAPPING #-}+ HasField "memoryDeviceIndex" VkDeviceGroupBindSparseInfo where+ type FieldType "memoryDeviceIndex" VkDeviceGroupBindSparseInfo =+ Word32+ type FieldOptional "memoryDeviceIndex" VkDeviceGroupBindSparseInfo+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "memoryDeviceIndex" VkDeviceGroupBindSparseInfo =+ #{offset VkDeviceGroupBindSparseInfo, memoryDeviceIndex}+ type FieldIsArray "memoryDeviceIndex" VkDeviceGroupBindSparseInfo =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDeviceGroupBindSparseInfo, memoryDeviceIndex}++instance {-# OVERLAPPING #-}+ CanReadField "memoryDeviceIndex" VkDeviceGroupBindSparseInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGroupBindSparseInfo, memoryDeviceIndex})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceGroupBindSparseInfo, memoryDeviceIndex}++instance {-# OVERLAPPING #-}+ CanWriteField "memoryDeviceIndex" VkDeviceGroupBindSparseInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGroupBindSparseInfo, memoryDeviceIndex}++instance Show VkDeviceGroupBindSparseInfo where+ showsPrec d x+ = showString "VkDeviceGroupBindSparseInfo {" .+ showString "sType = " .+ showsPrec d (getField @"sType" x) .+ showString ", " .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) .+ showString ", " .+ showString "resourceDeviceIndex = " .+ showsPrec d (getField @"resourceDeviceIndex" x) .+ showString ", " .+ showString "memoryDeviceIndex = " .+ showsPrec d (getField @"memoryDeviceIndex" x) . showChar '}'
@@ -0,0 +1,9 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Types.Struct.VkDeviceGroupBindSparseInfoKHR+ (VkDeviceGroupBindSparseInfo(..), VkDeviceGroupBindSparseInfoKHR)+ where+import Graphics.Vulkan.Types.Struct.VkDeviceGroupBindSparseInfo (VkDeviceGroupBindSparseInfo (..))++-- | Alias for `VkDeviceGroupBindSparseInfo`+type VkDeviceGroupBindSparseInfoKHR = VkDeviceGroupBindSparseInfo
@@ -1,306 +0,0 @@-#include "vulkan/vulkan.h"--{-# LANGUAGE DataKinds #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE MagicHash #-}-{-# LANGUAGE MultiParamTypeClasses #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE TypeFamilies #-}-module Graphics.Vulkan.Types.Struct.VkDeviceGroupBindSparseInfoKHX- (VkDeviceGroupBindSparseInfoKHX(..)) where-import Foreign.Storable (Storable (..))-import GHC.Prim-import Graphics.Vulkan.Marshal-import Graphics.Vulkan.Marshal.Internal-import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)-import Graphics.Vulkan.Types.Struct.VkBindSparseInfo (VkBindSparseInfo)-import Graphics.Vulkan.Types.StructMembers-import System.IO.Unsafe (unsafeDupablePerformIO)---- | > typedef struct VkDeviceGroupBindSparseInfoKHX {--- > VkStructureType sType;--- > const void* pNext;--- > uint32_t resourceDeviceIndex;--- > uint32_t memoryDeviceIndex;--- > } VkDeviceGroupBindSparseInfoKHX;------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDeviceGroupBindSparseInfoKHX.html VkDeviceGroupBindSparseInfoKHX registry at www.khronos.org>-data VkDeviceGroupBindSparseInfoKHX = VkDeviceGroupBindSparseInfoKHX## Addr##- ByteArray##--instance Eq VkDeviceGroupBindSparseInfoKHX where- (VkDeviceGroupBindSparseInfoKHX## a _) ==- x@(VkDeviceGroupBindSparseInfoKHX## b _)- = EQ == cmpBytes## (sizeOf x) a b-- {-# INLINE (==) #-}--instance Ord VkDeviceGroupBindSparseInfoKHX where- (VkDeviceGroupBindSparseInfoKHX## a _) `compare`- x@(VkDeviceGroupBindSparseInfoKHX## b _) = cmpBytes## (sizeOf x) a b-- {-# INLINE compare #-}--instance Storable VkDeviceGroupBindSparseInfoKHX where- sizeOf ~_ = #{size VkDeviceGroupBindSparseInfoKHX}-- {-# INLINE sizeOf #-}- alignment ~_- = #{alignment VkDeviceGroupBindSparseInfoKHX}-- {-# INLINE alignment #-}- peek = peekVkData##-- {-# INLINE peek #-}- poke = pokeVkData##-- {-# INLINE poke #-}--instance VulkanMarshalPrim VkDeviceGroupBindSparseInfoKHX where- unsafeAddr (VkDeviceGroupBindSparseInfoKHX## a _) = a-- {-# INLINE unsafeAddr #-}- unsafeByteArray (VkDeviceGroupBindSparseInfoKHX## _ b) = b-- {-# INLINE unsafeByteArray #-}- unsafeFromByteArrayOffset off b- = VkDeviceGroupBindSparseInfoKHX##- (plusAddr## (byteArrayContents## b) off)- b-- {-# INLINE unsafeFromByteArrayOffset #-}--instance VulkanMarshal VkDeviceGroupBindSparseInfoKHX where- type StructFields VkDeviceGroupBindSparseInfoKHX =- '["sType", "pNext", "resourceDeviceIndex", "memoryDeviceIndex"] -- ' closing tick for hsc2hs- type CUnionType VkDeviceGroupBindSparseInfoKHX = 'False -- ' closing tick for hsc2hs- type ReturnedOnly VkDeviceGroupBindSparseInfoKHX = 'False -- ' closing tick for hsc2hs- type StructExtends VkDeviceGroupBindSparseInfoKHX =- '[VkBindSparseInfo] -- ' closing tick for hsc2hs--instance {-# OVERLAPPING #-}- HasVkSType VkDeviceGroupBindSparseInfoKHX where- type VkSTypeMType VkDeviceGroupBindSparseInfoKHX = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGroupBindSparseInfoKHX, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkDeviceGroupBindSparseInfoKHX, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkDeviceGroupBindSparseInfoKHX, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkDeviceGroupBindSparseInfoKHX, sType}--instance {-# OVERLAPPING #-}- HasField "sType" VkDeviceGroupBindSparseInfoKHX where- type FieldType "sType" VkDeviceGroupBindSparseInfoKHX =- VkStructureType- type FieldOptional "sType" VkDeviceGroupBindSparseInfoKHX = 'False -- ' closing tick for hsc2hs- type FieldOffset "sType" VkDeviceGroupBindSparseInfoKHX =- #{offset VkDeviceGroupBindSparseInfoKHX, sType}- type FieldIsArray "sType" VkDeviceGroupBindSparseInfoKHX = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDeviceGroupBindSparseInfoKHX, sType}--instance CanReadField "sType" VkDeviceGroupBindSparseInfoKHX where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance CanWriteField "sType" VkDeviceGroupBindSparseInfoKHX where- {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-}- HasVkPNext VkDeviceGroupBindSparseInfoKHX where- type VkPNextMType VkDeviceGroupBindSparseInfoKHX = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGroupBindSparseInfoKHX, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkDeviceGroupBindSparseInfoKHX, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkDeviceGroupBindSparseInfoKHX, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkDeviceGroupBindSparseInfoKHX, pNext}--instance {-# OVERLAPPING #-}- HasField "pNext" VkDeviceGroupBindSparseInfoKHX where- type FieldType "pNext" VkDeviceGroupBindSparseInfoKHX = Ptr Void- type FieldOptional "pNext" VkDeviceGroupBindSparseInfoKHX = 'False -- ' closing tick for hsc2hs- type FieldOffset "pNext" VkDeviceGroupBindSparseInfoKHX =- #{offset VkDeviceGroupBindSparseInfoKHX, pNext}- type FieldIsArray "pNext" VkDeviceGroupBindSparseInfoKHX = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDeviceGroupBindSparseInfoKHX, pNext}--instance CanReadField "pNext" VkDeviceGroupBindSparseInfoKHX where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkDeviceGroupBindSparseInfoKHX where- {-# INLINE writeField #-}- writeField = writeVkPNext--instance {-# OVERLAPPING #-}- HasVkResourceDeviceIndex VkDeviceGroupBindSparseInfoKHX where- type VkResourceDeviceIndexMType VkDeviceGroupBindSparseInfoKHX =- Word32-- {-# NOINLINE vkResourceDeviceIndex #-}- vkResourceDeviceIndex x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGroupBindSparseInfoKHX, resourceDeviceIndex})-- {-# INLINE vkResourceDeviceIndexByteOffset #-}- vkResourceDeviceIndexByteOffset ~_- = #{offset VkDeviceGroupBindSparseInfoKHX, resourceDeviceIndex}-- {-# INLINE readVkResourceDeviceIndex #-}- readVkResourceDeviceIndex p- = peekByteOff p #{offset VkDeviceGroupBindSparseInfoKHX, resourceDeviceIndex}-- {-# INLINE writeVkResourceDeviceIndex #-}- writeVkResourceDeviceIndex p- = pokeByteOff p #{offset VkDeviceGroupBindSparseInfoKHX, resourceDeviceIndex}--instance {-# OVERLAPPING #-}- HasField "resourceDeviceIndex" VkDeviceGroupBindSparseInfoKHX where- type FieldType "resourceDeviceIndex" VkDeviceGroupBindSparseInfoKHX- = Word32- type FieldOptional "resourceDeviceIndex"- VkDeviceGroupBindSparseInfoKHX- = 'False -- ' closing tick for hsc2hs- type FieldOffset "resourceDeviceIndex"- VkDeviceGroupBindSparseInfoKHX- =- #{offset VkDeviceGroupBindSparseInfoKHX, resourceDeviceIndex}- type FieldIsArray "resourceDeviceIndex"- VkDeviceGroupBindSparseInfoKHX- = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDeviceGroupBindSparseInfoKHX, resourceDeviceIndex}--instance CanReadField "resourceDeviceIndex"- VkDeviceGroupBindSparseInfoKHX- where- {-# INLINE getField #-}- getField = vkResourceDeviceIndex-- {-# INLINE readField #-}- readField = readVkResourceDeviceIndex--instance CanWriteField "resourceDeviceIndex"- VkDeviceGroupBindSparseInfoKHX- where- {-# INLINE writeField #-}- writeField = writeVkResourceDeviceIndex--instance {-# OVERLAPPING #-}- HasVkMemoryDeviceIndex VkDeviceGroupBindSparseInfoKHX where- type VkMemoryDeviceIndexMType VkDeviceGroupBindSparseInfoKHX =- Word32-- {-# NOINLINE vkMemoryDeviceIndex #-}- vkMemoryDeviceIndex x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGroupBindSparseInfoKHX, memoryDeviceIndex})-- {-# INLINE vkMemoryDeviceIndexByteOffset #-}- vkMemoryDeviceIndexByteOffset ~_- = #{offset VkDeviceGroupBindSparseInfoKHX, memoryDeviceIndex}-- {-# INLINE readVkMemoryDeviceIndex #-}- readVkMemoryDeviceIndex p- = peekByteOff p #{offset VkDeviceGroupBindSparseInfoKHX, memoryDeviceIndex}-- {-# INLINE writeVkMemoryDeviceIndex #-}- writeVkMemoryDeviceIndex p- = pokeByteOff p #{offset VkDeviceGroupBindSparseInfoKHX, memoryDeviceIndex}--instance {-# OVERLAPPING #-}- HasField "memoryDeviceIndex" VkDeviceGroupBindSparseInfoKHX where- type FieldType "memoryDeviceIndex" VkDeviceGroupBindSparseInfoKHX =- Word32- type FieldOptional "memoryDeviceIndex"- VkDeviceGroupBindSparseInfoKHX- = 'False -- ' closing tick for hsc2hs- type FieldOffset "memoryDeviceIndex" VkDeviceGroupBindSparseInfoKHX- =- #{offset VkDeviceGroupBindSparseInfoKHX, memoryDeviceIndex}- type FieldIsArray "memoryDeviceIndex"- VkDeviceGroupBindSparseInfoKHX- = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDeviceGroupBindSparseInfoKHX, memoryDeviceIndex}--instance CanReadField "memoryDeviceIndex"- VkDeviceGroupBindSparseInfoKHX- where- {-# INLINE getField #-}- getField = vkMemoryDeviceIndex-- {-# INLINE readField #-}- readField = readVkMemoryDeviceIndex--instance CanWriteField "memoryDeviceIndex"- VkDeviceGroupBindSparseInfoKHX- where- {-# INLINE writeField #-}- writeField = writeVkMemoryDeviceIndex--instance Show VkDeviceGroupBindSparseInfoKHX where- showsPrec d x- = showString "VkDeviceGroupBindSparseInfoKHX {" .- showString "vkSType = " .- showsPrec d (vkSType x) .- showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .- showString ", " .- showString "vkResourceDeviceIndex = " .- showsPrec d (vkResourceDeviceIndex x) .- showString ", " .- showString "vkMemoryDeviceIndex = " .- showsPrec d (vkMemoryDeviceIndex x) . showChar '}'
@@ -0,0 +1,198 @@+#include "vulkan/vulkan.h"++{-# LANGUAGE DataKinds #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-}+{-# LANGUAGE TypeFamilies #-}+module Graphics.Vulkan.Types.Struct.VkDeviceGroupCommandBufferBeginInfo+ (VkDeviceGroupCommandBufferBeginInfo(..)) where+import Foreign.Storable (Storable (..))+import GHC.Prim+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Marshal.Internal+import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)+import Graphics.Vulkan.Types.Struct.VkCommandBufferBeginInfo (VkCommandBufferBeginInfo)+import System.IO.Unsafe (unsafeDupablePerformIO)++-- | > typedef struct VkDeviceGroupCommandBufferBeginInfo {+-- > VkStructureType sType;+-- > const void* pNext;+-- > uint32_t deviceMask;+-- > } VkDeviceGroupCommandBufferBeginInfo;+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDeviceGroupCommandBufferBeginInfo.html VkDeviceGroupCommandBufferBeginInfo registry at www.khronos.org>+data VkDeviceGroupCommandBufferBeginInfo = VkDeviceGroupCommandBufferBeginInfo## Addr##+ ByteArray##++instance Eq VkDeviceGroupCommandBufferBeginInfo where+ (VkDeviceGroupCommandBufferBeginInfo## a _) ==+ x@(VkDeviceGroupCommandBufferBeginInfo## b _)+ = EQ == cmpBytes## (sizeOf x) a b++ {-# INLINE (==) #-}++instance Ord VkDeviceGroupCommandBufferBeginInfo where+ (VkDeviceGroupCommandBufferBeginInfo## a _) `compare`+ x@(VkDeviceGroupCommandBufferBeginInfo## b _)+ = cmpBytes## (sizeOf x) a b++ {-# INLINE compare #-}++instance Storable VkDeviceGroupCommandBufferBeginInfo where+ sizeOf ~_ = #{size VkDeviceGroupCommandBufferBeginInfo}++ {-# INLINE sizeOf #-}+ alignment ~_+ = #{alignment VkDeviceGroupCommandBufferBeginInfo}++ {-# INLINE alignment #-}+ peek = peekVkData##++ {-# INLINE peek #-}+ poke = pokeVkData##++ {-# INLINE poke #-}++instance VulkanMarshalPrim VkDeviceGroupCommandBufferBeginInfo+ where+ unsafeAddr (VkDeviceGroupCommandBufferBeginInfo## a _) = a++ {-# INLINE unsafeAddr #-}+ unsafeByteArray (VkDeviceGroupCommandBufferBeginInfo## _ b) = b++ {-# INLINE unsafeByteArray #-}+ unsafeFromByteArrayOffset off b+ = VkDeviceGroupCommandBufferBeginInfo##+ (plusAddr## (byteArrayContents## b) off)+ b++ {-# INLINE unsafeFromByteArrayOffset #-}++instance VulkanMarshal VkDeviceGroupCommandBufferBeginInfo where+ type StructFields VkDeviceGroupCommandBufferBeginInfo =+ '["sType", "pNext", "deviceMask"] -- ' closing tick for hsc2hs+ type CUnionType VkDeviceGroupCommandBufferBeginInfo = 'False -- ' closing tick for hsc2hs+ type ReturnedOnly VkDeviceGroupCommandBufferBeginInfo = 'False -- ' closing tick for hsc2hs+ type StructExtends VkDeviceGroupCommandBufferBeginInfo =+ '[VkCommandBufferBeginInfo] -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-}+ HasField "sType" VkDeviceGroupCommandBufferBeginInfo where+ type FieldType "sType" VkDeviceGroupCommandBufferBeginInfo =+ VkStructureType+ type FieldOptional "sType" VkDeviceGroupCommandBufferBeginInfo =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "sType" VkDeviceGroupCommandBufferBeginInfo =+ #{offset VkDeviceGroupCommandBufferBeginInfo, sType}+ type FieldIsArray "sType" VkDeviceGroupCommandBufferBeginInfo =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDeviceGroupCommandBufferBeginInfo, sType}++instance {-# OVERLAPPING #-}+ CanReadField "sType" VkDeviceGroupCommandBufferBeginInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGroupCommandBufferBeginInfo, sType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceGroupCommandBufferBeginInfo, sType}++instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkDeviceGroupCommandBufferBeginInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGroupCommandBufferBeginInfo, sType}++instance {-# OVERLAPPING #-}+ HasField "pNext" VkDeviceGroupCommandBufferBeginInfo where+ type FieldType "pNext" VkDeviceGroupCommandBufferBeginInfo =+ Ptr Void+ type FieldOptional "pNext" VkDeviceGroupCommandBufferBeginInfo =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "pNext" VkDeviceGroupCommandBufferBeginInfo =+ #{offset VkDeviceGroupCommandBufferBeginInfo, pNext}+ type FieldIsArray "pNext" VkDeviceGroupCommandBufferBeginInfo =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDeviceGroupCommandBufferBeginInfo, pNext}++instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkDeviceGroupCommandBufferBeginInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGroupCommandBufferBeginInfo, pNext})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceGroupCommandBufferBeginInfo, pNext}++instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkDeviceGroupCommandBufferBeginInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGroupCommandBufferBeginInfo, pNext}++instance {-# OVERLAPPING #-}+ HasField "deviceMask" VkDeviceGroupCommandBufferBeginInfo where+ type FieldType "deviceMask" VkDeviceGroupCommandBufferBeginInfo =+ Word32+ type FieldOptional "deviceMask" VkDeviceGroupCommandBufferBeginInfo+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "deviceMask" VkDeviceGroupCommandBufferBeginInfo =+ #{offset VkDeviceGroupCommandBufferBeginInfo, deviceMask}+ type FieldIsArray "deviceMask" VkDeviceGroupCommandBufferBeginInfo+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDeviceGroupCommandBufferBeginInfo, deviceMask}++instance {-# OVERLAPPING #-}+ CanReadField "deviceMask" VkDeviceGroupCommandBufferBeginInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGroupCommandBufferBeginInfo, deviceMask})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceGroupCommandBufferBeginInfo, deviceMask}++instance {-# OVERLAPPING #-}+ CanWriteField "deviceMask" VkDeviceGroupCommandBufferBeginInfo+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGroupCommandBufferBeginInfo, deviceMask}++instance Show VkDeviceGroupCommandBufferBeginInfo where+ showsPrec d x+ = showString "VkDeviceGroupCommandBufferBeginInfo {" .+ showString "sType = " .+ showsPrec d (getField @"sType" x) .+ showString ", " .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) .+ showString ", " .+ showString "deviceMask = " .+ showsPrec d (getField @"deviceMask" x) . showChar '}'
@@ -0,0 +1,12 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Types.Struct.VkDeviceGroupCommandBufferBeginInfoKHR+ (VkDeviceGroupCommandBufferBeginInfo(..),+ VkDeviceGroupCommandBufferBeginInfoKHR)+ where+import Graphics.Vulkan.Types.Struct.VkDeviceGroupCommandBufferBeginInfo+ (VkDeviceGroupCommandBufferBeginInfo (..))++-- | Alias for `VkDeviceGroupCommandBufferBeginInfo`+type VkDeviceGroupCommandBufferBeginInfoKHR =+ VkDeviceGroupCommandBufferBeginInfo
@@ -1,261 +0,0 @@-#include "vulkan/vulkan.h"--{-# LANGUAGE DataKinds #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE MagicHash #-}-{-# LANGUAGE MultiParamTypeClasses #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE TypeFamilies #-}-module Graphics.Vulkan.Types.Struct.VkDeviceGroupCommandBufferBeginInfoKHX- (VkDeviceGroupCommandBufferBeginInfoKHX(..)) where-import Foreign.Storable (Storable (..))-import GHC.Prim-import Graphics.Vulkan.Marshal-import Graphics.Vulkan.Marshal.Internal-import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)-import Graphics.Vulkan.Types.Struct.VkCommandBufferBeginInfo (VkCommandBufferBeginInfo)-import Graphics.Vulkan.Types.StructMembers-import System.IO.Unsafe (unsafeDupablePerformIO)---- | > typedef struct VkDeviceGroupCommandBufferBeginInfoKHX {--- > VkStructureType sType;--- > const void* pNext;--- > uint32_t deviceMask;--- > } VkDeviceGroupCommandBufferBeginInfoKHX;------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDeviceGroupCommandBufferBeginInfoKHX.html VkDeviceGroupCommandBufferBeginInfoKHX registry at www.khronos.org>-data VkDeviceGroupCommandBufferBeginInfoKHX = VkDeviceGroupCommandBufferBeginInfoKHX## Addr##- ByteArray##--instance Eq VkDeviceGroupCommandBufferBeginInfoKHX where- (VkDeviceGroupCommandBufferBeginInfoKHX## a _) ==- x@(VkDeviceGroupCommandBufferBeginInfoKHX## b _)- = EQ == cmpBytes## (sizeOf x) a b-- {-# INLINE (==) #-}--instance Ord VkDeviceGroupCommandBufferBeginInfoKHX where- (VkDeviceGroupCommandBufferBeginInfoKHX## a _) `compare`- x@(VkDeviceGroupCommandBufferBeginInfoKHX## b _)- = cmpBytes## (sizeOf x) a b-- {-# INLINE compare #-}--instance Storable VkDeviceGroupCommandBufferBeginInfoKHX where- sizeOf ~_- = #{size VkDeviceGroupCommandBufferBeginInfoKHX}-- {-# INLINE sizeOf #-}- alignment ~_- = #{alignment VkDeviceGroupCommandBufferBeginInfoKHX}-- {-# INLINE alignment #-}- peek = peekVkData##-- {-# INLINE peek #-}- poke = pokeVkData##-- {-# INLINE poke #-}--instance VulkanMarshalPrim VkDeviceGroupCommandBufferBeginInfoKHX- where- unsafeAddr (VkDeviceGroupCommandBufferBeginInfoKHX## a _) = a-- {-# INLINE unsafeAddr #-}- unsafeByteArray (VkDeviceGroupCommandBufferBeginInfoKHX## _ b) = b-- {-# INLINE unsafeByteArray #-}- unsafeFromByteArrayOffset off b- = VkDeviceGroupCommandBufferBeginInfoKHX##- (plusAddr## (byteArrayContents## b) off)- b-- {-# INLINE unsafeFromByteArrayOffset #-}--instance VulkanMarshal VkDeviceGroupCommandBufferBeginInfoKHX where- type StructFields VkDeviceGroupCommandBufferBeginInfoKHX =- '["sType", "pNext", "deviceMask"] -- ' closing tick for hsc2hs- type CUnionType VkDeviceGroupCommandBufferBeginInfoKHX = 'False -- ' closing tick for hsc2hs- type ReturnedOnly VkDeviceGroupCommandBufferBeginInfoKHX = 'False -- ' closing tick for hsc2hs- type StructExtends VkDeviceGroupCommandBufferBeginInfoKHX =- '[VkCommandBufferBeginInfo] -- ' closing tick for hsc2hs--instance {-# OVERLAPPING #-}- HasVkSType VkDeviceGroupCommandBufferBeginInfoKHX where- type VkSTypeMType VkDeviceGroupCommandBufferBeginInfoKHX =- VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGroupCommandBufferBeginInfoKHX, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkDeviceGroupCommandBufferBeginInfoKHX, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkDeviceGroupCommandBufferBeginInfoKHX, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkDeviceGroupCommandBufferBeginInfoKHX, sType}--instance {-# OVERLAPPING #-}- HasField "sType" VkDeviceGroupCommandBufferBeginInfoKHX where- type FieldType "sType" VkDeviceGroupCommandBufferBeginInfoKHX =- VkStructureType- type FieldOptional "sType" VkDeviceGroupCommandBufferBeginInfoKHX =- 'False -- ' closing tick for hsc2hs- type FieldOffset "sType" VkDeviceGroupCommandBufferBeginInfoKHX =- #{offset VkDeviceGroupCommandBufferBeginInfoKHX, sType}- type FieldIsArray "sType" VkDeviceGroupCommandBufferBeginInfoKHX =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDeviceGroupCommandBufferBeginInfoKHX, sType}--instance CanReadField "sType"- VkDeviceGroupCommandBufferBeginInfoKHX- where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance CanWriteField "sType"- VkDeviceGroupCommandBufferBeginInfoKHX- where- {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-}- HasVkPNext VkDeviceGroupCommandBufferBeginInfoKHX where- type VkPNextMType VkDeviceGroupCommandBufferBeginInfoKHX = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGroupCommandBufferBeginInfoKHX, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkDeviceGroupCommandBufferBeginInfoKHX, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkDeviceGroupCommandBufferBeginInfoKHX, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkDeviceGroupCommandBufferBeginInfoKHX, pNext}--instance {-# OVERLAPPING #-}- HasField "pNext" VkDeviceGroupCommandBufferBeginInfoKHX where- type FieldType "pNext" VkDeviceGroupCommandBufferBeginInfoKHX =- Ptr Void- type FieldOptional "pNext" VkDeviceGroupCommandBufferBeginInfoKHX =- 'False -- ' closing tick for hsc2hs- type FieldOffset "pNext" VkDeviceGroupCommandBufferBeginInfoKHX =- #{offset VkDeviceGroupCommandBufferBeginInfoKHX, pNext}- type FieldIsArray "pNext" VkDeviceGroupCommandBufferBeginInfoKHX =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDeviceGroupCommandBufferBeginInfoKHX, pNext}--instance CanReadField "pNext"- VkDeviceGroupCommandBufferBeginInfoKHX- where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext"- VkDeviceGroupCommandBufferBeginInfoKHX- where- {-# INLINE writeField #-}- writeField = writeVkPNext--instance {-# OVERLAPPING #-}- HasVkDeviceMask VkDeviceGroupCommandBufferBeginInfoKHX where- type VkDeviceMaskMType VkDeviceGroupCommandBufferBeginInfoKHX =- Word32-- {-# NOINLINE vkDeviceMask #-}- vkDeviceMask x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGroupCommandBufferBeginInfoKHX, deviceMask})-- {-# INLINE vkDeviceMaskByteOffset #-}- vkDeviceMaskByteOffset ~_- = #{offset VkDeviceGroupCommandBufferBeginInfoKHX, deviceMask}-- {-# INLINE readVkDeviceMask #-}- readVkDeviceMask p- = peekByteOff p #{offset VkDeviceGroupCommandBufferBeginInfoKHX, deviceMask}-- {-# INLINE writeVkDeviceMask #-}- writeVkDeviceMask p- = pokeByteOff p #{offset VkDeviceGroupCommandBufferBeginInfoKHX, deviceMask}--instance {-# OVERLAPPING #-}- HasField "deviceMask" VkDeviceGroupCommandBufferBeginInfoKHX where- type FieldType "deviceMask" VkDeviceGroupCommandBufferBeginInfoKHX- = Word32- type FieldOptional "deviceMask"- VkDeviceGroupCommandBufferBeginInfoKHX- = 'False -- ' closing tick for hsc2hs- type FieldOffset "deviceMask"- VkDeviceGroupCommandBufferBeginInfoKHX- =- #{offset VkDeviceGroupCommandBufferBeginInfoKHX, deviceMask}- type FieldIsArray "deviceMask"- VkDeviceGroupCommandBufferBeginInfoKHX- = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDeviceGroupCommandBufferBeginInfoKHX, deviceMask}--instance CanReadField "deviceMask"- VkDeviceGroupCommandBufferBeginInfoKHX- where- {-# INLINE getField #-}- getField = vkDeviceMask-- {-# INLINE readField #-}- readField = readVkDeviceMask--instance CanWriteField "deviceMask"- VkDeviceGroupCommandBufferBeginInfoKHX- where- {-# INLINE writeField #-}- writeField = writeVkDeviceMask--instance Show VkDeviceGroupCommandBufferBeginInfoKHX where- showsPrec d x- = showString "VkDeviceGroupCommandBufferBeginInfoKHX {" .- showString "vkSType = " .- showsPrec d (vkSType x) .- showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .- showString ", " .- showString "vkDeviceMask = " .- showsPrec d (vkDeviceMask x) . showChar '}'
@@ -0,0 +1,237 @@+#include "vulkan/vulkan.h"++{-# LANGUAGE DataKinds #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-}+{-# LANGUAGE TypeFamilies #-}+module Graphics.Vulkan.Types.Struct.VkDeviceGroupDeviceCreateInfo+ (VkDeviceGroupDeviceCreateInfo(..)) where+import Foreign.Storable (Storable (..))+import GHC.Prim+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Marshal.Internal+import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)+import Graphics.Vulkan.Types.Handles (VkPhysicalDevice)+import Graphics.Vulkan.Types.Struct.VkDeviceCreateInfo (VkDeviceCreateInfo)+import System.IO.Unsafe (unsafeDupablePerformIO)++-- | > typedef struct VkDeviceGroupDeviceCreateInfo {+-- > VkStructureType sType;+-- > const void* pNext;+-- > uint32_t physicalDeviceCount;+-- > const VkPhysicalDevice* pPhysicalDevices;+-- > } VkDeviceGroupDeviceCreateInfo;+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDeviceGroupDeviceCreateInfo.html VkDeviceGroupDeviceCreateInfo registry at www.khronos.org>+data VkDeviceGroupDeviceCreateInfo = VkDeviceGroupDeviceCreateInfo## Addr##+ ByteArray##++instance Eq VkDeviceGroupDeviceCreateInfo where+ (VkDeviceGroupDeviceCreateInfo## a _) ==+ x@(VkDeviceGroupDeviceCreateInfo## b _)+ = EQ == cmpBytes## (sizeOf x) a b++ {-# INLINE (==) #-}++instance Ord VkDeviceGroupDeviceCreateInfo where+ (VkDeviceGroupDeviceCreateInfo## a _) `compare`+ x@(VkDeviceGroupDeviceCreateInfo## b _) = cmpBytes## (sizeOf x) a b++ {-# INLINE compare #-}++instance Storable VkDeviceGroupDeviceCreateInfo where+ sizeOf ~_ = #{size VkDeviceGroupDeviceCreateInfo}++ {-# INLINE sizeOf #-}+ alignment ~_+ = #{alignment VkDeviceGroupDeviceCreateInfo}++ {-# INLINE alignment #-}+ peek = peekVkData##++ {-# INLINE peek #-}+ poke = pokeVkData##++ {-# INLINE poke #-}++instance VulkanMarshalPrim VkDeviceGroupDeviceCreateInfo where+ unsafeAddr (VkDeviceGroupDeviceCreateInfo## a _) = a++ {-# INLINE unsafeAddr #-}+ unsafeByteArray (VkDeviceGroupDeviceCreateInfo## _ b) = b++ {-# INLINE unsafeByteArray #-}+ unsafeFromByteArrayOffset off b+ = VkDeviceGroupDeviceCreateInfo##+ (plusAddr## (byteArrayContents## b) off)+ b++ {-# INLINE unsafeFromByteArrayOffset #-}++instance VulkanMarshal VkDeviceGroupDeviceCreateInfo where+ type StructFields VkDeviceGroupDeviceCreateInfo =+ '["sType", "pNext", "physicalDeviceCount", "pPhysicalDevices"] -- ' closing tick for hsc2hs+ type CUnionType VkDeviceGroupDeviceCreateInfo = 'False -- ' closing tick for hsc2hs+ type ReturnedOnly VkDeviceGroupDeviceCreateInfo = 'False -- ' closing tick for hsc2hs+ type StructExtends VkDeviceGroupDeviceCreateInfo =+ '[VkDeviceCreateInfo] -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-}+ HasField "sType" VkDeviceGroupDeviceCreateInfo where+ type FieldType "sType" VkDeviceGroupDeviceCreateInfo =+ VkStructureType+ type FieldOptional "sType" VkDeviceGroupDeviceCreateInfo = 'False -- ' closing tick for hsc2hs+ type FieldOffset "sType" VkDeviceGroupDeviceCreateInfo =+ #{offset VkDeviceGroupDeviceCreateInfo, sType}+ type FieldIsArray "sType" VkDeviceGroupDeviceCreateInfo = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDeviceGroupDeviceCreateInfo, sType}++instance {-# OVERLAPPING #-}+ CanReadField "sType" VkDeviceGroupDeviceCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGroupDeviceCreateInfo, sType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceGroupDeviceCreateInfo, sType}++instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkDeviceGroupDeviceCreateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGroupDeviceCreateInfo, sType}++instance {-# OVERLAPPING #-}+ HasField "pNext" VkDeviceGroupDeviceCreateInfo where+ type FieldType "pNext" VkDeviceGroupDeviceCreateInfo = Ptr Void+ type FieldOptional "pNext" VkDeviceGroupDeviceCreateInfo = 'False -- ' closing tick for hsc2hs+ type FieldOffset "pNext" VkDeviceGroupDeviceCreateInfo =+ #{offset VkDeviceGroupDeviceCreateInfo, pNext}+ type FieldIsArray "pNext" VkDeviceGroupDeviceCreateInfo = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDeviceGroupDeviceCreateInfo, pNext}++instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkDeviceGroupDeviceCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGroupDeviceCreateInfo, pNext})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceGroupDeviceCreateInfo, pNext}++instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkDeviceGroupDeviceCreateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGroupDeviceCreateInfo, pNext}++instance {-# OVERLAPPING #-}+ HasField "physicalDeviceCount" VkDeviceGroupDeviceCreateInfo where+ type FieldType "physicalDeviceCount" VkDeviceGroupDeviceCreateInfo+ = Word32+ type FieldOptional "physicalDeviceCount"+ VkDeviceGroupDeviceCreateInfo+ = 'True -- ' closing tick for hsc2hs+ type FieldOffset "physicalDeviceCount"+ VkDeviceGroupDeviceCreateInfo+ =+ #{offset VkDeviceGroupDeviceCreateInfo, physicalDeviceCount}+ type FieldIsArray "physicalDeviceCount"+ VkDeviceGroupDeviceCreateInfo+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = True++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDeviceGroupDeviceCreateInfo, physicalDeviceCount}++instance {-# OVERLAPPING #-}+ CanReadField "physicalDeviceCount" VkDeviceGroupDeviceCreateInfo+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGroupDeviceCreateInfo, physicalDeviceCount})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceGroupDeviceCreateInfo, physicalDeviceCount}++instance {-# OVERLAPPING #-}+ CanWriteField "physicalDeviceCount" VkDeviceGroupDeviceCreateInfo+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGroupDeviceCreateInfo, physicalDeviceCount}++instance {-# OVERLAPPING #-}+ HasField "pPhysicalDevices" VkDeviceGroupDeviceCreateInfo where+ type FieldType "pPhysicalDevices" VkDeviceGroupDeviceCreateInfo =+ Ptr VkPhysicalDevice+ type FieldOptional "pPhysicalDevices" VkDeviceGroupDeviceCreateInfo+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "pPhysicalDevices" VkDeviceGroupDeviceCreateInfo =+ #{offset VkDeviceGroupDeviceCreateInfo, pPhysicalDevices}+ type FieldIsArray "pPhysicalDevices" VkDeviceGroupDeviceCreateInfo+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDeviceGroupDeviceCreateInfo, pPhysicalDevices}++instance {-# OVERLAPPING #-}+ CanReadField "pPhysicalDevices" VkDeviceGroupDeviceCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGroupDeviceCreateInfo, pPhysicalDevices})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceGroupDeviceCreateInfo, pPhysicalDevices}++instance {-# OVERLAPPING #-}+ CanWriteField "pPhysicalDevices" VkDeviceGroupDeviceCreateInfo+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGroupDeviceCreateInfo, pPhysicalDevices}++instance Show VkDeviceGroupDeviceCreateInfo where+ showsPrec d x+ = showString "VkDeviceGroupDeviceCreateInfo {" .+ showString "sType = " .+ showsPrec d (getField @"sType" x) .+ showString ", " .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) .+ showString ", " .+ showString "physicalDeviceCount = " .+ showsPrec d (getField @"physicalDeviceCount" x) .+ showString ", " .+ showString "pPhysicalDevices = " .+ showsPrec d (getField @"pPhysicalDevices" x) . showChar '}'
@@ -0,0 +1,11 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Types.Struct.VkDeviceGroupDeviceCreateInfoKHR+ (VkDeviceGroupDeviceCreateInfo(..),+ VkDeviceGroupDeviceCreateInfoKHR)+ where+import Graphics.Vulkan.Types.Struct.VkDeviceGroupDeviceCreateInfo (VkDeviceGroupDeviceCreateInfo (..))++-- | Alias for `VkDeviceGroupDeviceCreateInfo`+type VkDeviceGroupDeviceCreateInfoKHR =+ VkDeviceGroupDeviceCreateInfo
@@ -1,318 +0,0 @@-#include "vulkan/vulkan.h"--{-# LANGUAGE DataKinds #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE MagicHash #-}-{-# LANGUAGE MultiParamTypeClasses #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE TypeFamilies #-}-module Graphics.Vulkan.Types.Struct.VkDeviceGroupDeviceCreateInfoKHX- (VkDeviceGroupDeviceCreateInfoKHX(..)) where-import Foreign.Storable (Storable (..))-import GHC.Prim-import Graphics.Vulkan.Marshal-import Graphics.Vulkan.Marshal.Internal-import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)-import Graphics.Vulkan.Types.Handles (VkPhysicalDevice)-import Graphics.Vulkan.Types.Struct.VkDeviceCreateInfo (VkDeviceCreateInfo)-import Graphics.Vulkan.Types.StructMembers-import System.IO.Unsafe (unsafeDupablePerformIO)---- | > typedef struct VkDeviceGroupDeviceCreateInfoKHX {--- > VkStructureType sType;--- > const void* pNext;--- > uint32_t physicalDeviceCount;--- > const VkPhysicalDevice* pPhysicalDevices;--- > } VkDeviceGroupDeviceCreateInfoKHX;------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDeviceGroupDeviceCreateInfoKHX.html VkDeviceGroupDeviceCreateInfoKHX registry at www.khronos.org>-data VkDeviceGroupDeviceCreateInfoKHX = VkDeviceGroupDeviceCreateInfoKHX## Addr##- ByteArray##--instance Eq VkDeviceGroupDeviceCreateInfoKHX where- (VkDeviceGroupDeviceCreateInfoKHX## a _) ==- x@(VkDeviceGroupDeviceCreateInfoKHX## b _)- = EQ == cmpBytes## (sizeOf x) a b-- {-# INLINE (==) #-}--instance Ord VkDeviceGroupDeviceCreateInfoKHX where- (VkDeviceGroupDeviceCreateInfoKHX## a _) `compare`- x@(VkDeviceGroupDeviceCreateInfoKHX## b _)- = cmpBytes## (sizeOf x) a b-- {-# INLINE compare #-}--instance Storable VkDeviceGroupDeviceCreateInfoKHX where- sizeOf ~_ = #{size VkDeviceGroupDeviceCreateInfoKHX}-- {-# INLINE sizeOf #-}- alignment ~_- = #{alignment VkDeviceGroupDeviceCreateInfoKHX}-- {-# INLINE alignment #-}- peek = peekVkData##-- {-# INLINE peek #-}- poke = pokeVkData##-- {-# INLINE poke #-}--instance VulkanMarshalPrim VkDeviceGroupDeviceCreateInfoKHX where- unsafeAddr (VkDeviceGroupDeviceCreateInfoKHX## a _) = a-- {-# INLINE unsafeAddr #-}- unsafeByteArray (VkDeviceGroupDeviceCreateInfoKHX## _ b) = b-- {-# INLINE unsafeByteArray #-}- unsafeFromByteArrayOffset off b- = VkDeviceGroupDeviceCreateInfoKHX##- (plusAddr## (byteArrayContents## b) off)- b-- {-# INLINE unsafeFromByteArrayOffset #-}--instance VulkanMarshal VkDeviceGroupDeviceCreateInfoKHX where- type StructFields VkDeviceGroupDeviceCreateInfoKHX =- '["sType", "pNext", "physicalDeviceCount", "pPhysicalDevices"] -- ' closing tick for hsc2hs- type CUnionType VkDeviceGroupDeviceCreateInfoKHX = 'False -- ' closing tick for hsc2hs- type ReturnedOnly VkDeviceGroupDeviceCreateInfoKHX = 'False -- ' closing tick for hsc2hs- type StructExtends VkDeviceGroupDeviceCreateInfoKHX =- '[VkDeviceCreateInfo] -- ' closing tick for hsc2hs--instance {-# OVERLAPPING #-}- HasVkSType VkDeviceGroupDeviceCreateInfoKHX where- type VkSTypeMType VkDeviceGroupDeviceCreateInfoKHX =- VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGroupDeviceCreateInfoKHX, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkDeviceGroupDeviceCreateInfoKHX, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkDeviceGroupDeviceCreateInfoKHX, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkDeviceGroupDeviceCreateInfoKHX, sType}--instance {-# OVERLAPPING #-}- HasField "sType" VkDeviceGroupDeviceCreateInfoKHX where- type FieldType "sType" VkDeviceGroupDeviceCreateInfoKHX =- VkStructureType- type FieldOptional "sType" VkDeviceGroupDeviceCreateInfoKHX =- 'False -- ' closing tick for hsc2hs- type FieldOffset "sType" VkDeviceGroupDeviceCreateInfoKHX =- #{offset VkDeviceGroupDeviceCreateInfoKHX, sType}- type FieldIsArray "sType" VkDeviceGroupDeviceCreateInfoKHX = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDeviceGroupDeviceCreateInfoKHX, sType}--instance CanReadField "sType" VkDeviceGroupDeviceCreateInfoKHX- where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance CanWriteField "sType" VkDeviceGroupDeviceCreateInfoKHX- where- {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-}- HasVkPNext VkDeviceGroupDeviceCreateInfoKHX where- type VkPNextMType VkDeviceGroupDeviceCreateInfoKHX = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGroupDeviceCreateInfoKHX, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkDeviceGroupDeviceCreateInfoKHX, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkDeviceGroupDeviceCreateInfoKHX, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkDeviceGroupDeviceCreateInfoKHX, pNext}--instance {-# OVERLAPPING #-}- HasField "pNext" VkDeviceGroupDeviceCreateInfoKHX where- type FieldType "pNext" VkDeviceGroupDeviceCreateInfoKHX = Ptr Void- type FieldOptional "pNext" VkDeviceGroupDeviceCreateInfoKHX =- 'False -- ' closing tick for hsc2hs- type FieldOffset "pNext" VkDeviceGroupDeviceCreateInfoKHX =- #{offset VkDeviceGroupDeviceCreateInfoKHX, pNext}- type FieldIsArray "pNext" VkDeviceGroupDeviceCreateInfoKHX = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDeviceGroupDeviceCreateInfoKHX, pNext}--instance CanReadField "pNext" VkDeviceGroupDeviceCreateInfoKHX- where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkDeviceGroupDeviceCreateInfoKHX- where- {-# INLINE writeField #-}- writeField = writeVkPNext--instance {-# OVERLAPPING #-}- HasVkPhysicalDeviceCount VkDeviceGroupDeviceCreateInfoKHX where- type VkPhysicalDeviceCountMType VkDeviceGroupDeviceCreateInfoKHX =- Word32-- {-# NOINLINE vkPhysicalDeviceCount #-}- vkPhysicalDeviceCount x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGroupDeviceCreateInfoKHX, physicalDeviceCount})-- {-# INLINE vkPhysicalDeviceCountByteOffset #-}- vkPhysicalDeviceCountByteOffset ~_- = #{offset VkDeviceGroupDeviceCreateInfoKHX, physicalDeviceCount}-- {-# INLINE readVkPhysicalDeviceCount #-}- readVkPhysicalDeviceCount p- = peekByteOff p #{offset VkDeviceGroupDeviceCreateInfoKHX, physicalDeviceCount}-- {-# INLINE writeVkPhysicalDeviceCount #-}- writeVkPhysicalDeviceCount p- = pokeByteOff p #{offset VkDeviceGroupDeviceCreateInfoKHX, physicalDeviceCount}--instance {-# OVERLAPPING #-}- HasField "physicalDeviceCount" VkDeviceGroupDeviceCreateInfoKHX- where- type FieldType "physicalDeviceCount"- VkDeviceGroupDeviceCreateInfoKHX- = Word32- type FieldOptional "physicalDeviceCount"- VkDeviceGroupDeviceCreateInfoKHX- = 'True -- ' closing tick for hsc2hs- type FieldOffset "physicalDeviceCount"- VkDeviceGroupDeviceCreateInfoKHX- =- #{offset VkDeviceGroupDeviceCreateInfoKHX, physicalDeviceCount}- type FieldIsArray "physicalDeviceCount"- VkDeviceGroupDeviceCreateInfoKHX- = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = True-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDeviceGroupDeviceCreateInfoKHX, physicalDeviceCount}--instance CanReadField "physicalDeviceCount"- VkDeviceGroupDeviceCreateInfoKHX- where- {-# INLINE getField #-}- getField = vkPhysicalDeviceCount-- {-# INLINE readField #-}- readField = readVkPhysicalDeviceCount--instance CanWriteField "physicalDeviceCount"- VkDeviceGroupDeviceCreateInfoKHX- where- {-# INLINE writeField #-}- writeField = writeVkPhysicalDeviceCount--instance {-# OVERLAPPING #-}- HasVkPPhysicalDevices VkDeviceGroupDeviceCreateInfoKHX where- type VkPPhysicalDevicesMType VkDeviceGroupDeviceCreateInfoKHX =- Ptr VkPhysicalDevice-- {-# NOINLINE vkPPhysicalDevices #-}- vkPPhysicalDevices x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGroupDeviceCreateInfoKHX, pPhysicalDevices})-- {-# INLINE vkPPhysicalDevicesByteOffset #-}- vkPPhysicalDevicesByteOffset ~_- = #{offset VkDeviceGroupDeviceCreateInfoKHX, pPhysicalDevices}-- {-# INLINE readVkPPhysicalDevices #-}- readVkPPhysicalDevices p- = peekByteOff p #{offset VkDeviceGroupDeviceCreateInfoKHX, pPhysicalDevices}-- {-# INLINE writeVkPPhysicalDevices #-}- writeVkPPhysicalDevices p- = pokeByteOff p #{offset VkDeviceGroupDeviceCreateInfoKHX, pPhysicalDevices}--instance {-# OVERLAPPING #-}- HasField "pPhysicalDevices" VkDeviceGroupDeviceCreateInfoKHX where- type FieldType "pPhysicalDevices" VkDeviceGroupDeviceCreateInfoKHX- = Ptr VkPhysicalDevice- type FieldOptional "pPhysicalDevices"- VkDeviceGroupDeviceCreateInfoKHX- = 'False -- ' closing tick for hsc2hs- type FieldOffset "pPhysicalDevices"- VkDeviceGroupDeviceCreateInfoKHX- =- #{offset VkDeviceGroupDeviceCreateInfoKHX, pPhysicalDevices}- type FieldIsArray "pPhysicalDevices"- VkDeviceGroupDeviceCreateInfoKHX- = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDeviceGroupDeviceCreateInfoKHX, pPhysicalDevices}--instance CanReadField "pPhysicalDevices"- VkDeviceGroupDeviceCreateInfoKHX- where- {-# INLINE getField #-}- getField = vkPPhysicalDevices-- {-# INLINE readField #-}- readField = readVkPPhysicalDevices--instance CanWriteField "pPhysicalDevices"- VkDeviceGroupDeviceCreateInfoKHX- where- {-# INLINE writeField #-}- writeField = writeVkPPhysicalDevices--instance Show VkDeviceGroupDeviceCreateInfoKHX where- showsPrec d x- = showString "VkDeviceGroupDeviceCreateInfoKHX {" .- showString "vkSType = " .- showsPrec d (vkSType x) .- showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .- showString ", " .- showString "vkPhysicalDeviceCount = " .- showsPrec d (vkPhysicalDeviceCount x) .- showString ", " .- showString "vkPPhysicalDevices = " .- showsPrec d (vkPPhysicalDevices x) . showChar '}'
@@ -0,0 +1,330 @@+#include "vulkan/vulkan.h"++{-# LANGUAGE DataKinds #-}+{-# LANGUAGE FlexibleContexts #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE ScopedTypeVariables #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE UndecidableInstances #-}+module Graphics.Vulkan.Types.Struct.VkDeviceGroupPresentCapabilitiesKHR+ (VkDeviceGroupPresentCapabilitiesKHR(..)) where+import Foreign.Storable (Storable (..))+import GHC.Prim+import GHC.TypeLits (KnownNat,+ natVal') -- ' closing tick for hsc2hs+import Graphics.Vulkan.Constants (VK_MAX_DEVICE_GROUP_SIZE,+ pattern VK_MAX_DEVICE_GROUP_SIZE)+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Marshal.Internal+import Graphics.Vulkan.Types.Enum.VkDeviceGroupPresentModeFlagsKHR (VkDeviceGroupPresentModeFlagsKHR)+import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)+import System.IO.Unsafe (unsafeDupablePerformIO)++-- | > typedef struct VkDeviceGroupPresentCapabilitiesKHR {+-- > VkStructureType sType;+-- > const void* pNext;+-- > uint32_t presentMask[VK_MAX_DEVICE_GROUP_SIZE];+-- > VkDeviceGroupPresentModeFlagsKHR modes;+-- > } VkDeviceGroupPresentCapabilitiesKHR;+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDeviceGroupPresentCapabilitiesKHR.html VkDeviceGroupPresentCapabilitiesKHR registry at www.khronos.org>+data VkDeviceGroupPresentCapabilitiesKHR = VkDeviceGroupPresentCapabilitiesKHR## Addr##+ ByteArray##++instance Eq VkDeviceGroupPresentCapabilitiesKHR where+ (VkDeviceGroupPresentCapabilitiesKHR## a _) ==+ x@(VkDeviceGroupPresentCapabilitiesKHR## b _)+ = EQ == cmpBytes## (sizeOf x) a b++ {-# INLINE (==) #-}++instance Ord VkDeviceGroupPresentCapabilitiesKHR where+ (VkDeviceGroupPresentCapabilitiesKHR## a _) `compare`+ x@(VkDeviceGroupPresentCapabilitiesKHR## b _)+ = cmpBytes## (sizeOf x) a b++ {-# INLINE compare #-}++instance Storable VkDeviceGroupPresentCapabilitiesKHR where+ sizeOf ~_ = #{size VkDeviceGroupPresentCapabilitiesKHR}++ {-# INLINE sizeOf #-}+ alignment ~_+ = #{alignment VkDeviceGroupPresentCapabilitiesKHR}++ {-# INLINE alignment #-}+ peek = peekVkData##++ {-# INLINE peek #-}+ poke = pokeVkData##++ {-# INLINE poke #-}++instance VulkanMarshalPrim VkDeviceGroupPresentCapabilitiesKHR+ where+ unsafeAddr (VkDeviceGroupPresentCapabilitiesKHR## a _) = a++ {-# INLINE unsafeAddr #-}+ unsafeByteArray (VkDeviceGroupPresentCapabilitiesKHR## _ b) = b++ {-# INLINE unsafeByteArray #-}+ unsafeFromByteArrayOffset off b+ = VkDeviceGroupPresentCapabilitiesKHR##+ (plusAddr## (byteArrayContents## b) off)+ b++ {-# INLINE unsafeFromByteArrayOffset #-}++instance VulkanMarshal VkDeviceGroupPresentCapabilitiesKHR where+ type StructFields VkDeviceGroupPresentCapabilitiesKHR =+ '["sType", "pNext", "presentMask", "modes"] -- ' closing tick for hsc2hs+ type CUnionType VkDeviceGroupPresentCapabilitiesKHR = 'False -- ' closing tick for hsc2hs+ type ReturnedOnly VkDeviceGroupPresentCapabilitiesKHR = 'True -- ' closing tick for hsc2hs+ type StructExtends VkDeviceGroupPresentCapabilitiesKHR = '[] -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-}+ HasField "sType" VkDeviceGroupPresentCapabilitiesKHR where+ type FieldType "sType" VkDeviceGroupPresentCapabilitiesKHR =+ VkStructureType+ type FieldOptional "sType" VkDeviceGroupPresentCapabilitiesKHR =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "sType" VkDeviceGroupPresentCapabilitiesKHR =+ #{offset VkDeviceGroupPresentCapabilitiesKHR, sType}+ type FieldIsArray "sType" VkDeviceGroupPresentCapabilitiesKHR =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDeviceGroupPresentCapabilitiesKHR, sType}++instance {-# OVERLAPPING #-}+ CanReadField "sType" VkDeviceGroupPresentCapabilitiesKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGroupPresentCapabilitiesKHR, sType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceGroupPresentCapabilitiesKHR, sType}++instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkDeviceGroupPresentCapabilitiesKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGroupPresentCapabilitiesKHR, sType}++instance {-# OVERLAPPING #-}+ HasField "pNext" VkDeviceGroupPresentCapabilitiesKHR where+ type FieldType "pNext" VkDeviceGroupPresentCapabilitiesKHR =+ Ptr Void+ type FieldOptional "pNext" VkDeviceGroupPresentCapabilitiesKHR =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "pNext" VkDeviceGroupPresentCapabilitiesKHR =+ #{offset VkDeviceGroupPresentCapabilitiesKHR, pNext}+ type FieldIsArray "pNext" VkDeviceGroupPresentCapabilitiesKHR =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDeviceGroupPresentCapabilitiesKHR, pNext}++instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkDeviceGroupPresentCapabilitiesKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGroupPresentCapabilitiesKHR, pNext})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceGroupPresentCapabilitiesKHR, pNext}++instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkDeviceGroupPresentCapabilitiesKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGroupPresentCapabilitiesKHR, pNext}++instance {-# OVERLAPPING #-}+ HasField "presentMask" VkDeviceGroupPresentCapabilitiesKHR where+ type FieldType "presentMask" VkDeviceGroupPresentCapabilitiesKHR =+ Word32+ type FieldOptional "presentMask"+ VkDeviceGroupPresentCapabilitiesKHR+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "presentMask" VkDeviceGroupPresentCapabilitiesKHR+ =+ #{offset VkDeviceGroupPresentCapabilitiesKHR, presentMask}+ type FieldIsArray "presentMask" VkDeviceGroupPresentCapabilitiesKHR+ = 'True -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDeviceGroupPresentCapabilitiesKHR, presentMask}++instance {-# OVERLAPPING #-}+ (KnownNat idx,+ IndexInBounds "presentMask" idx+ VkDeviceGroupPresentCapabilitiesKHR) =>+ CanReadFieldArray "presentMask" idx+ VkDeviceGroupPresentCapabilitiesKHR+ where+ {-# SPECIALISE instance+ CanReadFieldArray "presentMask" 0+ VkDeviceGroupPresentCapabilitiesKHR+ #-}++ {-# SPECIALISE instance+ CanReadFieldArray "presentMask" 1+ VkDeviceGroupPresentCapabilitiesKHR+ #-}++ {-# SPECIALISE instance+ CanReadFieldArray "presentMask" 2+ VkDeviceGroupPresentCapabilitiesKHR+ #-}++ {-# SPECIALISE instance+ CanReadFieldArray "presentMask" 3+ VkDeviceGroupPresentCapabilitiesKHR+ #-}+ type FieldArrayLength "presentMask"+ VkDeviceGroupPresentCapabilitiesKHR+ = VK_MAX_DEVICE_GROUP_SIZE++ {-# INLINE fieldArrayLength #-}+ fieldArrayLength = VK_MAX_DEVICE_GROUP_SIZE++ {-# INLINE getFieldArray #-}+ getFieldArray = f+ where {-# NOINLINE f #-}+ f x = unsafeDupablePerformIO (peekByteOff (unsafePtr x) off)+ off+ = #{offset VkDeviceGroupPresentCapabilitiesKHR, presentMask}+ ++ sizeOf (undefined :: Word32) *+ fromInteger (natVal' (proxy## :: Proxy## idx)) -- ' closing tick for hsc2hs++ {-# INLINE readFieldArray #-}+ readFieldArray p+ = peekByteOff p+ (#{offset VkDeviceGroupPresentCapabilitiesKHR, presentMask}+ ++ sizeOf (undefined :: Word32) *+ fromInteger (natVal' (proxy## :: Proxy## idx))) -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-}+ (KnownNat idx,+ IndexInBounds "presentMask" idx+ VkDeviceGroupPresentCapabilitiesKHR) =>+ CanWriteFieldArray "presentMask" idx+ VkDeviceGroupPresentCapabilitiesKHR+ where+ {-# SPECIALISE instance+ CanWriteFieldArray "presentMask" 0+ VkDeviceGroupPresentCapabilitiesKHR+ #-}++ {-# SPECIALISE instance+ CanWriteFieldArray "presentMask" 1+ VkDeviceGroupPresentCapabilitiesKHR+ #-}++ {-# SPECIALISE instance+ CanWriteFieldArray "presentMask" 2+ VkDeviceGroupPresentCapabilitiesKHR+ #-}++ {-# SPECIALISE instance+ CanWriteFieldArray "presentMask" 3+ VkDeviceGroupPresentCapabilitiesKHR+ #-}++ {-# INLINE writeFieldArray #-}+ writeFieldArray p+ = pokeByteOff p+ (#{offset VkDeviceGroupPresentCapabilitiesKHR, presentMask}+ ++ sizeOf (undefined :: Word32) *+ fromInteger (natVal' (proxy## :: Proxy## idx))) -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-}+ HasField "modes" VkDeviceGroupPresentCapabilitiesKHR where+ type FieldType "modes" VkDeviceGroupPresentCapabilitiesKHR =+ VkDeviceGroupPresentModeFlagsKHR+ type FieldOptional "modes" VkDeviceGroupPresentCapabilitiesKHR =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "modes" VkDeviceGroupPresentCapabilitiesKHR =+ #{offset VkDeviceGroupPresentCapabilitiesKHR, modes}+ type FieldIsArray "modes" VkDeviceGroupPresentCapabilitiesKHR =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDeviceGroupPresentCapabilitiesKHR, modes}++instance {-# OVERLAPPING #-}+ CanReadField "modes" VkDeviceGroupPresentCapabilitiesKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGroupPresentCapabilitiesKHR, modes})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceGroupPresentCapabilitiesKHR, modes}++instance {-# OVERLAPPING #-}+ CanWriteField "modes" VkDeviceGroupPresentCapabilitiesKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGroupPresentCapabilitiesKHR, modes}++instance Show VkDeviceGroupPresentCapabilitiesKHR where+ showsPrec d x+ = showString "VkDeviceGroupPresentCapabilitiesKHR {" .+ showString "sType = " .+ showsPrec d (getField @"sType" x) .+ showString ", " .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) .+ showString ", " .+ (showString "presentMask = [" .+ showsPrec d+ (let s = sizeOf+ (undefined ::+ FieldType "presentMask"+ VkDeviceGroupPresentCapabilitiesKHR)+ o = fieldOffset @"presentMask"+ @VkDeviceGroupPresentCapabilitiesKHR+ f i+ = peekByteOff (unsafePtr x) i ::+ IO+ (FieldType "presentMask"+ VkDeviceGroupPresentCapabilitiesKHR)+ in+ unsafeDupablePerformIO . mapM f $+ map (\ i -> o + i * s) [0 .. VK_MAX_DEVICE_GROUP_SIZE - 1])+ . showChar ']')+ .+ showString ", " .+ showString "modes = " .+ showsPrec d (getField @"modes" x) . showChar '}'
@@ -1,338 +0,0 @@-#include "vulkan/vulkan.h"--{-# LANGUAGE DataKinds #-}-{-# LANGUAGE FlexibleContexts #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE MagicHash #-}-{-# LANGUAGE MultiParamTypeClasses #-}-{-# LANGUAGE PatternSynonyms #-}-{-# LANGUAGE ScopedTypeVariables #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE TypeFamilies #-}-{-# LANGUAGE UndecidableInstances #-}-module Graphics.Vulkan.Types.Struct.VkDeviceGroupPresentCapabilitiesKHX- (VkDeviceGroupPresentCapabilitiesKHX(..)) where-import Foreign.Storable (Storable (..))-import GHC.Prim-import GHC.TypeLits (KnownNat,- natVal') -- ' closing tick for hsc2hs-import Graphics.Vulkan.Constants (VK_MAX_DEVICE_GROUP_SIZE_KHX,- pattern VK_MAX_DEVICE_GROUP_SIZE_KHX)-import Graphics.Vulkan.Marshal-import Graphics.Vulkan.Marshal.Internal-import Graphics.Vulkan.Types.Enum.VkDeviceGroupPresentModeFlagsKHX (VkDeviceGroupPresentModeFlagsKHX)-import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)-import Graphics.Vulkan.Types.StructMembers-import System.IO.Unsafe (unsafeDupablePerformIO)---- | > typedef struct VkDeviceGroupPresentCapabilitiesKHX {--- > VkStructureType sType;--- > const void* pNext;--- > uint32_t presentMask[VK_MAX_DEVICE_GROUP_SIZE_KHX];--- > VkDeviceGroupPresentModeFlagsKHX modes;--- > } VkDeviceGroupPresentCapabilitiesKHX;------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDeviceGroupPresentCapabilitiesKHX.html VkDeviceGroupPresentCapabilitiesKHX registry at www.khronos.org>-data VkDeviceGroupPresentCapabilitiesKHX = VkDeviceGroupPresentCapabilitiesKHX## Addr##- ByteArray##--instance Eq VkDeviceGroupPresentCapabilitiesKHX where- (VkDeviceGroupPresentCapabilitiesKHX## a _) ==- x@(VkDeviceGroupPresentCapabilitiesKHX## b _)- = EQ == cmpBytes## (sizeOf x) a b-- {-# INLINE (==) #-}--instance Ord VkDeviceGroupPresentCapabilitiesKHX where- (VkDeviceGroupPresentCapabilitiesKHX## a _) `compare`- x@(VkDeviceGroupPresentCapabilitiesKHX## b _)- = cmpBytes## (sizeOf x) a b-- {-# INLINE compare #-}--instance Storable VkDeviceGroupPresentCapabilitiesKHX where- sizeOf ~_ = #{size VkDeviceGroupPresentCapabilitiesKHX}-- {-# INLINE sizeOf #-}- alignment ~_- = #{alignment VkDeviceGroupPresentCapabilitiesKHX}-- {-# INLINE alignment #-}- peek = peekVkData##-- {-# INLINE peek #-}- poke = pokeVkData##-- {-# INLINE poke #-}--instance VulkanMarshalPrim VkDeviceGroupPresentCapabilitiesKHX- where- unsafeAddr (VkDeviceGroupPresentCapabilitiesKHX## a _) = a-- {-# INLINE unsafeAddr #-}- unsafeByteArray (VkDeviceGroupPresentCapabilitiesKHX## _ b) = b-- {-# INLINE unsafeByteArray #-}- unsafeFromByteArrayOffset off b- = VkDeviceGroupPresentCapabilitiesKHX##- (plusAddr## (byteArrayContents## b) off)- b-- {-# INLINE unsafeFromByteArrayOffset #-}--instance VulkanMarshal VkDeviceGroupPresentCapabilitiesKHX where- type StructFields VkDeviceGroupPresentCapabilitiesKHX =- '["sType", "pNext", "presentMask", "modes"] -- ' closing tick for hsc2hs- type CUnionType VkDeviceGroupPresentCapabilitiesKHX = 'False -- ' closing tick for hsc2hs- type ReturnedOnly VkDeviceGroupPresentCapabilitiesKHX = 'True -- ' closing tick for hsc2hs- type StructExtends VkDeviceGroupPresentCapabilitiesKHX = '[] -- ' closing tick for hsc2hs--instance {-# OVERLAPPING #-}- HasVkSType VkDeviceGroupPresentCapabilitiesKHX where- type VkSTypeMType VkDeviceGroupPresentCapabilitiesKHX =- VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGroupPresentCapabilitiesKHX, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkDeviceGroupPresentCapabilitiesKHX, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkDeviceGroupPresentCapabilitiesKHX, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkDeviceGroupPresentCapabilitiesKHX, sType}--instance {-# OVERLAPPING #-}- HasField "sType" VkDeviceGroupPresentCapabilitiesKHX where- type FieldType "sType" VkDeviceGroupPresentCapabilitiesKHX =- VkStructureType- type FieldOptional "sType" VkDeviceGroupPresentCapabilitiesKHX =- 'False -- ' closing tick for hsc2hs- type FieldOffset "sType" VkDeviceGroupPresentCapabilitiesKHX =- #{offset VkDeviceGroupPresentCapabilitiesKHX, sType}- type FieldIsArray "sType" VkDeviceGroupPresentCapabilitiesKHX =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDeviceGroupPresentCapabilitiesKHX, sType}--instance CanReadField "sType" VkDeviceGroupPresentCapabilitiesKHX- where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance {-# OVERLAPPING #-}- HasVkPNext VkDeviceGroupPresentCapabilitiesKHX where- type VkPNextMType VkDeviceGroupPresentCapabilitiesKHX = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGroupPresentCapabilitiesKHX, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkDeviceGroupPresentCapabilitiesKHX, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkDeviceGroupPresentCapabilitiesKHX, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkDeviceGroupPresentCapabilitiesKHX, pNext}--instance {-# OVERLAPPING #-}- HasField "pNext" VkDeviceGroupPresentCapabilitiesKHX where- type FieldType "pNext" VkDeviceGroupPresentCapabilitiesKHX =- Ptr Void- type FieldOptional "pNext" VkDeviceGroupPresentCapabilitiesKHX =- 'False -- ' closing tick for hsc2hs- type FieldOffset "pNext" VkDeviceGroupPresentCapabilitiesKHX =- #{offset VkDeviceGroupPresentCapabilitiesKHX, pNext}- type FieldIsArray "pNext" VkDeviceGroupPresentCapabilitiesKHX =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDeviceGroupPresentCapabilitiesKHX, pNext}--instance CanReadField "pNext" VkDeviceGroupPresentCapabilitiesKHX- where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance {-# OVERLAPPING #-}- HasVkPresentMaskArray VkDeviceGroupPresentCapabilitiesKHX where- type VkPresentMaskArrayMType VkDeviceGroupPresentCapabilitiesKHX =- Word32-- {-# NOINLINE vkPresentMaskArray #-}- vkPresentMaskArray x idx- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x)- (idx * sizeOf (undefined :: Word32) +- #{offset VkDeviceGroupPresentCapabilitiesKHX, presentMask}))-- {-# INLINE vkPresentMaskArrayByteOffset #-}- vkPresentMaskArrayByteOffset ~_- = #{offset VkDeviceGroupPresentCapabilitiesKHX, presentMask}-- {-# INLINE readVkPresentMaskArray #-}- readVkPresentMaskArray p idx- = peekByteOff p- (idx * sizeOf (undefined :: Word32) +- #{offset VkDeviceGroupPresentCapabilitiesKHX, presentMask})-- {-# INLINE writeVkPresentMaskArray #-}- writeVkPresentMaskArray p idx- = pokeByteOff p- (idx * sizeOf (undefined :: Word32) +- #{offset VkDeviceGroupPresentCapabilitiesKHX, presentMask})--instance {-# OVERLAPPING #-}- HasField "presentMask" VkDeviceGroupPresentCapabilitiesKHX where- type FieldType "presentMask" VkDeviceGroupPresentCapabilitiesKHX =- Word32- type FieldOptional "presentMask"- VkDeviceGroupPresentCapabilitiesKHX- = 'False -- ' closing tick for hsc2hs- type FieldOffset "presentMask" VkDeviceGroupPresentCapabilitiesKHX- =- #{offset VkDeviceGroupPresentCapabilitiesKHX, presentMask}- type FieldIsArray "presentMask" VkDeviceGroupPresentCapabilitiesKHX- = 'True -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDeviceGroupPresentCapabilitiesKHX, presentMask}--instance (KnownNat idx,- IndexInBounds "presentMask" idx- VkDeviceGroupPresentCapabilitiesKHX) =>- CanReadFieldArray "presentMask" idx- VkDeviceGroupPresentCapabilitiesKHX- where- {-# SPECIALISE instance- CanReadFieldArray "presentMask" 0- VkDeviceGroupPresentCapabilitiesKHX- #-}-- {-# SPECIALISE instance- CanReadFieldArray "presentMask" 1- VkDeviceGroupPresentCapabilitiesKHX- #-}-- {-# SPECIALISE instance- CanReadFieldArray "presentMask" 2- VkDeviceGroupPresentCapabilitiesKHX- #-}-- {-# SPECIALISE instance- CanReadFieldArray "presentMask" 3- VkDeviceGroupPresentCapabilitiesKHX- #-}- type FieldArrayLength "presentMask"- VkDeviceGroupPresentCapabilitiesKHX- = VK_MAX_DEVICE_GROUP_SIZE_KHX-- {-# INLINE fieldArrayLength #-}- fieldArrayLength = VK_MAX_DEVICE_GROUP_SIZE_KHX-- {-# INLINE getFieldArray #-}- getFieldArray x- = vkPresentMaskArray x- (fromInteger $ natVal' (proxy## :: Proxy## idx)) -- ' closing tick for hsc2hs-- {-# INLINE readFieldArray #-}- readFieldArray x- = readVkPresentMaskArray x- (fromInteger $ natVal' (proxy## :: Proxy## idx)) -- ' closing tick for hsc2hs--instance {-# OVERLAPPING #-}- HasVkModes VkDeviceGroupPresentCapabilitiesKHX where- type VkModesMType VkDeviceGroupPresentCapabilitiesKHX =- VkDeviceGroupPresentModeFlagsKHX-- {-# NOINLINE vkModes #-}- vkModes x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGroupPresentCapabilitiesKHX, modes})-- {-# INLINE vkModesByteOffset #-}- vkModesByteOffset ~_- = #{offset VkDeviceGroupPresentCapabilitiesKHX, modes}-- {-# INLINE readVkModes #-}- readVkModes p- = peekByteOff p #{offset VkDeviceGroupPresentCapabilitiesKHX, modes}-- {-# INLINE writeVkModes #-}- writeVkModes p- = pokeByteOff p #{offset VkDeviceGroupPresentCapabilitiesKHX, modes}--instance {-# OVERLAPPING #-}- HasField "modes" VkDeviceGroupPresentCapabilitiesKHX where- type FieldType "modes" VkDeviceGroupPresentCapabilitiesKHX =- VkDeviceGroupPresentModeFlagsKHX- type FieldOptional "modes" VkDeviceGroupPresentCapabilitiesKHX =- 'False -- ' closing tick for hsc2hs- type FieldOffset "modes" VkDeviceGroupPresentCapabilitiesKHX =- #{offset VkDeviceGroupPresentCapabilitiesKHX, modes}- type FieldIsArray "modes" VkDeviceGroupPresentCapabilitiesKHX =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDeviceGroupPresentCapabilitiesKHX, modes}--instance CanReadField "modes" VkDeviceGroupPresentCapabilitiesKHX- where- {-# INLINE getField #-}- getField = vkModes-- {-# INLINE readField #-}- readField = readVkModes--instance Show VkDeviceGroupPresentCapabilitiesKHX where- showsPrec d x- = showString "VkDeviceGroupPresentCapabilitiesKHX {" .- showString "vkSType = " .- showsPrec d (vkSType x) .- showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .- showString ", " .- showString "vkPresentMaskArray = [" .- showsPrec d- (map (vkPresentMaskArray x) [1 .. VK_MAX_DEVICE_GROUP_SIZE_KHX])- .- showChar ']' .- showString ", " .- showString "vkModes = " . showsPrec d (vkModes x) . showChar '}'
@@ -0,0 +1,266 @@+#include "vulkan/vulkan.h"++{-# LANGUAGE DataKinds #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-}+{-# LANGUAGE TypeFamilies #-}+module Graphics.Vulkan.Types.Struct.VkDeviceGroupPresentInfoKHR+ (VkDeviceGroupPresentInfoKHR(..)) where+import Foreign.Storable (Storable (..))+import GHC.Prim+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Marshal.Internal+import Graphics.Vulkan.Types.Enum.VkDeviceGroupPresentModeFlagsKHR (VkDeviceGroupPresentModeFlagBitsKHR)+import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)+import Graphics.Vulkan.Types.Struct.VkPresentInfoKHR (VkPresentInfoKHR)+import System.IO.Unsafe (unsafeDupablePerformIO)++-- | > typedef struct VkDeviceGroupPresentInfoKHR {+-- > VkStructureType sType;+-- > const void* pNext;+-- > uint32_t swapchainCount;+-- > const uint32_t* pDeviceMasks;+-- > VkDeviceGroupPresentModeFlagBitsKHR mode;+-- > } VkDeviceGroupPresentInfoKHR;+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDeviceGroupPresentInfoKHR.html VkDeviceGroupPresentInfoKHR registry at www.khronos.org>+data VkDeviceGroupPresentInfoKHR = VkDeviceGroupPresentInfoKHR## Addr##+ ByteArray##++instance Eq VkDeviceGroupPresentInfoKHR where+ (VkDeviceGroupPresentInfoKHR## a _) ==+ x@(VkDeviceGroupPresentInfoKHR## b _)+ = EQ == cmpBytes## (sizeOf x) a b++ {-# INLINE (==) #-}++instance Ord VkDeviceGroupPresentInfoKHR where+ (VkDeviceGroupPresentInfoKHR## a _) `compare`+ x@(VkDeviceGroupPresentInfoKHR## b _) = cmpBytes## (sizeOf x) a b++ {-# INLINE compare #-}++instance Storable VkDeviceGroupPresentInfoKHR where+ sizeOf ~_ = #{size VkDeviceGroupPresentInfoKHR}++ {-# INLINE sizeOf #-}+ alignment ~_ = #{alignment VkDeviceGroupPresentInfoKHR}++ {-# INLINE alignment #-}+ peek = peekVkData##++ {-# INLINE peek #-}+ poke = pokeVkData##++ {-# INLINE poke #-}++instance VulkanMarshalPrim VkDeviceGroupPresentInfoKHR where+ unsafeAddr (VkDeviceGroupPresentInfoKHR## a _) = a++ {-# INLINE unsafeAddr #-}+ unsafeByteArray (VkDeviceGroupPresentInfoKHR## _ b) = b++ {-# INLINE unsafeByteArray #-}+ unsafeFromByteArrayOffset off b+ = VkDeviceGroupPresentInfoKHR##+ (plusAddr## (byteArrayContents## b) off)+ b++ {-# INLINE unsafeFromByteArrayOffset #-}++instance VulkanMarshal VkDeviceGroupPresentInfoKHR where+ type StructFields VkDeviceGroupPresentInfoKHR =+ '["sType", "pNext", "swapchainCount", "pDeviceMasks", "mode"] -- ' closing tick for hsc2hs+ type CUnionType VkDeviceGroupPresentInfoKHR = 'False -- ' closing tick for hsc2hs+ type ReturnedOnly VkDeviceGroupPresentInfoKHR = 'False -- ' closing tick for hsc2hs+ type StructExtends VkDeviceGroupPresentInfoKHR =+ '[VkPresentInfoKHR] -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-}+ HasField "sType" VkDeviceGroupPresentInfoKHR where+ type FieldType "sType" VkDeviceGroupPresentInfoKHR =+ VkStructureType+ type FieldOptional "sType" VkDeviceGroupPresentInfoKHR = 'False -- ' closing tick for hsc2hs+ type FieldOffset "sType" VkDeviceGroupPresentInfoKHR =+ #{offset VkDeviceGroupPresentInfoKHR, sType}+ type FieldIsArray "sType" VkDeviceGroupPresentInfoKHR = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDeviceGroupPresentInfoKHR, sType}++instance {-# OVERLAPPING #-}+ CanReadField "sType" VkDeviceGroupPresentInfoKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGroupPresentInfoKHR, sType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceGroupPresentInfoKHR, sType}++instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkDeviceGroupPresentInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGroupPresentInfoKHR, sType}++instance {-# OVERLAPPING #-}+ HasField "pNext" VkDeviceGroupPresentInfoKHR where+ type FieldType "pNext" VkDeviceGroupPresentInfoKHR = Ptr Void+ type FieldOptional "pNext" VkDeviceGroupPresentInfoKHR = 'False -- ' closing tick for hsc2hs+ type FieldOffset "pNext" VkDeviceGroupPresentInfoKHR =+ #{offset VkDeviceGroupPresentInfoKHR, pNext}+ type FieldIsArray "pNext" VkDeviceGroupPresentInfoKHR = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDeviceGroupPresentInfoKHR, pNext}++instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkDeviceGroupPresentInfoKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGroupPresentInfoKHR, pNext})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceGroupPresentInfoKHR, pNext}++instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkDeviceGroupPresentInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGroupPresentInfoKHR, pNext}++instance {-# OVERLAPPING #-}+ HasField "swapchainCount" VkDeviceGroupPresentInfoKHR where+ type FieldType "swapchainCount" VkDeviceGroupPresentInfoKHR =+ Word32+ type FieldOptional "swapchainCount" VkDeviceGroupPresentInfoKHR =+ 'True -- ' closing tick for hsc2hs+ type FieldOffset "swapchainCount" VkDeviceGroupPresentInfoKHR =+ #{offset VkDeviceGroupPresentInfoKHR, swapchainCount}+ type FieldIsArray "swapchainCount" VkDeviceGroupPresentInfoKHR =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = True++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDeviceGroupPresentInfoKHR, swapchainCount}++instance {-# OVERLAPPING #-}+ CanReadField "swapchainCount" VkDeviceGroupPresentInfoKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGroupPresentInfoKHR, swapchainCount})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceGroupPresentInfoKHR, swapchainCount}++instance {-# OVERLAPPING #-}+ CanWriteField "swapchainCount" VkDeviceGroupPresentInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGroupPresentInfoKHR, swapchainCount}++instance {-# OVERLAPPING #-}+ HasField "pDeviceMasks" VkDeviceGroupPresentInfoKHR where+ type FieldType "pDeviceMasks" VkDeviceGroupPresentInfoKHR =+ Ptr Word32+ type FieldOptional "pDeviceMasks" VkDeviceGroupPresentInfoKHR =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "pDeviceMasks" VkDeviceGroupPresentInfoKHR =+ #{offset VkDeviceGroupPresentInfoKHR, pDeviceMasks}+ type FieldIsArray "pDeviceMasks" VkDeviceGroupPresentInfoKHR =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDeviceGroupPresentInfoKHR, pDeviceMasks}++instance {-# OVERLAPPING #-}+ CanReadField "pDeviceMasks" VkDeviceGroupPresentInfoKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGroupPresentInfoKHR, pDeviceMasks})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceGroupPresentInfoKHR, pDeviceMasks}++instance {-# OVERLAPPING #-}+ CanWriteField "pDeviceMasks" VkDeviceGroupPresentInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGroupPresentInfoKHR, pDeviceMasks}++instance {-# OVERLAPPING #-}+ HasField "mode" VkDeviceGroupPresentInfoKHR where+ type FieldType "mode" VkDeviceGroupPresentInfoKHR =+ VkDeviceGroupPresentModeFlagBitsKHR+ type FieldOptional "mode" VkDeviceGroupPresentInfoKHR = 'False -- ' closing tick for hsc2hs+ type FieldOffset "mode" VkDeviceGroupPresentInfoKHR =+ #{offset VkDeviceGroupPresentInfoKHR, mode}+ type FieldIsArray "mode" VkDeviceGroupPresentInfoKHR = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDeviceGroupPresentInfoKHR, mode}++instance {-# OVERLAPPING #-}+ CanReadField "mode" VkDeviceGroupPresentInfoKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGroupPresentInfoKHR, mode})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceGroupPresentInfoKHR, mode}++instance {-# OVERLAPPING #-}+ CanWriteField "mode" VkDeviceGroupPresentInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGroupPresentInfoKHR, mode}++instance Show VkDeviceGroupPresentInfoKHR where+ showsPrec d x+ = showString "VkDeviceGroupPresentInfoKHR {" .+ showString "sType = " .+ showsPrec d (getField @"sType" x) .+ showString ", " .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) .+ showString ", " .+ showString "swapchainCount = " .+ showsPrec d (getField @"swapchainCount" x) .+ showString ", " .+ showString "pDeviceMasks = " .+ showsPrec d (getField @"pDeviceMasks" x) .+ showString ", " .+ showString "mode = " .+ showsPrec d (getField @"mode" x) . showChar '}'
@@ -1,345 +0,0 @@-#include "vulkan/vulkan.h"--{-# LANGUAGE DataKinds #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE MagicHash #-}-{-# LANGUAGE MultiParamTypeClasses #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE TypeFamilies #-}-module Graphics.Vulkan.Types.Struct.VkDeviceGroupPresentInfoKHX- (VkDeviceGroupPresentInfoKHX(..)) where-import Foreign.Storable (Storable (..))-import GHC.Prim-import Graphics.Vulkan.Marshal-import Graphics.Vulkan.Marshal.Internal-import Graphics.Vulkan.Types.Enum.VkDeviceGroupPresentModeFlagsKHX (VkDeviceGroupPresentModeFlagBitsKHX)-import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)-import Graphics.Vulkan.Types.Struct.VkPresentInfoKHR (VkPresentInfoKHR)-import Graphics.Vulkan.Types.StructMembers-import System.IO.Unsafe (unsafeDupablePerformIO)---- | > typedef struct VkDeviceGroupPresentInfoKHX {--- > VkStructureType sType;--- > const void* pNext;--- > uint32_t swapchainCount;--- > const uint32_t* pDeviceMasks;--- > VkDeviceGroupPresentModeFlagBitsKHX mode;--- > } VkDeviceGroupPresentInfoKHX;------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDeviceGroupPresentInfoKHX.html VkDeviceGroupPresentInfoKHX registry at www.khronos.org>-data VkDeviceGroupPresentInfoKHX = VkDeviceGroupPresentInfoKHX## Addr##- ByteArray##--instance Eq VkDeviceGroupPresentInfoKHX where- (VkDeviceGroupPresentInfoKHX## a _) ==- x@(VkDeviceGroupPresentInfoKHX## b _)- = EQ == cmpBytes## (sizeOf x) a b-- {-# INLINE (==) #-}--instance Ord VkDeviceGroupPresentInfoKHX where- (VkDeviceGroupPresentInfoKHX## a _) `compare`- x@(VkDeviceGroupPresentInfoKHX## b _) = cmpBytes## (sizeOf x) a b-- {-# INLINE compare #-}--instance Storable VkDeviceGroupPresentInfoKHX where- sizeOf ~_ = #{size VkDeviceGroupPresentInfoKHX}-- {-# INLINE sizeOf #-}- alignment ~_ = #{alignment VkDeviceGroupPresentInfoKHX}-- {-# INLINE alignment #-}- peek = peekVkData##-- {-# INLINE peek #-}- poke = pokeVkData##-- {-# INLINE poke #-}--instance VulkanMarshalPrim VkDeviceGroupPresentInfoKHX where- unsafeAddr (VkDeviceGroupPresentInfoKHX## a _) = a-- {-# INLINE unsafeAddr #-}- unsafeByteArray (VkDeviceGroupPresentInfoKHX## _ b) = b-- {-# INLINE unsafeByteArray #-}- unsafeFromByteArrayOffset off b- = VkDeviceGroupPresentInfoKHX##- (plusAddr## (byteArrayContents## b) off)- b-- {-# INLINE unsafeFromByteArrayOffset #-}--instance VulkanMarshal VkDeviceGroupPresentInfoKHX where- type StructFields VkDeviceGroupPresentInfoKHX =- '["sType", "pNext", "swapchainCount", "pDeviceMasks", "mode"] -- ' closing tick for hsc2hs- type CUnionType VkDeviceGroupPresentInfoKHX = 'False -- ' closing tick for hsc2hs- type ReturnedOnly VkDeviceGroupPresentInfoKHX = 'False -- ' closing tick for hsc2hs- type StructExtends VkDeviceGroupPresentInfoKHX =- '[VkPresentInfoKHR] -- ' closing tick for hsc2hs--instance {-# OVERLAPPING #-} HasVkSType VkDeviceGroupPresentInfoKHX- where- type VkSTypeMType VkDeviceGroupPresentInfoKHX = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGroupPresentInfoKHX, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkDeviceGroupPresentInfoKHX, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkDeviceGroupPresentInfoKHX, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkDeviceGroupPresentInfoKHX, sType}--instance {-# OVERLAPPING #-}- HasField "sType" VkDeviceGroupPresentInfoKHX where- type FieldType "sType" VkDeviceGroupPresentInfoKHX =- VkStructureType- type FieldOptional "sType" VkDeviceGroupPresentInfoKHX = 'False -- ' closing tick for hsc2hs- type FieldOffset "sType" VkDeviceGroupPresentInfoKHX =- #{offset VkDeviceGroupPresentInfoKHX, sType}- type FieldIsArray "sType" VkDeviceGroupPresentInfoKHX = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDeviceGroupPresentInfoKHX, sType}--instance CanReadField "sType" VkDeviceGroupPresentInfoKHX where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance CanWriteField "sType" VkDeviceGroupPresentInfoKHX where- {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-} HasVkPNext VkDeviceGroupPresentInfoKHX- where- type VkPNextMType VkDeviceGroupPresentInfoKHX = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGroupPresentInfoKHX, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkDeviceGroupPresentInfoKHX, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkDeviceGroupPresentInfoKHX, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkDeviceGroupPresentInfoKHX, pNext}--instance {-# OVERLAPPING #-}- HasField "pNext" VkDeviceGroupPresentInfoKHX where- type FieldType "pNext" VkDeviceGroupPresentInfoKHX = Ptr Void- type FieldOptional "pNext" VkDeviceGroupPresentInfoKHX = 'False -- ' closing tick for hsc2hs- type FieldOffset "pNext" VkDeviceGroupPresentInfoKHX =- #{offset VkDeviceGroupPresentInfoKHX, pNext}- type FieldIsArray "pNext" VkDeviceGroupPresentInfoKHX = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDeviceGroupPresentInfoKHX, pNext}--instance CanReadField "pNext" VkDeviceGroupPresentInfoKHX where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkDeviceGroupPresentInfoKHX where- {-# INLINE writeField #-}- writeField = writeVkPNext--instance {-# OVERLAPPING #-}- HasVkSwapchainCount VkDeviceGroupPresentInfoKHX where- type VkSwapchainCountMType VkDeviceGroupPresentInfoKHX = Word32-- {-# NOINLINE vkSwapchainCount #-}- vkSwapchainCount x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGroupPresentInfoKHX, swapchainCount})-- {-# INLINE vkSwapchainCountByteOffset #-}- vkSwapchainCountByteOffset ~_- = #{offset VkDeviceGroupPresentInfoKHX, swapchainCount}-- {-# INLINE readVkSwapchainCount #-}- readVkSwapchainCount p- = peekByteOff p #{offset VkDeviceGroupPresentInfoKHX, swapchainCount}-- {-# INLINE writeVkSwapchainCount #-}- writeVkSwapchainCount p- = pokeByteOff p #{offset VkDeviceGroupPresentInfoKHX, swapchainCount}--instance {-# OVERLAPPING #-}- HasField "swapchainCount" VkDeviceGroupPresentInfoKHX where- type FieldType "swapchainCount" VkDeviceGroupPresentInfoKHX =- Word32- type FieldOptional "swapchainCount" VkDeviceGroupPresentInfoKHX =- 'True -- ' closing tick for hsc2hs- type FieldOffset "swapchainCount" VkDeviceGroupPresentInfoKHX =- #{offset VkDeviceGroupPresentInfoKHX, swapchainCount}- type FieldIsArray "swapchainCount" VkDeviceGroupPresentInfoKHX =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = True-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDeviceGroupPresentInfoKHX, swapchainCount}--instance CanReadField "swapchainCount" VkDeviceGroupPresentInfoKHX- where- {-# INLINE getField #-}- getField = vkSwapchainCount-- {-# INLINE readField #-}- readField = readVkSwapchainCount--instance CanWriteField "swapchainCount" VkDeviceGroupPresentInfoKHX- where- {-# INLINE writeField #-}- writeField = writeVkSwapchainCount--instance {-# OVERLAPPING #-}- HasVkPDeviceMasks VkDeviceGroupPresentInfoKHX where- type VkPDeviceMasksMType VkDeviceGroupPresentInfoKHX = Ptr Word32-- {-# NOINLINE vkPDeviceMasks #-}- vkPDeviceMasks x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGroupPresentInfoKHX, pDeviceMasks})-- {-# INLINE vkPDeviceMasksByteOffset #-}- vkPDeviceMasksByteOffset ~_- = #{offset VkDeviceGroupPresentInfoKHX, pDeviceMasks}-- {-# INLINE readVkPDeviceMasks #-}- readVkPDeviceMasks p- = peekByteOff p #{offset VkDeviceGroupPresentInfoKHX, pDeviceMasks}-- {-# INLINE writeVkPDeviceMasks #-}- writeVkPDeviceMasks p- = pokeByteOff p #{offset VkDeviceGroupPresentInfoKHX, pDeviceMasks}--instance {-# OVERLAPPING #-}- HasField "pDeviceMasks" VkDeviceGroupPresentInfoKHX where- type FieldType "pDeviceMasks" VkDeviceGroupPresentInfoKHX =- Ptr Word32- type FieldOptional "pDeviceMasks" VkDeviceGroupPresentInfoKHX =- 'False -- ' closing tick for hsc2hs- type FieldOffset "pDeviceMasks" VkDeviceGroupPresentInfoKHX =- #{offset VkDeviceGroupPresentInfoKHX, pDeviceMasks}- type FieldIsArray "pDeviceMasks" VkDeviceGroupPresentInfoKHX =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDeviceGroupPresentInfoKHX, pDeviceMasks}--instance CanReadField "pDeviceMasks" VkDeviceGroupPresentInfoKHX- where- {-# INLINE getField #-}- getField = vkPDeviceMasks-- {-# INLINE readField #-}- readField = readVkPDeviceMasks--instance CanWriteField "pDeviceMasks" VkDeviceGroupPresentInfoKHX- where- {-# INLINE writeField #-}- writeField = writeVkPDeviceMasks--instance {-# OVERLAPPING #-} HasVkMode VkDeviceGroupPresentInfoKHX- where- type VkModeMType VkDeviceGroupPresentInfoKHX =- VkDeviceGroupPresentModeFlagBitsKHX-- {-# NOINLINE vkMode #-}- vkMode x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGroupPresentInfoKHX, mode})-- {-# INLINE vkModeByteOffset #-}- vkModeByteOffset ~_- = #{offset VkDeviceGroupPresentInfoKHX, mode}-- {-# INLINE readVkMode #-}- readVkMode p- = peekByteOff p #{offset VkDeviceGroupPresentInfoKHX, mode}-- {-# INLINE writeVkMode #-}- writeVkMode p- = pokeByteOff p #{offset VkDeviceGroupPresentInfoKHX, mode}--instance {-# OVERLAPPING #-}- HasField "mode" VkDeviceGroupPresentInfoKHX where- type FieldType "mode" VkDeviceGroupPresentInfoKHX =- VkDeviceGroupPresentModeFlagBitsKHX- type FieldOptional "mode" VkDeviceGroupPresentInfoKHX = 'False -- ' closing tick for hsc2hs- type FieldOffset "mode" VkDeviceGroupPresentInfoKHX =- #{offset VkDeviceGroupPresentInfoKHX, mode}- type FieldIsArray "mode" VkDeviceGroupPresentInfoKHX = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDeviceGroupPresentInfoKHX, mode}--instance CanReadField "mode" VkDeviceGroupPresentInfoKHX where- {-# INLINE getField #-}- getField = vkMode-- {-# INLINE readField #-}- readField = readVkMode--instance CanWriteField "mode" VkDeviceGroupPresentInfoKHX where- {-# INLINE writeField #-}- writeField = writeVkMode--instance Show VkDeviceGroupPresentInfoKHX where- showsPrec d x- = showString "VkDeviceGroupPresentInfoKHX {" .- showString "vkSType = " .- showsPrec d (vkSType x) .- showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .- showString ", " .- showString "vkSwapchainCount = " .- showsPrec d (vkSwapchainCount x) .- showString ", " .- showString "vkPDeviceMasks = " .- showsPrec d (vkPDeviceMasks x) .- showString ", " .- showString "vkMode = " . showsPrec d (vkMode x) . showChar '}'
@@ -0,0 +1,292 @@+#include "vulkan/vulkan.h"++{-# LANGUAGE DataKinds #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-}+{-# LANGUAGE TypeFamilies #-}+module Graphics.Vulkan.Types.Struct.VkDeviceGroupRenderPassBeginInfo+ (VkDeviceGroupRenderPassBeginInfo(..)) where+import Foreign.Storable (Storable (..))+import GHC.Prim+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Marshal.Internal+import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)+import Graphics.Vulkan.Types.Struct.VkRect2D (VkRect2D)+import Graphics.Vulkan.Types.Struct.VkRenderPassBeginInfo (VkRenderPassBeginInfo)+import System.IO.Unsafe (unsafeDupablePerformIO)++-- | > typedef struct VkDeviceGroupRenderPassBeginInfo {+-- > VkStructureType sType;+-- > const void* pNext;+-- > uint32_t deviceMask;+-- > uint32_t deviceRenderAreaCount;+-- > const VkRect2D* pDeviceRenderAreas;+-- > } VkDeviceGroupRenderPassBeginInfo;+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDeviceGroupRenderPassBeginInfo.html VkDeviceGroupRenderPassBeginInfo registry at www.khronos.org>+data VkDeviceGroupRenderPassBeginInfo = VkDeviceGroupRenderPassBeginInfo## Addr##+ ByteArray##++instance Eq VkDeviceGroupRenderPassBeginInfo where+ (VkDeviceGroupRenderPassBeginInfo## a _) ==+ x@(VkDeviceGroupRenderPassBeginInfo## b _)+ = EQ == cmpBytes## (sizeOf x) a b++ {-# INLINE (==) #-}++instance Ord VkDeviceGroupRenderPassBeginInfo where+ (VkDeviceGroupRenderPassBeginInfo## a _) `compare`+ x@(VkDeviceGroupRenderPassBeginInfo## b _)+ = cmpBytes## (sizeOf x) a b++ {-# INLINE compare #-}++instance Storable VkDeviceGroupRenderPassBeginInfo where+ sizeOf ~_ = #{size VkDeviceGroupRenderPassBeginInfo}++ {-# INLINE sizeOf #-}+ alignment ~_+ = #{alignment VkDeviceGroupRenderPassBeginInfo}++ {-# INLINE alignment #-}+ peek = peekVkData##++ {-# INLINE peek #-}+ poke = pokeVkData##++ {-# INLINE poke #-}++instance VulkanMarshalPrim VkDeviceGroupRenderPassBeginInfo where+ unsafeAddr (VkDeviceGroupRenderPassBeginInfo## a _) = a++ {-# INLINE unsafeAddr #-}+ unsafeByteArray (VkDeviceGroupRenderPassBeginInfo## _ b) = b++ {-# INLINE unsafeByteArray #-}+ unsafeFromByteArrayOffset off b+ = VkDeviceGroupRenderPassBeginInfo##+ (plusAddr## (byteArrayContents## b) off)+ b++ {-# INLINE unsafeFromByteArrayOffset #-}++instance VulkanMarshal VkDeviceGroupRenderPassBeginInfo where+ type StructFields VkDeviceGroupRenderPassBeginInfo =+ '["sType", "pNext", "deviceMask", "deviceRenderAreaCount", -- ' closing tick for hsc2hs+ "pDeviceRenderAreas"]+ type CUnionType VkDeviceGroupRenderPassBeginInfo = 'False -- ' closing tick for hsc2hs+ type ReturnedOnly VkDeviceGroupRenderPassBeginInfo = 'False -- ' closing tick for hsc2hs+ type StructExtends VkDeviceGroupRenderPassBeginInfo =+ '[VkRenderPassBeginInfo] -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-}+ HasField "sType" VkDeviceGroupRenderPassBeginInfo where+ type FieldType "sType" VkDeviceGroupRenderPassBeginInfo =+ VkStructureType+ type FieldOptional "sType" VkDeviceGroupRenderPassBeginInfo =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "sType" VkDeviceGroupRenderPassBeginInfo =+ #{offset VkDeviceGroupRenderPassBeginInfo, sType}+ type FieldIsArray "sType" VkDeviceGroupRenderPassBeginInfo = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDeviceGroupRenderPassBeginInfo, sType}++instance {-# OVERLAPPING #-}+ CanReadField "sType" VkDeviceGroupRenderPassBeginInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGroupRenderPassBeginInfo, sType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceGroupRenderPassBeginInfo, sType}++instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkDeviceGroupRenderPassBeginInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGroupRenderPassBeginInfo, sType}++instance {-# OVERLAPPING #-}+ HasField "pNext" VkDeviceGroupRenderPassBeginInfo where+ type FieldType "pNext" VkDeviceGroupRenderPassBeginInfo = Ptr Void+ type FieldOptional "pNext" VkDeviceGroupRenderPassBeginInfo =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "pNext" VkDeviceGroupRenderPassBeginInfo =+ #{offset VkDeviceGroupRenderPassBeginInfo, pNext}+ type FieldIsArray "pNext" VkDeviceGroupRenderPassBeginInfo = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDeviceGroupRenderPassBeginInfo, pNext}++instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkDeviceGroupRenderPassBeginInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGroupRenderPassBeginInfo, pNext})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceGroupRenderPassBeginInfo, pNext}++instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkDeviceGroupRenderPassBeginInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGroupRenderPassBeginInfo, pNext}++instance {-# OVERLAPPING #-}+ HasField "deviceMask" VkDeviceGroupRenderPassBeginInfo where+ type FieldType "deviceMask" VkDeviceGroupRenderPassBeginInfo =+ Word32+ type FieldOptional "deviceMask" VkDeviceGroupRenderPassBeginInfo =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "deviceMask" VkDeviceGroupRenderPassBeginInfo =+ #{offset VkDeviceGroupRenderPassBeginInfo, deviceMask}+ type FieldIsArray "deviceMask" VkDeviceGroupRenderPassBeginInfo =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDeviceGroupRenderPassBeginInfo, deviceMask}++instance {-# OVERLAPPING #-}+ CanReadField "deviceMask" VkDeviceGroupRenderPassBeginInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGroupRenderPassBeginInfo, deviceMask})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceGroupRenderPassBeginInfo, deviceMask}++instance {-# OVERLAPPING #-}+ CanWriteField "deviceMask" VkDeviceGroupRenderPassBeginInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGroupRenderPassBeginInfo, deviceMask}++instance {-# OVERLAPPING #-}+ HasField "deviceRenderAreaCount" VkDeviceGroupRenderPassBeginInfo+ where+ type FieldType "deviceRenderAreaCount"+ VkDeviceGroupRenderPassBeginInfo+ = Word32+ type FieldOptional "deviceRenderAreaCount"+ VkDeviceGroupRenderPassBeginInfo+ = 'True -- ' closing tick for hsc2hs+ type FieldOffset "deviceRenderAreaCount"+ VkDeviceGroupRenderPassBeginInfo+ =+ #{offset VkDeviceGroupRenderPassBeginInfo, deviceRenderAreaCount}+ type FieldIsArray "deviceRenderAreaCount"+ VkDeviceGroupRenderPassBeginInfo+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = True++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDeviceGroupRenderPassBeginInfo, deviceRenderAreaCount}++instance {-# OVERLAPPING #-}+ CanReadField "deviceRenderAreaCount"+ VkDeviceGroupRenderPassBeginInfo+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGroupRenderPassBeginInfo, deviceRenderAreaCount})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceGroupRenderPassBeginInfo, deviceRenderAreaCount}++instance {-# OVERLAPPING #-}+ CanWriteField "deviceRenderAreaCount"+ VkDeviceGroupRenderPassBeginInfo+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGroupRenderPassBeginInfo, deviceRenderAreaCount}++instance {-# OVERLAPPING #-}+ HasField "pDeviceRenderAreas" VkDeviceGroupRenderPassBeginInfo+ where+ type FieldType "pDeviceRenderAreas"+ VkDeviceGroupRenderPassBeginInfo+ = Ptr VkRect2D+ type FieldOptional "pDeviceRenderAreas"+ VkDeviceGroupRenderPassBeginInfo+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "pDeviceRenderAreas"+ VkDeviceGroupRenderPassBeginInfo+ =+ #{offset VkDeviceGroupRenderPassBeginInfo, pDeviceRenderAreas}+ type FieldIsArray "pDeviceRenderAreas"+ VkDeviceGroupRenderPassBeginInfo+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDeviceGroupRenderPassBeginInfo, pDeviceRenderAreas}++instance {-# OVERLAPPING #-}+ CanReadField "pDeviceRenderAreas" VkDeviceGroupRenderPassBeginInfo+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGroupRenderPassBeginInfo, pDeviceRenderAreas})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceGroupRenderPassBeginInfo, pDeviceRenderAreas}++instance {-# OVERLAPPING #-}+ CanWriteField "pDeviceRenderAreas" VkDeviceGroupRenderPassBeginInfo+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGroupRenderPassBeginInfo, pDeviceRenderAreas}++instance Show VkDeviceGroupRenderPassBeginInfo where+ showsPrec d x+ = showString "VkDeviceGroupRenderPassBeginInfo {" .+ showString "sType = " .+ showsPrec d (getField @"sType" x) .+ showString ", " .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) .+ showString ", " .+ showString "deviceMask = " .+ showsPrec d (getField @"deviceMask" x) .+ showString ", " .+ showString "deviceRenderAreaCount = " .+ showsPrec d (getField @"deviceRenderAreaCount" x) .+ showString ", " .+ showString "pDeviceRenderAreas = " .+ showsPrec d (getField @"pDeviceRenderAreas" x) .+ showChar '}'
@@ -0,0 +1,11 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Types.Struct.VkDeviceGroupRenderPassBeginInfoKHR+ (VkDeviceGroupRenderPassBeginInfo(..),+ VkDeviceGroupRenderPassBeginInfoKHR)+ where+import Graphics.Vulkan.Types.Struct.VkDeviceGroupRenderPassBeginInfo (VkDeviceGroupRenderPassBeginInfo (..))++-- | Alias for `VkDeviceGroupRenderPassBeginInfo`+type VkDeviceGroupRenderPassBeginInfoKHR =+ VkDeviceGroupRenderPassBeginInfo
@@ -1,386 +0,0 @@-#include "vulkan/vulkan.h"--{-# LANGUAGE DataKinds #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE MagicHash #-}-{-# LANGUAGE MultiParamTypeClasses #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE TypeFamilies #-}-module Graphics.Vulkan.Types.Struct.VkDeviceGroupRenderPassBeginInfoKHX- (VkDeviceGroupRenderPassBeginInfoKHX(..)) where-import Foreign.Storable (Storable (..))-import GHC.Prim-import Graphics.Vulkan.Marshal-import Graphics.Vulkan.Marshal.Internal-import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)-import Graphics.Vulkan.Types.Struct.VkRect2D (VkRect2D)-import Graphics.Vulkan.Types.Struct.VkRenderPassBeginInfo (VkRenderPassBeginInfo)-import Graphics.Vulkan.Types.StructMembers-import System.IO.Unsafe (unsafeDupablePerformIO)---- | > typedef struct VkDeviceGroupRenderPassBeginInfoKHX {--- > VkStructureType sType;--- > const void* pNext;--- > uint32_t deviceMask;--- > uint32_t deviceRenderAreaCount;--- > const VkRect2D* pDeviceRenderAreas;--- > } VkDeviceGroupRenderPassBeginInfoKHX;------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDeviceGroupRenderPassBeginInfoKHX.html VkDeviceGroupRenderPassBeginInfoKHX registry at www.khronos.org>-data VkDeviceGroupRenderPassBeginInfoKHX = VkDeviceGroupRenderPassBeginInfoKHX## Addr##- ByteArray##--instance Eq VkDeviceGroupRenderPassBeginInfoKHX where- (VkDeviceGroupRenderPassBeginInfoKHX## a _) ==- x@(VkDeviceGroupRenderPassBeginInfoKHX## b _)- = EQ == cmpBytes## (sizeOf x) a b-- {-# INLINE (==) #-}--instance Ord VkDeviceGroupRenderPassBeginInfoKHX where- (VkDeviceGroupRenderPassBeginInfoKHX## a _) `compare`- x@(VkDeviceGroupRenderPassBeginInfoKHX## b _)- = cmpBytes## (sizeOf x) a b-- {-# INLINE compare #-}--instance Storable VkDeviceGroupRenderPassBeginInfoKHX where- sizeOf ~_ = #{size VkDeviceGroupRenderPassBeginInfoKHX}-- {-# INLINE sizeOf #-}- alignment ~_- = #{alignment VkDeviceGroupRenderPassBeginInfoKHX}-- {-# INLINE alignment #-}- peek = peekVkData##-- {-# INLINE peek #-}- poke = pokeVkData##-- {-# INLINE poke #-}--instance VulkanMarshalPrim VkDeviceGroupRenderPassBeginInfoKHX- where- unsafeAddr (VkDeviceGroupRenderPassBeginInfoKHX## a _) = a-- {-# INLINE unsafeAddr #-}- unsafeByteArray (VkDeviceGroupRenderPassBeginInfoKHX## _ b) = b-- {-# INLINE unsafeByteArray #-}- unsafeFromByteArrayOffset off b- = VkDeviceGroupRenderPassBeginInfoKHX##- (plusAddr## (byteArrayContents## b) off)- b-- {-# INLINE unsafeFromByteArrayOffset #-}--instance VulkanMarshal VkDeviceGroupRenderPassBeginInfoKHX where- type StructFields VkDeviceGroupRenderPassBeginInfoKHX =- '["sType", "pNext", "deviceMask", "deviceRenderAreaCount", -- ' closing tick for hsc2hs- "pDeviceRenderAreas"]- type CUnionType VkDeviceGroupRenderPassBeginInfoKHX = 'False -- ' closing tick for hsc2hs- type ReturnedOnly VkDeviceGroupRenderPassBeginInfoKHX = 'False -- ' closing tick for hsc2hs- type StructExtends VkDeviceGroupRenderPassBeginInfoKHX =- '[VkRenderPassBeginInfo] -- ' closing tick for hsc2hs--instance {-# OVERLAPPING #-}- HasVkSType VkDeviceGroupRenderPassBeginInfoKHX where- type VkSTypeMType VkDeviceGroupRenderPassBeginInfoKHX =- VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGroupRenderPassBeginInfoKHX, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkDeviceGroupRenderPassBeginInfoKHX, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkDeviceGroupRenderPassBeginInfoKHX, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkDeviceGroupRenderPassBeginInfoKHX, sType}--instance {-# OVERLAPPING #-}- HasField "sType" VkDeviceGroupRenderPassBeginInfoKHX where- type FieldType "sType" VkDeviceGroupRenderPassBeginInfoKHX =- VkStructureType- type FieldOptional "sType" VkDeviceGroupRenderPassBeginInfoKHX =- 'False -- ' closing tick for hsc2hs- type FieldOffset "sType" VkDeviceGroupRenderPassBeginInfoKHX =- #{offset VkDeviceGroupRenderPassBeginInfoKHX, sType}- type FieldIsArray "sType" VkDeviceGroupRenderPassBeginInfoKHX =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDeviceGroupRenderPassBeginInfoKHX, sType}--instance CanReadField "sType" VkDeviceGroupRenderPassBeginInfoKHX- where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance CanWriteField "sType" VkDeviceGroupRenderPassBeginInfoKHX- where- {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-}- HasVkPNext VkDeviceGroupRenderPassBeginInfoKHX where- type VkPNextMType VkDeviceGroupRenderPassBeginInfoKHX = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGroupRenderPassBeginInfoKHX, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkDeviceGroupRenderPassBeginInfoKHX, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkDeviceGroupRenderPassBeginInfoKHX, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkDeviceGroupRenderPassBeginInfoKHX, pNext}--instance {-# OVERLAPPING #-}- HasField "pNext" VkDeviceGroupRenderPassBeginInfoKHX where- type FieldType "pNext" VkDeviceGroupRenderPassBeginInfoKHX =- Ptr Void- type FieldOptional "pNext" VkDeviceGroupRenderPassBeginInfoKHX =- 'False -- ' closing tick for hsc2hs- type FieldOffset "pNext" VkDeviceGroupRenderPassBeginInfoKHX =- #{offset VkDeviceGroupRenderPassBeginInfoKHX, pNext}- type FieldIsArray "pNext" VkDeviceGroupRenderPassBeginInfoKHX =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDeviceGroupRenderPassBeginInfoKHX, pNext}--instance CanReadField "pNext" VkDeviceGroupRenderPassBeginInfoKHX- where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkDeviceGroupRenderPassBeginInfoKHX- where- {-# INLINE writeField #-}- writeField = writeVkPNext--instance {-# OVERLAPPING #-}- HasVkDeviceMask VkDeviceGroupRenderPassBeginInfoKHX where- type VkDeviceMaskMType VkDeviceGroupRenderPassBeginInfoKHX = Word32-- {-# NOINLINE vkDeviceMask #-}- vkDeviceMask x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGroupRenderPassBeginInfoKHX, deviceMask})-- {-# INLINE vkDeviceMaskByteOffset #-}- vkDeviceMaskByteOffset ~_- = #{offset VkDeviceGroupRenderPassBeginInfoKHX, deviceMask}-- {-# INLINE readVkDeviceMask #-}- readVkDeviceMask p- = peekByteOff p #{offset VkDeviceGroupRenderPassBeginInfoKHX, deviceMask}-- {-# INLINE writeVkDeviceMask #-}- writeVkDeviceMask p- = pokeByteOff p #{offset VkDeviceGroupRenderPassBeginInfoKHX, deviceMask}--instance {-# OVERLAPPING #-}- HasField "deviceMask" VkDeviceGroupRenderPassBeginInfoKHX where- type FieldType "deviceMask" VkDeviceGroupRenderPassBeginInfoKHX =- Word32- type FieldOptional "deviceMask" VkDeviceGroupRenderPassBeginInfoKHX- = 'False -- ' closing tick for hsc2hs- type FieldOffset "deviceMask" VkDeviceGroupRenderPassBeginInfoKHX =- #{offset VkDeviceGroupRenderPassBeginInfoKHX, deviceMask}- type FieldIsArray "deviceMask" VkDeviceGroupRenderPassBeginInfoKHX- = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDeviceGroupRenderPassBeginInfoKHX, deviceMask}--instance CanReadField "deviceMask"- VkDeviceGroupRenderPassBeginInfoKHX- where- {-# INLINE getField #-}- getField = vkDeviceMask-- {-# INLINE readField #-}- readField = readVkDeviceMask--instance CanWriteField "deviceMask"- VkDeviceGroupRenderPassBeginInfoKHX- where- {-# INLINE writeField #-}- writeField = writeVkDeviceMask--instance {-# OVERLAPPING #-}- HasVkDeviceRenderAreaCount VkDeviceGroupRenderPassBeginInfoKHX- where- type VkDeviceRenderAreaCountMType- VkDeviceGroupRenderPassBeginInfoKHX- = Word32-- {-# NOINLINE vkDeviceRenderAreaCount #-}- vkDeviceRenderAreaCount x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGroupRenderPassBeginInfoKHX, deviceRenderAreaCount})-- {-# INLINE vkDeviceRenderAreaCountByteOffset #-}- vkDeviceRenderAreaCountByteOffset ~_- = #{offset VkDeviceGroupRenderPassBeginInfoKHX, deviceRenderAreaCount}-- {-# INLINE readVkDeviceRenderAreaCount #-}- readVkDeviceRenderAreaCount p- = peekByteOff p #{offset VkDeviceGroupRenderPassBeginInfoKHX, deviceRenderAreaCount}-- {-# INLINE writeVkDeviceRenderAreaCount #-}- writeVkDeviceRenderAreaCount p- = pokeByteOff p #{offset VkDeviceGroupRenderPassBeginInfoKHX, deviceRenderAreaCount}--instance {-# OVERLAPPING #-}- HasField "deviceRenderAreaCount"- VkDeviceGroupRenderPassBeginInfoKHX- where- type FieldType "deviceRenderAreaCount"- VkDeviceGroupRenderPassBeginInfoKHX- = Word32- type FieldOptional "deviceRenderAreaCount"- VkDeviceGroupRenderPassBeginInfoKHX- = 'True -- ' closing tick for hsc2hs- type FieldOffset "deviceRenderAreaCount"- VkDeviceGroupRenderPassBeginInfoKHX- =- #{offset VkDeviceGroupRenderPassBeginInfoKHX, deviceRenderAreaCount}- type FieldIsArray "deviceRenderAreaCount"- VkDeviceGroupRenderPassBeginInfoKHX- = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = True-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDeviceGroupRenderPassBeginInfoKHX, deviceRenderAreaCount}--instance CanReadField "deviceRenderAreaCount"- VkDeviceGroupRenderPassBeginInfoKHX- where- {-# INLINE getField #-}- getField = vkDeviceRenderAreaCount-- {-# INLINE readField #-}- readField = readVkDeviceRenderAreaCount--instance CanWriteField "deviceRenderAreaCount"- VkDeviceGroupRenderPassBeginInfoKHX- where- {-# INLINE writeField #-}- writeField = writeVkDeviceRenderAreaCount--instance {-# OVERLAPPING #-}- HasVkPDeviceRenderAreas VkDeviceGroupRenderPassBeginInfoKHX where- type VkPDeviceRenderAreasMType VkDeviceGroupRenderPassBeginInfoKHX- = Ptr VkRect2D-- {-# NOINLINE vkPDeviceRenderAreas #-}- vkPDeviceRenderAreas x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGroupRenderPassBeginInfoKHX, pDeviceRenderAreas})-- {-# INLINE vkPDeviceRenderAreasByteOffset #-}- vkPDeviceRenderAreasByteOffset ~_- = #{offset VkDeviceGroupRenderPassBeginInfoKHX, pDeviceRenderAreas}-- {-# INLINE readVkPDeviceRenderAreas #-}- readVkPDeviceRenderAreas p- = peekByteOff p #{offset VkDeviceGroupRenderPassBeginInfoKHX, pDeviceRenderAreas}-- {-# INLINE writeVkPDeviceRenderAreas #-}- writeVkPDeviceRenderAreas p- = pokeByteOff p #{offset VkDeviceGroupRenderPassBeginInfoKHX, pDeviceRenderAreas}--instance {-# OVERLAPPING #-}- HasField "pDeviceRenderAreas" VkDeviceGroupRenderPassBeginInfoKHX- where- type FieldType "pDeviceRenderAreas"- VkDeviceGroupRenderPassBeginInfoKHX- = Ptr VkRect2D- type FieldOptional "pDeviceRenderAreas"- VkDeviceGroupRenderPassBeginInfoKHX- = 'False -- ' closing tick for hsc2hs- type FieldOffset "pDeviceRenderAreas"- VkDeviceGroupRenderPassBeginInfoKHX- =- #{offset VkDeviceGroupRenderPassBeginInfoKHX, pDeviceRenderAreas}- type FieldIsArray "pDeviceRenderAreas"- VkDeviceGroupRenderPassBeginInfoKHX- = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDeviceGroupRenderPassBeginInfoKHX, pDeviceRenderAreas}--instance CanReadField "pDeviceRenderAreas"- VkDeviceGroupRenderPassBeginInfoKHX- where- {-# INLINE getField #-}- getField = vkPDeviceRenderAreas-- {-# INLINE readField #-}- readField = readVkPDeviceRenderAreas--instance CanWriteField "pDeviceRenderAreas"- VkDeviceGroupRenderPassBeginInfoKHX- where- {-# INLINE writeField #-}- writeField = writeVkPDeviceRenderAreas--instance Show VkDeviceGroupRenderPassBeginInfoKHX where- showsPrec d x- = showString "VkDeviceGroupRenderPassBeginInfoKHX {" .- showString "vkSType = " .- showsPrec d (vkSType x) .- showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .- showString ", " .- showString "vkDeviceMask = " .- showsPrec d (vkDeviceMask x) .- showString ", " .- showString "vkDeviceRenderAreaCount = " .- showsPrec d (vkDeviceRenderAreaCount x) .- showString ", " .- showString "vkPDeviceRenderAreas = " .- showsPrec d (vkPDeviceRenderAreas x) . showChar '}'
@@ -0,0 +1,412 @@+#include "vulkan/vulkan.h"++{-# LANGUAGE DataKinds #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-}+{-# LANGUAGE TypeFamilies #-}+module Graphics.Vulkan.Types.Struct.VkDeviceGroupSubmitInfo+ (VkDeviceGroupSubmitInfo(..)) where+import Foreign.Storable (Storable (..))+import GHC.Prim+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Marshal.Internal+import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)+import Graphics.Vulkan.Types.Struct.VkSubmitInfo (VkSubmitInfo)+import System.IO.Unsafe (unsafeDupablePerformIO)++-- | > typedef struct VkDeviceGroupSubmitInfo {+-- > VkStructureType sType;+-- > const void* pNext;+-- > uint32_t waitSemaphoreCount;+-- > const uint32_t* pWaitSemaphoreDeviceIndices;+-- > uint32_t commandBufferCount;+-- > const uint32_t* pCommandBufferDeviceMasks;+-- > uint32_t signalSemaphoreCount;+-- > const uint32_t* pSignalSemaphoreDeviceIndices;+-- > } VkDeviceGroupSubmitInfo;+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDeviceGroupSubmitInfo.html VkDeviceGroupSubmitInfo registry at www.khronos.org>+data VkDeviceGroupSubmitInfo = VkDeviceGroupSubmitInfo## Addr##+ ByteArray##++instance Eq VkDeviceGroupSubmitInfo where+ (VkDeviceGroupSubmitInfo## a _) == x@(VkDeviceGroupSubmitInfo## b _)+ = EQ == cmpBytes## (sizeOf x) a b++ {-# INLINE (==) #-}++instance Ord VkDeviceGroupSubmitInfo where+ (VkDeviceGroupSubmitInfo## a _) `compare`+ x@(VkDeviceGroupSubmitInfo## b _) = cmpBytes## (sizeOf x) a b++ {-# INLINE compare #-}++instance Storable VkDeviceGroupSubmitInfo where+ sizeOf ~_ = #{size VkDeviceGroupSubmitInfo}++ {-# INLINE sizeOf #-}+ alignment ~_ = #{alignment VkDeviceGroupSubmitInfo}++ {-# INLINE alignment #-}+ peek = peekVkData##++ {-# INLINE peek #-}+ poke = pokeVkData##++ {-# INLINE poke #-}++instance VulkanMarshalPrim VkDeviceGroupSubmitInfo where+ unsafeAddr (VkDeviceGroupSubmitInfo## a _) = a++ {-# INLINE unsafeAddr #-}+ unsafeByteArray (VkDeviceGroupSubmitInfo## _ b) = b++ {-# INLINE unsafeByteArray #-}+ unsafeFromByteArrayOffset off b+ = VkDeviceGroupSubmitInfo## (plusAddr## (byteArrayContents## b) off) b++ {-# INLINE unsafeFromByteArrayOffset #-}++instance VulkanMarshal VkDeviceGroupSubmitInfo where+ type StructFields VkDeviceGroupSubmitInfo =+ '["sType", "pNext", "waitSemaphoreCount", -- ' closing tick for hsc2hs+ "pWaitSemaphoreDeviceIndices", "commandBufferCount",+ "pCommandBufferDeviceMasks", "signalSemaphoreCount",+ "pSignalSemaphoreDeviceIndices"]+ type CUnionType VkDeviceGroupSubmitInfo = 'False -- ' closing tick for hsc2hs+ type ReturnedOnly VkDeviceGroupSubmitInfo = 'False -- ' closing tick for hsc2hs+ type StructExtends VkDeviceGroupSubmitInfo = '[VkSubmitInfo] -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-}+ HasField "sType" VkDeviceGroupSubmitInfo where+ type FieldType "sType" VkDeviceGroupSubmitInfo = VkStructureType+ type FieldOptional "sType" VkDeviceGroupSubmitInfo = 'False -- ' closing tick for hsc2hs+ type FieldOffset "sType" VkDeviceGroupSubmitInfo =+ #{offset VkDeviceGroupSubmitInfo, sType}+ type FieldIsArray "sType" VkDeviceGroupSubmitInfo = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset = #{offset VkDeviceGroupSubmitInfo, sType}++instance {-# OVERLAPPING #-}+ CanReadField "sType" VkDeviceGroupSubmitInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGroupSubmitInfo, sType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceGroupSubmitInfo, sType}++instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkDeviceGroupSubmitInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGroupSubmitInfo, sType}++instance {-# OVERLAPPING #-}+ HasField "pNext" VkDeviceGroupSubmitInfo where+ type FieldType "pNext" VkDeviceGroupSubmitInfo = Ptr Void+ type FieldOptional "pNext" VkDeviceGroupSubmitInfo = 'False -- ' closing tick for hsc2hs+ type FieldOffset "pNext" VkDeviceGroupSubmitInfo =+ #{offset VkDeviceGroupSubmitInfo, pNext}+ type FieldIsArray "pNext" VkDeviceGroupSubmitInfo = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset = #{offset VkDeviceGroupSubmitInfo, pNext}++instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkDeviceGroupSubmitInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGroupSubmitInfo, pNext})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceGroupSubmitInfo, pNext}++instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkDeviceGroupSubmitInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGroupSubmitInfo, pNext}++instance {-# OVERLAPPING #-}+ HasField "waitSemaphoreCount" VkDeviceGroupSubmitInfo where+ type FieldType "waitSemaphoreCount" VkDeviceGroupSubmitInfo =+ Word32+ type FieldOptional "waitSemaphoreCount" VkDeviceGroupSubmitInfo =+ 'True -- ' closing tick for hsc2hs+ type FieldOffset "waitSemaphoreCount" VkDeviceGroupSubmitInfo =+ #{offset VkDeviceGroupSubmitInfo, waitSemaphoreCount}+ type FieldIsArray "waitSemaphoreCount" VkDeviceGroupSubmitInfo =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = True++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDeviceGroupSubmitInfo, waitSemaphoreCount}++instance {-# OVERLAPPING #-}+ CanReadField "waitSemaphoreCount" VkDeviceGroupSubmitInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGroupSubmitInfo, waitSemaphoreCount})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceGroupSubmitInfo, waitSemaphoreCount}++instance {-# OVERLAPPING #-}+ CanWriteField "waitSemaphoreCount" VkDeviceGroupSubmitInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGroupSubmitInfo, waitSemaphoreCount}++instance {-# OVERLAPPING #-}+ HasField "pWaitSemaphoreDeviceIndices" VkDeviceGroupSubmitInfo+ where+ type FieldType "pWaitSemaphoreDeviceIndices"+ VkDeviceGroupSubmitInfo+ = Ptr Word32+ type FieldOptional "pWaitSemaphoreDeviceIndices"+ VkDeviceGroupSubmitInfo+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "pWaitSemaphoreDeviceIndices"+ VkDeviceGroupSubmitInfo+ =+ #{offset VkDeviceGroupSubmitInfo, pWaitSemaphoreDeviceIndices}+ type FieldIsArray "pWaitSemaphoreDeviceIndices"+ VkDeviceGroupSubmitInfo+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDeviceGroupSubmitInfo, pWaitSemaphoreDeviceIndices}++instance {-# OVERLAPPING #-}+ CanReadField "pWaitSemaphoreDeviceIndices" VkDeviceGroupSubmitInfo+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGroupSubmitInfo, pWaitSemaphoreDeviceIndices})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceGroupSubmitInfo, pWaitSemaphoreDeviceIndices}++instance {-# OVERLAPPING #-}+ CanWriteField "pWaitSemaphoreDeviceIndices" VkDeviceGroupSubmitInfo+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGroupSubmitInfo, pWaitSemaphoreDeviceIndices}++instance {-# OVERLAPPING #-}+ HasField "commandBufferCount" VkDeviceGroupSubmitInfo where+ type FieldType "commandBufferCount" VkDeviceGroupSubmitInfo =+ Word32+ type FieldOptional "commandBufferCount" VkDeviceGroupSubmitInfo =+ 'True -- ' closing tick for hsc2hs+ type FieldOffset "commandBufferCount" VkDeviceGroupSubmitInfo =+ #{offset VkDeviceGroupSubmitInfo, commandBufferCount}+ type FieldIsArray "commandBufferCount" VkDeviceGroupSubmitInfo =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = True++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDeviceGroupSubmitInfo, commandBufferCount}++instance {-# OVERLAPPING #-}+ CanReadField "commandBufferCount" VkDeviceGroupSubmitInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGroupSubmitInfo, commandBufferCount})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceGroupSubmitInfo, commandBufferCount}++instance {-# OVERLAPPING #-}+ CanWriteField "commandBufferCount" VkDeviceGroupSubmitInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGroupSubmitInfo, commandBufferCount}++instance {-# OVERLAPPING #-}+ HasField "pCommandBufferDeviceMasks" VkDeviceGroupSubmitInfo where+ type FieldType "pCommandBufferDeviceMasks" VkDeviceGroupSubmitInfo+ = Ptr Word32+ type FieldOptional "pCommandBufferDeviceMasks"+ VkDeviceGroupSubmitInfo+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "pCommandBufferDeviceMasks"+ VkDeviceGroupSubmitInfo+ =+ #{offset VkDeviceGroupSubmitInfo, pCommandBufferDeviceMasks}+ type FieldIsArray "pCommandBufferDeviceMasks"+ VkDeviceGroupSubmitInfo+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDeviceGroupSubmitInfo, pCommandBufferDeviceMasks}++instance {-# OVERLAPPING #-}+ CanReadField "pCommandBufferDeviceMasks" VkDeviceGroupSubmitInfo+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGroupSubmitInfo, pCommandBufferDeviceMasks})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceGroupSubmitInfo, pCommandBufferDeviceMasks}++instance {-# OVERLAPPING #-}+ CanWriteField "pCommandBufferDeviceMasks" VkDeviceGroupSubmitInfo+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGroupSubmitInfo, pCommandBufferDeviceMasks}++instance {-# OVERLAPPING #-}+ HasField "signalSemaphoreCount" VkDeviceGroupSubmitInfo where+ type FieldType "signalSemaphoreCount" VkDeviceGroupSubmitInfo =+ Word32+ type FieldOptional "signalSemaphoreCount" VkDeviceGroupSubmitInfo =+ 'True -- ' closing tick for hsc2hs+ type FieldOffset "signalSemaphoreCount" VkDeviceGroupSubmitInfo =+ #{offset VkDeviceGroupSubmitInfo, signalSemaphoreCount}+ type FieldIsArray "signalSemaphoreCount" VkDeviceGroupSubmitInfo =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = True++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDeviceGroupSubmitInfo, signalSemaphoreCount}++instance {-# OVERLAPPING #-}+ CanReadField "signalSemaphoreCount" VkDeviceGroupSubmitInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGroupSubmitInfo, signalSemaphoreCount})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceGroupSubmitInfo, signalSemaphoreCount}++instance {-# OVERLAPPING #-}+ CanWriteField "signalSemaphoreCount" VkDeviceGroupSubmitInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGroupSubmitInfo, signalSemaphoreCount}++instance {-# OVERLAPPING #-}+ HasField "pSignalSemaphoreDeviceIndices" VkDeviceGroupSubmitInfo+ where+ type FieldType "pSignalSemaphoreDeviceIndices"+ VkDeviceGroupSubmitInfo+ = Ptr Word32+ type FieldOptional "pSignalSemaphoreDeviceIndices"+ VkDeviceGroupSubmitInfo+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "pSignalSemaphoreDeviceIndices"+ VkDeviceGroupSubmitInfo+ =+ #{offset VkDeviceGroupSubmitInfo, pSignalSemaphoreDeviceIndices}+ type FieldIsArray "pSignalSemaphoreDeviceIndices"+ VkDeviceGroupSubmitInfo+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDeviceGroupSubmitInfo, pSignalSemaphoreDeviceIndices}++instance {-# OVERLAPPING #-}+ CanReadField "pSignalSemaphoreDeviceIndices"+ VkDeviceGroupSubmitInfo+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGroupSubmitInfo, pSignalSemaphoreDeviceIndices})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceGroupSubmitInfo, pSignalSemaphoreDeviceIndices}++instance {-# OVERLAPPING #-}+ CanWriteField "pSignalSemaphoreDeviceIndices"+ VkDeviceGroupSubmitInfo+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGroupSubmitInfo, pSignalSemaphoreDeviceIndices}++instance Show VkDeviceGroupSubmitInfo where+ showsPrec d x+ = showString "VkDeviceGroupSubmitInfo {" .+ showString "sType = " .+ showsPrec d (getField @"sType" x) .+ showString ", " .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) .+ showString ", " .+ showString "waitSemaphoreCount = " .+ showsPrec d (getField @"waitSemaphoreCount" x) .+ showString ", " .+ showString "pWaitSemaphoreDeviceIndices = " .+ showsPrec d (getField @"pWaitSemaphoreDeviceIndices" x) .+ showString ", " .+ showString "commandBufferCount = " .+ showsPrec d (getField @"commandBufferCount" x) .+ showString ", " .+ showString "pCommandBufferDeviceMasks = " .+ showsPrec d (getField @"pCommandBufferDeviceMasks" x)+ .+ showString ", " .+ showString "signalSemaphoreCount = " .+ showsPrec d (getField @"signalSemaphoreCount" x)+ .+ showString ", " .+ showString+ "pSignalSemaphoreDeviceIndices = "+ .+ showsPrec d+ (getField+ @"pSignalSemaphoreDeviceIndices"+ x)+ . showChar '}'
@@ -0,0 +1,8 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Types.Struct.VkDeviceGroupSubmitInfoKHR+ (VkDeviceGroupSubmitInfo(..), VkDeviceGroupSubmitInfoKHR) where+import Graphics.Vulkan.Types.Struct.VkDeviceGroupSubmitInfo (VkDeviceGroupSubmitInfo (..))++-- | Alias for `VkDeviceGroupSubmitInfo`+type VkDeviceGroupSubmitInfoKHR = VkDeviceGroupSubmitInfo
@@ -1,558 +0,0 @@-#include "vulkan/vulkan.h"--{-# LANGUAGE DataKinds #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE MagicHash #-}-{-# LANGUAGE MultiParamTypeClasses #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE TypeFamilies #-}-module Graphics.Vulkan.Types.Struct.VkDeviceGroupSubmitInfoKHX- (VkDeviceGroupSubmitInfoKHX(..)) where-import Foreign.Storable (Storable (..))-import GHC.Prim-import Graphics.Vulkan.Marshal-import Graphics.Vulkan.Marshal.Internal-import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)-import Graphics.Vulkan.Types.Struct.VkSubmitInfo (VkSubmitInfo)-import Graphics.Vulkan.Types.StructMembers-import System.IO.Unsafe (unsafeDupablePerformIO)---- | > typedef struct VkDeviceGroupSubmitInfoKHX {--- > VkStructureType sType;--- > const void* pNext;--- > uint32_t waitSemaphoreCount;--- > const uint32_t* pWaitSemaphoreDeviceIndices;--- > uint32_t commandBufferCount;--- > const uint32_t* pCommandBufferDeviceMasks;--- > uint32_t signalSemaphoreCount;--- > const uint32_t* pSignalSemaphoreDeviceIndices;--- > } VkDeviceGroupSubmitInfoKHX;------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDeviceGroupSubmitInfoKHX.html VkDeviceGroupSubmitInfoKHX registry at www.khronos.org>-data VkDeviceGroupSubmitInfoKHX = VkDeviceGroupSubmitInfoKHX## Addr##- ByteArray##--instance Eq VkDeviceGroupSubmitInfoKHX where- (VkDeviceGroupSubmitInfoKHX## a _) ==- x@(VkDeviceGroupSubmitInfoKHX## b _)- = EQ == cmpBytes## (sizeOf x) a b-- {-# INLINE (==) #-}--instance Ord VkDeviceGroupSubmitInfoKHX where- (VkDeviceGroupSubmitInfoKHX## a _) `compare`- x@(VkDeviceGroupSubmitInfoKHX## b _) = cmpBytes## (sizeOf x) a b-- {-# INLINE compare #-}--instance Storable VkDeviceGroupSubmitInfoKHX where- sizeOf ~_ = #{size VkDeviceGroupSubmitInfoKHX}-- {-# INLINE sizeOf #-}- alignment ~_ = #{alignment VkDeviceGroupSubmitInfoKHX}-- {-# INLINE alignment #-}- peek = peekVkData##-- {-# INLINE peek #-}- poke = pokeVkData##-- {-# INLINE poke #-}--instance VulkanMarshalPrim VkDeviceGroupSubmitInfoKHX where- unsafeAddr (VkDeviceGroupSubmitInfoKHX## a _) = a-- {-# INLINE unsafeAddr #-}- unsafeByteArray (VkDeviceGroupSubmitInfoKHX## _ b) = b-- {-# INLINE unsafeByteArray #-}- unsafeFromByteArrayOffset off b- = VkDeviceGroupSubmitInfoKHX##- (plusAddr## (byteArrayContents## b) off)- b-- {-# INLINE unsafeFromByteArrayOffset #-}--instance VulkanMarshal VkDeviceGroupSubmitInfoKHX where- type StructFields VkDeviceGroupSubmitInfoKHX =- '["sType", "pNext", "waitSemaphoreCount", -- ' closing tick for hsc2hs- "pWaitSemaphoreDeviceIndices", "commandBufferCount",- "pCommandBufferDeviceMasks", "signalSemaphoreCount",- "pSignalSemaphoreDeviceIndices"]- type CUnionType VkDeviceGroupSubmitInfoKHX = 'False -- ' closing tick for hsc2hs- type ReturnedOnly VkDeviceGroupSubmitInfoKHX = 'False -- ' closing tick for hsc2hs- type StructExtends VkDeviceGroupSubmitInfoKHX = '[VkSubmitInfo] -- ' closing tick for hsc2hs--instance {-# OVERLAPPING #-} HasVkSType VkDeviceGroupSubmitInfoKHX- where- type VkSTypeMType VkDeviceGroupSubmitInfoKHX = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGroupSubmitInfoKHX, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkDeviceGroupSubmitInfoKHX, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkDeviceGroupSubmitInfoKHX, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkDeviceGroupSubmitInfoKHX, sType}--instance {-# OVERLAPPING #-}- HasField "sType" VkDeviceGroupSubmitInfoKHX where- type FieldType "sType" VkDeviceGroupSubmitInfoKHX = VkStructureType- type FieldOptional "sType" VkDeviceGroupSubmitInfoKHX = 'False -- ' closing tick for hsc2hs- type FieldOffset "sType" VkDeviceGroupSubmitInfoKHX =- #{offset VkDeviceGroupSubmitInfoKHX, sType}- type FieldIsArray "sType" VkDeviceGroupSubmitInfoKHX = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDeviceGroupSubmitInfoKHX, sType}--instance CanReadField "sType" VkDeviceGroupSubmitInfoKHX where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance CanWriteField "sType" VkDeviceGroupSubmitInfoKHX where- {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-} HasVkPNext VkDeviceGroupSubmitInfoKHX- where- type VkPNextMType VkDeviceGroupSubmitInfoKHX = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGroupSubmitInfoKHX, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkDeviceGroupSubmitInfoKHX, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkDeviceGroupSubmitInfoKHX, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkDeviceGroupSubmitInfoKHX, pNext}--instance {-# OVERLAPPING #-}- HasField "pNext" VkDeviceGroupSubmitInfoKHX where- type FieldType "pNext" VkDeviceGroupSubmitInfoKHX = Ptr Void- type FieldOptional "pNext" VkDeviceGroupSubmitInfoKHX = 'False -- ' closing tick for hsc2hs- type FieldOffset "pNext" VkDeviceGroupSubmitInfoKHX =- #{offset VkDeviceGroupSubmitInfoKHX, pNext}- type FieldIsArray "pNext" VkDeviceGroupSubmitInfoKHX = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDeviceGroupSubmitInfoKHX, pNext}--instance CanReadField "pNext" VkDeviceGroupSubmitInfoKHX where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkDeviceGroupSubmitInfoKHX where- {-# INLINE writeField #-}- writeField = writeVkPNext--instance {-# OVERLAPPING #-}- HasVkWaitSemaphoreCount VkDeviceGroupSubmitInfoKHX where- type VkWaitSemaphoreCountMType VkDeviceGroupSubmitInfoKHX = Word32-- {-# NOINLINE vkWaitSemaphoreCount #-}- vkWaitSemaphoreCount x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGroupSubmitInfoKHX, waitSemaphoreCount})-- {-# INLINE vkWaitSemaphoreCountByteOffset #-}- vkWaitSemaphoreCountByteOffset ~_- = #{offset VkDeviceGroupSubmitInfoKHX, waitSemaphoreCount}-- {-# INLINE readVkWaitSemaphoreCount #-}- readVkWaitSemaphoreCount p- = peekByteOff p #{offset VkDeviceGroupSubmitInfoKHX, waitSemaphoreCount}-- {-# INLINE writeVkWaitSemaphoreCount #-}- writeVkWaitSemaphoreCount p- = pokeByteOff p #{offset VkDeviceGroupSubmitInfoKHX, waitSemaphoreCount}--instance {-# OVERLAPPING #-}- HasField "waitSemaphoreCount" VkDeviceGroupSubmitInfoKHX where- type FieldType "waitSemaphoreCount" VkDeviceGroupSubmitInfoKHX =- Word32- type FieldOptional "waitSemaphoreCount" VkDeviceGroupSubmitInfoKHX- = 'True -- ' closing tick for hsc2hs- type FieldOffset "waitSemaphoreCount" VkDeviceGroupSubmitInfoKHX =- #{offset VkDeviceGroupSubmitInfoKHX, waitSemaphoreCount}- type FieldIsArray "waitSemaphoreCount" VkDeviceGroupSubmitInfoKHX =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = True-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDeviceGroupSubmitInfoKHX, waitSemaphoreCount}--instance CanReadField "waitSemaphoreCount"- VkDeviceGroupSubmitInfoKHX- where- {-# INLINE getField #-}- getField = vkWaitSemaphoreCount-- {-# INLINE readField #-}- readField = readVkWaitSemaphoreCount--instance CanWriteField "waitSemaphoreCount"- VkDeviceGroupSubmitInfoKHX- where- {-# INLINE writeField #-}- writeField = writeVkWaitSemaphoreCount--instance {-# OVERLAPPING #-}- HasVkPWaitSemaphoreDeviceIndices VkDeviceGroupSubmitInfoKHX where- type VkPWaitSemaphoreDeviceIndicesMType VkDeviceGroupSubmitInfoKHX- = Ptr Word32-- {-# NOINLINE vkPWaitSemaphoreDeviceIndices #-}- vkPWaitSemaphoreDeviceIndices x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGroupSubmitInfoKHX, pWaitSemaphoreDeviceIndices})-- {-# INLINE vkPWaitSemaphoreDeviceIndicesByteOffset #-}- vkPWaitSemaphoreDeviceIndicesByteOffset ~_- = #{offset VkDeviceGroupSubmitInfoKHX, pWaitSemaphoreDeviceIndices}-- {-# INLINE readVkPWaitSemaphoreDeviceIndices #-}- readVkPWaitSemaphoreDeviceIndices p- = peekByteOff p #{offset VkDeviceGroupSubmitInfoKHX, pWaitSemaphoreDeviceIndices}-- {-# INLINE writeVkPWaitSemaphoreDeviceIndices #-}- writeVkPWaitSemaphoreDeviceIndices p- = pokeByteOff p #{offset VkDeviceGroupSubmitInfoKHX, pWaitSemaphoreDeviceIndices}--instance {-# OVERLAPPING #-}- HasField "pWaitSemaphoreDeviceIndices" VkDeviceGroupSubmitInfoKHX- where- type FieldType "pWaitSemaphoreDeviceIndices"- VkDeviceGroupSubmitInfoKHX- = Ptr Word32- type FieldOptional "pWaitSemaphoreDeviceIndices"- VkDeviceGroupSubmitInfoKHX- = 'False -- ' closing tick for hsc2hs- type FieldOffset "pWaitSemaphoreDeviceIndices"- VkDeviceGroupSubmitInfoKHX- =- #{offset VkDeviceGroupSubmitInfoKHX, pWaitSemaphoreDeviceIndices}- type FieldIsArray "pWaitSemaphoreDeviceIndices"- VkDeviceGroupSubmitInfoKHX- = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDeviceGroupSubmitInfoKHX, pWaitSemaphoreDeviceIndices}--instance CanReadField "pWaitSemaphoreDeviceIndices"- VkDeviceGroupSubmitInfoKHX- where- {-# INLINE getField #-}- getField = vkPWaitSemaphoreDeviceIndices-- {-# INLINE readField #-}- readField = readVkPWaitSemaphoreDeviceIndices--instance CanWriteField "pWaitSemaphoreDeviceIndices"- VkDeviceGroupSubmitInfoKHX- where- {-# INLINE writeField #-}- writeField = writeVkPWaitSemaphoreDeviceIndices--instance {-# OVERLAPPING #-}- HasVkCommandBufferCount VkDeviceGroupSubmitInfoKHX where- type VkCommandBufferCountMType VkDeviceGroupSubmitInfoKHX = Word32-- {-# NOINLINE vkCommandBufferCount #-}- vkCommandBufferCount x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGroupSubmitInfoKHX, commandBufferCount})-- {-# INLINE vkCommandBufferCountByteOffset #-}- vkCommandBufferCountByteOffset ~_- = #{offset VkDeviceGroupSubmitInfoKHX, commandBufferCount}-- {-# INLINE readVkCommandBufferCount #-}- readVkCommandBufferCount p- = peekByteOff p #{offset VkDeviceGroupSubmitInfoKHX, commandBufferCount}-- {-# INLINE writeVkCommandBufferCount #-}- writeVkCommandBufferCount p- = pokeByteOff p #{offset VkDeviceGroupSubmitInfoKHX, commandBufferCount}--instance {-# OVERLAPPING #-}- HasField "commandBufferCount" VkDeviceGroupSubmitInfoKHX where- type FieldType "commandBufferCount" VkDeviceGroupSubmitInfoKHX =- Word32- type FieldOptional "commandBufferCount" VkDeviceGroupSubmitInfoKHX- = 'True -- ' closing tick for hsc2hs- type FieldOffset "commandBufferCount" VkDeviceGroupSubmitInfoKHX =- #{offset VkDeviceGroupSubmitInfoKHX, commandBufferCount}- type FieldIsArray "commandBufferCount" VkDeviceGroupSubmitInfoKHX =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = True-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDeviceGroupSubmitInfoKHX, commandBufferCount}--instance CanReadField "commandBufferCount"- VkDeviceGroupSubmitInfoKHX- where- {-# INLINE getField #-}- getField = vkCommandBufferCount-- {-# INLINE readField #-}- readField = readVkCommandBufferCount--instance CanWriteField "commandBufferCount"- VkDeviceGroupSubmitInfoKHX- where- {-# INLINE writeField #-}- writeField = writeVkCommandBufferCount--instance {-# OVERLAPPING #-}- HasVkPCommandBufferDeviceMasks VkDeviceGroupSubmitInfoKHX where- type VkPCommandBufferDeviceMasksMType VkDeviceGroupSubmitInfoKHX =- Ptr Word32-- {-# NOINLINE vkPCommandBufferDeviceMasks #-}- vkPCommandBufferDeviceMasks x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGroupSubmitInfoKHX, pCommandBufferDeviceMasks})-- {-# INLINE vkPCommandBufferDeviceMasksByteOffset #-}- vkPCommandBufferDeviceMasksByteOffset ~_- = #{offset VkDeviceGroupSubmitInfoKHX, pCommandBufferDeviceMasks}-- {-# INLINE readVkPCommandBufferDeviceMasks #-}- readVkPCommandBufferDeviceMasks p- = peekByteOff p #{offset VkDeviceGroupSubmitInfoKHX, pCommandBufferDeviceMasks}-- {-# INLINE writeVkPCommandBufferDeviceMasks #-}- writeVkPCommandBufferDeviceMasks p- = pokeByteOff p #{offset VkDeviceGroupSubmitInfoKHX, pCommandBufferDeviceMasks}--instance {-# OVERLAPPING #-}- HasField "pCommandBufferDeviceMasks" VkDeviceGroupSubmitInfoKHX- where- type FieldType "pCommandBufferDeviceMasks"- VkDeviceGroupSubmitInfoKHX- = Ptr Word32- type FieldOptional "pCommandBufferDeviceMasks"- VkDeviceGroupSubmitInfoKHX- = 'False -- ' closing tick for hsc2hs- type FieldOffset "pCommandBufferDeviceMasks"- VkDeviceGroupSubmitInfoKHX- =- #{offset VkDeviceGroupSubmitInfoKHX, pCommandBufferDeviceMasks}- type FieldIsArray "pCommandBufferDeviceMasks"- VkDeviceGroupSubmitInfoKHX- = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDeviceGroupSubmitInfoKHX, pCommandBufferDeviceMasks}--instance CanReadField "pCommandBufferDeviceMasks"- VkDeviceGroupSubmitInfoKHX- where- {-# INLINE getField #-}- getField = vkPCommandBufferDeviceMasks-- {-# INLINE readField #-}- readField = readVkPCommandBufferDeviceMasks--instance CanWriteField "pCommandBufferDeviceMasks"- VkDeviceGroupSubmitInfoKHX- where- {-# INLINE writeField #-}- writeField = writeVkPCommandBufferDeviceMasks--instance {-# OVERLAPPING #-}- HasVkSignalSemaphoreCount VkDeviceGroupSubmitInfoKHX where- type VkSignalSemaphoreCountMType VkDeviceGroupSubmitInfoKHX =- Word32-- {-# NOINLINE vkSignalSemaphoreCount #-}- vkSignalSemaphoreCount x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGroupSubmitInfoKHX, signalSemaphoreCount})-- {-# INLINE vkSignalSemaphoreCountByteOffset #-}- vkSignalSemaphoreCountByteOffset ~_- = #{offset VkDeviceGroupSubmitInfoKHX, signalSemaphoreCount}-- {-# INLINE readVkSignalSemaphoreCount #-}- readVkSignalSemaphoreCount p- = peekByteOff p #{offset VkDeviceGroupSubmitInfoKHX, signalSemaphoreCount}-- {-# INLINE writeVkSignalSemaphoreCount #-}- writeVkSignalSemaphoreCount p- = pokeByteOff p #{offset VkDeviceGroupSubmitInfoKHX, signalSemaphoreCount}--instance {-# OVERLAPPING #-}- HasField "signalSemaphoreCount" VkDeviceGroupSubmitInfoKHX where- type FieldType "signalSemaphoreCount" VkDeviceGroupSubmitInfoKHX =- Word32- type FieldOptional "signalSemaphoreCount"- VkDeviceGroupSubmitInfoKHX- = 'True -- ' closing tick for hsc2hs- type FieldOffset "signalSemaphoreCount" VkDeviceGroupSubmitInfoKHX- =- #{offset VkDeviceGroupSubmitInfoKHX, signalSemaphoreCount}- type FieldIsArray "signalSemaphoreCount" VkDeviceGroupSubmitInfoKHX- = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = True-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDeviceGroupSubmitInfoKHX, signalSemaphoreCount}--instance CanReadField "signalSemaphoreCount"- VkDeviceGroupSubmitInfoKHX- where- {-# INLINE getField #-}- getField = vkSignalSemaphoreCount-- {-# INLINE readField #-}- readField = readVkSignalSemaphoreCount--instance CanWriteField "signalSemaphoreCount"- VkDeviceGroupSubmitInfoKHX- where- {-# INLINE writeField #-}- writeField = writeVkSignalSemaphoreCount--instance {-# OVERLAPPING #-}- HasVkPSignalSemaphoreDeviceIndices VkDeviceGroupSubmitInfoKHX where- type VkPSignalSemaphoreDeviceIndicesMType- VkDeviceGroupSubmitInfoKHX- = Ptr Word32-- {-# NOINLINE vkPSignalSemaphoreDeviceIndices #-}- vkPSignalSemaphoreDeviceIndices x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGroupSubmitInfoKHX, pSignalSemaphoreDeviceIndices})-- {-# INLINE vkPSignalSemaphoreDeviceIndicesByteOffset #-}- vkPSignalSemaphoreDeviceIndicesByteOffset ~_- = #{offset VkDeviceGroupSubmitInfoKHX, pSignalSemaphoreDeviceIndices}-- {-# INLINE readVkPSignalSemaphoreDeviceIndices #-}- readVkPSignalSemaphoreDeviceIndices p- = peekByteOff p #{offset VkDeviceGroupSubmitInfoKHX, pSignalSemaphoreDeviceIndices}-- {-# INLINE writeVkPSignalSemaphoreDeviceIndices #-}- writeVkPSignalSemaphoreDeviceIndices p- = pokeByteOff p #{offset VkDeviceGroupSubmitInfoKHX, pSignalSemaphoreDeviceIndices}--instance {-# OVERLAPPING #-}- HasField "pSignalSemaphoreDeviceIndices" VkDeviceGroupSubmitInfoKHX- where- type FieldType "pSignalSemaphoreDeviceIndices"- VkDeviceGroupSubmitInfoKHX- = Ptr Word32- type FieldOptional "pSignalSemaphoreDeviceIndices"- VkDeviceGroupSubmitInfoKHX- = 'False -- ' closing tick for hsc2hs- type FieldOffset "pSignalSemaphoreDeviceIndices"- VkDeviceGroupSubmitInfoKHX- =- #{offset VkDeviceGroupSubmitInfoKHX, pSignalSemaphoreDeviceIndices}- type FieldIsArray "pSignalSemaphoreDeviceIndices"- VkDeviceGroupSubmitInfoKHX- = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDeviceGroupSubmitInfoKHX, pSignalSemaphoreDeviceIndices}--instance CanReadField "pSignalSemaphoreDeviceIndices"- VkDeviceGroupSubmitInfoKHX- where- {-# INLINE getField #-}- getField = vkPSignalSemaphoreDeviceIndices-- {-# INLINE readField #-}- readField = readVkPSignalSemaphoreDeviceIndices--instance CanWriteField "pSignalSemaphoreDeviceIndices"- VkDeviceGroupSubmitInfoKHX- where- {-# INLINE writeField #-}- writeField = writeVkPSignalSemaphoreDeviceIndices--instance Show VkDeviceGroupSubmitInfoKHX where- showsPrec d x- = showString "VkDeviceGroupSubmitInfoKHX {" .- showString "vkSType = " .- showsPrec d (vkSType x) .- showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .- showString ", " .- showString "vkWaitSemaphoreCount = " .- showsPrec d (vkWaitSemaphoreCount x) .- showString ", " .- showString "vkPWaitSemaphoreDeviceIndices = " .- showsPrec d (vkPWaitSemaphoreDeviceIndices x) .- showString ", " .- showString "vkCommandBufferCount = " .- showsPrec d (vkCommandBufferCount x) .- showString ", " .- showString "vkPCommandBufferDeviceMasks = " .- showsPrec d (vkPCommandBufferDeviceMasks x) .- showString ", " .- showString "vkSignalSemaphoreCount = " .- showsPrec d (vkSignalSemaphoreCount x) .- showString ", " .- showString- "vkPSignalSemaphoreDeviceIndices = "- .- showsPrec d- (vkPSignalSemaphoreDeviceIndices x)- . showChar '}'
@@ -0,0 +1,198 @@+#include "vulkan/vulkan.h"++{-# LANGUAGE DataKinds #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-}+{-# LANGUAGE TypeFamilies #-}+module Graphics.Vulkan.Types.Struct.VkDeviceGroupSwapchainCreateInfoKHR+ (VkDeviceGroupSwapchainCreateInfoKHR(..)) where+import Foreign.Storable (Storable (..))+import GHC.Prim+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Marshal.Internal+import Graphics.Vulkan.Types.Enum.VkDeviceGroupPresentModeFlagsKHR (VkDeviceGroupPresentModeFlagsKHR)+import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)+import Graphics.Vulkan.Types.Struct.VkSwapchainCreateInfoKHR (VkSwapchainCreateInfoKHR)+import System.IO.Unsafe (unsafeDupablePerformIO)++-- | > typedef struct VkDeviceGroupSwapchainCreateInfoKHR {+-- > VkStructureType sType;+-- > const void* pNext;+-- > VkDeviceGroupPresentModeFlagsKHR modes;+-- > } VkDeviceGroupSwapchainCreateInfoKHR;+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDeviceGroupSwapchainCreateInfoKHR.html VkDeviceGroupSwapchainCreateInfoKHR registry at www.khronos.org>+data VkDeviceGroupSwapchainCreateInfoKHR = VkDeviceGroupSwapchainCreateInfoKHR## Addr##+ ByteArray##++instance Eq VkDeviceGroupSwapchainCreateInfoKHR where+ (VkDeviceGroupSwapchainCreateInfoKHR## a _) ==+ x@(VkDeviceGroupSwapchainCreateInfoKHR## b _)+ = EQ == cmpBytes## (sizeOf x) a b++ {-# INLINE (==) #-}++instance Ord VkDeviceGroupSwapchainCreateInfoKHR where+ (VkDeviceGroupSwapchainCreateInfoKHR## a _) `compare`+ x@(VkDeviceGroupSwapchainCreateInfoKHR## b _)+ = cmpBytes## (sizeOf x) a b++ {-# INLINE compare #-}++instance Storable VkDeviceGroupSwapchainCreateInfoKHR where+ sizeOf ~_ = #{size VkDeviceGroupSwapchainCreateInfoKHR}++ {-# INLINE sizeOf #-}+ alignment ~_+ = #{alignment VkDeviceGroupSwapchainCreateInfoKHR}++ {-# INLINE alignment #-}+ peek = peekVkData##++ {-# INLINE peek #-}+ poke = pokeVkData##++ {-# INLINE poke #-}++instance VulkanMarshalPrim VkDeviceGroupSwapchainCreateInfoKHR+ where+ unsafeAddr (VkDeviceGroupSwapchainCreateInfoKHR## a _) = a++ {-# INLINE unsafeAddr #-}+ unsafeByteArray (VkDeviceGroupSwapchainCreateInfoKHR## _ b) = b++ {-# INLINE unsafeByteArray #-}+ unsafeFromByteArrayOffset off b+ = VkDeviceGroupSwapchainCreateInfoKHR##+ (plusAddr## (byteArrayContents## b) off)+ b++ {-# INLINE unsafeFromByteArrayOffset #-}++instance VulkanMarshal VkDeviceGroupSwapchainCreateInfoKHR where+ type StructFields VkDeviceGroupSwapchainCreateInfoKHR =+ '["sType", "pNext", "modes"] -- ' closing tick for hsc2hs+ type CUnionType VkDeviceGroupSwapchainCreateInfoKHR = 'False -- ' closing tick for hsc2hs+ type ReturnedOnly VkDeviceGroupSwapchainCreateInfoKHR = 'False -- ' closing tick for hsc2hs+ type StructExtends VkDeviceGroupSwapchainCreateInfoKHR =+ '[VkSwapchainCreateInfoKHR] -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-}+ HasField "sType" VkDeviceGroupSwapchainCreateInfoKHR where+ type FieldType "sType" VkDeviceGroupSwapchainCreateInfoKHR =+ VkStructureType+ type FieldOptional "sType" VkDeviceGroupSwapchainCreateInfoKHR =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "sType" VkDeviceGroupSwapchainCreateInfoKHR =+ #{offset VkDeviceGroupSwapchainCreateInfoKHR, sType}+ type FieldIsArray "sType" VkDeviceGroupSwapchainCreateInfoKHR =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDeviceGroupSwapchainCreateInfoKHR, sType}++instance {-# OVERLAPPING #-}+ CanReadField "sType" VkDeviceGroupSwapchainCreateInfoKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGroupSwapchainCreateInfoKHR, sType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceGroupSwapchainCreateInfoKHR, sType}++instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkDeviceGroupSwapchainCreateInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGroupSwapchainCreateInfoKHR, sType}++instance {-# OVERLAPPING #-}+ HasField "pNext" VkDeviceGroupSwapchainCreateInfoKHR where+ type FieldType "pNext" VkDeviceGroupSwapchainCreateInfoKHR =+ Ptr Void+ type FieldOptional "pNext" VkDeviceGroupSwapchainCreateInfoKHR =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "pNext" VkDeviceGroupSwapchainCreateInfoKHR =+ #{offset VkDeviceGroupSwapchainCreateInfoKHR, pNext}+ type FieldIsArray "pNext" VkDeviceGroupSwapchainCreateInfoKHR =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDeviceGroupSwapchainCreateInfoKHR, pNext}++instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkDeviceGroupSwapchainCreateInfoKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGroupSwapchainCreateInfoKHR, pNext})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceGroupSwapchainCreateInfoKHR, pNext}++instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkDeviceGroupSwapchainCreateInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGroupSwapchainCreateInfoKHR, pNext}++instance {-# OVERLAPPING #-}+ HasField "modes" VkDeviceGroupSwapchainCreateInfoKHR where+ type FieldType "modes" VkDeviceGroupSwapchainCreateInfoKHR =+ VkDeviceGroupPresentModeFlagsKHR+ type FieldOptional "modes" VkDeviceGroupSwapchainCreateInfoKHR =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "modes" VkDeviceGroupSwapchainCreateInfoKHR =+ #{offset VkDeviceGroupSwapchainCreateInfoKHR, modes}+ type FieldIsArray "modes" VkDeviceGroupSwapchainCreateInfoKHR =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDeviceGroupSwapchainCreateInfoKHR, modes}++instance {-# OVERLAPPING #-}+ CanReadField "modes" VkDeviceGroupSwapchainCreateInfoKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceGroupSwapchainCreateInfoKHR, modes})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceGroupSwapchainCreateInfoKHR, modes}++instance {-# OVERLAPPING #-}+ CanWriteField "modes" VkDeviceGroupSwapchainCreateInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceGroupSwapchainCreateInfoKHR, modes}++instance Show VkDeviceGroupSwapchainCreateInfoKHR where+ showsPrec d x+ = showString "VkDeviceGroupSwapchainCreateInfoKHR {" .+ showString "sType = " .+ showsPrec d (getField @"sType" x) .+ showString ", " .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) .+ showString ", " .+ showString "modes = " .+ showsPrec d (getField @"modes" x) . showChar '}'
@@ -1,250 +0,0 @@-#include "vulkan/vulkan.h"--{-# LANGUAGE DataKinds #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE MagicHash #-}-{-# LANGUAGE MultiParamTypeClasses #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE TypeFamilies #-}-module Graphics.Vulkan.Types.Struct.VkDeviceGroupSwapchainCreateInfoKHX- (VkDeviceGroupSwapchainCreateInfoKHX(..)) where-import Foreign.Storable (Storable (..))-import GHC.Prim-import Graphics.Vulkan.Marshal-import Graphics.Vulkan.Marshal.Internal-import Graphics.Vulkan.Types.Enum.VkDeviceGroupPresentModeFlagsKHX (VkDeviceGroupPresentModeFlagsKHX)-import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)-import Graphics.Vulkan.Types.Struct.VkSwapchainCreateInfoKHR (VkSwapchainCreateInfoKHR)-import Graphics.Vulkan.Types.StructMembers-import System.IO.Unsafe (unsafeDupablePerformIO)---- | > typedef struct VkDeviceGroupSwapchainCreateInfoKHX {--- > VkStructureType sType;--- > const void* pNext;--- > VkDeviceGroupPresentModeFlagsKHX modes;--- > } VkDeviceGroupSwapchainCreateInfoKHX;------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDeviceGroupSwapchainCreateInfoKHX.html VkDeviceGroupSwapchainCreateInfoKHX registry at www.khronos.org>-data VkDeviceGroupSwapchainCreateInfoKHX = VkDeviceGroupSwapchainCreateInfoKHX## Addr##- ByteArray##--instance Eq VkDeviceGroupSwapchainCreateInfoKHX where- (VkDeviceGroupSwapchainCreateInfoKHX## a _) ==- x@(VkDeviceGroupSwapchainCreateInfoKHX## b _)- = EQ == cmpBytes## (sizeOf x) a b-- {-# INLINE (==) #-}--instance Ord VkDeviceGroupSwapchainCreateInfoKHX where- (VkDeviceGroupSwapchainCreateInfoKHX## a _) `compare`- x@(VkDeviceGroupSwapchainCreateInfoKHX## b _)- = cmpBytes## (sizeOf x) a b-- {-# INLINE compare #-}--instance Storable VkDeviceGroupSwapchainCreateInfoKHX where- sizeOf ~_ = #{size VkDeviceGroupSwapchainCreateInfoKHX}-- {-# INLINE sizeOf #-}- alignment ~_- = #{alignment VkDeviceGroupSwapchainCreateInfoKHX}-- {-# INLINE alignment #-}- peek = peekVkData##-- {-# INLINE peek #-}- poke = pokeVkData##-- {-# INLINE poke #-}--instance VulkanMarshalPrim VkDeviceGroupSwapchainCreateInfoKHX- where- unsafeAddr (VkDeviceGroupSwapchainCreateInfoKHX## a _) = a-- {-# INLINE unsafeAddr #-}- unsafeByteArray (VkDeviceGroupSwapchainCreateInfoKHX## _ b) = b-- {-# INLINE unsafeByteArray #-}- unsafeFromByteArrayOffset off b- = VkDeviceGroupSwapchainCreateInfoKHX##- (plusAddr## (byteArrayContents## b) off)- b-- {-# INLINE unsafeFromByteArrayOffset #-}--instance VulkanMarshal VkDeviceGroupSwapchainCreateInfoKHX where- type StructFields VkDeviceGroupSwapchainCreateInfoKHX =- '["sType", "pNext", "modes"] -- ' closing tick for hsc2hs- type CUnionType VkDeviceGroupSwapchainCreateInfoKHX = 'False -- ' closing tick for hsc2hs- type ReturnedOnly VkDeviceGroupSwapchainCreateInfoKHX = 'False -- ' closing tick for hsc2hs- type StructExtends VkDeviceGroupSwapchainCreateInfoKHX =- '[VkSwapchainCreateInfoKHR] -- ' closing tick for hsc2hs--instance {-# OVERLAPPING #-}- HasVkSType VkDeviceGroupSwapchainCreateInfoKHX where- type VkSTypeMType VkDeviceGroupSwapchainCreateInfoKHX =- VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGroupSwapchainCreateInfoKHX, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkDeviceGroupSwapchainCreateInfoKHX, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkDeviceGroupSwapchainCreateInfoKHX, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkDeviceGroupSwapchainCreateInfoKHX, sType}--instance {-# OVERLAPPING #-}- HasField "sType" VkDeviceGroupSwapchainCreateInfoKHX where- type FieldType "sType" VkDeviceGroupSwapchainCreateInfoKHX =- VkStructureType- type FieldOptional "sType" VkDeviceGroupSwapchainCreateInfoKHX =- 'False -- ' closing tick for hsc2hs- type FieldOffset "sType" VkDeviceGroupSwapchainCreateInfoKHX =- #{offset VkDeviceGroupSwapchainCreateInfoKHX, sType}- type FieldIsArray "sType" VkDeviceGroupSwapchainCreateInfoKHX =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDeviceGroupSwapchainCreateInfoKHX, sType}--instance CanReadField "sType" VkDeviceGroupSwapchainCreateInfoKHX- where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance CanWriteField "sType" VkDeviceGroupSwapchainCreateInfoKHX- where- {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-}- HasVkPNext VkDeviceGroupSwapchainCreateInfoKHX where- type VkPNextMType VkDeviceGroupSwapchainCreateInfoKHX = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGroupSwapchainCreateInfoKHX, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkDeviceGroupSwapchainCreateInfoKHX, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkDeviceGroupSwapchainCreateInfoKHX, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkDeviceGroupSwapchainCreateInfoKHX, pNext}--instance {-# OVERLAPPING #-}- HasField "pNext" VkDeviceGroupSwapchainCreateInfoKHX where- type FieldType "pNext" VkDeviceGroupSwapchainCreateInfoKHX =- Ptr Void- type FieldOptional "pNext" VkDeviceGroupSwapchainCreateInfoKHX =- 'False -- ' closing tick for hsc2hs- type FieldOffset "pNext" VkDeviceGroupSwapchainCreateInfoKHX =- #{offset VkDeviceGroupSwapchainCreateInfoKHX, pNext}- type FieldIsArray "pNext" VkDeviceGroupSwapchainCreateInfoKHX =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDeviceGroupSwapchainCreateInfoKHX, pNext}--instance CanReadField "pNext" VkDeviceGroupSwapchainCreateInfoKHX- where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkDeviceGroupSwapchainCreateInfoKHX- where- {-# INLINE writeField #-}- writeField = writeVkPNext--instance {-# OVERLAPPING #-}- HasVkModes VkDeviceGroupSwapchainCreateInfoKHX where- type VkModesMType VkDeviceGroupSwapchainCreateInfoKHX =- VkDeviceGroupPresentModeFlagsKHX-- {-# NOINLINE vkModes #-}- vkModes x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceGroupSwapchainCreateInfoKHX, modes})-- {-# INLINE vkModesByteOffset #-}- vkModesByteOffset ~_- = #{offset VkDeviceGroupSwapchainCreateInfoKHX, modes}-- {-# INLINE readVkModes #-}- readVkModes p- = peekByteOff p #{offset VkDeviceGroupSwapchainCreateInfoKHX, modes}-- {-# INLINE writeVkModes #-}- writeVkModes p- = pokeByteOff p #{offset VkDeviceGroupSwapchainCreateInfoKHX, modes}--instance {-# OVERLAPPING #-}- HasField "modes" VkDeviceGroupSwapchainCreateInfoKHX where- type FieldType "modes" VkDeviceGroupSwapchainCreateInfoKHX =- VkDeviceGroupPresentModeFlagsKHX- type FieldOptional "modes" VkDeviceGroupSwapchainCreateInfoKHX =- 'False -- ' closing tick for hsc2hs- type FieldOffset "modes" VkDeviceGroupSwapchainCreateInfoKHX =- #{offset VkDeviceGroupSwapchainCreateInfoKHX, modes}- type FieldIsArray "modes" VkDeviceGroupSwapchainCreateInfoKHX =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkDeviceGroupSwapchainCreateInfoKHX, modes}--instance CanReadField "modes" VkDeviceGroupSwapchainCreateInfoKHX- where- {-# INLINE getField #-}- getField = vkModes-- {-# INLINE readField #-}- readField = readVkModes--instance CanWriteField "modes" VkDeviceGroupSwapchainCreateInfoKHX- where- {-# INLINE writeField #-}- writeField = writeVkModes--instance Show VkDeviceGroupSwapchainCreateInfoKHX where- showsPrec d x- = showString "VkDeviceGroupSwapchainCreateInfoKHX {" .- showString "vkSType = " .- showsPrec d (vkSType x) .- showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .- showString ", " .- showString "vkModes = " . showsPrec d (vkModes x) . showChar '}'
@@ -5,17 +5,17 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkDeviceQueueCreateInfo (VkDeviceQueueCreateInfo(..)) where-import Foreign.Storable (Storable (..))+import Foreign.Storable (Storable (..)) import GHC.Prim import Graphics.Vulkan.Marshal import Graphics.Vulkan.Marshal.Internal-import Graphics.Vulkan.Types.Bitmasks (VkDeviceQueueCreateFlags)-import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)-import Graphics.Vulkan.Types.StructMembers-import System.IO.Unsafe (unsafeDupablePerformIO)+import Graphics.Vulkan.Types.Enum.VkDeviceQueueCreateFlags (VkDeviceQueueCreateFlags)+import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)+import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkDeviceQueueCreateInfo { -- > VkStructureType sType;@@ -26,7 +26,7 @@ -- > const float* pQueuePriorities; -- > } VkDeviceQueueCreateInfo; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDeviceQueueCreateInfo.html VkDeviceQueueCreateInfo registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDeviceQueueCreateInfo.html VkDeviceQueueCreateInfo registry at www.khronos.org> data VkDeviceQueueCreateInfo = VkDeviceQueueCreateInfo## Addr## ByteArray## @@ -76,27 +76,6 @@ type ReturnedOnly VkDeviceQueueCreateInfo = 'False -- ' closing tick for hsc2hs type StructExtends VkDeviceQueueCreateInfo = '[] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkSType VkDeviceQueueCreateInfo- where- type VkSTypeMType VkDeviceQueueCreateInfo = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceQueueCreateInfo, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkDeviceQueueCreateInfo, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkDeviceQueueCreateInfo, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkDeviceQueueCreateInfo, sType}- instance {-# OVERLAPPING #-} HasField "sType" VkDeviceQueueCreateInfo where type FieldType "sType" VkDeviceQueueCreateInfo = VkStructureType@@ -111,37 +90,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkDeviceQueueCreateInfo, sType} -instance CanReadField "sType" VkDeviceQueueCreateInfo where- {-# INLINE getField #-}- getField = vkSType+instance {-# OVERLAPPING #-}+ CanReadField "sType" VkDeviceQueueCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceQueueCreateInfo, sType}) {-# INLINE readField #-}- readField = readVkSType+ readField p+ = peekByteOff p #{offset VkDeviceQueueCreateInfo, sType} -instance CanWriteField "sType" VkDeviceQueueCreateInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkDeviceQueueCreateInfo where {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-} HasVkPNext VkDeviceQueueCreateInfo- where- type VkPNextMType VkDeviceQueueCreateInfo = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceQueueCreateInfo, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkDeviceQueueCreateInfo, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkDeviceQueueCreateInfo, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkDeviceQueueCreateInfo, pNext}+ writeField p+ = pokeByteOff p #{offset VkDeviceQueueCreateInfo, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkDeviceQueueCreateInfo where@@ -157,38 +121,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkDeviceQueueCreateInfo, pNext} -instance CanReadField "pNext" VkDeviceQueueCreateInfo where- {-# INLINE getField #-}- getField = vkPNext+instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkDeviceQueueCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceQueueCreateInfo, pNext}) {-# INLINE readField #-}- readField = readVkPNext+ readField p+ = peekByteOff p #{offset VkDeviceQueueCreateInfo, pNext} -instance CanWriteField "pNext" VkDeviceQueueCreateInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkDeviceQueueCreateInfo where {-# INLINE writeField #-}- writeField = writeVkPNext--instance {-# OVERLAPPING #-} HasVkFlags VkDeviceQueueCreateInfo- where- type VkFlagsMType VkDeviceQueueCreateInfo =- VkDeviceQueueCreateFlags-- {-# NOINLINE vkFlags #-}- vkFlags x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceQueueCreateInfo, flags})-- {-# INLINE vkFlagsByteOffset #-}- vkFlagsByteOffset ~_- = #{offset VkDeviceQueueCreateInfo, flags}-- {-# INLINE readVkFlags #-}- readVkFlags p- = peekByteOff p #{offset VkDeviceQueueCreateInfo, flags}-- {-# INLINE writeVkFlags #-}- writeVkFlags p- = pokeByteOff p #{offset VkDeviceQueueCreateInfo, flags}+ writeField p+ = pokeByteOff p #{offset VkDeviceQueueCreateInfo, pNext} instance {-# OVERLAPPING #-} HasField "flags" VkDeviceQueueCreateInfo where@@ -205,37 +153,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkDeviceQueueCreateInfo, flags} -instance CanReadField "flags" VkDeviceQueueCreateInfo where- {-# INLINE getField #-}- getField = vkFlags-- {-# INLINE readField #-}- readField = readVkFlags--instance CanWriteField "flags" VkDeviceQueueCreateInfo where- {-# INLINE writeField #-}- writeField = writeVkFlags- instance {-# OVERLAPPING #-}- HasVkQueueFamilyIndex VkDeviceQueueCreateInfo where- type VkQueueFamilyIndexMType VkDeviceQueueCreateInfo = Word32-- {-# NOINLINE vkQueueFamilyIndex #-}- vkQueueFamilyIndex x+ CanReadField "flags" VkDeviceQueueCreateInfo where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceQueueCreateInfo, queueFamilyIndex})-- {-# INLINE vkQueueFamilyIndexByteOffset #-}- vkQueueFamilyIndexByteOffset ~_- = #{offset VkDeviceQueueCreateInfo, queueFamilyIndex}+ (peekByteOff (unsafePtr x) #{offset VkDeviceQueueCreateInfo, flags}) - {-# INLINE readVkQueueFamilyIndex #-}- readVkQueueFamilyIndex p- = peekByteOff p #{offset VkDeviceQueueCreateInfo, queueFamilyIndex}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceQueueCreateInfo, flags} - {-# INLINE writeVkQueueFamilyIndex #-}- writeVkQueueFamilyIndex p- = pokeByteOff p #{offset VkDeviceQueueCreateInfo, queueFamilyIndex}+instance {-# OVERLAPPING #-}+ CanWriteField "flags" VkDeviceQueueCreateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceQueueCreateInfo, flags} instance {-# OVERLAPPING #-} HasField "queueFamilyIndex" VkDeviceQueueCreateInfo where@@ -254,39 +187,22 @@ fieldOffset = #{offset VkDeviceQueueCreateInfo, queueFamilyIndex} -instance CanReadField "queueFamilyIndex" VkDeviceQueueCreateInfo- where- {-# INLINE getField #-}- getField = vkQueueFamilyIndex-- {-# INLINE readField #-}- readField = readVkQueueFamilyIndex--instance CanWriteField "queueFamilyIndex" VkDeviceQueueCreateInfo- where- {-# INLINE writeField #-}- writeField = writeVkQueueFamilyIndex- instance {-# OVERLAPPING #-}- HasVkQueueCount VkDeviceQueueCreateInfo where- type VkQueueCountMType VkDeviceQueueCreateInfo = Word32-- {-# NOINLINE vkQueueCount #-}- vkQueueCount x+ CanReadField "queueFamilyIndex" VkDeviceQueueCreateInfo where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceQueueCreateInfo, queueCount})-- {-# INLINE vkQueueCountByteOffset #-}- vkQueueCountByteOffset ~_- = #{offset VkDeviceQueueCreateInfo, queueCount}+ (peekByteOff (unsafePtr x) #{offset VkDeviceQueueCreateInfo, queueFamilyIndex}) - {-# INLINE readVkQueueCount #-}- readVkQueueCount p- = peekByteOff p #{offset VkDeviceQueueCreateInfo, queueCount}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceQueueCreateInfo, queueFamilyIndex} - {-# INLINE writeVkQueueCount #-}- writeVkQueueCount p- = pokeByteOff p #{offset VkDeviceQueueCreateInfo, queueCount}+instance {-# OVERLAPPING #-}+ CanWriteField "queueFamilyIndex" VkDeviceQueueCreateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceQueueCreateInfo, queueFamilyIndex} instance {-# OVERLAPPING #-} HasField "queueCount" VkDeviceQueueCreateInfo where@@ -303,38 +219,22 @@ fieldOffset = #{offset VkDeviceQueueCreateInfo, queueCount} -instance CanReadField "queueCount" VkDeviceQueueCreateInfo where- {-# INLINE getField #-}- getField = vkQueueCount-- {-# INLINE readField #-}- readField = readVkQueueCount--instance CanWriteField "queueCount" VkDeviceQueueCreateInfo where- {-# INLINE writeField #-}- writeField = writeVkQueueCount- instance {-# OVERLAPPING #-}- HasVkPQueuePriorities VkDeviceQueueCreateInfo where- type VkPQueuePrioritiesMType VkDeviceQueueCreateInfo =- Ptr #{type float}-- {-# NOINLINE vkPQueuePriorities #-}- vkPQueuePriorities x+ CanReadField "queueCount" VkDeviceQueueCreateInfo where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceQueueCreateInfo, pQueuePriorities})-- {-# INLINE vkPQueuePrioritiesByteOffset #-}- vkPQueuePrioritiesByteOffset ~_- = #{offset VkDeviceQueueCreateInfo, pQueuePriorities}+ (peekByteOff (unsafePtr x) #{offset VkDeviceQueueCreateInfo, queueCount}) - {-# INLINE readVkPQueuePriorities #-}- readVkPQueuePriorities p- = peekByteOff p #{offset VkDeviceQueueCreateInfo, pQueuePriorities}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceQueueCreateInfo, queueCount} - {-# INLINE writeVkPQueuePriorities #-}- writeVkPQueuePriorities p- = pokeByteOff p #{offset VkDeviceQueueCreateInfo, pQueuePriorities}+instance {-# OVERLAPPING #-}+ CanWriteField "queueCount" VkDeviceQueueCreateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceQueueCreateInfo, queueCount} instance {-# OVERLAPPING #-} HasField "pQueuePriorities" VkDeviceQueueCreateInfo where@@ -354,36 +254,41 @@ fieldOffset = #{offset VkDeviceQueueCreateInfo, pQueuePriorities} -instance CanReadField "pQueuePriorities" VkDeviceQueueCreateInfo- where- {-# INLINE getField #-}- getField = vkPQueuePriorities+instance {-# OVERLAPPING #-}+ CanReadField "pQueuePriorities" VkDeviceQueueCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceQueueCreateInfo, pQueuePriorities}) {-# INLINE readField #-}- readField = readVkPQueuePriorities+ readField p+ = peekByteOff p #{offset VkDeviceQueueCreateInfo, pQueuePriorities} -instance CanWriteField "pQueuePriorities" VkDeviceQueueCreateInfo- where+instance {-# OVERLAPPING #-}+ CanWriteField "pQueuePriorities" VkDeviceQueueCreateInfo where {-# INLINE writeField #-}- writeField = writeVkPQueuePriorities+ writeField p+ = pokeByteOff p #{offset VkDeviceQueueCreateInfo, pQueuePriorities} instance Show VkDeviceQueueCreateInfo where showsPrec d x = showString "VkDeviceQueueCreateInfo {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkFlags = " .- showsPrec d (vkFlags x) .+ showString "flags = " .+ showsPrec d (getField @"flags" x) . showString ", " .- showString "vkQueueFamilyIndex = " .- showsPrec d (vkQueueFamilyIndex x) .+ showString "queueFamilyIndex = " .+ showsPrec d (getField @"queueFamilyIndex" x) . showString ", " .- showString "vkQueueCount = " .- showsPrec d (vkQueueCount x) .+ showString "queueCount = " .+ showsPrec d (getField @"queueCount" x) . showString ", " .- showString "vkPQueuePriorities = " .- showsPrec d (vkPQueuePriorities x) . showChar '}'+ showString "pQueuePriorities = " .+ showsPrec d (getField @"pQueuePriorities" x) .+ showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkDeviceQueueGlobalPriorityCreateInfoEXT (VkDeviceQueueGlobalPriorityCreateInfoEXT(..)) where@@ -15,7 +16,6 @@ import Graphics.Vulkan.Types.Enum.VkQueueGlobalPriorityEXT (VkQueueGlobalPriorityEXT) import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType) import Graphics.Vulkan.Types.Struct.VkDeviceQueueCreateInfo (VkDeviceQueueCreateInfo)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkDeviceQueueGlobalPriorityCreateInfoEXT {@@ -24,7 +24,7 @@ -- > VkQueueGlobalPriorityEXT globalPriority; -- > } VkDeviceQueueGlobalPriorityCreateInfoEXT; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDeviceQueueGlobalPriorityCreateInfoEXT.html VkDeviceQueueGlobalPriorityCreateInfoEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDeviceQueueGlobalPriorityCreateInfoEXT.html VkDeviceQueueGlobalPriorityCreateInfoEXT registry at www.khronos.org> data VkDeviceQueueGlobalPriorityCreateInfoEXT = VkDeviceQueueGlobalPriorityCreateInfoEXT## Addr## ByteArray## @@ -83,28 +83,6 @@ '[VkDeviceQueueCreateInfo] -- ' closing tick for hsc2hs instance {-# OVERLAPPING #-}- HasVkSType VkDeviceQueueGlobalPriorityCreateInfoEXT where- type VkSTypeMType VkDeviceQueueGlobalPriorityCreateInfoEXT =- VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceQueueGlobalPriorityCreateInfoEXT, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkDeviceQueueGlobalPriorityCreateInfoEXT, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkDeviceQueueGlobalPriorityCreateInfoEXT, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkDeviceQueueGlobalPriorityCreateInfoEXT, sType}--instance {-# OVERLAPPING #-} HasField "sType" VkDeviceQueueGlobalPriorityCreateInfoEXT where type FieldType "sType" VkDeviceQueueGlobalPriorityCreateInfoEXT = VkStructureType@@ -122,42 +100,23 @@ fieldOffset = #{offset VkDeviceQueueGlobalPriorityCreateInfoEXT, sType} -instance CanReadField "sType"- VkDeviceQueueGlobalPriorityCreateInfoEXT- where- {-# INLINE getField #-}- getField = vkSType+instance {-# OVERLAPPING #-}+ CanReadField "sType" VkDeviceQueueGlobalPriorityCreateInfoEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceQueueGlobalPriorityCreateInfoEXT, sType}) {-# INLINE readField #-}- readField = readVkSType+ readField p+ = peekByteOff p #{offset VkDeviceQueueGlobalPriorityCreateInfoEXT, sType} -instance CanWriteField "sType"- VkDeviceQueueGlobalPriorityCreateInfoEXT+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkDeviceQueueGlobalPriorityCreateInfoEXT where {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-}- HasVkPNext VkDeviceQueueGlobalPriorityCreateInfoEXT where- type VkPNextMType VkDeviceQueueGlobalPriorityCreateInfoEXT =- Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceQueueGlobalPriorityCreateInfoEXT, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkDeviceQueueGlobalPriorityCreateInfoEXT, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkDeviceQueueGlobalPriorityCreateInfoEXT, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkDeviceQueueGlobalPriorityCreateInfoEXT, pNext}+ writeField p+ = pokeByteOff p #{offset VkDeviceQueueGlobalPriorityCreateInfoEXT, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkDeviceQueueGlobalPriorityCreateInfoEXT where@@ -177,42 +136,23 @@ fieldOffset = #{offset VkDeviceQueueGlobalPriorityCreateInfoEXT, pNext} -instance CanReadField "pNext"- VkDeviceQueueGlobalPriorityCreateInfoEXT- where- {-# INLINE getField #-}- getField = vkPNext+instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkDeviceQueueGlobalPriorityCreateInfoEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceQueueGlobalPriorityCreateInfoEXT, pNext}) {-# INLINE readField #-}- readField = readVkPNext+ readField p+ = peekByteOff p #{offset VkDeviceQueueGlobalPriorityCreateInfoEXT, pNext} -instance CanWriteField "pNext"- VkDeviceQueueGlobalPriorityCreateInfoEXT+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkDeviceQueueGlobalPriorityCreateInfoEXT where {-# INLINE writeField #-}- writeField = writeVkPNext--instance {-# OVERLAPPING #-}- HasVkGlobalPriority VkDeviceQueueGlobalPriorityCreateInfoEXT where- type VkGlobalPriorityMType VkDeviceQueueGlobalPriorityCreateInfoEXT- = VkQueueGlobalPriorityEXT-- {-# NOINLINE vkGlobalPriority #-}- vkGlobalPriority x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDeviceQueueGlobalPriorityCreateInfoEXT, globalPriority})-- {-# INLINE vkGlobalPriorityByteOffset #-}- vkGlobalPriorityByteOffset ~_- = #{offset VkDeviceQueueGlobalPriorityCreateInfoEXT, globalPriority}-- {-# INLINE readVkGlobalPriority #-}- readVkGlobalPriority p- = peekByteOff p #{offset VkDeviceQueueGlobalPriorityCreateInfoEXT, globalPriority}-- {-# INLINE writeVkGlobalPriority #-}- writeVkGlobalPriority p- = pokeByteOff p #{offset VkDeviceQueueGlobalPriorityCreateInfoEXT, globalPriority}+ writeField p+ = pokeByteOff p #{offset VkDeviceQueueGlobalPriorityCreateInfoEXT, pNext} instance {-# OVERLAPPING #-} HasField "globalPriority" VkDeviceQueueGlobalPriorityCreateInfoEXT@@ -238,29 +178,35 @@ fieldOffset = #{offset VkDeviceQueueGlobalPriorityCreateInfoEXT, globalPriority} -instance CanReadField "globalPriority"+instance {-# OVERLAPPING #-}+ CanReadField "globalPriority" VkDeviceQueueGlobalPriorityCreateInfoEXT where- {-# INLINE getField #-}- getField = vkGlobalPriority+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceQueueGlobalPriorityCreateInfoEXT, globalPriority}) {-# INLINE readField #-}- readField = readVkGlobalPriority+ readField p+ = peekByteOff p #{offset VkDeviceQueueGlobalPriorityCreateInfoEXT, globalPriority} -instance CanWriteField "globalPriority"+instance {-# OVERLAPPING #-}+ CanWriteField "globalPriority" VkDeviceQueueGlobalPriorityCreateInfoEXT where {-# INLINE writeField #-}- writeField = writeVkGlobalPriority+ writeField p+ = pokeByteOff p #{offset VkDeviceQueueGlobalPriorityCreateInfoEXT, globalPriority} instance Show VkDeviceQueueGlobalPriorityCreateInfoEXT where showsPrec d x = showString "VkDeviceQueueGlobalPriorityCreateInfoEXT {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkGlobalPriority = " .- showsPrec d (vkGlobalPriority x) . showChar '}'+ showString "globalPriority = " .+ showsPrec d (getField @"globalPriority" x) . showChar '}'
@@ -0,0 +1,249 @@+#include "vulkan/vulkan.h"++{-# LANGUAGE DataKinds #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-}+{-# LANGUAGE TypeFamilies #-}+module Graphics.Vulkan.Types.Struct.VkDeviceQueueInfo2+ (VkDeviceQueueInfo2(..)) where+import Foreign.Storable (Storable (..))+import GHC.Prim+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Marshal.Internal+import Graphics.Vulkan.Types.Enum.VkDeviceQueueCreateFlags (VkDeviceQueueCreateFlags)+import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)+import System.IO.Unsafe (unsafeDupablePerformIO)++-- | > typedef struct VkDeviceQueueInfo2 {+-- > VkStructureType sType;+-- > const void* pNext;+-- > VkDeviceQueueCreateFlags flags;+-- > uint32_t queueFamilyIndex;+-- > uint32_t queueIndex;+-- > } VkDeviceQueueInfo2;+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDeviceQueueInfo2.html VkDeviceQueueInfo2 registry at www.khronos.org>+data VkDeviceQueueInfo2 = VkDeviceQueueInfo2## Addr## ByteArray##++instance Eq VkDeviceQueueInfo2 where+ (VkDeviceQueueInfo2## a _) == x@(VkDeviceQueueInfo2## b _)+ = EQ == cmpBytes## (sizeOf x) a b++ {-# INLINE (==) #-}++instance Ord VkDeviceQueueInfo2 where+ (VkDeviceQueueInfo2## a _) `compare` x@(VkDeviceQueueInfo2## b _)+ = cmpBytes## (sizeOf x) a b++ {-# INLINE compare #-}++instance Storable VkDeviceQueueInfo2 where+ sizeOf ~_ = #{size VkDeviceQueueInfo2}++ {-# INLINE sizeOf #-}+ alignment ~_ = #{alignment VkDeviceQueueInfo2}++ {-# INLINE alignment #-}+ peek = peekVkData##++ {-# INLINE peek #-}+ poke = pokeVkData##++ {-# INLINE poke #-}++instance VulkanMarshalPrim VkDeviceQueueInfo2 where+ unsafeAddr (VkDeviceQueueInfo2## a _) = a++ {-# INLINE unsafeAddr #-}+ unsafeByteArray (VkDeviceQueueInfo2## _ b) = b++ {-# INLINE unsafeByteArray #-}+ unsafeFromByteArrayOffset off b+ = VkDeviceQueueInfo2## (plusAddr## (byteArrayContents## b) off) b++ {-# INLINE unsafeFromByteArrayOffset #-}++instance VulkanMarshal VkDeviceQueueInfo2 where+ type StructFields VkDeviceQueueInfo2 =+ '["sType", "pNext", "flags", "queueFamilyIndex", "queueIndex"] -- ' closing tick for hsc2hs+ type CUnionType VkDeviceQueueInfo2 = 'False -- ' closing tick for hsc2hs+ type ReturnedOnly VkDeviceQueueInfo2 = 'False -- ' closing tick for hsc2hs+ type StructExtends VkDeviceQueueInfo2 = '[] -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-} HasField "sType" VkDeviceQueueInfo2+ where+ type FieldType "sType" VkDeviceQueueInfo2 = VkStructureType+ type FieldOptional "sType" VkDeviceQueueInfo2 = 'False -- ' closing tick for hsc2hs+ type FieldOffset "sType" VkDeviceQueueInfo2 =+ #{offset VkDeviceQueueInfo2, sType}+ type FieldIsArray "sType" VkDeviceQueueInfo2 = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset = #{offset VkDeviceQueueInfo2, sType}++instance {-# OVERLAPPING #-}+ CanReadField "sType" VkDeviceQueueInfo2 where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceQueueInfo2, sType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceQueueInfo2, sType}++instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkDeviceQueueInfo2 where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceQueueInfo2, sType}++instance {-# OVERLAPPING #-} HasField "pNext" VkDeviceQueueInfo2+ where+ type FieldType "pNext" VkDeviceQueueInfo2 = Ptr Void+ type FieldOptional "pNext" VkDeviceQueueInfo2 = 'False -- ' closing tick for hsc2hs+ type FieldOffset "pNext" VkDeviceQueueInfo2 =+ #{offset VkDeviceQueueInfo2, pNext}+ type FieldIsArray "pNext" VkDeviceQueueInfo2 = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset = #{offset VkDeviceQueueInfo2, pNext}++instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkDeviceQueueInfo2 where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceQueueInfo2, pNext})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceQueueInfo2, pNext}++instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkDeviceQueueInfo2 where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceQueueInfo2, pNext}++instance {-# OVERLAPPING #-} HasField "flags" VkDeviceQueueInfo2+ where+ type FieldType "flags" VkDeviceQueueInfo2 =+ VkDeviceQueueCreateFlags+ type FieldOptional "flags" VkDeviceQueueInfo2 = 'False -- ' closing tick for hsc2hs+ type FieldOffset "flags" VkDeviceQueueInfo2 =+ #{offset VkDeviceQueueInfo2, flags}+ type FieldIsArray "flags" VkDeviceQueueInfo2 = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset = #{offset VkDeviceQueueInfo2, flags}++instance {-# OVERLAPPING #-}+ CanReadField "flags" VkDeviceQueueInfo2 where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceQueueInfo2, flags})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceQueueInfo2, flags}++instance {-# OVERLAPPING #-}+ CanWriteField "flags" VkDeviceQueueInfo2 where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceQueueInfo2, flags}++instance {-# OVERLAPPING #-}+ HasField "queueFamilyIndex" VkDeviceQueueInfo2 where+ type FieldType "queueFamilyIndex" VkDeviceQueueInfo2 = Word32+ type FieldOptional "queueFamilyIndex" VkDeviceQueueInfo2 = 'False -- ' closing tick for hsc2hs+ type FieldOffset "queueFamilyIndex" VkDeviceQueueInfo2 =+ #{offset VkDeviceQueueInfo2, queueFamilyIndex}+ type FieldIsArray "queueFamilyIndex" VkDeviceQueueInfo2 = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkDeviceQueueInfo2, queueFamilyIndex}++instance {-# OVERLAPPING #-}+ CanReadField "queueFamilyIndex" VkDeviceQueueInfo2 where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceQueueInfo2, queueFamilyIndex})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceQueueInfo2, queueFamilyIndex}++instance {-# OVERLAPPING #-}+ CanWriteField "queueFamilyIndex" VkDeviceQueueInfo2 where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceQueueInfo2, queueFamilyIndex}++instance {-# OVERLAPPING #-}+ HasField "queueIndex" VkDeviceQueueInfo2 where+ type FieldType "queueIndex" VkDeviceQueueInfo2 = Word32+ type FieldOptional "queueIndex" VkDeviceQueueInfo2 = 'False -- ' closing tick for hsc2hs+ type FieldOffset "queueIndex" VkDeviceQueueInfo2 =+ #{offset VkDeviceQueueInfo2, queueIndex}+ type FieldIsArray "queueIndex" VkDeviceQueueInfo2 = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset = #{offset VkDeviceQueueInfo2, queueIndex}++instance {-# OVERLAPPING #-}+ CanReadField "queueIndex" VkDeviceQueueInfo2 where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDeviceQueueInfo2, queueIndex})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDeviceQueueInfo2, queueIndex}++instance {-# OVERLAPPING #-}+ CanWriteField "queueIndex" VkDeviceQueueInfo2 where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDeviceQueueInfo2, queueIndex}++instance Show VkDeviceQueueInfo2 where+ showsPrec d x+ = showString "VkDeviceQueueInfo2 {" .+ showString "sType = " .+ showsPrec d (getField @"sType" x) .+ showString ", " .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) .+ showString ", " .+ showString "flags = " .+ showsPrec d (getField @"flags" x) .+ showString ", " .+ showString "queueFamilyIndex = " .+ showsPrec d (getField @"queueFamilyIndex" x) .+ showString ", " .+ showString "queueIndex = " .+ showsPrec d (getField @"queueIndex" x) . showChar '}'
@@ -5,15 +5,15 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkDispatchIndirectCommand (VkDispatchIndirectCommand(..)) where-import Foreign.Storable (Storable (..))+import Foreign.Storable (Storable (..)) import GHC.Prim import Graphics.Vulkan.Marshal import Graphics.Vulkan.Marshal.Internal-import Graphics.Vulkan.Types.StructMembers-import System.IO.Unsafe (unsafeDupablePerformIO)+import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkDispatchIndirectCommand { -- > uint32_t x;@@ -21,7 +21,7 @@ -- > uint32_t z; -- > } VkDispatchIndirectCommand; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDispatchIndirectCommand.html VkDispatchIndirectCommand registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDispatchIndirectCommand.html VkDispatchIndirectCommand registry at www.khronos.org> data VkDispatchIndirectCommand = VkDispatchIndirectCommand## Addr## ByteArray## @@ -70,26 +70,6 @@ type ReturnedOnly VkDispatchIndirectCommand = 'False -- ' closing tick for hsc2hs type StructExtends VkDispatchIndirectCommand = '[] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkX VkDispatchIndirectCommand where- type VkXMType VkDispatchIndirectCommand = Word32-- {-# NOINLINE vkX #-}- vkX x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDispatchIndirectCommand, x})-- {-# INLINE vkXByteOffset #-}- vkXByteOffset ~_- = #{offset VkDispatchIndirectCommand, x}-- {-# INLINE readVkX #-}- readVkX p- = peekByteOff p #{offset VkDispatchIndirectCommand, x}-- {-# INLINE writeVkX #-}- writeVkX p- = pokeByteOff p #{offset VkDispatchIndirectCommand, x}- instance {-# OVERLAPPING #-} HasField "x" VkDispatchIndirectCommand where type FieldType "x" VkDispatchIndirectCommand = Word32@@ -104,36 +84,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkDispatchIndirectCommand, x} -instance CanReadField "x" VkDispatchIndirectCommand where- {-# INLINE getField #-}- getField = vkX+instance {-# OVERLAPPING #-}+ CanReadField "x" VkDispatchIndirectCommand where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDispatchIndirectCommand, x}) {-# INLINE readField #-}- readField = readVkX+ readField p+ = peekByteOff p #{offset VkDispatchIndirectCommand, x} -instance CanWriteField "x" VkDispatchIndirectCommand where+instance {-# OVERLAPPING #-}+ CanWriteField "x" VkDispatchIndirectCommand where {-# INLINE writeField #-}- writeField = writeVkX--instance {-# OVERLAPPING #-} HasVkY VkDispatchIndirectCommand where- type VkYMType VkDispatchIndirectCommand = Word32-- {-# NOINLINE vkY #-}- vkY x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDispatchIndirectCommand, y})-- {-# INLINE vkYByteOffset #-}- vkYByteOffset ~_- = #{offset VkDispatchIndirectCommand, y}-- {-# INLINE readVkY #-}- readVkY p- = peekByteOff p #{offset VkDispatchIndirectCommand, y}-- {-# INLINE writeVkY #-}- writeVkY p- = pokeByteOff p #{offset VkDispatchIndirectCommand, y}+ writeField p+ = pokeByteOff p #{offset VkDispatchIndirectCommand, x} instance {-# OVERLAPPING #-} HasField "y" VkDispatchIndirectCommand where@@ -149,36 +115,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkDispatchIndirectCommand, y} -instance CanReadField "y" VkDispatchIndirectCommand where- {-# INLINE getField #-}- getField = vkY+instance {-# OVERLAPPING #-}+ CanReadField "y" VkDispatchIndirectCommand where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDispatchIndirectCommand, y}) {-# INLINE readField #-}- readField = readVkY+ readField p+ = peekByteOff p #{offset VkDispatchIndirectCommand, y} -instance CanWriteField "y" VkDispatchIndirectCommand where+instance {-# OVERLAPPING #-}+ CanWriteField "y" VkDispatchIndirectCommand where {-# INLINE writeField #-}- writeField = writeVkY--instance {-# OVERLAPPING #-} HasVkZ VkDispatchIndirectCommand where- type VkZMType VkDispatchIndirectCommand = Word32-- {-# NOINLINE vkZ #-}- vkZ x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDispatchIndirectCommand, z})-- {-# INLINE vkZByteOffset #-}- vkZByteOffset ~_- = #{offset VkDispatchIndirectCommand, z}-- {-# INLINE readVkZ #-}- readVkZ p- = peekByteOff p #{offset VkDispatchIndirectCommand, z}-- {-# INLINE writeVkZ #-}- writeVkZ p- = pokeByteOff p #{offset VkDispatchIndirectCommand, z}+ writeField p+ = pokeByteOff p #{offset VkDispatchIndirectCommand, y} instance {-# OVERLAPPING #-} HasField "z" VkDispatchIndirectCommand where@@ -194,24 +146,30 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkDispatchIndirectCommand, z} -instance CanReadField "z" VkDispatchIndirectCommand where- {-# INLINE getField #-}- getField = vkZ+instance {-# OVERLAPPING #-}+ CanReadField "z" VkDispatchIndirectCommand where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDispatchIndirectCommand, z}) {-# INLINE readField #-}- readField = readVkZ+ readField p+ = peekByteOff p #{offset VkDispatchIndirectCommand, z} -instance CanWriteField "z" VkDispatchIndirectCommand where+instance {-# OVERLAPPING #-}+ CanWriteField "z" VkDispatchIndirectCommand where {-# INLINE writeField #-}- writeField = writeVkZ+ writeField p+ = pokeByteOff p #{offset VkDispatchIndirectCommand, z} instance Show VkDispatchIndirectCommand where showsPrec d x = showString "VkDispatchIndirectCommand {" .- showString "vkX = " .- showsPrec d (vkX x) .+ showString "x = " .+ showsPrec d (getField @"x" x) . showString ", " .- showString "vkY = " .- showsPrec d (vkY x) .+ showString "y = " .+ showsPrec d (getField @"y" x) . showString ", " .- showString "vkZ = " . showsPrec d (vkZ x) . showChar '}'+ showString "z = " . showsPrec d (getField @"z" x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkDisplayEventInfoEXT (VkDisplayEventInfoEXT(..)) where@@ -14,7 +15,6 @@ import Graphics.Vulkan.Marshal.Internal import Graphics.Vulkan.Types.Enum.VkDisplayEventTypeEXT (VkDisplayEventTypeEXT) import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkDisplayEventInfoEXT {@@ -23,7 +23,7 @@ -- > VkDisplayEventTypeEXT displayEvent; -- > } VkDisplayEventInfoEXT; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDisplayEventInfoEXT.html VkDisplayEventInfoEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDisplayEventInfoEXT.html VkDisplayEventInfoEXT registry at www.khronos.org> data VkDisplayEventInfoEXT = VkDisplayEventInfoEXT## Addr## ByteArray## @@ -72,26 +72,6 @@ type ReturnedOnly VkDisplayEventInfoEXT = 'False -- ' closing tick for hsc2hs type StructExtends VkDisplayEventInfoEXT = '[] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkSType VkDisplayEventInfoEXT where- type VkSTypeMType VkDisplayEventInfoEXT = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplayEventInfoEXT, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkDisplayEventInfoEXT, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkDisplayEventInfoEXT, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkDisplayEventInfoEXT, sType}- instance {-# OVERLAPPING #-} HasField "sType" VkDisplayEventInfoEXT where type FieldType "sType" VkDisplayEventInfoEXT = VkStructureType@@ -106,36 +86,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkDisplayEventInfoEXT, sType} -instance CanReadField "sType" VkDisplayEventInfoEXT where- {-# INLINE getField #-}- getField = vkSType+instance {-# OVERLAPPING #-}+ CanReadField "sType" VkDisplayEventInfoEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDisplayEventInfoEXT, sType}) {-# INLINE readField #-}- readField = readVkSType+ readField p+ = peekByteOff p #{offset VkDisplayEventInfoEXT, sType} -instance CanWriteField "sType" VkDisplayEventInfoEXT where+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkDisplayEventInfoEXT where {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-} HasVkPNext VkDisplayEventInfoEXT where- type VkPNextMType VkDisplayEventInfoEXT = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplayEventInfoEXT, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkDisplayEventInfoEXT, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkDisplayEventInfoEXT, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkDisplayEventInfoEXT, pNext}+ writeField p+ = pokeByteOff p #{offset VkDisplayEventInfoEXT, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkDisplayEventInfoEXT where@@ -151,38 +117,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkDisplayEventInfoEXT, pNext} -instance CanReadField "pNext" VkDisplayEventInfoEXT where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkDisplayEventInfoEXT where- {-# INLINE writeField #-}- writeField = writeVkPNext- instance {-# OVERLAPPING #-}- HasVkDisplayEvent VkDisplayEventInfoEXT where- type VkDisplayEventMType VkDisplayEventInfoEXT =- VkDisplayEventTypeEXT-- {-# NOINLINE vkDisplayEvent #-}- vkDisplayEvent x+ CanReadField "pNext" VkDisplayEventInfoEXT where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplayEventInfoEXT, displayEvent})-- {-# INLINE vkDisplayEventByteOffset #-}- vkDisplayEventByteOffset ~_- = #{offset VkDisplayEventInfoEXT, displayEvent}+ (peekByteOff (unsafePtr x) #{offset VkDisplayEventInfoEXT, pNext}) - {-# INLINE readVkDisplayEvent #-}- readVkDisplayEvent p- = peekByteOff p #{offset VkDisplayEventInfoEXT, displayEvent}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDisplayEventInfoEXT, pNext} - {-# INLINE writeVkDisplayEvent #-}- writeVkDisplayEvent p- = pokeByteOff p #{offset VkDisplayEventInfoEXT, displayEvent}+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkDisplayEventInfoEXT where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDisplayEventInfoEXT, pNext} instance {-# OVERLAPPING #-} HasField "displayEvent" VkDisplayEventInfoEXT where@@ -200,25 +150,31 @@ fieldOffset = #{offset VkDisplayEventInfoEXT, displayEvent} -instance CanReadField "displayEvent" VkDisplayEventInfoEXT where- {-# INLINE getField #-}- getField = vkDisplayEvent+instance {-# OVERLAPPING #-}+ CanReadField "displayEvent" VkDisplayEventInfoEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDisplayEventInfoEXT, displayEvent}) {-# INLINE readField #-}- readField = readVkDisplayEvent+ readField p+ = peekByteOff p #{offset VkDisplayEventInfoEXT, displayEvent} -instance CanWriteField "displayEvent" VkDisplayEventInfoEXT where+instance {-# OVERLAPPING #-}+ CanWriteField "displayEvent" VkDisplayEventInfoEXT where {-# INLINE writeField #-}- writeField = writeVkDisplayEvent+ writeField p+ = pokeByteOff p #{offset VkDisplayEventInfoEXT, displayEvent} instance Show VkDisplayEventInfoEXT where showsPrec d x = showString "VkDisplayEventInfoEXT {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkDisplayEvent = " .- showsPrec d (vkDisplayEvent x) . showChar '}'+ showString "displayEvent = " .+ showsPrec d (getField @"displayEvent" x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkDisplayModeCreateInfoKHR (VkDisplayModeCreateInfoKHR(..)) where@@ -15,7 +16,6 @@ import Graphics.Vulkan.Types.Bitmasks (VkDisplayModeCreateFlagsKHR) import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType) import Graphics.Vulkan.Types.Struct.VkDisplayModeParametersKHR (VkDisplayModeParametersKHR)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkDisplayModeCreateInfoKHR {@@ -25,7 +25,7 @@ -- > VkDisplayModeParametersKHR parameters; -- > } VkDisplayModeCreateInfoKHR; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDisplayModeCreateInfoKHR.html VkDisplayModeCreateInfoKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDisplayModeCreateInfoKHR.html VkDisplayModeCreateInfoKHR registry at www.khronos.org> data VkDisplayModeCreateInfoKHR = VkDisplayModeCreateInfoKHR## Addr## ByteArray## @@ -77,27 +77,6 @@ type ReturnedOnly VkDisplayModeCreateInfoKHR = 'False -- ' closing tick for hsc2hs type StructExtends VkDisplayModeCreateInfoKHR = '[] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkSType VkDisplayModeCreateInfoKHR- where- type VkSTypeMType VkDisplayModeCreateInfoKHR = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplayModeCreateInfoKHR, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkDisplayModeCreateInfoKHR, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkDisplayModeCreateInfoKHR, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkDisplayModeCreateInfoKHR, sType}- instance {-# OVERLAPPING #-} HasField "sType" VkDisplayModeCreateInfoKHR where type FieldType "sType" VkDisplayModeCreateInfoKHR = VkStructureType@@ -113,37 +92,22 @@ fieldOffset = #{offset VkDisplayModeCreateInfoKHR, sType} -instance CanReadField "sType" VkDisplayModeCreateInfoKHR where- {-# INLINE getField #-}- getField = vkSType+instance {-# OVERLAPPING #-}+ CanReadField "sType" VkDisplayModeCreateInfoKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDisplayModeCreateInfoKHR, sType}) {-# INLINE readField #-}- readField = readVkSType+ readField p+ = peekByteOff p #{offset VkDisplayModeCreateInfoKHR, sType} -instance CanWriteField "sType" VkDisplayModeCreateInfoKHR where+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkDisplayModeCreateInfoKHR where {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-} HasVkPNext VkDisplayModeCreateInfoKHR- where- type VkPNextMType VkDisplayModeCreateInfoKHR = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplayModeCreateInfoKHR, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkDisplayModeCreateInfoKHR, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkDisplayModeCreateInfoKHR, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkDisplayModeCreateInfoKHR, pNext}+ writeField p+ = pokeByteOff p #{offset VkDisplayModeCreateInfoKHR, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkDisplayModeCreateInfoKHR where@@ -160,38 +124,22 @@ fieldOffset = #{offset VkDisplayModeCreateInfoKHR, pNext} -instance CanReadField "pNext" VkDisplayModeCreateInfoKHR where- {-# INLINE getField #-}- getField = vkPNext+instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkDisplayModeCreateInfoKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDisplayModeCreateInfoKHR, pNext}) {-# INLINE readField #-}- readField = readVkPNext+ readField p+ = peekByteOff p #{offset VkDisplayModeCreateInfoKHR, pNext} -instance CanWriteField "pNext" VkDisplayModeCreateInfoKHR where+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkDisplayModeCreateInfoKHR where {-# INLINE writeField #-}- writeField = writeVkPNext--instance {-# OVERLAPPING #-} HasVkFlags VkDisplayModeCreateInfoKHR- where- type VkFlagsMType VkDisplayModeCreateInfoKHR =- VkDisplayModeCreateFlagsKHR-- {-# NOINLINE vkFlags #-}- vkFlags x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplayModeCreateInfoKHR, flags})-- {-# INLINE vkFlagsByteOffset #-}- vkFlagsByteOffset ~_- = #{offset VkDisplayModeCreateInfoKHR, flags}-- {-# INLINE readVkFlags #-}- readVkFlags p- = peekByteOff p #{offset VkDisplayModeCreateInfoKHR, flags}-- {-# INLINE writeVkFlags #-}- writeVkFlags p- = pokeByteOff p #{offset VkDisplayModeCreateInfoKHR, flags}+ writeField p+ = pokeByteOff p #{offset VkDisplayModeCreateInfoKHR, pNext} instance {-# OVERLAPPING #-} HasField "flags" VkDisplayModeCreateInfoKHR where@@ -209,38 +157,22 @@ fieldOffset = #{offset VkDisplayModeCreateInfoKHR, flags} -instance CanReadField "flags" VkDisplayModeCreateInfoKHR where- {-# INLINE getField #-}- getField = vkFlags-- {-# INLINE readField #-}- readField = readVkFlags--instance CanWriteField "flags" VkDisplayModeCreateInfoKHR where- {-# INLINE writeField #-}- writeField = writeVkFlags- instance {-# OVERLAPPING #-}- HasVkParameters VkDisplayModeCreateInfoKHR where- type VkParametersMType VkDisplayModeCreateInfoKHR =- VkDisplayModeParametersKHR-- {-# NOINLINE vkParameters #-}- vkParameters x+ CanReadField "flags" VkDisplayModeCreateInfoKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplayModeCreateInfoKHR, parameters})-- {-# INLINE vkParametersByteOffset #-}- vkParametersByteOffset ~_- = #{offset VkDisplayModeCreateInfoKHR, parameters}+ (peekByteOff (unsafePtr x) #{offset VkDisplayModeCreateInfoKHR, flags}) - {-# INLINE readVkParameters #-}- readVkParameters p- = peekByteOff p #{offset VkDisplayModeCreateInfoKHR, parameters}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDisplayModeCreateInfoKHR, flags} - {-# INLINE writeVkParameters #-}- writeVkParameters p- = pokeByteOff p #{offset VkDisplayModeCreateInfoKHR, parameters}+instance {-# OVERLAPPING #-}+ CanWriteField "flags" VkDisplayModeCreateInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDisplayModeCreateInfoKHR, flags} instance {-# OVERLAPPING #-} HasField "parameters" VkDisplayModeCreateInfoKHR where@@ -258,29 +190,34 @@ fieldOffset = #{offset VkDisplayModeCreateInfoKHR, parameters} -instance CanReadField "parameters" VkDisplayModeCreateInfoKHR where- {-# INLINE getField #-}- getField = vkParameters+instance {-# OVERLAPPING #-}+ CanReadField "parameters" VkDisplayModeCreateInfoKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDisplayModeCreateInfoKHR, parameters}) {-# INLINE readField #-}- readField = readVkParameters+ readField p+ = peekByteOff p #{offset VkDisplayModeCreateInfoKHR, parameters} -instance CanWriteField "parameters" VkDisplayModeCreateInfoKHR- where+instance {-# OVERLAPPING #-}+ CanWriteField "parameters" VkDisplayModeCreateInfoKHR where {-# INLINE writeField #-}- writeField = writeVkParameters+ writeField p+ = pokeByteOff p #{offset VkDisplayModeCreateInfoKHR, parameters} instance Show VkDisplayModeCreateInfoKHR where showsPrec d x = showString "VkDisplayModeCreateInfoKHR {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkFlags = " .- showsPrec d (vkFlags x) .+ showString "flags = " .+ showsPrec d (getField @"flags" x) . showString ", " .- showString "vkParameters = " .- showsPrec d (vkParameters x) . showChar '}'+ showString "parameters = " .+ showsPrec d (getField @"parameters" x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkDisplayModeParametersKHR (VkDisplayModeParametersKHR(..)) where@@ -13,7 +14,6 @@ import Graphics.Vulkan.Marshal import Graphics.Vulkan.Marshal.Internal import Graphics.Vulkan.Types.Struct.VkExtent2D (VkExtent2D)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkDisplayModeParametersKHR {@@ -21,7 +21,7 @@ -- > uint32_t refreshRate; -- > } VkDisplayModeParametersKHR; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDisplayModeParametersKHR.html VkDisplayModeParametersKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDisplayModeParametersKHR.html VkDisplayModeParametersKHR registry at www.khronos.org> data VkDisplayModeParametersKHR = VkDisplayModeParametersKHR## Addr## ByteArray## @@ -74,27 +74,6 @@ type StructExtends VkDisplayModeParametersKHR = '[] -- ' closing tick for hsc2hs instance {-# OVERLAPPING #-}- HasVkVisibleRegion VkDisplayModeParametersKHR where- type VkVisibleRegionMType VkDisplayModeParametersKHR = VkExtent2D-- {-# NOINLINE vkVisibleRegion #-}- vkVisibleRegion x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplayModeParametersKHR, visibleRegion})-- {-# INLINE vkVisibleRegionByteOffset #-}- vkVisibleRegionByteOffset ~_- = #{offset VkDisplayModeParametersKHR, visibleRegion}-- {-# INLINE readVkVisibleRegion #-}- readVkVisibleRegion p- = peekByteOff p #{offset VkDisplayModeParametersKHR, visibleRegion}-- {-# INLINE writeVkVisibleRegion #-}- writeVkVisibleRegion p- = pokeByteOff p #{offset VkDisplayModeParametersKHR, visibleRegion}--instance {-# OVERLAPPING #-} HasField "visibleRegion" VkDisplayModeParametersKHR where type FieldType "visibleRegion" VkDisplayModeParametersKHR = VkExtent2D@@ -112,39 +91,22 @@ fieldOffset = #{offset VkDisplayModeParametersKHR, visibleRegion} -instance CanReadField "visibleRegion" VkDisplayModeParametersKHR- where- {-# INLINE getField #-}- getField = vkVisibleRegion-- {-# INLINE readField #-}- readField = readVkVisibleRegion--instance CanWriteField "visibleRegion" VkDisplayModeParametersKHR- where- {-# INLINE writeField #-}- writeField = writeVkVisibleRegion- instance {-# OVERLAPPING #-}- HasVkRefreshRate VkDisplayModeParametersKHR where- type VkRefreshRateMType VkDisplayModeParametersKHR = Word32-- {-# NOINLINE vkRefreshRate #-}- vkRefreshRate x+ CanReadField "visibleRegion" VkDisplayModeParametersKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplayModeParametersKHR, refreshRate})-- {-# INLINE vkRefreshRateByteOffset #-}- vkRefreshRateByteOffset ~_- = #{offset VkDisplayModeParametersKHR, refreshRate}+ (peekByteOff (unsafePtr x) #{offset VkDisplayModeParametersKHR, visibleRegion}) - {-# INLINE readVkRefreshRate #-}- readVkRefreshRate p- = peekByteOff p #{offset VkDisplayModeParametersKHR, refreshRate}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDisplayModeParametersKHR, visibleRegion} - {-# INLINE writeVkRefreshRate #-}- writeVkRefreshRate p- = pokeByteOff p #{offset VkDisplayModeParametersKHR, refreshRate}+instance {-# OVERLAPPING #-}+ CanWriteField "visibleRegion" VkDisplayModeParametersKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDisplayModeParametersKHR, visibleRegion} instance {-# OVERLAPPING #-} HasField "refreshRate" VkDisplayModeParametersKHR where@@ -162,24 +124,28 @@ fieldOffset = #{offset VkDisplayModeParametersKHR, refreshRate} -instance CanReadField "refreshRate" VkDisplayModeParametersKHR- where- {-# INLINE getField #-}- getField = vkRefreshRate+instance {-# OVERLAPPING #-}+ CanReadField "refreshRate" VkDisplayModeParametersKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDisplayModeParametersKHR, refreshRate}) {-# INLINE readField #-}- readField = readVkRefreshRate+ readField p+ = peekByteOff p #{offset VkDisplayModeParametersKHR, refreshRate} -instance CanWriteField "refreshRate" VkDisplayModeParametersKHR- where+instance {-# OVERLAPPING #-}+ CanWriteField "refreshRate" VkDisplayModeParametersKHR where {-# INLINE writeField #-}- writeField = writeVkRefreshRate+ writeField p+ = pokeByteOff p #{offset VkDisplayModeParametersKHR, refreshRate} instance Show VkDisplayModeParametersKHR where showsPrec d x = showString "VkDisplayModeParametersKHR {" .- showString "vkVisibleRegion = " .- showsPrec d (vkVisibleRegion x) .+ showString "visibleRegion = " .+ showsPrec d (getField @"visibleRegion" x) . showString ", " .- showString "vkRefreshRate = " .- showsPrec d (vkRefreshRate x) . showChar '}'+ showString "refreshRate = " .+ showsPrec d (getField @"refreshRate" x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkDisplayModePropertiesKHR (VkDisplayModePropertiesKHR(..)) where@@ -14,7 +15,6 @@ import Graphics.Vulkan.Marshal.Internal import Graphics.Vulkan.Types.Handles (VkDisplayModeKHR) import Graphics.Vulkan.Types.Struct.VkDisplayModeParametersKHR (VkDisplayModeParametersKHR)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkDisplayModePropertiesKHR {@@ -22,7 +22,7 @@ -- > VkDisplayModeParametersKHR parameters; -- > } VkDisplayModePropertiesKHR; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDisplayModePropertiesKHR.html VkDisplayModePropertiesKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDisplayModePropertiesKHR.html VkDisplayModePropertiesKHR registry at www.khronos.org> data VkDisplayModePropertiesKHR = VkDisplayModePropertiesKHR## Addr## ByteArray## @@ -75,28 +75,6 @@ type StructExtends VkDisplayModePropertiesKHR = '[] -- ' closing tick for hsc2hs instance {-# OVERLAPPING #-}- HasVkDisplayMode VkDisplayModePropertiesKHR where- type VkDisplayModeMType VkDisplayModePropertiesKHR =- VkDisplayModeKHR-- {-# NOINLINE vkDisplayMode #-}- vkDisplayMode x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplayModePropertiesKHR, displayMode})-- {-# INLINE vkDisplayModeByteOffset #-}- vkDisplayModeByteOffset ~_- = #{offset VkDisplayModePropertiesKHR, displayMode}-- {-# INLINE readVkDisplayMode #-}- readVkDisplayMode p- = peekByteOff p #{offset VkDisplayModePropertiesKHR, displayMode}-- {-# INLINE writeVkDisplayMode #-}- writeVkDisplayMode p- = pokeByteOff p #{offset VkDisplayModePropertiesKHR, displayMode}--instance {-# OVERLAPPING #-} HasField "displayMode" VkDisplayModePropertiesKHR where type FieldType "displayMode" VkDisplayModePropertiesKHR = VkDisplayModeKHR@@ -113,35 +91,22 @@ fieldOffset = #{offset VkDisplayModePropertiesKHR, displayMode} -instance CanReadField "displayMode" VkDisplayModePropertiesKHR- where- {-# INLINE getField #-}- getField = vkDisplayMode-- {-# INLINE readField #-}- readField = readVkDisplayMode- instance {-# OVERLAPPING #-}- HasVkParameters VkDisplayModePropertiesKHR where- type VkParametersMType VkDisplayModePropertiesKHR =- VkDisplayModeParametersKHR-- {-# NOINLINE vkParameters #-}- vkParameters x+ CanReadField "displayMode" VkDisplayModePropertiesKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplayModePropertiesKHR, parameters})-- {-# INLINE vkParametersByteOffset #-}- vkParametersByteOffset ~_- = #{offset VkDisplayModePropertiesKHR, parameters}+ (peekByteOff (unsafePtr x) #{offset VkDisplayModePropertiesKHR, displayMode}) - {-# INLINE readVkParameters #-}- readVkParameters p- = peekByteOff p #{offset VkDisplayModePropertiesKHR, parameters}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDisplayModePropertiesKHR, displayMode} - {-# INLINE writeVkParameters #-}- writeVkParameters p- = pokeByteOff p #{offset VkDisplayModePropertiesKHR, parameters}+instance {-# OVERLAPPING #-}+ CanWriteField "displayMode" VkDisplayModePropertiesKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDisplayModePropertiesKHR, displayMode} instance {-# OVERLAPPING #-} HasField "parameters" VkDisplayModePropertiesKHR where@@ -159,18 +124,28 @@ fieldOffset = #{offset VkDisplayModePropertiesKHR, parameters} -instance CanReadField "parameters" VkDisplayModePropertiesKHR where- {-# INLINE getField #-}- getField = vkParameters+instance {-# OVERLAPPING #-}+ CanReadField "parameters" VkDisplayModePropertiesKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDisplayModePropertiesKHR, parameters}) {-# INLINE readField #-}- readField = readVkParameters+ readField p+ = peekByteOff p #{offset VkDisplayModePropertiesKHR, parameters} +instance {-# OVERLAPPING #-}+ CanWriteField "parameters" VkDisplayModePropertiesKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDisplayModePropertiesKHR, parameters}+ instance Show VkDisplayModePropertiesKHR where showsPrec d x = showString "VkDisplayModePropertiesKHR {" .- showString "vkDisplayMode = " .- showsPrec d (vkDisplayMode x) .+ showString "displayMode = " .+ showsPrec d (getField @"displayMode" x) . showString ", " .- showString "vkParameters = " .- showsPrec d (vkParameters x) . showChar '}'+ showString "parameters = " .+ showsPrec d (getField @"parameters" x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkDisplayPlaneCapabilitiesKHR (VkDisplayPlaneCapabilitiesKHR(..)) where@@ -15,7 +16,6 @@ import Graphics.Vulkan.Types.Enum.VkDisplayPlaneAlphaFlagsKHR (VkDisplayPlaneAlphaFlagsKHR) import Graphics.Vulkan.Types.Struct.VkExtent2D (VkExtent2D) import Graphics.Vulkan.Types.Struct.VkOffset2D (VkOffset2D)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkDisplayPlaneCapabilitiesKHR {@@ -30,7 +30,7 @@ -- > VkExtent2D maxDstExtent; -- > } VkDisplayPlaneCapabilitiesKHR; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDisplayPlaneCapabilitiesKHR.html VkDisplayPlaneCapabilitiesKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDisplayPlaneCapabilitiesKHR.html VkDisplayPlaneCapabilitiesKHR registry at www.khronos.org> data VkDisplayPlaneCapabilitiesKHR = VkDisplayPlaneCapabilitiesKHR## Addr## ByteArray## @@ -86,28 +86,6 @@ type StructExtends VkDisplayPlaneCapabilitiesKHR = '[] -- ' closing tick for hsc2hs instance {-# OVERLAPPING #-}- HasVkSupportedAlpha VkDisplayPlaneCapabilitiesKHR where- type VkSupportedAlphaMType VkDisplayPlaneCapabilitiesKHR =- VkDisplayPlaneAlphaFlagsKHR-- {-# NOINLINE vkSupportedAlpha #-}- vkSupportedAlpha x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplayPlaneCapabilitiesKHR, supportedAlpha})-- {-# INLINE vkSupportedAlphaByteOffset #-}- vkSupportedAlphaByteOffset ~_- = #{offset VkDisplayPlaneCapabilitiesKHR, supportedAlpha}-- {-# INLINE readVkSupportedAlpha #-}- readVkSupportedAlpha p- = peekByteOff p #{offset VkDisplayPlaneCapabilitiesKHR, supportedAlpha}-- {-# INLINE writeVkSupportedAlpha #-}- writeVkSupportedAlpha p- = pokeByteOff p #{offset VkDisplayPlaneCapabilitiesKHR, supportedAlpha}--instance {-# OVERLAPPING #-} HasField "supportedAlpha" VkDisplayPlaneCapabilitiesKHR where type FieldType "supportedAlpha" VkDisplayPlaneCapabilitiesKHR = VkDisplayPlaneAlphaFlagsKHR@@ -125,36 +103,22 @@ fieldOffset = #{offset VkDisplayPlaneCapabilitiesKHR, supportedAlpha} -instance CanReadField "supportedAlpha"- VkDisplayPlaneCapabilitiesKHR- where- {-# INLINE getField #-}- getField = vkSupportedAlpha-- {-# INLINE readField #-}- readField = readVkSupportedAlpha- instance {-# OVERLAPPING #-}- HasVkMinSrcPosition VkDisplayPlaneCapabilitiesKHR where- type VkMinSrcPositionMType VkDisplayPlaneCapabilitiesKHR =- VkOffset2D-- {-# NOINLINE vkMinSrcPosition #-}- vkMinSrcPosition x+ CanReadField "supportedAlpha" VkDisplayPlaneCapabilitiesKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplayPlaneCapabilitiesKHR, minSrcPosition})-- {-# INLINE vkMinSrcPositionByteOffset #-}- vkMinSrcPositionByteOffset ~_- = #{offset VkDisplayPlaneCapabilitiesKHR, minSrcPosition}+ (peekByteOff (unsafePtr x) #{offset VkDisplayPlaneCapabilitiesKHR, supportedAlpha}) - {-# INLINE readVkMinSrcPosition #-}- readVkMinSrcPosition p- = peekByteOff p #{offset VkDisplayPlaneCapabilitiesKHR, minSrcPosition}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDisplayPlaneCapabilitiesKHR, supportedAlpha} - {-# INLINE writeVkMinSrcPosition #-}- writeVkMinSrcPosition p- = pokeByteOff p #{offset VkDisplayPlaneCapabilitiesKHR, minSrcPosition}+instance {-# OVERLAPPING #-}+ CanWriteField "supportedAlpha" VkDisplayPlaneCapabilitiesKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDisplayPlaneCapabilitiesKHR, supportedAlpha} instance {-# OVERLAPPING #-} HasField "minSrcPosition" VkDisplayPlaneCapabilitiesKHR where@@ -174,36 +138,22 @@ fieldOffset = #{offset VkDisplayPlaneCapabilitiesKHR, minSrcPosition} -instance CanReadField "minSrcPosition"- VkDisplayPlaneCapabilitiesKHR- where- {-# INLINE getField #-}- getField = vkMinSrcPosition-- {-# INLINE readField #-}- readField = readVkMinSrcPosition- instance {-# OVERLAPPING #-}- HasVkMaxSrcPosition VkDisplayPlaneCapabilitiesKHR where- type VkMaxSrcPositionMType VkDisplayPlaneCapabilitiesKHR =- VkOffset2D-- {-# NOINLINE vkMaxSrcPosition #-}- vkMaxSrcPosition x+ CanReadField "minSrcPosition" VkDisplayPlaneCapabilitiesKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplayPlaneCapabilitiesKHR, maxSrcPosition})-- {-# INLINE vkMaxSrcPositionByteOffset #-}- vkMaxSrcPositionByteOffset ~_- = #{offset VkDisplayPlaneCapabilitiesKHR, maxSrcPosition}+ (peekByteOff (unsafePtr x) #{offset VkDisplayPlaneCapabilitiesKHR, minSrcPosition}) - {-# INLINE readVkMaxSrcPosition #-}- readVkMaxSrcPosition p- = peekByteOff p #{offset VkDisplayPlaneCapabilitiesKHR, maxSrcPosition}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDisplayPlaneCapabilitiesKHR, minSrcPosition} - {-# INLINE writeVkMaxSrcPosition #-}- writeVkMaxSrcPosition p- = pokeByteOff p #{offset VkDisplayPlaneCapabilitiesKHR, maxSrcPosition}+instance {-# OVERLAPPING #-}+ CanWriteField "minSrcPosition" VkDisplayPlaneCapabilitiesKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDisplayPlaneCapabilitiesKHR, minSrcPosition} instance {-# OVERLAPPING #-} HasField "maxSrcPosition" VkDisplayPlaneCapabilitiesKHR where@@ -223,35 +173,22 @@ fieldOffset = #{offset VkDisplayPlaneCapabilitiesKHR, maxSrcPosition} -instance CanReadField "maxSrcPosition"- VkDisplayPlaneCapabilitiesKHR- where- {-# INLINE getField #-}- getField = vkMaxSrcPosition-- {-# INLINE readField #-}- readField = readVkMaxSrcPosition- instance {-# OVERLAPPING #-}- HasVkMinSrcExtent VkDisplayPlaneCapabilitiesKHR where- type VkMinSrcExtentMType VkDisplayPlaneCapabilitiesKHR = VkExtent2D-- {-# NOINLINE vkMinSrcExtent #-}- vkMinSrcExtent x+ CanReadField "maxSrcPosition" VkDisplayPlaneCapabilitiesKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplayPlaneCapabilitiesKHR, minSrcExtent})-- {-# INLINE vkMinSrcExtentByteOffset #-}- vkMinSrcExtentByteOffset ~_- = #{offset VkDisplayPlaneCapabilitiesKHR, minSrcExtent}+ (peekByteOff (unsafePtr x) #{offset VkDisplayPlaneCapabilitiesKHR, maxSrcPosition}) - {-# INLINE readVkMinSrcExtent #-}- readVkMinSrcExtent p- = peekByteOff p #{offset VkDisplayPlaneCapabilitiesKHR, minSrcExtent}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDisplayPlaneCapabilitiesKHR, maxSrcPosition} - {-# INLINE writeVkMinSrcExtent #-}- writeVkMinSrcExtent p- = pokeByteOff p #{offset VkDisplayPlaneCapabilitiesKHR, minSrcExtent}+instance {-# OVERLAPPING #-}+ CanWriteField "maxSrcPosition" VkDisplayPlaneCapabilitiesKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDisplayPlaneCapabilitiesKHR, maxSrcPosition} instance {-# OVERLAPPING #-} HasField "minSrcExtent" VkDisplayPlaneCapabilitiesKHR where@@ -271,34 +208,22 @@ fieldOffset = #{offset VkDisplayPlaneCapabilitiesKHR, minSrcExtent} -instance CanReadField "minSrcExtent" VkDisplayPlaneCapabilitiesKHR- where- {-# INLINE getField #-}- getField = vkMinSrcExtent-- {-# INLINE readField #-}- readField = readVkMinSrcExtent- instance {-# OVERLAPPING #-}- HasVkMaxSrcExtent VkDisplayPlaneCapabilitiesKHR where- type VkMaxSrcExtentMType VkDisplayPlaneCapabilitiesKHR = VkExtent2D-- {-# NOINLINE vkMaxSrcExtent #-}- vkMaxSrcExtent x+ CanReadField "minSrcExtent" VkDisplayPlaneCapabilitiesKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplayPlaneCapabilitiesKHR, maxSrcExtent})-- {-# INLINE vkMaxSrcExtentByteOffset #-}- vkMaxSrcExtentByteOffset ~_- = #{offset VkDisplayPlaneCapabilitiesKHR, maxSrcExtent}+ (peekByteOff (unsafePtr x) #{offset VkDisplayPlaneCapabilitiesKHR, minSrcExtent}) - {-# INLINE readVkMaxSrcExtent #-}- readVkMaxSrcExtent p- = peekByteOff p #{offset VkDisplayPlaneCapabilitiesKHR, maxSrcExtent}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDisplayPlaneCapabilitiesKHR, minSrcExtent} - {-# INLINE writeVkMaxSrcExtent #-}- writeVkMaxSrcExtent p- = pokeByteOff p #{offset VkDisplayPlaneCapabilitiesKHR, maxSrcExtent}+instance {-# OVERLAPPING #-}+ CanWriteField "minSrcExtent" VkDisplayPlaneCapabilitiesKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDisplayPlaneCapabilitiesKHR, minSrcExtent} instance {-# OVERLAPPING #-} HasField "maxSrcExtent" VkDisplayPlaneCapabilitiesKHR where@@ -318,35 +243,22 @@ fieldOffset = #{offset VkDisplayPlaneCapabilitiesKHR, maxSrcExtent} -instance CanReadField "maxSrcExtent" VkDisplayPlaneCapabilitiesKHR- where- {-# INLINE getField #-}- getField = vkMaxSrcExtent-- {-# INLINE readField #-}- readField = readVkMaxSrcExtent- instance {-# OVERLAPPING #-}- HasVkMinDstPosition VkDisplayPlaneCapabilitiesKHR where- type VkMinDstPositionMType VkDisplayPlaneCapabilitiesKHR =- VkOffset2D-- {-# NOINLINE vkMinDstPosition #-}- vkMinDstPosition x+ CanReadField "maxSrcExtent" VkDisplayPlaneCapabilitiesKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplayPlaneCapabilitiesKHR, minDstPosition})-- {-# INLINE vkMinDstPositionByteOffset #-}- vkMinDstPositionByteOffset ~_- = #{offset VkDisplayPlaneCapabilitiesKHR, minDstPosition}+ (peekByteOff (unsafePtr x) #{offset VkDisplayPlaneCapabilitiesKHR, maxSrcExtent}) - {-# INLINE readVkMinDstPosition #-}- readVkMinDstPosition p- = peekByteOff p #{offset VkDisplayPlaneCapabilitiesKHR, minDstPosition}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDisplayPlaneCapabilitiesKHR, maxSrcExtent} - {-# INLINE writeVkMinDstPosition #-}- writeVkMinDstPosition p- = pokeByteOff p #{offset VkDisplayPlaneCapabilitiesKHR, minDstPosition}+instance {-# OVERLAPPING #-}+ CanWriteField "maxSrcExtent" VkDisplayPlaneCapabilitiesKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDisplayPlaneCapabilitiesKHR, maxSrcExtent} instance {-# OVERLAPPING #-} HasField "minDstPosition" VkDisplayPlaneCapabilitiesKHR where@@ -366,36 +278,22 @@ fieldOffset = #{offset VkDisplayPlaneCapabilitiesKHR, minDstPosition} -instance CanReadField "minDstPosition"- VkDisplayPlaneCapabilitiesKHR- where- {-# INLINE getField #-}- getField = vkMinDstPosition-- {-# INLINE readField #-}- readField = readVkMinDstPosition- instance {-# OVERLAPPING #-}- HasVkMaxDstPosition VkDisplayPlaneCapabilitiesKHR where- type VkMaxDstPositionMType VkDisplayPlaneCapabilitiesKHR =- VkOffset2D-- {-# NOINLINE vkMaxDstPosition #-}- vkMaxDstPosition x+ CanReadField "minDstPosition" VkDisplayPlaneCapabilitiesKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplayPlaneCapabilitiesKHR, maxDstPosition})-- {-# INLINE vkMaxDstPositionByteOffset #-}- vkMaxDstPositionByteOffset ~_- = #{offset VkDisplayPlaneCapabilitiesKHR, maxDstPosition}+ (peekByteOff (unsafePtr x) #{offset VkDisplayPlaneCapabilitiesKHR, minDstPosition}) - {-# INLINE readVkMaxDstPosition #-}- readVkMaxDstPosition p- = peekByteOff p #{offset VkDisplayPlaneCapabilitiesKHR, maxDstPosition}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDisplayPlaneCapabilitiesKHR, minDstPosition} - {-# INLINE writeVkMaxDstPosition #-}- writeVkMaxDstPosition p- = pokeByteOff p #{offset VkDisplayPlaneCapabilitiesKHR, maxDstPosition}+instance {-# OVERLAPPING #-}+ CanWriteField "minDstPosition" VkDisplayPlaneCapabilitiesKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDisplayPlaneCapabilitiesKHR, minDstPosition} instance {-# OVERLAPPING #-} HasField "maxDstPosition" VkDisplayPlaneCapabilitiesKHR where@@ -415,35 +313,22 @@ fieldOffset = #{offset VkDisplayPlaneCapabilitiesKHR, maxDstPosition} -instance CanReadField "maxDstPosition"- VkDisplayPlaneCapabilitiesKHR- where- {-# INLINE getField #-}- getField = vkMaxDstPosition-- {-# INLINE readField #-}- readField = readVkMaxDstPosition- instance {-# OVERLAPPING #-}- HasVkMinDstExtent VkDisplayPlaneCapabilitiesKHR where- type VkMinDstExtentMType VkDisplayPlaneCapabilitiesKHR = VkExtent2D-- {-# NOINLINE vkMinDstExtent #-}- vkMinDstExtent x+ CanReadField "maxDstPosition" VkDisplayPlaneCapabilitiesKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplayPlaneCapabilitiesKHR, minDstExtent})-- {-# INLINE vkMinDstExtentByteOffset #-}- vkMinDstExtentByteOffset ~_- = #{offset VkDisplayPlaneCapabilitiesKHR, minDstExtent}+ (peekByteOff (unsafePtr x) #{offset VkDisplayPlaneCapabilitiesKHR, maxDstPosition}) - {-# INLINE readVkMinDstExtent #-}- readVkMinDstExtent p- = peekByteOff p #{offset VkDisplayPlaneCapabilitiesKHR, minDstExtent}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDisplayPlaneCapabilitiesKHR, maxDstPosition} - {-# INLINE writeVkMinDstExtent #-}- writeVkMinDstExtent p- = pokeByteOff p #{offset VkDisplayPlaneCapabilitiesKHR, minDstExtent}+instance {-# OVERLAPPING #-}+ CanWriteField "maxDstPosition" VkDisplayPlaneCapabilitiesKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDisplayPlaneCapabilitiesKHR, maxDstPosition} instance {-# OVERLAPPING #-} HasField "minDstExtent" VkDisplayPlaneCapabilitiesKHR where@@ -463,34 +348,22 @@ fieldOffset = #{offset VkDisplayPlaneCapabilitiesKHR, minDstExtent} -instance CanReadField "minDstExtent" VkDisplayPlaneCapabilitiesKHR- where- {-# INLINE getField #-}- getField = vkMinDstExtent-- {-# INLINE readField #-}- readField = readVkMinDstExtent- instance {-# OVERLAPPING #-}- HasVkMaxDstExtent VkDisplayPlaneCapabilitiesKHR where- type VkMaxDstExtentMType VkDisplayPlaneCapabilitiesKHR = VkExtent2D-- {-# NOINLINE vkMaxDstExtent #-}- vkMaxDstExtent x+ CanReadField "minDstExtent" VkDisplayPlaneCapabilitiesKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplayPlaneCapabilitiesKHR, maxDstExtent})-- {-# INLINE vkMaxDstExtentByteOffset #-}- vkMaxDstExtentByteOffset ~_- = #{offset VkDisplayPlaneCapabilitiesKHR, maxDstExtent}+ (peekByteOff (unsafePtr x) #{offset VkDisplayPlaneCapabilitiesKHR, minDstExtent}) - {-# INLINE readVkMaxDstExtent #-}- readVkMaxDstExtent p- = peekByteOff p #{offset VkDisplayPlaneCapabilitiesKHR, maxDstExtent}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDisplayPlaneCapabilitiesKHR, minDstExtent} - {-# INLINE writeVkMaxDstExtent #-}- writeVkMaxDstExtent p- = pokeByteOff p #{offset VkDisplayPlaneCapabilitiesKHR, maxDstExtent}+instance {-# OVERLAPPING #-}+ CanWriteField "minDstExtent" VkDisplayPlaneCapabilitiesKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDisplayPlaneCapabilitiesKHR, minDstExtent} instance {-# OVERLAPPING #-} HasField "maxDstExtent" VkDisplayPlaneCapabilitiesKHR where@@ -510,41 +383,51 @@ fieldOffset = #{offset VkDisplayPlaneCapabilitiesKHR, maxDstExtent} -instance CanReadField "maxDstExtent" VkDisplayPlaneCapabilitiesKHR- where- {-# INLINE getField #-}- getField = vkMaxDstExtent+instance {-# OVERLAPPING #-}+ CanReadField "maxDstExtent" VkDisplayPlaneCapabilitiesKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDisplayPlaneCapabilitiesKHR, maxDstExtent}) {-# INLINE readField #-}- readField = readVkMaxDstExtent+ readField p+ = peekByteOff p #{offset VkDisplayPlaneCapabilitiesKHR, maxDstExtent} +instance {-# OVERLAPPING #-}+ CanWriteField "maxDstExtent" VkDisplayPlaneCapabilitiesKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDisplayPlaneCapabilitiesKHR, maxDstExtent}+ instance Show VkDisplayPlaneCapabilitiesKHR where showsPrec d x = showString "VkDisplayPlaneCapabilitiesKHR {" .- showString "vkSupportedAlpha = " .- showsPrec d (vkSupportedAlpha x) .+ showString "supportedAlpha = " .+ showsPrec d (getField @"supportedAlpha" x) . showString ", " .- showString "vkMinSrcPosition = " .- showsPrec d (vkMinSrcPosition x) .+ showString "minSrcPosition = " .+ showsPrec d (getField @"minSrcPosition" x) . showString ", " .- showString "vkMaxSrcPosition = " .- showsPrec d (vkMaxSrcPosition x) .+ showString "maxSrcPosition = " .+ showsPrec d (getField @"maxSrcPosition" x) . showString ", " .- showString "vkMinSrcExtent = " .- showsPrec d (vkMinSrcExtent x) .+ showString "minSrcExtent = " .+ showsPrec d (getField @"minSrcExtent" x) . showString ", " .- showString "vkMaxSrcExtent = " .- showsPrec d (vkMaxSrcExtent x) .+ showString "maxSrcExtent = " .+ showsPrec d (getField @"maxSrcExtent" x) . showString ", " .- showString "vkMinDstPosition = " .- showsPrec d (vkMinDstPosition x) .+ showString "minDstPosition = " .+ showsPrec d (getField @"minDstPosition" x) . showString ", " .- showString "vkMaxDstPosition = " .- showsPrec d (vkMaxDstPosition x) .+ showString "maxDstPosition = " .+ showsPrec d (getField @"maxDstPosition" x) . showString ", " .- showString "vkMinDstExtent = " .- showsPrec d (vkMinDstExtent x) .+ showString "minDstExtent = " .+ showsPrec d (getField @"minDstExtent" x) . showString ", " .- showString "vkMaxDstExtent = " .- showsPrec d (vkMaxDstExtent x) .- showChar '}'+ showString "maxDstExtent = " .+ showsPrec d+ (getField @"maxDstExtent" x)+ . showChar '}'
@@ -5,23 +5,23 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkDisplayPlanePropertiesKHR (VkDisplayPlanePropertiesKHR(..)) where-import Foreign.Storable (Storable (..))+import Foreign.Storable (Storable (..)) import GHC.Prim import Graphics.Vulkan.Marshal import Graphics.Vulkan.Marshal.Internal-import Graphics.Vulkan.Types.Handles (VkDisplayKHR)-import Graphics.Vulkan.Types.StructMembers-import System.IO.Unsafe (unsafeDupablePerformIO)+import Graphics.Vulkan.Types.Handles (VkDisplayKHR)+import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkDisplayPlanePropertiesKHR { -- > VkDisplayKHR currentDisplay; -- > uint32_t currentStackIndex; -- > } VkDisplayPlanePropertiesKHR; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDisplayPlanePropertiesKHR.html VkDisplayPlanePropertiesKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDisplayPlanePropertiesKHR.html VkDisplayPlanePropertiesKHR registry at www.khronos.org> data VkDisplayPlanePropertiesKHR = VkDisplayPlanePropertiesKHR## Addr## ByteArray## @@ -74,28 +74,6 @@ type StructExtends VkDisplayPlanePropertiesKHR = '[] -- ' closing tick for hsc2hs instance {-# OVERLAPPING #-}- HasVkCurrentDisplay VkDisplayPlanePropertiesKHR where- type VkCurrentDisplayMType VkDisplayPlanePropertiesKHR =- VkDisplayKHR-- {-# NOINLINE vkCurrentDisplay #-}- vkCurrentDisplay x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplayPlanePropertiesKHR, currentDisplay})-- {-# INLINE vkCurrentDisplayByteOffset #-}- vkCurrentDisplayByteOffset ~_- = #{offset VkDisplayPlanePropertiesKHR, currentDisplay}-- {-# INLINE readVkCurrentDisplay #-}- readVkCurrentDisplay p- = peekByteOff p #{offset VkDisplayPlanePropertiesKHR, currentDisplay}-- {-# INLINE writeVkCurrentDisplay #-}- writeVkCurrentDisplay p- = pokeByteOff p #{offset VkDisplayPlanePropertiesKHR, currentDisplay}--instance {-# OVERLAPPING #-} HasField "currentDisplay" VkDisplayPlanePropertiesKHR where type FieldType "currentDisplay" VkDisplayPlanePropertiesKHR = VkDisplayKHR@@ -113,34 +91,22 @@ fieldOffset = #{offset VkDisplayPlanePropertiesKHR, currentDisplay} -instance CanReadField "currentDisplay" VkDisplayPlanePropertiesKHR- where- {-# INLINE getField #-}- getField = vkCurrentDisplay-- {-# INLINE readField #-}- readField = readVkCurrentDisplay- instance {-# OVERLAPPING #-}- HasVkCurrentStackIndex VkDisplayPlanePropertiesKHR where- type VkCurrentStackIndexMType VkDisplayPlanePropertiesKHR = Word32-- {-# NOINLINE vkCurrentStackIndex #-}- vkCurrentStackIndex x+ CanReadField "currentDisplay" VkDisplayPlanePropertiesKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplayPlanePropertiesKHR, currentStackIndex})-- {-# INLINE vkCurrentStackIndexByteOffset #-}- vkCurrentStackIndexByteOffset ~_- = #{offset VkDisplayPlanePropertiesKHR, currentStackIndex}+ (peekByteOff (unsafePtr x) #{offset VkDisplayPlanePropertiesKHR, currentDisplay}) - {-# INLINE readVkCurrentStackIndex #-}- readVkCurrentStackIndex p- = peekByteOff p #{offset VkDisplayPlanePropertiesKHR, currentStackIndex}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDisplayPlanePropertiesKHR, currentDisplay} - {-# INLINE writeVkCurrentStackIndex #-}- writeVkCurrentStackIndex p- = pokeByteOff p #{offset VkDisplayPlanePropertiesKHR, currentStackIndex}+instance {-# OVERLAPPING #-}+ CanWriteField "currentDisplay" VkDisplayPlanePropertiesKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDisplayPlanePropertiesKHR, currentDisplay} instance {-# OVERLAPPING #-} HasField "currentStackIndex" VkDisplayPlanePropertiesKHR where@@ -160,20 +126,28 @@ fieldOffset = #{offset VkDisplayPlanePropertiesKHR, currentStackIndex} -instance CanReadField "currentStackIndex"- VkDisplayPlanePropertiesKHR- where- {-# INLINE getField #-}- getField = vkCurrentStackIndex+instance {-# OVERLAPPING #-}+ CanReadField "currentStackIndex" VkDisplayPlanePropertiesKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDisplayPlanePropertiesKHR, currentStackIndex}) {-# INLINE readField #-}- readField = readVkCurrentStackIndex+ readField p+ = peekByteOff p #{offset VkDisplayPlanePropertiesKHR, currentStackIndex} +instance {-# OVERLAPPING #-}+ CanWriteField "currentStackIndex" VkDisplayPlanePropertiesKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDisplayPlanePropertiesKHR, currentStackIndex}+ instance Show VkDisplayPlanePropertiesKHR where showsPrec d x = showString "VkDisplayPlanePropertiesKHR {" .- showString "vkCurrentDisplay = " .- showsPrec d (vkCurrentDisplay x) .+ showString "currentDisplay = " .+ showsPrec d (getField @"currentDisplay" x) . showString ", " .- showString "vkCurrentStackIndex = " .- showsPrec d (vkCurrentStackIndex x) . showChar '}'+ showString "currentStackIndex = " .+ showsPrec d (getField @"currentStackIndex" x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkDisplayPowerInfoEXT (VkDisplayPowerInfoEXT(..)) where@@ -14,7 +15,6 @@ import Graphics.Vulkan.Marshal.Internal import Graphics.Vulkan.Types.Enum.VkDisplayPowerStateEXT (VkDisplayPowerStateEXT) import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkDisplayPowerInfoEXT {@@ -23,7 +23,7 @@ -- > VkDisplayPowerStateEXT powerState; -- > } VkDisplayPowerInfoEXT; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDisplayPowerInfoEXT.html VkDisplayPowerInfoEXT registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDisplayPowerInfoEXT.html VkDisplayPowerInfoEXT registry at www.khronos.org> data VkDisplayPowerInfoEXT = VkDisplayPowerInfoEXT## Addr## ByteArray## @@ -72,26 +72,6 @@ type ReturnedOnly VkDisplayPowerInfoEXT = 'False -- ' closing tick for hsc2hs type StructExtends VkDisplayPowerInfoEXT = '[] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkSType VkDisplayPowerInfoEXT where- type VkSTypeMType VkDisplayPowerInfoEXT = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplayPowerInfoEXT, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkDisplayPowerInfoEXT, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkDisplayPowerInfoEXT, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkDisplayPowerInfoEXT, sType}- instance {-# OVERLAPPING #-} HasField "sType" VkDisplayPowerInfoEXT where type FieldType "sType" VkDisplayPowerInfoEXT = VkStructureType@@ -106,36 +86,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkDisplayPowerInfoEXT, sType} -instance CanReadField "sType" VkDisplayPowerInfoEXT where- {-# INLINE getField #-}- getField = vkSType+instance {-# OVERLAPPING #-}+ CanReadField "sType" VkDisplayPowerInfoEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDisplayPowerInfoEXT, sType}) {-# INLINE readField #-}- readField = readVkSType+ readField p+ = peekByteOff p #{offset VkDisplayPowerInfoEXT, sType} -instance CanWriteField "sType" VkDisplayPowerInfoEXT where+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkDisplayPowerInfoEXT where {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-} HasVkPNext VkDisplayPowerInfoEXT where- type VkPNextMType VkDisplayPowerInfoEXT = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplayPowerInfoEXT, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkDisplayPowerInfoEXT, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkDisplayPowerInfoEXT, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkDisplayPowerInfoEXT, pNext}+ writeField p+ = pokeByteOff p #{offset VkDisplayPowerInfoEXT, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkDisplayPowerInfoEXT where@@ -151,38 +117,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkDisplayPowerInfoEXT, pNext} -instance CanReadField "pNext" VkDisplayPowerInfoEXT where- {-# INLINE getField #-}- getField = vkPNext+instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkDisplayPowerInfoEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDisplayPowerInfoEXT, pNext}) {-# INLINE readField #-}- readField = readVkPNext+ readField p+ = peekByteOff p #{offset VkDisplayPowerInfoEXT, pNext} -instance CanWriteField "pNext" VkDisplayPowerInfoEXT where+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkDisplayPowerInfoEXT where {-# INLINE writeField #-}- writeField = writeVkPNext--instance {-# OVERLAPPING #-} HasVkPowerState VkDisplayPowerInfoEXT- where- type VkPowerStateMType VkDisplayPowerInfoEXT =- VkDisplayPowerStateEXT-- {-# NOINLINE vkPowerState #-}- vkPowerState x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplayPowerInfoEXT, powerState})-- {-# INLINE vkPowerStateByteOffset #-}- vkPowerStateByteOffset ~_- = #{offset VkDisplayPowerInfoEXT, powerState}-- {-# INLINE readVkPowerState #-}- readVkPowerState p- = peekByteOff p #{offset VkDisplayPowerInfoEXT, powerState}-- {-# INLINE writeVkPowerState #-}- writeVkPowerState p- = pokeByteOff p #{offset VkDisplayPowerInfoEXT, powerState}+ writeField p+ = pokeByteOff p #{offset VkDisplayPowerInfoEXT, pNext} instance {-# OVERLAPPING #-} HasField "powerState" VkDisplayPowerInfoEXT where@@ -200,25 +150,31 @@ fieldOffset = #{offset VkDisplayPowerInfoEXT, powerState} -instance CanReadField "powerState" VkDisplayPowerInfoEXT where- {-# INLINE getField #-}- getField = vkPowerState+instance {-# OVERLAPPING #-}+ CanReadField "powerState" VkDisplayPowerInfoEXT where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDisplayPowerInfoEXT, powerState}) {-# INLINE readField #-}- readField = readVkPowerState+ readField p+ = peekByteOff p #{offset VkDisplayPowerInfoEXT, powerState} -instance CanWriteField "powerState" VkDisplayPowerInfoEXT where+instance {-# OVERLAPPING #-}+ CanWriteField "powerState" VkDisplayPowerInfoEXT where {-# INLINE writeField #-}- writeField = writeVkPowerState+ writeField p+ = pokeByteOff p #{offset VkDisplayPowerInfoEXT, powerState} instance Show VkDisplayPowerInfoEXT where showsPrec d x = showString "VkDisplayPowerInfoEXT {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkPowerState = " .- showsPrec d (vkPowerState x) . showChar '}'+ showString "powerState = " .+ showsPrec d (getField @"powerState" x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkDisplayPresentInfoKHR (VkDisplayPresentInfoKHR(..)) where@@ -16,7 +17,6 @@ import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType) import Graphics.Vulkan.Types.Struct.VkPresentInfoKHR (VkPresentInfoKHR) import Graphics.Vulkan.Types.Struct.VkRect2D (VkRect2D)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkDisplayPresentInfoKHR {@@ -27,7 +27,7 @@ -- > VkBool32 persistent; -- > } VkDisplayPresentInfoKHR; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDisplayPresentInfoKHR.html VkDisplayPresentInfoKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDisplayPresentInfoKHR.html VkDisplayPresentInfoKHR registry at www.khronos.org> data VkDisplayPresentInfoKHR = VkDisplayPresentInfoKHR## Addr## ByteArray## @@ -76,27 +76,6 @@ type ReturnedOnly VkDisplayPresentInfoKHR = 'False -- ' closing tick for hsc2hs type StructExtends VkDisplayPresentInfoKHR = '[VkPresentInfoKHR] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkSType VkDisplayPresentInfoKHR- where- type VkSTypeMType VkDisplayPresentInfoKHR = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplayPresentInfoKHR, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkDisplayPresentInfoKHR, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkDisplayPresentInfoKHR, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkDisplayPresentInfoKHR, sType}- instance {-# OVERLAPPING #-} HasField "sType" VkDisplayPresentInfoKHR where type FieldType "sType" VkDisplayPresentInfoKHR = VkStructureType@@ -111,37 +90,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkDisplayPresentInfoKHR, sType} -instance CanReadField "sType" VkDisplayPresentInfoKHR where- {-# INLINE getField #-}- getField = vkSType+instance {-# OVERLAPPING #-}+ CanReadField "sType" VkDisplayPresentInfoKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDisplayPresentInfoKHR, sType}) {-# INLINE readField #-}- readField = readVkSType+ readField p+ = peekByteOff p #{offset VkDisplayPresentInfoKHR, sType} -instance CanWriteField "sType" VkDisplayPresentInfoKHR where+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkDisplayPresentInfoKHR where {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-} HasVkPNext VkDisplayPresentInfoKHR- where- type VkPNextMType VkDisplayPresentInfoKHR = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplayPresentInfoKHR, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkDisplayPresentInfoKHR, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkDisplayPresentInfoKHR, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkDisplayPresentInfoKHR, pNext}+ writeField p+ = pokeByteOff p #{offset VkDisplayPresentInfoKHR, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkDisplayPresentInfoKHR where@@ -157,37 +121,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkDisplayPresentInfoKHR, pNext} -instance CanReadField "pNext" VkDisplayPresentInfoKHR where- {-# INLINE getField #-}- getField = vkPNext+instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkDisplayPresentInfoKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDisplayPresentInfoKHR, pNext}) {-# INLINE readField #-}- readField = readVkPNext+ readField p+ = peekByteOff p #{offset VkDisplayPresentInfoKHR, pNext} -instance CanWriteField "pNext" VkDisplayPresentInfoKHR where+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkDisplayPresentInfoKHR where {-# INLINE writeField #-}- writeField = writeVkPNext--instance {-# OVERLAPPING #-} HasVkSrcRect VkDisplayPresentInfoKHR- where- type VkSrcRectMType VkDisplayPresentInfoKHR = VkRect2D-- {-# NOINLINE vkSrcRect #-}- vkSrcRect x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplayPresentInfoKHR, srcRect})-- {-# INLINE vkSrcRectByteOffset #-}- vkSrcRectByteOffset ~_- = #{offset VkDisplayPresentInfoKHR, srcRect}-- {-# INLINE readVkSrcRect #-}- readVkSrcRect p- = peekByteOff p #{offset VkDisplayPresentInfoKHR, srcRect}-- {-# INLINE writeVkSrcRect #-}- writeVkSrcRect p- = pokeByteOff p #{offset VkDisplayPresentInfoKHR, srcRect}+ writeField p+ = pokeByteOff p #{offset VkDisplayPresentInfoKHR, pNext} instance {-# OVERLAPPING #-} HasField "srcRect" VkDisplayPresentInfoKHR where@@ -204,37 +153,22 @@ fieldOffset = #{offset VkDisplayPresentInfoKHR, srcRect} -instance CanReadField "srcRect" VkDisplayPresentInfoKHR where- {-# INLINE getField #-}- getField = vkSrcRect+instance {-# OVERLAPPING #-}+ CanReadField "srcRect" VkDisplayPresentInfoKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDisplayPresentInfoKHR, srcRect}) {-# INLINE readField #-}- readField = readVkSrcRect+ readField p+ = peekByteOff p #{offset VkDisplayPresentInfoKHR, srcRect} -instance CanWriteField "srcRect" VkDisplayPresentInfoKHR where+instance {-# OVERLAPPING #-}+ CanWriteField "srcRect" VkDisplayPresentInfoKHR where {-# INLINE writeField #-}- writeField = writeVkSrcRect--instance {-# OVERLAPPING #-} HasVkDstRect VkDisplayPresentInfoKHR- where- type VkDstRectMType VkDisplayPresentInfoKHR = VkRect2D-- {-# NOINLINE vkDstRect #-}- vkDstRect x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplayPresentInfoKHR, dstRect})-- {-# INLINE vkDstRectByteOffset #-}- vkDstRectByteOffset ~_- = #{offset VkDisplayPresentInfoKHR, dstRect}-- {-# INLINE readVkDstRect #-}- readVkDstRect p- = peekByteOff p #{offset VkDisplayPresentInfoKHR, dstRect}-- {-# INLINE writeVkDstRect #-}- writeVkDstRect p- = pokeByteOff p #{offset VkDisplayPresentInfoKHR, dstRect}+ writeField p+ = pokeByteOff p #{offset VkDisplayPresentInfoKHR, srcRect} instance {-# OVERLAPPING #-} HasField "dstRect" VkDisplayPresentInfoKHR where@@ -251,37 +185,22 @@ fieldOffset = #{offset VkDisplayPresentInfoKHR, dstRect} -instance CanReadField "dstRect" VkDisplayPresentInfoKHR where- {-# INLINE getField #-}- getField = vkDstRect-- {-# INLINE readField #-}- readField = readVkDstRect--instance CanWriteField "dstRect" VkDisplayPresentInfoKHR where- {-# INLINE writeField #-}- writeField = writeVkDstRect- instance {-# OVERLAPPING #-}- HasVkPersistent VkDisplayPresentInfoKHR where- type VkPersistentMType VkDisplayPresentInfoKHR = VkBool32-- {-# NOINLINE vkPersistent #-}- vkPersistent x+ CanReadField "dstRect" VkDisplayPresentInfoKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplayPresentInfoKHR, persistent})-- {-# INLINE vkPersistentByteOffset #-}- vkPersistentByteOffset ~_- = #{offset VkDisplayPresentInfoKHR, persistent}+ (peekByteOff (unsafePtr x) #{offset VkDisplayPresentInfoKHR, dstRect}) - {-# INLINE readVkPersistent #-}- readVkPersistent p- = peekByteOff p #{offset VkDisplayPresentInfoKHR, persistent}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDisplayPresentInfoKHR, dstRect} - {-# INLINE writeVkPersistent #-}- writeVkPersistent p- = pokeByteOff p #{offset VkDisplayPresentInfoKHR, persistent}+instance {-# OVERLAPPING #-}+ CanWriteField "dstRect" VkDisplayPresentInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDisplayPresentInfoKHR, dstRect} instance {-# OVERLAPPING #-} HasField "persistent" VkDisplayPresentInfoKHR where@@ -298,31 +217,37 @@ fieldOffset = #{offset VkDisplayPresentInfoKHR, persistent} -instance CanReadField "persistent" VkDisplayPresentInfoKHR where- {-# INLINE getField #-}- getField = vkPersistent+instance {-# OVERLAPPING #-}+ CanReadField "persistent" VkDisplayPresentInfoKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDisplayPresentInfoKHR, persistent}) {-# INLINE readField #-}- readField = readVkPersistent+ readField p+ = peekByteOff p #{offset VkDisplayPresentInfoKHR, persistent} -instance CanWriteField "persistent" VkDisplayPresentInfoKHR where+instance {-# OVERLAPPING #-}+ CanWriteField "persistent" VkDisplayPresentInfoKHR where {-# INLINE writeField #-}- writeField = writeVkPersistent+ writeField p+ = pokeByteOff p #{offset VkDisplayPresentInfoKHR, persistent} instance Show VkDisplayPresentInfoKHR where showsPrec d x = showString "VkDisplayPresentInfoKHR {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkSrcRect = " .- showsPrec d (vkSrcRect x) .+ showString "srcRect = " .+ showsPrec d (getField @"srcRect" x) . showString ", " .- showString "vkDstRect = " .- showsPrec d (vkDstRect x) .+ showString "dstRect = " .+ showsPrec d (getField @"dstRect" x) . showString ", " .- showString "vkPersistent = " .- showsPrec d (vkPersistent x) . showChar '}'+ showString "persistent = " .+ showsPrec d (getField @"persistent" x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkDisplayPropertiesKHR (VkDisplayPropertiesKHR(..)) where@@ -16,7 +17,6 @@ import Graphics.Vulkan.Types.Enum.VkSurfaceTransformFlagsKHR (VkSurfaceTransformFlagsKHR) import Graphics.Vulkan.Types.Handles (VkDisplayKHR) import Graphics.Vulkan.Types.Struct.VkExtent2D (VkExtent2D)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkDisplayPropertiesKHR {@@ -29,7 +29,7 @@ -- > VkBool32 persistentContent; -- > } VkDisplayPropertiesKHR; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDisplayPropertiesKHR.html VkDisplayPropertiesKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDisplayPropertiesKHR.html VkDisplayPropertiesKHR registry at www.khronos.org> data VkDisplayPropertiesKHR = VkDisplayPropertiesKHR## Addr## ByteArray## @@ -80,27 +80,6 @@ type ReturnedOnly VkDisplayPropertiesKHR = 'True -- ' closing tick for hsc2hs type StructExtends VkDisplayPropertiesKHR = '[] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkDisplay VkDisplayPropertiesKHR- where- type VkDisplayMType VkDisplayPropertiesKHR = VkDisplayKHR-- {-# NOINLINE vkDisplay #-}- vkDisplay x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplayPropertiesKHR, display})-- {-# INLINE vkDisplayByteOffset #-}- vkDisplayByteOffset ~_- = #{offset VkDisplayPropertiesKHR, display}-- {-# INLINE readVkDisplay #-}- readVkDisplay p- = peekByteOff p #{offset VkDisplayPropertiesKHR, display}-- {-# INLINE writeVkDisplay #-}- writeVkDisplay p- = pokeByteOff p #{offset VkDisplayPropertiesKHR, display}- instance {-# OVERLAPPING #-} HasField "display" VkDisplayPropertiesKHR where type FieldType "display" VkDisplayPropertiesKHR = VkDisplayKHR@@ -115,33 +94,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkDisplayPropertiesKHR, display} -instance CanReadField "display" VkDisplayPropertiesKHR where- {-# INLINE getField #-}- getField = vkDisplay-- {-# INLINE readField #-}- readField = readVkDisplay- instance {-# OVERLAPPING #-}- HasVkDisplayName VkDisplayPropertiesKHR where- type VkDisplayNameMType VkDisplayPropertiesKHR = CString-- {-# NOINLINE vkDisplayName #-}- vkDisplayName x+ CanReadField "display" VkDisplayPropertiesKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplayPropertiesKHR, displayName})-- {-# INLINE vkDisplayNameByteOffset #-}- vkDisplayNameByteOffset ~_- = #{offset VkDisplayPropertiesKHR, displayName}+ (peekByteOff (unsafePtr x) #{offset VkDisplayPropertiesKHR, display}) - {-# INLINE readVkDisplayName #-}- readVkDisplayName p- = peekByteOff p #{offset VkDisplayPropertiesKHR, displayName}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDisplayPropertiesKHR, display} - {-# INLINE writeVkDisplayName #-}- writeVkDisplayName p- = pokeByteOff p #{offset VkDisplayPropertiesKHR, displayName}+instance {-# OVERLAPPING #-}+ CanWriteField "display" VkDisplayPropertiesKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDisplayPropertiesKHR, display} instance {-# OVERLAPPING #-} HasField "displayName" VkDisplayPropertiesKHR where@@ -158,33 +126,22 @@ fieldOffset = #{offset VkDisplayPropertiesKHR, displayName} -instance CanReadField "displayName" VkDisplayPropertiesKHR where- {-# INLINE getField #-}- getField = vkDisplayName-- {-# INLINE readField #-}- readField = readVkDisplayName- instance {-# OVERLAPPING #-}- HasVkPhysicalDimensions VkDisplayPropertiesKHR where- type VkPhysicalDimensionsMType VkDisplayPropertiesKHR = VkExtent2D-- {-# NOINLINE vkPhysicalDimensions #-}- vkPhysicalDimensions x+ CanReadField "displayName" VkDisplayPropertiesKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplayPropertiesKHR, physicalDimensions})-- {-# INLINE vkPhysicalDimensionsByteOffset #-}- vkPhysicalDimensionsByteOffset ~_- = #{offset VkDisplayPropertiesKHR, physicalDimensions}+ (peekByteOff (unsafePtr x) #{offset VkDisplayPropertiesKHR, displayName}) - {-# INLINE readVkPhysicalDimensions #-}- readVkPhysicalDimensions p- = peekByteOff p #{offset VkDisplayPropertiesKHR, physicalDimensions}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDisplayPropertiesKHR, displayName} - {-# INLINE writeVkPhysicalDimensions #-}- writeVkPhysicalDimensions p- = pokeByteOff p #{offset VkDisplayPropertiesKHR, physicalDimensions}+instance {-# OVERLAPPING #-}+ CanWriteField "displayName" VkDisplayPropertiesKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDisplayPropertiesKHR, displayName} instance {-# OVERLAPPING #-} HasField "physicalDimensions" VkDisplayPropertiesKHR where@@ -204,34 +161,22 @@ fieldOffset = #{offset VkDisplayPropertiesKHR, physicalDimensions} -instance CanReadField "physicalDimensions" VkDisplayPropertiesKHR- where- {-# INLINE getField #-}- getField = vkPhysicalDimensions-- {-# INLINE readField #-}- readField = readVkPhysicalDimensions- instance {-# OVERLAPPING #-}- HasVkPhysicalResolution VkDisplayPropertiesKHR where- type VkPhysicalResolutionMType VkDisplayPropertiesKHR = VkExtent2D-- {-# NOINLINE vkPhysicalResolution #-}- vkPhysicalResolution x+ CanReadField "physicalDimensions" VkDisplayPropertiesKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplayPropertiesKHR, physicalResolution})-- {-# INLINE vkPhysicalResolutionByteOffset #-}- vkPhysicalResolutionByteOffset ~_- = #{offset VkDisplayPropertiesKHR, physicalResolution}+ (peekByteOff (unsafePtr x) #{offset VkDisplayPropertiesKHR, physicalDimensions}) - {-# INLINE readVkPhysicalResolution #-}- readVkPhysicalResolution p- = peekByteOff p #{offset VkDisplayPropertiesKHR, physicalResolution}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDisplayPropertiesKHR, physicalDimensions} - {-# INLINE writeVkPhysicalResolution #-}- writeVkPhysicalResolution p- = pokeByteOff p #{offset VkDisplayPropertiesKHR, physicalResolution}+instance {-# OVERLAPPING #-}+ CanWriteField "physicalDimensions" VkDisplayPropertiesKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDisplayPropertiesKHR, physicalDimensions} instance {-# OVERLAPPING #-} HasField "physicalResolution" VkDisplayPropertiesKHR where@@ -251,35 +196,22 @@ fieldOffset = #{offset VkDisplayPropertiesKHR, physicalResolution} -instance CanReadField "physicalResolution" VkDisplayPropertiesKHR- where- {-# INLINE getField #-}- getField = vkPhysicalResolution-- {-# INLINE readField #-}- readField = readVkPhysicalResolution- instance {-# OVERLAPPING #-}- HasVkSupportedTransforms VkDisplayPropertiesKHR where- type VkSupportedTransformsMType VkDisplayPropertiesKHR =- VkSurfaceTransformFlagsKHR-- {-# NOINLINE vkSupportedTransforms #-}- vkSupportedTransforms x+ CanReadField "physicalResolution" VkDisplayPropertiesKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplayPropertiesKHR, supportedTransforms})-- {-# INLINE vkSupportedTransformsByteOffset #-}- vkSupportedTransformsByteOffset ~_- = #{offset VkDisplayPropertiesKHR, supportedTransforms}+ (peekByteOff (unsafePtr x) #{offset VkDisplayPropertiesKHR, physicalResolution}) - {-# INLINE readVkSupportedTransforms #-}- readVkSupportedTransforms p- = peekByteOff p #{offset VkDisplayPropertiesKHR, supportedTransforms}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDisplayPropertiesKHR, physicalResolution} - {-# INLINE writeVkSupportedTransforms #-}- writeVkSupportedTransforms p- = pokeByteOff p #{offset VkDisplayPropertiesKHR, supportedTransforms}+instance {-# OVERLAPPING #-}+ CanWriteField "physicalResolution" VkDisplayPropertiesKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDisplayPropertiesKHR, physicalResolution} instance {-# OVERLAPPING #-} HasField "supportedTransforms" VkDisplayPropertiesKHR where@@ -299,34 +231,22 @@ fieldOffset = #{offset VkDisplayPropertiesKHR, supportedTransforms} -instance CanReadField "supportedTransforms" VkDisplayPropertiesKHR- where- {-# INLINE getField #-}- getField = vkSupportedTransforms-- {-# INLINE readField #-}- readField = readVkSupportedTransforms- instance {-# OVERLAPPING #-}- HasVkPlaneReorderPossible VkDisplayPropertiesKHR where- type VkPlaneReorderPossibleMType VkDisplayPropertiesKHR = VkBool32-- {-# NOINLINE vkPlaneReorderPossible #-}- vkPlaneReorderPossible x+ CanReadField "supportedTransforms" VkDisplayPropertiesKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplayPropertiesKHR, planeReorderPossible})-- {-# INLINE vkPlaneReorderPossibleByteOffset #-}- vkPlaneReorderPossibleByteOffset ~_- = #{offset VkDisplayPropertiesKHR, planeReorderPossible}+ (peekByteOff (unsafePtr x) #{offset VkDisplayPropertiesKHR, supportedTransforms}) - {-# INLINE readVkPlaneReorderPossible #-}- readVkPlaneReorderPossible p- = peekByteOff p #{offset VkDisplayPropertiesKHR, planeReorderPossible}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDisplayPropertiesKHR, supportedTransforms} - {-# INLINE writeVkPlaneReorderPossible #-}- writeVkPlaneReorderPossible p- = pokeByteOff p #{offset VkDisplayPropertiesKHR, planeReorderPossible}+instance {-# OVERLAPPING #-}+ CanWriteField "supportedTransforms" VkDisplayPropertiesKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDisplayPropertiesKHR, supportedTransforms} instance {-# OVERLAPPING #-} HasField "planeReorderPossible" VkDisplayPropertiesKHR where@@ -346,34 +266,22 @@ fieldOffset = #{offset VkDisplayPropertiesKHR, planeReorderPossible} -instance CanReadField "planeReorderPossible" VkDisplayPropertiesKHR- where- {-# INLINE getField #-}- getField = vkPlaneReorderPossible-- {-# INLINE readField #-}- readField = readVkPlaneReorderPossible- instance {-# OVERLAPPING #-}- HasVkPersistentContent VkDisplayPropertiesKHR where- type VkPersistentContentMType VkDisplayPropertiesKHR = VkBool32-- {-# NOINLINE vkPersistentContent #-}- vkPersistentContent x+ CanReadField "planeReorderPossible" VkDisplayPropertiesKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplayPropertiesKHR, persistentContent})-- {-# INLINE vkPersistentContentByteOffset #-}- vkPersistentContentByteOffset ~_- = #{offset VkDisplayPropertiesKHR, persistentContent}+ (peekByteOff (unsafePtr x) #{offset VkDisplayPropertiesKHR, planeReorderPossible}) - {-# INLINE readVkPersistentContent #-}- readVkPersistentContent p- = peekByteOff p #{offset VkDisplayPropertiesKHR, persistentContent}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDisplayPropertiesKHR, planeReorderPossible} - {-# INLINE writeVkPersistentContent #-}- writeVkPersistentContent p- = pokeByteOff p #{offset VkDisplayPropertiesKHR, persistentContent}+instance {-# OVERLAPPING #-}+ CanWriteField "planeReorderPossible" VkDisplayPropertiesKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDisplayPropertiesKHR, planeReorderPossible} instance {-# OVERLAPPING #-} HasField "persistentContent" VkDisplayPropertiesKHR where@@ -393,35 +301,44 @@ fieldOffset = #{offset VkDisplayPropertiesKHR, persistentContent} -instance CanReadField "persistentContent" VkDisplayPropertiesKHR- where- {-# INLINE getField #-}- getField = vkPersistentContent+instance {-# OVERLAPPING #-}+ CanReadField "persistentContent" VkDisplayPropertiesKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDisplayPropertiesKHR, persistentContent}) {-# INLINE readField #-}- readField = readVkPersistentContent+ readField p+ = peekByteOff p #{offset VkDisplayPropertiesKHR, persistentContent} +instance {-# OVERLAPPING #-}+ CanWriteField "persistentContent" VkDisplayPropertiesKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDisplayPropertiesKHR, persistentContent}+ instance Show VkDisplayPropertiesKHR where showsPrec d x = showString "VkDisplayPropertiesKHR {" .- showString "vkDisplay = " .- showsPrec d (vkDisplay x) .+ showString "display = " .+ showsPrec d (getField @"display" x) . showString ", " .- showString "vkDisplayName = " .- showsPrec d (vkDisplayName x) .+ showString "displayName = " .+ showsPrec d (getField @"displayName" x) . showString ", " .- showString "vkPhysicalDimensions = " .- showsPrec d (vkPhysicalDimensions x) .+ showString "physicalDimensions = " .+ showsPrec d (getField @"physicalDimensions" x) . showString ", " .- showString "vkPhysicalResolution = " .- showsPrec d (vkPhysicalResolution x) .+ showString "physicalResolution = " .+ showsPrec d (getField @"physicalResolution" x) . showString ", " .- showString "vkSupportedTransforms = " .- showsPrec d (vkSupportedTransforms x) .+ showString "supportedTransforms = " .+ showsPrec d (getField @"supportedTransforms" x) . showString ", " .- showString "vkPlaneReorderPossible = " .- showsPrec d (vkPlaneReorderPossible x) .+ showString "planeReorderPossible = " .+ showsPrec d (getField @"planeReorderPossible" x) . showString ", " .- showString "vkPersistentContent = " .- showsPrec d (vkPersistentContent x) .+ showString "persistentContent = " .+ showsPrec d (getField @"persistentContent" x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkDisplaySurfaceCreateInfoKHR (VkDisplaySurfaceCreateInfoKHR(..)) where@@ -18,7 +19,6 @@ import Graphics.Vulkan.Types.Enum.VkSurfaceTransformFlagsKHR (VkSurfaceTransformFlagBitsKHR) import Graphics.Vulkan.Types.Handles (VkDisplayModeKHR) import Graphics.Vulkan.Types.Struct.VkExtent2D (VkExtent2D)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkDisplaySurfaceCreateInfoKHR {@@ -34,7 +34,7 @@ -- > VkExtent2D imageExtent; -- > } VkDisplaySurfaceCreateInfoKHR; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDisplaySurfaceCreateInfoKHR.html VkDisplaySurfaceCreateInfoKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDisplaySurfaceCreateInfoKHR.html VkDisplaySurfaceCreateInfoKHR registry at www.khronos.org> data VkDisplaySurfaceCreateInfoKHR = VkDisplaySurfaceCreateInfoKHR## Addr## ByteArray## @@ -90,27 +90,6 @@ type StructExtends VkDisplaySurfaceCreateInfoKHR = '[] -- ' closing tick for hsc2hs instance {-# OVERLAPPING #-}- HasVkSType VkDisplaySurfaceCreateInfoKHR where- type VkSTypeMType VkDisplaySurfaceCreateInfoKHR = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplaySurfaceCreateInfoKHR, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkDisplaySurfaceCreateInfoKHR, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkDisplaySurfaceCreateInfoKHR, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkDisplaySurfaceCreateInfoKHR, sType}--instance {-# OVERLAPPING #-} HasField "sType" VkDisplaySurfaceCreateInfoKHR where type FieldType "sType" VkDisplaySurfaceCreateInfoKHR = VkStructureType@@ -126,37 +105,22 @@ fieldOffset = #{offset VkDisplaySurfaceCreateInfoKHR, sType} -instance CanReadField "sType" VkDisplaySurfaceCreateInfoKHR where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance CanWriteField "sType" VkDisplaySurfaceCreateInfoKHR where- {-# INLINE writeField #-}- writeField = writeVkSType- instance {-# OVERLAPPING #-}- HasVkPNext VkDisplaySurfaceCreateInfoKHR where- type VkPNextMType VkDisplaySurfaceCreateInfoKHR = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x+ CanReadField "sType" VkDisplaySurfaceCreateInfoKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplaySurfaceCreateInfoKHR, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkDisplaySurfaceCreateInfoKHR, pNext}+ (peekByteOff (unsafePtr x) #{offset VkDisplaySurfaceCreateInfoKHR, sType}) - {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkDisplaySurfaceCreateInfoKHR, pNext}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDisplaySurfaceCreateInfoKHR, sType} - {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkDisplaySurfaceCreateInfoKHR, pNext}+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkDisplaySurfaceCreateInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDisplaySurfaceCreateInfoKHR, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkDisplaySurfaceCreateInfoKHR where@@ -173,38 +137,22 @@ fieldOffset = #{offset VkDisplaySurfaceCreateInfoKHR, pNext} -instance CanReadField "pNext" VkDisplaySurfaceCreateInfoKHR where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkDisplaySurfaceCreateInfoKHR where- {-# INLINE writeField #-}- writeField = writeVkPNext- instance {-# OVERLAPPING #-}- HasVkFlags VkDisplaySurfaceCreateInfoKHR where- type VkFlagsMType VkDisplaySurfaceCreateInfoKHR =- VkDisplaySurfaceCreateFlagsKHR-- {-# NOINLINE vkFlags #-}- vkFlags x+ CanReadField "pNext" VkDisplaySurfaceCreateInfoKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplaySurfaceCreateInfoKHR, flags})-- {-# INLINE vkFlagsByteOffset #-}- vkFlagsByteOffset ~_- = #{offset VkDisplaySurfaceCreateInfoKHR, flags}+ (peekByteOff (unsafePtr x) #{offset VkDisplaySurfaceCreateInfoKHR, pNext}) - {-# INLINE readVkFlags #-}- readVkFlags p- = peekByteOff p #{offset VkDisplaySurfaceCreateInfoKHR, flags}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDisplaySurfaceCreateInfoKHR, pNext} - {-# INLINE writeVkFlags #-}- writeVkFlags p- = pokeByteOff p #{offset VkDisplaySurfaceCreateInfoKHR, flags}+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkDisplaySurfaceCreateInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDisplaySurfaceCreateInfoKHR, pNext} instance {-# OVERLAPPING #-} HasField "flags" VkDisplaySurfaceCreateInfoKHR where@@ -222,38 +170,22 @@ fieldOffset = #{offset VkDisplaySurfaceCreateInfoKHR, flags} -instance CanReadField "flags" VkDisplaySurfaceCreateInfoKHR where- {-# INLINE getField #-}- getField = vkFlags-- {-# INLINE readField #-}- readField = readVkFlags--instance CanWriteField "flags" VkDisplaySurfaceCreateInfoKHR where- {-# INLINE writeField #-}- writeField = writeVkFlags- instance {-# OVERLAPPING #-}- HasVkDisplayMode VkDisplaySurfaceCreateInfoKHR where- type VkDisplayModeMType VkDisplaySurfaceCreateInfoKHR =- VkDisplayModeKHR-- {-# NOINLINE vkDisplayMode #-}- vkDisplayMode x+ CanReadField "flags" VkDisplaySurfaceCreateInfoKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplaySurfaceCreateInfoKHR, displayMode})-- {-# INLINE vkDisplayModeByteOffset #-}- vkDisplayModeByteOffset ~_- = #{offset VkDisplaySurfaceCreateInfoKHR, displayMode}+ (peekByteOff (unsafePtr x) #{offset VkDisplaySurfaceCreateInfoKHR, flags}) - {-# INLINE readVkDisplayMode #-}- readVkDisplayMode p- = peekByteOff p #{offset VkDisplaySurfaceCreateInfoKHR, displayMode}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDisplaySurfaceCreateInfoKHR, flags} - {-# INLINE writeVkDisplayMode #-}- writeVkDisplayMode p- = pokeByteOff p #{offset VkDisplaySurfaceCreateInfoKHR, displayMode}+instance {-# OVERLAPPING #-}+ CanWriteField "flags" VkDisplaySurfaceCreateInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDisplaySurfaceCreateInfoKHR, flags} instance {-# OVERLAPPING #-} HasField "displayMode" VkDisplaySurfaceCreateInfoKHR where@@ -273,39 +205,22 @@ fieldOffset = #{offset VkDisplaySurfaceCreateInfoKHR, displayMode} -instance CanReadField "displayMode" VkDisplaySurfaceCreateInfoKHR- where- {-# INLINE getField #-}- getField = vkDisplayMode-- {-# INLINE readField #-}- readField = readVkDisplayMode--instance CanWriteField "displayMode" VkDisplaySurfaceCreateInfoKHR- where- {-# INLINE writeField #-}- writeField = writeVkDisplayMode- instance {-# OVERLAPPING #-}- HasVkPlaneIndex VkDisplaySurfaceCreateInfoKHR where- type VkPlaneIndexMType VkDisplaySurfaceCreateInfoKHR = Word32-- {-# NOINLINE vkPlaneIndex #-}- vkPlaneIndex x+ CanReadField "displayMode" VkDisplaySurfaceCreateInfoKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplaySurfaceCreateInfoKHR, planeIndex})-- {-# INLINE vkPlaneIndexByteOffset #-}- vkPlaneIndexByteOffset ~_- = #{offset VkDisplaySurfaceCreateInfoKHR, planeIndex}+ (peekByteOff (unsafePtr x) #{offset VkDisplaySurfaceCreateInfoKHR, displayMode}) - {-# INLINE readVkPlaneIndex #-}- readVkPlaneIndex p- = peekByteOff p #{offset VkDisplaySurfaceCreateInfoKHR, planeIndex}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDisplaySurfaceCreateInfoKHR, displayMode} - {-# INLINE writeVkPlaneIndex #-}- writeVkPlaneIndex p- = pokeByteOff p #{offset VkDisplaySurfaceCreateInfoKHR, planeIndex}+instance {-# OVERLAPPING #-}+ CanWriteField "displayMode" VkDisplaySurfaceCreateInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDisplaySurfaceCreateInfoKHR, displayMode} instance {-# OVERLAPPING #-} HasField "planeIndex" VkDisplaySurfaceCreateInfoKHR where@@ -324,39 +239,22 @@ fieldOffset = #{offset VkDisplaySurfaceCreateInfoKHR, planeIndex} -instance CanReadField "planeIndex" VkDisplaySurfaceCreateInfoKHR- where- {-# INLINE getField #-}- getField = vkPlaneIndex-- {-# INLINE readField #-}- readField = readVkPlaneIndex--instance CanWriteField "planeIndex" VkDisplaySurfaceCreateInfoKHR- where- {-# INLINE writeField #-}- writeField = writeVkPlaneIndex- instance {-# OVERLAPPING #-}- HasVkPlaneStackIndex VkDisplaySurfaceCreateInfoKHR where- type VkPlaneStackIndexMType VkDisplaySurfaceCreateInfoKHR = Word32-- {-# NOINLINE vkPlaneStackIndex #-}- vkPlaneStackIndex x+ CanReadField "planeIndex" VkDisplaySurfaceCreateInfoKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplaySurfaceCreateInfoKHR, planeStackIndex})-- {-# INLINE vkPlaneStackIndexByteOffset #-}- vkPlaneStackIndexByteOffset ~_- = #{offset VkDisplaySurfaceCreateInfoKHR, planeStackIndex}+ (peekByteOff (unsafePtr x) #{offset VkDisplaySurfaceCreateInfoKHR, planeIndex}) - {-# INLINE readVkPlaneStackIndex #-}- readVkPlaneStackIndex p- = peekByteOff p #{offset VkDisplaySurfaceCreateInfoKHR, planeStackIndex}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDisplaySurfaceCreateInfoKHR, planeIndex} - {-# INLINE writeVkPlaneStackIndex #-}- writeVkPlaneStackIndex p- = pokeByteOff p #{offset VkDisplaySurfaceCreateInfoKHR, planeStackIndex}+instance {-# OVERLAPPING #-}+ CanWriteField "planeIndex" VkDisplaySurfaceCreateInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDisplaySurfaceCreateInfoKHR, planeIndex} instance {-# OVERLAPPING #-} HasField "planeStackIndex" VkDisplaySurfaceCreateInfoKHR where@@ -376,42 +274,22 @@ fieldOffset = #{offset VkDisplaySurfaceCreateInfoKHR, planeStackIndex} -instance CanReadField "planeStackIndex"- VkDisplaySurfaceCreateInfoKHR- where- {-# INLINE getField #-}- getField = vkPlaneStackIndex-- {-# INLINE readField #-}- readField = readVkPlaneStackIndex--instance CanWriteField "planeStackIndex"- VkDisplaySurfaceCreateInfoKHR- where- {-# INLINE writeField #-}- writeField = writeVkPlaneStackIndex- instance {-# OVERLAPPING #-}- HasVkTransform VkDisplaySurfaceCreateInfoKHR where- type VkTransformMType VkDisplaySurfaceCreateInfoKHR =- VkSurfaceTransformFlagBitsKHR-- {-# NOINLINE vkTransform #-}- vkTransform x+ CanReadField "planeStackIndex" VkDisplaySurfaceCreateInfoKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplaySurfaceCreateInfoKHR, transform})-- {-# INLINE vkTransformByteOffset #-}- vkTransformByteOffset ~_- = #{offset VkDisplaySurfaceCreateInfoKHR, transform}+ (peekByteOff (unsafePtr x) #{offset VkDisplaySurfaceCreateInfoKHR, planeStackIndex}) - {-# INLINE readVkTransform #-}- readVkTransform p- = peekByteOff p #{offset VkDisplaySurfaceCreateInfoKHR, transform}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDisplaySurfaceCreateInfoKHR, planeStackIndex} - {-# INLINE writeVkTransform #-}- writeVkTransform p- = pokeByteOff p #{offset VkDisplaySurfaceCreateInfoKHR, transform}+instance {-# OVERLAPPING #-}+ CanWriteField "planeStackIndex" VkDisplaySurfaceCreateInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDisplaySurfaceCreateInfoKHR, planeStackIndex} instance {-# OVERLAPPING #-} HasField "transform" VkDisplaySurfaceCreateInfoKHR where@@ -431,40 +309,22 @@ fieldOffset = #{offset VkDisplaySurfaceCreateInfoKHR, transform} -instance CanReadField "transform" VkDisplaySurfaceCreateInfoKHR- where- {-# INLINE getField #-}- getField = vkTransform-- {-# INLINE readField #-}- readField = readVkTransform--instance CanWriteField "transform" VkDisplaySurfaceCreateInfoKHR- where- {-# INLINE writeField #-}- writeField = writeVkTransform- instance {-# OVERLAPPING #-}- HasVkGlobalAlpha VkDisplaySurfaceCreateInfoKHR where- type VkGlobalAlphaMType VkDisplaySurfaceCreateInfoKHR =- #{type float}-- {-# NOINLINE vkGlobalAlpha #-}- vkGlobalAlpha x+ CanReadField "transform" VkDisplaySurfaceCreateInfoKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplaySurfaceCreateInfoKHR, globalAlpha})-- {-# INLINE vkGlobalAlphaByteOffset #-}- vkGlobalAlphaByteOffset ~_- = #{offset VkDisplaySurfaceCreateInfoKHR, globalAlpha}+ (peekByteOff (unsafePtr x) #{offset VkDisplaySurfaceCreateInfoKHR, transform}) - {-# INLINE readVkGlobalAlpha #-}- readVkGlobalAlpha p- = peekByteOff p #{offset VkDisplaySurfaceCreateInfoKHR, globalAlpha}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDisplaySurfaceCreateInfoKHR, transform} - {-# INLINE writeVkGlobalAlpha #-}- writeVkGlobalAlpha p- = pokeByteOff p #{offset VkDisplaySurfaceCreateInfoKHR, globalAlpha}+instance {-# OVERLAPPING #-}+ CanWriteField "transform" VkDisplaySurfaceCreateInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDisplaySurfaceCreateInfoKHR, transform} instance {-# OVERLAPPING #-} HasField "globalAlpha" VkDisplaySurfaceCreateInfoKHR where@@ -484,40 +344,22 @@ fieldOffset = #{offset VkDisplaySurfaceCreateInfoKHR, globalAlpha} -instance CanReadField "globalAlpha" VkDisplaySurfaceCreateInfoKHR- where- {-# INLINE getField #-}- getField = vkGlobalAlpha-- {-# INLINE readField #-}- readField = readVkGlobalAlpha--instance CanWriteField "globalAlpha" VkDisplaySurfaceCreateInfoKHR- where- {-# INLINE writeField #-}- writeField = writeVkGlobalAlpha- instance {-# OVERLAPPING #-}- HasVkAlphaMode VkDisplaySurfaceCreateInfoKHR where- type VkAlphaModeMType VkDisplaySurfaceCreateInfoKHR =- VkDisplayPlaneAlphaFlagBitsKHR-- {-# NOINLINE vkAlphaMode #-}- vkAlphaMode x+ CanReadField "globalAlpha" VkDisplaySurfaceCreateInfoKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplaySurfaceCreateInfoKHR, alphaMode})-- {-# INLINE vkAlphaModeByteOffset #-}- vkAlphaModeByteOffset ~_- = #{offset VkDisplaySurfaceCreateInfoKHR, alphaMode}+ (peekByteOff (unsafePtr x) #{offset VkDisplaySurfaceCreateInfoKHR, globalAlpha}) - {-# INLINE readVkAlphaMode #-}- readVkAlphaMode p- = peekByteOff p #{offset VkDisplaySurfaceCreateInfoKHR, alphaMode}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDisplaySurfaceCreateInfoKHR, globalAlpha} - {-# INLINE writeVkAlphaMode #-}- writeVkAlphaMode p- = pokeByteOff p #{offset VkDisplaySurfaceCreateInfoKHR, alphaMode}+instance {-# OVERLAPPING #-}+ CanWriteField "globalAlpha" VkDisplaySurfaceCreateInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDisplaySurfaceCreateInfoKHR, globalAlpha} instance {-# OVERLAPPING #-} HasField "alphaMode" VkDisplaySurfaceCreateInfoKHR where@@ -537,39 +379,22 @@ fieldOffset = #{offset VkDisplaySurfaceCreateInfoKHR, alphaMode} -instance CanReadField "alphaMode" VkDisplaySurfaceCreateInfoKHR- where- {-# INLINE getField #-}- getField = vkAlphaMode-- {-# INLINE readField #-}- readField = readVkAlphaMode--instance CanWriteField "alphaMode" VkDisplaySurfaceCreateInfoKHR- where- {-# INLINE writeField #-}- writeField = writeVkAlphaMode- instance {-# OVERLAPPING #-}- HasVkImageExtent VkDisplaySurfaceCreateInfoKHR where- type VkImageExtentMType VkDisplaySurfaceCreateInfoKHR = VkExtent2D-- {-# NOINLINE vkImageExtent #-}- vkImageExtent x+ CanReadField "alphaMode" VkDisplaySurfaceCreateInfoKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDisplaySurfaceCreateInfoKHR, imageExtent})-- {-# INLINE vkImageExtentByteOffset #-}- vkImageExtentByteOffset ~_- = #{offset VkDisplaySurfaceCreateInfoKHR, imageExtent}+ (peekByteOff (unsafePtr x) #{offset VkDisplaySurfaceCreateInfoKHR, alphaMode}) - {-# INLINE readVkImageExtent #-}- readVkImageExtent p- = peekByteOff p #{offset VkDisplaySurfaceCreateInfoKHR, imageExtent}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDisplaySurfaceCreateInfoKHR, alphaMode} - {-# INLINE writeVkImageExtent #-}- writeVkImageExtent p- = pokeByteOff p #{offset VkDisplaySurfaceCreateInfoKHR, imageExtent}+instance {-# OVERLAPPING #-}+ CanWriteField "alphaMode" VkDisplaySurfaceCreateInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDisplaySurfaceCreateInfoKHR, alphaMode} instance {-# OVERLAPPING #-} HasField "imageExtent" VkDisplaySurfaceCreateInfoKHR where@@ -589,49 +414,56 @@ fieldOffset = #{offset VkDisplaySurfaceCreateInfoKHR, imageExtent} -instance CanReadField "imageExtent" VkDisplaySurfaceCreateInfoKHR- where- {-# INLINE getField #-}- getField = vkImageExtent+instance {-# OVERLAPPING #-}+ CanReadField "imageExtent" VkDisplaySurfaceCreateInfoKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDisplaySurfaceCreateInfoKHR, imageExtent}) {-# INLINE readField #-}- readField = readVkImageExtent+ readField p+ = peekByteOff p #{offset VkDisplaySurfaceCreateInfoKHR, imageExtent} -instance CanWriteField "imageExtent" VkDisplaySurfaceCreateInfoKHR- where+instance {-# OVERLAPPING #-}+ CanWriteField "imageExtent" VkDisplaySurfaceCreateInfoKHR where {-# INLINE writeField #-}- writeField = writeVkImageExtent+ writeField p+ = pokeByteOff p #{offset VkDisplaySurfaceCreateInfoKHR, imageExtent} instance Show VkDisplaySurfaceCreateInfoKHR where showsPrec d x = showString "VkDisplaySurfaceCreateInfoKHR {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkFlags = " .- showsPrec d (vkFlags x) .+ showString "flags = " .+ showsPrec d (getField @"flags" x) . showString ", " .- showString "vkDisplayMode = " .- showsPrec d (vkDisplayMode x) .+ showString "displayMode = " .+ showsPrec d (getField @"displayMode" x) . showString ", " .- showString "vkPlaneIndex = " .- showsPrec d (vkPlaneIndex x) .+ showString "planeIndex = " .+ showsPrec d (getField @"planeIndex" x) . showString ", " .- showString "vkPlaneStackIndex = " .- showsPrec d (vkPlaneStackIndex x) .+ showString "planeStackIndex = " .+ showsPrec d (getField @"planeStackIndex" x) . showString ", " .- showString "vkTransform = " .- showsPrec d (vkTransform x) .+ showString "transform = " .+ showsPrec d (getField @"transform" x) . showString ", " .- showString "vkGlobalAlpha = " .- showsPrec d (vkGlobalAlpha x) .+ showString "globalAlpha = " .+ showsPrec d (getField @"globalAlpha" x) . showString ", " .- showString "vkAlphaMode = " .- showsPrec d (vkAlphaMode x) .+ showString "alphaMode = " .+ showsPrec d+ (getField @"alphaMode" x)+ . showString ", " .- showString "vkImageExtent = " .- showsPrec d (vkImageExtent x)+ showString "imageExtent = " .+ showsPrec d+ (getField @"imageExtent" x) . showChar '}'
@@ -5,15 +5,15 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkDrawIndexedIndirectCommand (VkDrawIndexedIndirectCommand(..)) where-import Foreign.Storable (Storable (..))+import Foreign.Storable (Storable (..)) import GHC.Prim import Graphics.Vulkan.Marshal import Graphics.Vulkan.Marshal.Internal-import Graphics.Vulkan.Types.StructMembers-import System.IO.Unsafe (unsafeDupablePerformIO)+import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkDrawIndexedIndirectCommand { -- > uint32_t indexCount;@@ -23,7 +23,7 @@ -- > uint32_t firstInstance; -- > } VkDrawIndexedIndirectCommand; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDrawIndexedIndirectCommand.html VkDrawIndexedIndirectCommand registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDrawIndexedIndirectCommand.html VkDrawIndexedIndirectCommand registry at www.khronos.org> data VkDrawIndexedIndirectCommand = VkDrawIndexedIndirectCommand## Addr## ByteArray## @@ -78,27 +78,6 @@ type StructExtends VkDrawIndexedIndirectCommand = '[] -- ' closing tick for hsc2hs instance {-# OVERLAPPING #-}- HasVkIndexCount VkDrawIndexedIndirectCommand where- type VkIndexCountMType VkDrawIndexedIndirectCommand = Word32-- {-# NOINLINE vkIndexCount #-}- vkIndexCount x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDrawIndexedIndirectCommand, indexCount})-- {-# INLINE vkIndexCountByteOffset #-}- vkIndexCountByteOffset ~_- = #{offset VkDrawIndexedIndirectCommand, indexCount}-- {-# INLINE readVkIndexCount #-}- readVkIndexCount p- = peekByteOff p #{offset VkDrawIndexedIndirectCommand, indexCount}-- {-# INLINE writeVkIndexCount #-}- writeVkIndexCount p- = pokeByteOff p #{offset VkDrawIndexedIndirectCommand, indexCount}--instance {-# OVERLAPPING #-} HasField "indexCount" VkDrawIndexedIndirectCommand where type FieldType "indexCount" VkDrawIndexedIndirectCommand = Word32 type FieldOptional "indexCount" VkDrawIndexedIndirectCommand =@@ -115,39 +94,22 @@ fieldOffset = #{offset VkDrawIndexedIndirectCommand, indexCount} -instance CanReadField "indexCount" VkDrawIndexedIndirectCommand- where- {-# INLINE getField #-}- getField = vkIndexCount-- {-# INLINE readField #-}- readField = readVkIndexCount--instance CanWriteField "indexCount" VkDrawIndexedIndirectCommand- where- {-# INLINE writeField #-}- writeField = writeVkIndexCount- instance {-# OVERLAPPING #-}- HasVkInstanceCount VkDrawIndexedIndirectCommand where- type VkInstanceCountMType VkDrawIndexedIndirectCommand = Word32-- {-# NOINLINE vkInstanceCount #-}- vkInstanceCount x+ CanReadField "indexCount" VkDrawIndexedIndirectCommand where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDrawIndexedIndirectCommand, instanceCount})-- {-# INLINE vkInstanceCountByteOffset #-}- vkInstanceCountByteOffset ~_- = #{offset VkDrawIndexedIndirectCommand, instanceCount}+ (peekByteOff (unsafePtr x) #{offset VkDrawIndexedIndirectCommand, indexCount}) - {-# INLINE readVkInstanceCount #-}- readVkInstanceCount p- = peekByteOff p #{offset VkDrawIndexedIndirectCommand, instanceCount}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDrawIndexedIndirectCommand, indexCount} - {-# INLINE writeVkInstanceCount #-}- writeVkInstanceCount p- = pokeByteOff p #{offset VkDrawIndexedIndirectCommand, instanceCount}+instance {-# OVERLAPPING #-}+ CanWriteField "indexCount" VkDrawIndexedIndirectCommand where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDrawIndexedIndirectCommand, indexCount} instance {-# OVERLAPPING #-} HasField "instanceCount" VkDrawIndexedIndirectCommand where@@ -167,39 +129,22 @@ fieldOffset = #{offset VkDrawIndexedIndirectCommand, instanceCount} -instance CanReadField "instanceCount" VkDrawIndexedIndirectCommand- where- {-# INLINE getField #-}- getField = vkInstanceCount-- {-# INLINE readField #-}- readField = readVkInstanceCount--instance CanWriteField "instanceCount" VkDrawIndexedIndirectCommand- where- {-# INLINE writeField #-}- writeField = writeVkInstanceCount- instance {-# OVERLAPPING #-}- HasVkFirstIndex VkDrawIndexedIndirectCommand where- type VkFirstIndexMType VkDrawIndexedIndirectCommand = Word32-- {-# NOINLINE vkFirstIndex #-}- vkFirstIndex x+ CanReadField "instanceCount" VkDrawIndexedIndirectCommand where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDrawIndexedIndirectCommand, firstIndex})-- {-# INLINE vkFirstIndexByteOffset #-}- vkFirstIndexByteOffset ~_- = #{offset VkDrawIndexedIndirectCommand, firstIndex}+ (peekByteOff (unsafePtr x) #{offset VkDrawIndexedIndirectCommand, instanceCount}) - {-# INLINE readVkFirstIndex #-}- readVkFirstIndex p- = peekByteOff p #{offset VkDrawIndexedIndirectCommand, firstIndex}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDrawIndexedIndirectCommand, instanceCount} - {-# INLINE writeVkFirstIndex #-}- writeVkFirstIndex p- = pokeByteOff p #{offset VkDrawIndexedIndirectCommand, firstIndex}+instance {-# OVERLAPPING #-}+ CanWriteField "instanceCount" VkDrawIndexedIndirectCommand where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDrawIndexedIndirectCommand, instanceCount} instance {-# OVERLAPPING #-} HasField "firstIndex" VkDrawIndexedIndirectCommand where@@ -218,39 +163,22 @@ fieldOffset = #{offset VkDrawIndexedIndirectCommand, firstIndex} -instance CanReadField "firstIndex" VkDrawIndexedIndirectCommand- where- {-# INLINE getField #-}- getField = vkFirstIndex-- {-# INLINE readField #-}- readField = readVkFirstIndex--instance CanWriteField "firstIndex" VkDrawIndexedIndirectCommand- where- {-# INLINE writeField #-}- writeField = writeVkFirstIndex- instance {-# OVERLAPPING #-}- HasVkVertexOffset VkDrawIndexedIndirectCommand where- type VkVertexOffsetMType VkDrawIndexedIndirectCommand = Int32-- {-# NOINLINE vkVertexOffset #-}- vkVertexOffset x+ CanReadField "firstIndex" VkDrawIndexedIndirectCommand where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDrawIndexedIndirectCommand, vertexOffset})-- {-# INLINE vkVertexOffsetByteOffset #-}- vkVertexOffsetByteOffset ~_- = #{offset VkDrawIndexedIndirectCommand, vertexOffset}+ (peekByteOff (unsafePtr x) #{offset VkDrawIndexedIndirectCommand, firstIndex}) - {-# INLINE readVkVertexOffset #-}- readVkVertexOffset p- = peekByteOff p #{offset VkDrawIndexedIndirectCommand, vertexOffset}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDrawIndexedIndirectCommand, firstIndex} - {-# INLINE writeVkVertexOffset #-}- writeVkVertexOffset p- = pokeByteOff p #{offset VkDrawIndexedIndirectCommand, vertexOffset}+instance {-# OVERLAPPING #-}+ CanWriteField "firstIndex" VkDrawIndexedIndirectCommand where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDrawIndexedIndirectCommand, firstIndex} instance {-# OVERLAPPING #-} HasField "vertexOffset" VkDrawIndexedIndirectCommand where@@ -269,39 +197,22 @@ fieldOffset = #{offset VkDrawIndexedIndirectCommand, vertexOffset} -instance CanReadField "vertexOffset" VkDrawIndexedIndirectCommand- where- {-# INLINE getField #-}- getField = vkVertexOffset-- {-# INLINE readField #-}- readField = readVkVertexOffset--instance CanWriteField "vertexOffset" VkDrawIndexedIndirectCommand- where- {-# INLINE writeField #-}- writeField = writeVkVertexOffset- instance {-# OVERLAPPING #-}- HasVkFirstInstance VkDrawIndexedIndirectCommand where- type VkFirstInstanceMType VkDrawIndexedIndirectCommand = Word32-- {-# NOINLINE vkFirstInstance #-}- vkFirstInstance x+ CanReadField "vertexOffset" VkDrawIndexedIndirectCommand where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDrawIndexedIndirectCommand, firstInstance})-- {-# INLINE vkFirstInstanceByteOffset #-}- vkFirstInstanceByteOffset ~_- = #{offset VkDrawIndexedIndirectCommand, firstInstance}+ (peekByteOff (unsafePtr x) #{offset VkDrawIndexedIndirectCommand, vertexOffset}) - {-# INLINE readVkFirstInstance #-}- readVkFirstInstance p- = peekByteOff p #{offset VkDrawIndexedIndirectCommand, firstInstance}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDrawIndexedIndirectCommand, vertexOffset} - {-# INLINE writeVkFirstInstance #-}- writeVkFirstInstance p- = pokeByteOff p #{offset VkDrawIndexedIndirectCommand, firstInstance}+instance {-# OVERLAPPING #-}+ CanWriteField "vertexOffset" VkDrawIndexedIndirectCommand where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDrawIndexedIndirectCommand, vertexOffset} instance {-# OVERLAPPING #-} HasField "firstInstance" VkDrawIndexedIndirectCommand where@@ -321,33 +232,37 @@ fieldOffset = #{offset VkDrawIndexedIndirectCommand, firstInstance} -instance CanReadField "firstInstance" VkDrawIndexedIndirectCommand- where- {-# INLINE getField #-}- getField = vkFirstInstance+instance {-# OVERLAPPING #-}+ CanReadField "firstInstance" VkDrawIndexedIndirectCommand where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDrawIndexedIndirectCommand, firstInstance}) {-# INLINE readField #-}- readField = readVkFirstInstance+ readField p+ = peekByteOff p #{offset VkDrawIndexedIndirectCommand, firstInstance} -instance CanWriteField "firstInstance" VkDrawIndexedIndirectCommand- where+instance {-# OVERLAPPING #-}+ CanWriteField "firstInstance" VkDrawIndexedIndirectCommand where {-# INLINE writeField #-}- writeField = writeVkFirstInstance+ writeField p+ = pokeByteOff p #{offset VkDrawIndexedIndirectCommand, firstInstance} instance Show VkDrawIndexedIndirectCommand where showsPrec d x = showString "VkDrawIndexedIndirectCommand {" .- showString "vkIndexCount = " .- showsPrec d (vkIndexCount x) .+ showString "indexCount = " .+ showsPrec d (getField @"indexCount" x) . showString ", " .- showString "vkInstanceCount = " .- showsPrec d (vkInstanceCount x) .+ showString "instanceCount = " .+ showsPrec d (getField @"instanceCount" x) . showString ", " .- showString "vkFirstIndex = " .- showsPrec d (vkFirstIndex x) .+ showString "firstIndex = " .+ showsPrec d (getField @"firstIndex" x) . showString ", " .- showString "vkVertexOffset = " .- showsPrec d (vkVertexOffset x) .+ showString "vertexOffset = " .+ showsPrec d (getField @"vertexOffset" x) . showString ", " .- showString "vkFirstInstance = " .- showsPrec d (vkFirstInstance x) . showChar '}'+ showString "firstInstance = " .+ showsPrec d (getField @"firstInstance" x) . showChar '}'
@@ -5,15 +5,15 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkDrawIndirectCommand (VkDrawIndirectCommand(..)) where-import Foreign.Storable (Storable (..))+import Foreign.Storable (Storable (..)) import GHC.Prim import Graphics.Vulkan.Marshal import Graphics.Vulkan.Marshal.Internal-import Graphics.Vulkan.Types.StructMembers-import System.IO.Unsafe (unsafeDupablePerformIO)+import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkDrawIndirectCommand { -- > uint32_t vertexCount;@@ -22,7 +22,7 @@ -- > uint32_t firstInstance; -- > } VkDrawIndirectCommand; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkDrawIndirectCommand.html VkDrawIndirectCommand registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkDrawIndirectCommand.html VkDrawIndirectCommand registry at www.khronos.org> data VkDrawIndirectCommand = VkDrawIndirectCommand## Addr## ByteArray## @@ -71,27 +71,6 @@ type ReturnedOnly VkDrawIndirectCommand = 'False -- ' closing tick for hsc2hs type StructExtends VkDrawIndirectCommand = '[] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkVertexCount VkDrawIndirectCommand- where- type VkVertexCountMType VkDrawIndirectCommand = Word32-- {-# NOINLINE vkVertexCount #-}- vkVertexCount x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDrawIndirectCommand, vertexCount})-- {-# INLINE vkVertexCountByteOffset #-}- vkVertexCountByteOffset ~_- = #{offset VkDrawIndirectCommand, vertexCount}-- {-# INLINE readVkVertexCount #-}- readVkVertexCount p- = peekByteOff p #{offset VkDrawIndirectCommand, vertexCount}-- {-# INLINE writeVkVertexCount #-}- writeVkVertexCount p- = pokeByteOff p #{offset VkDrawIndirectCommand, vertexCount}- instance {-# OVERLAPPING #-} HasField "vertexCount" VkDrawIndirectCommand where type FieldType "vertexCount" VkDrawIndirectCommand = Word32@@ -107,37 +86,22 @@ fieldOffset = #{offset VkDrawIndirectCommand, vertexCount} -instance CanReadField "vertexCount" VkDrawIndirectCommand where- {-# INLINE getField #-}- getField = vkVertexCount-- {-# INLINE readField #-}- readField = readVkVertexCount--instance CanWriteField "vertexCount" VkDrawIndirectCommand where- {-# INLINE writeField #-}- writeField = writeVkVertexCount- instance {-# OVERLAPPING #-}- HasVkInstanceCount VkDrawIndirectCommand where- type VkInstanceCountMType VkDrawIndirectCommand = Word32-- {-# NOINLINE vkInstanceCount #-}- vkInstanceCount x+ CanReadField "vertexCount" VkDrawIndirectCommand where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDrawIndirectCommand, instanceCount})-- {-# INLINE vkInstanceCountByteOffset #-}- vkInstanceCountByteOffset ~_- = #{offset VkDrawIndirectCommand, instanceCount}+ (peekByteOff (unsafePtr x) #{offset VkDrawIndirectCommand, vertexCount}) - {-# INLINE readVkInstanceCount #-}- readVkInstanceCount p- = peekByteOff p #{offset VkDrawIndirectCommand, instanceCount}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDrawIndirectCommand, vertexCount} - {-# INLINE writeVkInstanceCount #-}- writeVkInstanceCount p- = pokeByteOff p #{offset VkDrawIndirectCommand, instanceCount}+instance {-# OVERLAPPING #-}+ CanWriteField "vertexCount" VkDrawIndirectCommand where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDrawIndirectCommand, vertexCount} instance {-# OVERLAPPING #-} HasField "instanceCount" VkDrawIndirectCommand where@@ -154,37 +118,22 @@ fieldOffset = #{offset VkDrawIndirectCommand, instanceCount} -instance CanReadField "instanceCount" VkDrawIndirectCommand where- {-# INLINE getField #-}- getField = vkInstanceCount+instance {-# OVERLAPPING #-}+ CanReadField "instanceCount" VkDrawIndirectCommand where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDrawIndirectCommand, instanceCount}) {-# INLINE readField #-}- readField = readVkInstanceCount+ readField p+ = peekByteOff p #{offset VkDrawIndirectCommand, instanceCount} -instance CanWriteField "instanceCount" VkDrawIndirectCommand where+instance {-# OVERLAPPING #-}+ CanWriteField "instanceCount" VkDrawIndirectCommand where {-# INLINE writeField #-}- writeField = writeVkInstanceCount--instance {-# OVERLAPPING #-} HasVkFirstVertex VkDrawIndirectCommand- where- type VkFirstVertexMType VkDrawIndirectCommand = Word32-- {-# NOINLINE vkFirstVertex #-}- vkFirstVertex x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDrawIndirectCommand, firstVertex})-- {-# INLINE vkFirstVertexByteOffset #-}- vkFirstVertexByteOffset ~_- = #{offset VkDrawIndirectCommand, firstVertex}-- {-# INLINE readVkFirstVertex #-}- readVkFirstVertex p- = peekByteOff p #{offset VkDrawIndirectCommand, firstVertex}-- {-# INLINE writeVkFirstVertex #-}- writeVkFirstVertex p- = pokeByteOff p #{offset VkDrawIndirectCommand, firstVertex}+ writeField p+ = pokeByteOff p #{offset VkDrawIndirectCommand, instanceCount} instance {-# OVERLAPPING #-} HasField "firstVertex" VkDrawIndirectCommand where@@ -201,37 +150,22 @@ fieldOffset = #{offset VkDrawIndirectCommand, firstVertex} -instance CanReadField "firstVertex" VkDrawIndirectCommand where- {-# INLINE getField #-}- getField = vkFirstVertex-- {-# INLINE readField #-}- readField = readVkFirstVertex--instance CanWriteField "firstVertex" VkDrawIndirectCommand where- {-# INLINE writeField #-}- writeField = writeVkFirstVertex- instance {-# OVERLAPPING #-}- HasVkFirstInstance VkDrawIndirectCommand where- type VkFirstInstanceMType VkDrawIndirectCommand = Word32-- {-# NOINLINE vkFirstInstance #-}- vkFirstInstance x+ CanReadField "firstVertex" VkDrawIndirectCommand where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkDrawIndirectCommand, firstInstance})-- {-# INLINE vkFirstInstanceByteOffset #-}- vkFirstInstanceByteOffset ~_- = #{offset VkDrawIndirectCommand, firstInstance}+ (peekByteOff (unsafePtr x) #{offset VkDrawIndirectCommand, firstVertex}) - {-# INLINE readVkFirstInstance #-}- readVkFirstInstance p- = peekByteOff p #{offset VkDrawIndirectCommand, firstInstance}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkDrawIndirectCommand, firstVertex} - {-# INLINE writeVkFirstInstance #-}- writeVkFirstInstance p- = pokeByteOff p #{offset VkDrawIndirectCommand, firstInstance}+instance {-# OVERLAPPING #-}+ CanWriteField "firstVertex" VkDrawIndirectCommand where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkDrawIndirectCommand, firstVertex} instance {-# OVERLAPPING #-} HasField "firstInstance" VkDrawIndirectCommand where@@ -248,28 +182,34 @@ fieldOffset = #{offset VkDrawIndirectCommand, firstInstance} -instance CanReadField "firstInstance" VkDrawIndirectCommand where- {-# INLINE getField #-}- getField = vkFirstInstance+instance {-# OVERLAPPING #-}+ CanReadField "firstInstance" VkDrawIndirectCommand where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkDrawIndirectCommand, firstInstance}) {-# INLINE readField #-}- readField = readVkFirstInstance+ readField p+ = peekByteOff p #{offset VkDrawIndirectCommand, firstInstance} -instance CanWriteField "firstInstance" VkDrawIndirectCommand where+instance {-# OVERLAPPING #-}+ CanWriteField "firstInstance" VkDrawIndirectCommand where {-# INLINE writeField #-}- writeField = writeVkFirstInstance+ writeField p+ = pokeByteOff p #{offset VkDrawIndirectCommand, firstInstance} instance Show VkDrawIndirectCommand where showsPrec d x = showString "VkDrawIndirectCommand {" .- showString "vkVertexCount = " .- showsPrec d (vkVertexCount x) .+ showString "vertexCount = " .+ showsPrec d (getField @"vertexCount" x) . showString ", " .- showString "vkInstanceCount = " .- showsPrec d (vkInstanceCount x) .+ showString "instanceCount = " .+ showsPrec d (getField @"instanceCount" x) . showString ", " .- showString "vkFirstVertex = " .- showsPrec d (vkFirstVertex x) .+ showString "firstVertex = " .+ showsPrec d (getField @"firstVertex" x) . showString ", " .- showString "vkFirstInstance = " .- showsPrec d (vkFirstInstance x) . showChar '}'+ showString "firstInstance = " .+ showsPrec d (getField @"firstInstance" x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkEventCreateInfo (VkEventCreateInfo(..)) where@@ -14,7 +15,6 @@ import Graphics.Vulkan.Marshal.Internal import Graphics.Vulkan.Types.Bitmasks (VkEventCreateFlags) import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkEventCreateInfo {@@ -23,7 +23,7 @@ -- > VkEventCreateFlags flags; -- > } VkEventCreateInfo; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkEventCreateInfo.html VkEventCreateInfo registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkEventCreateInfo.html VkEventCreateInfo registry at www.khronos.org> data VkEventCreateInfo = VkEventCreateInfo## Addr## ByteArray## instance Eq VkEventCreateInfo where@@ -70,26 +70,6 @@ type ReturnedOnly VkEventCreateInfo = 'False -- ' closing tick for hsc2hs type StructExtends VkEventCreateInfo = '[] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkSType VkEventCreateInfo where- type VkSTypeMType VkEventCreateInfo = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkEventCreateInfo, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkEventCreateInfo, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkEventCreateInfo, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkEventCreateInfo, sType}- instance {-# OVERLAPPING #-} HasField "sType" VkEventCreateInfo where type FieldType "sType" VkEventCreateInfo = VkStructureType@@ -104,36 +84,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkEventCreateInfo, sType} -instance CanReadField "sType" VkEventCreateInfo where- {-# INLINE getField #-}- getField = vkSType+instance {-# OVERLAPPING #-} CanReadField "sType" VkEventCreateInfo+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkEventCreateInfo, sType}) {-# INLINE readField #-}- readField = readVkSType+ readField p+ = peekByteOff p #{offset VkEventCreateInfo, sType} -instance CanWriteField "sType" VkEventCreateInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkEventCreateInfo where {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-} HasVkPNext VkEventCreateInfo where- type VkPNextMType VkEventCreateInfo = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkEventCreateInfo, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkEventCreateInfo, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkEventCreateInfo, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkEventCreateInfo, pNext}+ writeField p+ = pokeByteOff p #{offset VkEventCreateInfo, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkEventCreateInfo where@@ -149,36 +115,22 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkEventCreateInfo, pNext} -instance CanReadField "pNext" VkEventCreateInfo where- {-# INLINE getField #-}- getField = vkPNext+instance {-# OVERLAPPING #-} CanReadField "pNext" VkEventCreateInfo+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkEventCreateInfo, pNext}) {-# INLINE readField #-}- readField = readVkPNext+ readField p+ = peekByteOff p #{offset VkEventCreateInfo, pNext} -instance CanWriteField "pNext" VkEventCreateInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkEventCreateInfo where {-# INLINE writeField #-}- writeField = writeVkPNext--instance {-# OVERLAPPING #-} HasVkFlags VkEventCreateInfo where- type VkFlagsMType VkEventCreateInfo = VkEventCreateFlags-- {-# NOINLINE vkFlags #-}- vkFlags x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkEventCreateInfo, flags})-- {-# INLINE vkFlagsByteOffset #-}- vkFlagsByteOffset ~_- = #{offset VkEventCreateInfo, flags}-- {-# INLINE readVkFlags #-}- readVkFlags p- = peekByteOff p #{offset VkEventCreateInfo, flags}-- {-# INLINE writeVkFlags #-}- writeVkFlags p- = pokeByteOff p #{offset VkEventCreateInfo, flags}+ writeField p+ = pokeByteOff p #{offset VkEventCreateInfo, pNext} instance {-# OVERLAPPING #-} HasField "flags" VkEventCreateInfo where@@ -194,24 +146,31 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkEventCreateInfo, flags} -instance CanReadField "flags" VkEventCreateInfo where- {-# INLINE getField #-}- getField = vkFlags+instance {-# OVERLAPPING #-} CanReadField "flags" VkEventCreateInfo+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkEventCreateInfo, flags}) {-# INLINE readField #-}- readField = readVkFlags+ readField p+ = peekByteOff p #{offset VkEventCreateInfo, flags} -instance CanWriteField "flags" VkEventCreateInfo where+instance {-# OVERLAPPING #-}+ CanWriteField "flags" VkEventCreateInfo where {-# INLINE writeField #-}- writeField = writeVkFlags+ writeField p+ = pokeByteOff p #{offset VkEventCreateInfo, flags} instance Show VkEventCreateInfo where showsPrec d x = showString "VkEventCreateInfo {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkFlags = " . showsPrec d (vkFlags x) . showChar '}'+ showString "flags = " .+ showsPrec d (getField @"flags" x) . showChar '}'
@@ -0,0 +1,181 @@+#include "vulkan/vulkan.h"++{-# LANGUAGE DataKinds #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-}+{-# LANGUAGE TypeFamilies #-}+module Graphics.Vulkan.Types.Struct.VkExportFenceCreateInfo+ (VkExportFenceCreateInfo(..)) where+import Foreign.Storable (Storable (..))+import GHC.Prim+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Marshal.Internal+import Graphics.Vulkan.Types.Enum.VkExternalFenceHandleTypeFlags (VkExternalFenceHandleTypeFlags)+import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)+import Graphics.Vulkan.Types.Struct.VkFenceCreateInfo (VkFenceCreateInfo)+import System.IO.Unsafe (unsafeDupablePerformIO)++-- | > typedef struct VkExportFenceCreateInfo {+-- > VkStructureType sType;+-- > const void* pNext;+-- > VkExternalFenceHandleTypeFlags handleTypes;+-- > } VkExportFenceCreateInfo;+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkExportFenceCreateInfo.html VkExportFenceCreateInfo registry at www.khronos.org>+data VkExportFenceCreateInfo = VkExportFenceCreateInfo## Addr##+ ByteArray##++instance Eq VkExportFenceCreateInfo where+ (VkExportFenceCreateInfo## a _) == x@(VkExportFenceCreateInfo## b _)+ = EQ == cmpBytes## (sizeOf x) a b++ {-# INLINE (==) #-}++instance Ord VkExportFenceCreateInfo where+ (VkExportFenceCreateInfo## a _) `compare`+ x@(VkExportFenceCreateInfo## b _) = cmpBytes## (sizeOf x) a b++ {-# INLINE compare #-}++instance Storable VkExportFenceCreateInfo where+ sizeOf ~_ = #{size VkExportFenceCreateInfo}++ {-# INLINE sizeOf #-}+ alignment ~_ = #{alignment VkExportFenceCreateInfo}++ {-# INLINE alignment #-}+ peek = peekVkData##++ {-# INLINE peek #-}+ poke = pokeVkData##++ {-# INLINE poke #-}++instance VulkanMarshalPrim VkExportFenceCreateInfo where+ unsafeAddr (VkExportFenceCreateInfo## a _) = a++ {-# INLINE unsafeAddr #-}+ unsafeByteArray (VkExportFenceCreateInfo## _ b) = b++ {-# INLINE unsafeByteArray #-}+ unsafeFromByteArrayOffset off b+ = VkExportFenceCreateInfo## (plusAddr## (byteArrayContents## b) off) b++ {-# INLINE unsafeFromByteArrayOffset #-}++instance VulkanMarshal VkExportFenceCreateInfo where+ type StructFields VkExportFenceCreateInfo =+ '["sType", "pNext", "handleTypes"] -- ' closing tick for hsc2hs+ type CUnionType VkExportFenceCreateInfo = 'False -- ' closing tick for hsc2hs+ type ReturnedOnly VkExportFenceCreateInfo = 'False -- ' closing tick for hsc2hs+ type StructExtends VkExportFenceCreateInfo = '[VkFenceCreateInfo] -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-}+ HasField "sType" VkExportFenceCreateInfo where+ type FieldType "sType" VkExportFenceCreateInfo = VkStructureType+ type FieldOptional "sType" VkExportFenceCreateInfo = 'False -- ' closing tick for hsc2hs+ type FieldOffset "sType" VkExportFenceCreateInfo =+ #{offset VkExportFenceCreateInfo, sType}+ type FieldIsArray "sType" VkExportFenceCreateInfo = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset = #{offset VkExportFenceCreateInfo, sType}++instance {-# OVERLAPPING #-}+ CanReadField "sType" VkExportFenceCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExportFenceCreateInfo, sType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExportFenceCreateInfo, sType}++instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkExportFenceCreateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExportFenceCreateInfo, sType}++instance {-# OVERLAPPING #-}+ HasField "pNext" VkExportFenceCreateInfo where+ type FieldType "pNext" VkExportFenceCreateInfo = Ptr Void+ type FieldOptional "pNext" VkExportFenceCreateInfo = 'False -- ' closing tick for hsc2hs+ type FieldOffset "pNext" VkExportFenceCreateInfo =+ #{offset VkExportFenceCreateInfo, pNext}+ type FieldIsArray "pNext" VkExportFenceCreateInfo = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset = #{offset VkExportFenceCreateInfo, pNext}++instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkExportFenceCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExportFenceCreateInfo, pNext})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExportFenceCreateInfo, pNext}++instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkExportFenceCreateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExportFenceCreateInfo, pNext}++instance {-# OVERLAPPING #-}+ HasField "handleTypes" VkExportFenceCreateInfo where+ type FieldType "handleTypes" VkExportFenceCreateInfo =+ VkExternalFenceHandleTypeFlags+ type FieldOptional "handleTypes" VkExportFenceCreateInfo = 'True -- ' closing tick for hsc2hs+ type FieldOffset "handleTypes" VkExportFenceCreateInfo =+ #{offset VkExportFenceCreateInfo, handleTypes}+ type FieldIsArray "handleTypes" VkExportFenceCreateInfo = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = True++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkExportFenceCreateInfo, handleTypes}++instance {-# OVERLAPPING #-}+ CanReadField "handleTypes" VkExportFenceCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExportFenceCreateInfo, handleTypes})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExportFenceCreateInfo, handleTypes}++instance {-# OVERLAPPING #-}+ CanWriteField "handleTypes" VkExportFenceCreateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExportFenceCreateInfo, handleTypes}++instance Show VkExportFenceCreateInfo where+ showsPrec d x+ = showString "VkExportFenceCreateInfo {" .+ showString "sType = " .+ showsPrec d (getField @"sType" x) .+ showString ", " .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) .+ showString ", " .+ showString "handleTypes = " .+ showsPrec d (getField @"handleTypes" x) . showChar '}'
@@ -0,0 +1,8 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Types.Struct.VkExportFenceCreateInfoKHR+ (VkExportFenceCreateInfo(..), VkExportFenceCreateInfoKHR) where+import Graphics.Vulkan.Types.Struct.VkExportFenceCreateInfo (VkExportFenceCreateInfo (..))++-- | Alias for `VkExportFenceCreateInfo`+type VkExportFenceCreateInfoKHR = VkExportFenceCreateInfo
@@ -1,235 +0,0 @@-#include "vulkan/vulkan.h"--{-# LANGUAGE DataKinds #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE MagicHash #-}-{-# LANGUAGE MultiParamTypeClasses #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE TypeFamilies #-}-module Graphics.Vulkan.Types.Struct.VkExportFenceCreateInfoKHR- (VkExportFenceCreateInfoKHR(..)) where-import Foreign.Storable (Storable (..))-import GHC.Prim-import Graphics.Vulkan.Marshal-import Graphics.Vulkan.Marshal.Internal-import Graphics.Vulkan.Types.Enum.VkExternalFenceHandleTypeFlagsKHR (VkExternalFenceHandleTypeFlagsKHR)-import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)-import Graphics.Vulkan.Types.Struct.VkFenceCreateInfo (VkFenceCreateInfo)-import Graphics.Vulkan.Types.StructMembers-import System.IO.Unsafe (unsafeDupablePerformIO)---- | > typedef struct VkExportFenceCreateInfoKHR {--- > VkStructureType sType;--- > const void* pNext;--- > VkExternalFenceHandleTypeFlagsKHR handleTypes;--- > } VkExportFenceCreateInfoKHR;------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkExportFenceCreateInfoKHR.html VkExportFenceCreateInfoKHR registry at www.khronos.org>-data VkExportFenceCreateInfoKHR = VkExportFenceCreateInfoKHR## Addr##- ByteArray##--instance Eq VkExportFenceCreateInfoKHR where- (VkExportFenceCreateInfoKHR## a _) ==- x@(VkExportFenceCreateInfoKHR## b _)- = EQ == cmpBytes## (sizeOf x) a b-- {-# INLINE (==) #-}--instance Ord VkExportFenceCreateInfoKHR where- (VkExportFenceCreateInfoKHR## a _) `compare`- x@(VkExportFenceCreateInfoKHR## b _) = cmpBytes## (sizeOf x) a b-- {-# INLINE compare #-}--instance Storable VkExportFenceCreateInfoKHR where- sizeOf ~_ = #{size VkExportFenceCreateInfoKHR}-- {-# INLINE sizeOf #-}- alignment ~_ = #{alignment VkExportFenceCreateInfoKHR}-- {-# INLINE alignment #-}- peek = peekVkData##-- {-# INLINE peek #-}- poke = pokeVkData##-- {-# INLINE poke #-}--instance VulkanMarshalPrim VkExportFenceCreateInfoKHR where- unsafeAddr (VkExportFenceCreateInfoKHR## a _) = a-- {-# INLINE unsafeAddr #-}- unsafeByteArray (VkExportFenceCreateInfoKHR## _ b) = b-- {-# INLINE unsafeByteArray #-}- unsafeFromByteArrayOffset off b- = VkExportFenceCreateInfoKHR##- (plusAddr## (byteArrayContents## b) off)- b-- {-# INLINE unsafeFromByteArrayOffset #-}--instance VulkanMarshal VkExportFenceCreateInfoKHR where- type StructFields VkExportFenceCreateInfoKHR =- '["sType", "pNext", "handleTypes"] -- ' closing tick for hsc2hs- type CUnionType VkExportFenceCreateInfoKHR = 'False -- ' closing tick for hsc2hs- type ReturnedOnly VkExportFenceCreateInfoKHR = 'False -- ' closing tick for hsc2hs- type StructExtends VkExportFenceCreateInfoKHR =- '[VkFenceCreateInfo] -- ' closing tick for hsc2hs--instance {-# OVERLAPPING #-} HasVkSType VkExportFenceCreateInfoKHR- where- type VkSTypeMType VkExportFenceCreateInfoKHR = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExportFenceCreateInfoKHR, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkExportFenceCreateInfoKHR, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkExportFenceCreateInfoKHR, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkExportFenceCreateInfoKHR, sType}--instance {-# OVERLAPPING #-}- HasField "sType" VkExportFenceCreateInfoKHR where- type FieldType "sType" VkExportFenceCreateInfoKHR = VkStructureType- type FieldOptional "sType" VkExportFenceCreateInfoKHR = 'False -- ' closing tick for hsc2hs- type FieldOffset "sType" VkExportFenceCreateInfoKHR =- #{offset VkExportFenceCreateInfoKHR, sType}- type FieldIsArray "sType" VkExportFenceCreateInfoKHR = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkExportFenceCreateInfoKHR, sType}--instance CanReadField "sType" VkExportFenceCreateInfoKHR where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance CanWriteField "sType" VkExportFenceCreateInfoKHR where- {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-} HasVkPNext VkExportFenceCreateInfoKHR- where- type VkPNextMType VkExportFenceCreateInfoKHR = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExportFenceCreateInfoKHR, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkExportFenceCreateInfoKHR, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkExportFenceCreateInfoKHR, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkExportFenceCreateInfoKHR, pNext}--instance {-# OVERLAPPING #-}- HasField "pNext" VkExportFenceCreateInfoKHR where- type FieldType "pNext" VkExportFenceCreateInfoKHR = Ptr Void- type FieldOptional "pNext" VkExportFenceCreateInfoKHR = 'False -- ' closing tick for hsc2hs- type FieldOffset "pNext" VkExportFenceCreateInfoKHR =- #{offset VkExportFenceCreateInfoKHR, pNext}- type FieldIsArray "pNext" VkExportFenceCreateInfoKHR = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkExportFenceCreateInfoKHR, pNext}--instance CanReadField "pNext" VkExportFenceCreateInfoKHR where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkExportFenceCreateInfoKHR where- {-# INLINE writeField #-}- writeField = writeVkPNext--instance {-# OVERLAPPING #-}- HasVkHandleTypes VkExportFenceCreateInfoKHR where- type VkHandleTypesMType VkExportFenceCreateInfoKHR =- VkExternalFenceHandleTypeFlagsKHR-- {-# NOINLINE vkHandleTypes #-}- vkHandleTypes x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExportFenceCreateInfoKHR, handleTypes})-- {-# INLINE vkHandleTypesByteOffset #-}- vkHandleTypesByteOffset ~_- = #{offset VkExportFenceCreateInfoKHR, handleTypes}-- {-# INLINE readVkHandleTypes #-}- readVkHandleTypes p- = peekByteOff p #{offset VkExportFenceCreateInfoKHR, handleTypes}-- {-# INLINE writeVkHandleTypes #-}- writeVkHandleTypes p- = pokeByteOff p #{offset VkExportFenceCreateInfoKHR, handleTypes}--instance {-# OVERLAPPING #-}- HasField "handleTypes" VkExportFenceCreateInfoKHR where- type FieldType "handleTypes" VkExportFenceCreateInfoKHR =- VkExternalFenceHandleTypeFlagsKHR- type FieldOptional "handleTypes" VkExportFenceCreateInfoKHR = 'True -- ' closing tick for hsc2hs- type FieldOffset "handleTypes" VkExportFenceCreateInfoKHR =- #{offset VkExportFenceCreateInfoKHR, handleTypes}- type FieldIsArray "handleTypes" VkExportFenceCreateInfoKHR = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = True-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkExportFenceCreateInfoKHR, handleTypes}--instance CanReadField "handleTypes" VkExportFenceCreateInfoKHR- where- {-# INLINE getField #-}- getField = vkHandleTypes-- {-# INLINE readField #-}- readField = readVkHandleTypes--instance CanWriteField "handleTypes" VkExportFenceCreateInfoKHR- where- {-# INLINE writeField #-}- writeField = writeVkHandleTypes--instance Show VkExportFenceCreateInfoKHR where- showsPrec d x- = showString "VkExportFenceCreateInfoKHR {" .- showString "vkSType = " .- showsPrec d (vkSType x) .- showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .- showString ", " .- showString "vkHandleTypes = " .- showsPrec d (vkHandleTypes x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkExportFenceWin32HandleInfoKHR (VkExportFenceWin32HandleInfoKHR(..)) where@@ -15,7 +16,6 @@ import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType) import Graphics.Vulkan.Types.Include (DWORD, LPCWSTR, SECURITY_ATTRIBUTES) import Graphics.Vulkan.Types.Struct.VkFenceCreateInfo (VkFenceCreateInfo)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkExportFenceWin32HandleInfoKHR {@@ -26,7 +26,7 @@ -- > LPCWSTR name; -- > } VkExportFenceWin32HandleInfoKHR; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkExportFenceWin32HandleInfoKHR.html VkExportFenceWin32HandleInfoKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkExportFenceWin32HandleInfoKHR.html VkExportFenceWin32HandleInfoKHR registry at www.khronos.org> data VkExportFenceWin32HandleInfoKHR = VkExportFenceWin32HandleInfoKHR## Addr## ByteArray## @@ -81,27 +81,6 @@ '[VkFenceCreateInfo] -- ' closing tick for hsc2hs instance {-# OVERLAPPING #-}- HasVkSType VkExportFenceWin32HandleInfoKHR where- type VkSTypeMType VkExportFenceWin32HandleInfoKHR = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExportFenceWin32HandleInfoKHR, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkExportFenceWin32HandleInfoKHR, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkExportFenceWin32HandleInfoKHR, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkExportFenceWin32HandleInfoKHR, sType}--instance {-# OVERLAPPING #-} HasField "sType" VkExportFenceWin32HandleInfoKHR where type FieldType "sType" VkExportFenceWin32HandleInfoKHR = VkStructureType@@ -117,38 +96,22 @@ fieldOffset = #{offset VkExportFenceWin32HandleInfoKHR, sType} -instance CanReadField "sType" VkExportFenceWin32HandleInfoKHR where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance CanWriteField "sType" VkExportFenceWin32HandleInfoKHR- where- {-# INLINE writeField #-}- writeField = writeVkSType- instance {-# OVERLAPPING #-}- HasVkPNext VkExportFenceWin32HandleInfoKHR where- type VkPNextMType VkExportFenceWin32HandleInfoKHR = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x+ CanReadField "sType" VkExportFenceWin32HandleInfoKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExportFenceWin32HandleInfoKHR, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkExportFenceWin32HandleInfoKHR, pNext}+ (peekByteOff (unsafePtr x) #{offset VkExportFenceWin32HandleInfoKHR, sType}) - {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkExportFenceWin32HandleInfoKHR, pNext}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExportFenceWin32HandleInfoKHR, sType} - {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkExportFenceWin32HandleInfoKHR, pNext}+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkExportFenceWin32HandleInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExportFenceWin32HandleInfoKHR, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkExportFenceWin32HandleInfoKHR where@@ -165,39 +128,22 @@ fieldOffset = #{offset VkExportFenceWin32HandleInfoKHR, pNext} -instance CanReadField "pNext" VkExportFenceWin32HandleInfoKHR where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkExportFenceWin32HandleInfoKHR- where- {-# INLINE writeField #-}- writeField = writeVkPNext- instance {-# OVERLAPPING #-}- HasVkPAttributes VkExportFenceWin32HandleInfoKHR where- type VkPAttributesMType VkExportFenceWin32HandleInfoKHR =- Ptr SECURITY_ATTRIBUTES-- {-# NOINLINE vkPAttributes #-}- vkPAttributes x+ CanReadField "pNext" VkExportFenceWin32HandleInfoKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExportFenceWin32HandleInfoKHR, pAttributes})-- {-# INLINE vkPAttributesByteOffset #-}- vkPAttributesByteOffset ~_- = #{offset VkExportFenceWin32HandleInfoKHR, pAttributes}+ (peekByteOff (unsafePtr x) #{offset VkExportFenceWin32HandleInfoKHR, pNext}) - {-# INLINE readVkPAttributes #-}- readVkPAttributes p- = peekByteOff p #{offset VkExportFenceWin32HandleInfoKHR, pAttributes}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExportFenceWin32HandleInfoKHR, pNext} - {-# INLINE writeVkPAttributes #-}- writeVkPAttributes p- = pokeByteOff p #{offset VkExportFenceWin32HandleInfoKHR, pAttributes}+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkExportFenceWin32HandleInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExportFenceWin32HandleInfoKHR, pNext} instance {-# OVERLAPPING #-} HasField "pAttributes" VkExportFenceWin32HandleInfoKHR where@@ -217,40 +163,22 @@ fieldOffset = #{offset VkExportFenceWin32HandleInfoKHR, pAttributes} -instance CanReadField "pAttributes" VkExportFenceWin32HandleInfoKHR- where- {-# INLINE getField #-}- getField = vkPAttributes-- {-# INLINE readField #-}- readField = readVkPAttributes--instance CanWriteField "pAttributes"- VkExportFenceWin32HandleInfoKHR- where- {-# INLINE writeField #-}- writeField = writeVkPAttributes- instance {-# OVERLAPPING #-}- HasVkDwAccess VkExportFenceWin32HandleInfoKHR where- type VkDwAccessMType VkExportFenceWin32HandleInfoKHR = DWORD-- {-# NOINLINE vkDwAccess #-}- vkDwAccess x+ CanReadField "pAttributes" VkExportFenceWin32HandleInfoKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExportFenceWin32HandleInfoKHR, dwAccess})-- {-# INLINE vkDwAccessByteOffset #-}- vkDwAccessByteOffset ~_- = #{offset VkExportFenceWin32HandleInfoKHR, dwAccess}+ (peekByteOff (unsafePtr x) #{offset VkExportFenceWin32HandleInfoKHR, pAttributes}) - {-# INLINE readVkDwAccess #-}- readVkDwAccess p- = peekByteOff p #{offset VkExportFenceWin32HandleInfoKHR, dwAccess}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExportFenceWin32HandleInfoKHR, pAttributes} - {-# INLINE writeVkDwAccess #-}- writeVkDwAccess p- = pokeByteOff p #{offset VkExportFenceWin32HandleInfoKHR, dwAccess}+instance {-# OVERLAPPING #-}+ CanWriteField "pAttributes" VkExportFenceWin32HandleInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExportFenceWin32HandleInfoKHR, pAttributes} instance {-# OVERLAPPING #-} HasField "dwAccess" VkExportFenceWin32HandleInfoKHR where@@ -269,39 +197,22 @@ fieldOffset = #{offset VkExportFenceWin32HandleInfoKHR, dwAccess} -instance CanReadField "dwAccess" VkExportFenceWin32HandleInfoKHR- where- {-# INLINE getField #-}- getField = vkDwAccess-- {-# INLINE readField #-}- readField = readVkDwAccess--instance CanWriteField "dwAccess" VkExportFenceWin32HandleInfoKHR- where- {-# INLINE writeField #-}- writeField = writeVkDwAccess- instance {-# OVERLAPPING #-}- HasVkName VkExportFenceWin32HandleInfoKHR where- type VkNameMType VkExportFenceWin32HandleInfoKHR = LPCWSTR-- {-# NOINLINE vkName #-}- vkName x+ CanReadField "dwAccess" VkExportFenceWin32HandleInfoKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExportFenceWin32HandleInfoKHR, name})-- {-# INLINE vkNameByteOffset #-}- vkNameByteOffset ~_- = #{offset VkExportFenceWin32HandleInfoKHR, name}+ (peekByteOff (unsafePtr x) #{offset VkExportFenceWin32HandleInfoKHR, dwAccess}) - {-# INLINE readVkName #-}- readVkName p- = peekByteOff p #{offset VkExportFenceWin32HandleInfoKHR, name}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExportFenceWin32HandleInfoKHR, dwAccess} - {-# INLINE writeVkName #-}- writeVkName p- = pokeByteOff p #{offset VkExportFenceWin32HandleInfoKHR, name}+instance {-# OVERLAPPING #-}+ CanWriteField "dwAccess" VkExportFenceWin32HandleInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExportFenceWin32HandleInfoKHR, dwAccess} instance {-# OVERLAPPING #-} HasField "name" VkExportFenceWin32HandleInfoKHR where@@ -318,30 +229,37 @@ fieldOffset = #{offset VkExportFenceWin32HandleInfoKHR, name} -instance CanReadField "name" VkExportFenceWin32HandleInfoKHR where- {-# INLINE getField #-}- getField = vkName+instance {-# OVERLAPPING #-}+ CanReadField "name" VkExportFenceWin32HandleInfoKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExportFenceWin32HandleInfoKHR, name}) {-# INLINE readField #-}- readField = readVkName+ readField p+ = peekByteOff p #{offset VkExportFenceWin32HandleInfoKHR, name} -instance CanWriteField "name" VkExportFenceWin32HandleInfoKHR where+instance {-# OVERLAPPING #-}+ CanWriteField "name" VkExportFenceWin32HandleInfoKHR where {-# INLINE writeField #-}- writeField = writeVkName+ writeField p+ = pokeByteOff p #{offset VkExportFenceWin32HandleInfoKHR, name} instance Show VkExportFenceWin32HandleInfoKHR where showsPrec d x = showString "VkExportFenceWin32HandleInfoKHR {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkPAttributes = " .- showsPrec d (vkPAttributes x) .+ showString "pAttributes = " .+ showsPrec d (getField @"pAttributes" x) . showString ", " .- showString "vkDwAccess = " .- showsPrec d (vkDwAccess x) .+ showString "dwAccess = " .+ showsPrec d (getField @"dwAccess" x) . showString ", " .- showString "vkName = " . showsPrec d (vkName x) . showChar '}'+ showString "name = " .+ showsPrec d (getField @"name" x) . showChar '}'
@@ -0,0 +1,187 @@+#include "vulkan/vulkan.h"++{-# LANGUAGE DataKinds #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-}+{-# LANGUAGE TypeFamilies #-}+module Graphics.Vulkan.Types.Struct.VkExportMemoryAllocateInfo+ (VkExportMemoryAllocateInfo(..)) where+import Foreign.Storable (Storable (..))+import GHC.Prim+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Marshal.Internal+import Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlags (VkExternalMemoryHandleTypeFlags)+import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)+import Graphics.Vulkan.Types.Struct.VkMemoryAllocateInfo (VkMemoryAllocateInfo)+import System.IO.Unsafe (unsafeDupablePerformIO)++-- | > typedef struct VkExportMemoryAllocateInfo {+-- > VkStructureType sType;+-- > const void* pNext;+-- > VkExternalMemoryHandleTypeFlags handleTypes;+-- > } VkExportMemoryAllocateInfo;+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkExportMemoryAllocateInfo.html VkExportMemoryAllocateInfo registry at www.khronos.org>+data VkExportMemoryAllocateInfo = VkExportMemoryAllocateInfo## Addr##+ ByteArray##++instance Eq VkExportMemoryAllocateInfo where+ (VkExportMemoryAllocateInfo## a _) ==+ x@(VkExportMemoryAllocateInfo## b _)+ = EQ == cmpBytes## (sizeOf x) a b++ {-# INLINE (==) #-}++instance Ord VkExportMemoryAllocateInfo where+ (VkExportMemoryAllocateInfo## a _) `compare`+ x@(VkExportMemoryAllocateInfo## b _) = cmpBytes## (sizeOf x) a b++ {-# INLINE compare #-}++instance Storable VkExportMemoryAllocateInfo where+ sizeOf ~_ = #{size VkExportMemoryAllocateInfo}++ {-# INLINE sizeOf #-}+ alignment ~_ = #{alignment VkExportMemoryAllocateInfo}++ {-# INLINE alignment #-}+ peek = peekVkData##++ {-# INLINE peek #-}+ poke = pokeVkData##++ {-# INLINE poke #-}++instance VulkanMarshalPrim VkExportMemoryAllocateInfo where+ unsafeAddr (VkExportMemoryAllocateInfo## a _) = a++ {-# INLINE unsafeAddr #-}+ unsafeByteArray (VkExportMemoryAllocateInfo## _ b) = b++ {-# INLINE unsafeByteArray #-}+ unsafeFromByteArrayOffset off b+ = VkExportMemoryAllocateInfo##+ (plusAddr## (byteArrayContents## b) off)+ b++ {-# INLINE unsafeFromByteArrayOffset #-}++instance VulkanMarshal VkExportMemoryAllocateInfo where+ type StructFields VkExportMemoryAllocateInfo =+ '["sType", "pNext", "handleTypes"] -- ' closing tick for hsc2hs+ type CUnionType VkExportMemoryAllocateInfo = 'False -- ' closing tick for hsc2hs+ type ReturnedOnly VkExportMemoryAllocateInfo = 'False -- ' closing tick for hsc2hs+ type StructExtends VkExportMemoryAllocateInfo =+ '[VkMemoryAllocateInfo] -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-}+ HasField "sType" VkExportMemoryAllocateInfo where+ type FieldType "sType" VkExportMemoryAllocateInfo = VkStructureType+ type FieldOptional "sType" VkExportMemoryAllocateInfo = 'False -- ' closing tick for hsc2hs+ type FieldOffset "sType" VkExportMemoryAllocateInfo =+ #{offset VkExportMemoryAllocateInfo, sType}+ type FieldIsArray "sType" VkExportMemoryAllocateInfo = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkExportMemoryAllocateInfo, sType}++instance {-# OVERLAPPING #-}+ CanReadField "sType" VkExportMemoryAllocateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExportMemoryAllocateInfo, sType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExportMemoryAllocateInfo, sType}++instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkExportMemoryAllocateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExportMemoryAllocateInfo, sType}++instance {-# OVERLAPPING #-}+ HasField "pNext" VkExportMemoryAllocateInfo where+ type FieldType "pNext" VkExportMemoryAllocateInfo = Ptr Void+ type FieldOptional "pNext" VkExportMemoryAllocateInfo = 'False -- ' closing tick for hsc2hs+ type FieldOffset "pNext" VkExportMemoryAllocateInfo =+ #{offset VkExportMemoryAllocateInfo, pNext}+ type FieldIsArray "pNext" VkExportMemoryAllocateInfo = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkExportMemoryAllocateInfo, pNext}++instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkExportMemoryAllocateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExportMemoryAllocateInfo, pNext})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExportMemoryAllocateInfo, pNext}++instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkExportMemoryAllocateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExportMemoryAllocateInfo, pNext}++instance {-# OVERLAPPING #-}+ HasField "handleTypes" VkExportMemoryAllocateInfo where+ type FieldType "handleTypes" VkExportMemoryAllocateInfo =+ VkExternalMemoryHandleTypeFlags+ type FieldOptional "handleTypes" VkExportMemoryAllocateInfo = 'True -- ' closing tick for hsc2hs+ type FieldOffset "handleTypes" VkExportMemoryAllocateInfo =+ #{offset VkExportMemoryAllocateInfo, handleTypes}+ type FieldIsArray "handleTypes" VkExportMemoryAllocateInfo = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = True++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkExportMemoryAllocateInfo, handleTypes}++instance {-# OVERLAPPING #-}+ CanReadField "handleTypes" VkExportMemoryAllocateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExportMemoryAllocateInfo, handleTypes})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExportMemoryAllocateInfo, handleTypes}++instance {-# OVERLAPPING #-}+ CanWriteField "handleTypes" VkExportMemoryAllocateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExportMemoryAllocateInfo, handleTypes}++instance Show VkExportMemoryAllocateInfo where+ showsPrec d x+ = showString "VkExportMemoryAllocateInfo {" .+ showString "sType = " .+ showsPrec d (getField @"sType" x) .+ showString ", " .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) .+ showString ", " .+ showString "handleTypes = " .+ showsPrec d (getField @"handleTypes" x) . showChar '}'
@@ -0,0 +1,9 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Types.Struct.VkExportMemoryAllocateInfoKHR+ (VkExportMemoryAllocateInfo(..), VkExportMemoryAllocateInfoKHR)+ where+import Graphics.Vulkan.Types.Struct.VkExportMemoryAllocateInfo (VkExportMemoryAllocateInfo (..))++-- | Alias for `VkExportMemoryAllocateInfo`+type VkExportMemoryAllocateInfoKHR = VkExportMemoryAllocateInfo
@@ -1,239 +0,0 @@-#include "vulkan/vulkan.h"--{-# LANGUAGE DataKinds #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE MagicHash #-}-{-# LANGUAGE MultiParamTypeClasses #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE TypeFamilies #-}-module Graphics.Vulkan.Types.Struct.VkExportMemoryAllocateInfoKHR- (VkExportMemoryAllocateInfoKHR(..)) where-import Foreign.Storable (Storable (..))-import GHC.Prim-import Graphics.Vulkan.Marshal-import Graphics.Vulkan.Marshal.Internal-import Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlagsKHR (VkExternalMemoryHandleTypeFlagsKHR)-import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)-import Graphics.Vulkan.Types.Struct.VkMemoryAllocateInfo (VkMemoryAllocateInfo)-import Graphics.Vulkan.Types.StructMembers-import System.IO.Unsafe (unsafeDupablePerformIO)---- | > typedef struct VkExportMemoryAllocateInfoKHR {--- > VkStructureType sType;--- > const void* pNext;--- > VkExternalMemoryHandleTypeFlagsKHR handleTypes;--- > } VkExportMemoryAllocateInfoKHR;------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkExportMemoryAllocateInfoKHR.html VkExportMemoryAllocateInfoKHR registry at www.khronos.org>-data VkExportMemoryAllocateInfoKHR = VkExportMemoryAllocateInfoKHR## Addr##- ByteArray##--instance Eq VkExportMemoryAllocateInfoKHR where- (VkExportMemoryAllocateInfoKHR## a _) ==- x@(VkExportMemoryAllocateInfoKHR## b _)- = EQ == cmpBytes## (sizeOf x) a b-- {-# INLINE (==) #-}--instance Ord VkExportMemoryAllocateInfoKHR where- (VkExportMemoryAllocateInfoKHR## a _) `compare`- x@(VkExportMemoryAllocateInfoKHR## b _) = cmpBytes## (sizeOf x) a b-- {-# INLINE compare #-}--instance Storable VkExportMemoryAllocateInfoKHR where- sizeOf ~_ = #{size VkExportMemoryAllocateInfoKHR}-- {-# INLINE sizeOf #-}- alignment ~_- = #{alignment VkExportMemoryAllocateInfoKHR}-- {-# INLINE alignment #-}- peek = peekVkData##-- {-# INLINE peek #-}- poke = pokeVkData##-- {-# INLINE poke #-}--instance VulkanMarshalPrim VkExportMemoryAllocateInfoKHR where- unsafeAddr (VkExportMemoryAllocateInfoKHR## a _) = a-- {-# INLINE unsafeAddr #-}- unsafeByteArray (VkExportMemoryAllocateInfoKHR## _ b) = b-- {-# INLINE unsafeByteArray #-}- unsafeFromByteArrayOffset off b- = VkExportMemoryAllocateInfoKHR##- (plusAddr## (byteArrayContents## b) off)- b-- {-# INLINE unsafeFromByteArrayOffset #-}--instance VulkanMarshal VkExportMemoryAllocateInfoKHR where- type StructFields VkExportMemoryAllocateInfoKHR =- '["sType", "pNext", "handleTypes"] -- ' closing tick for hsc2hs- type CUnionType VkExportMemoryAllocateInfoKHR = 'False -- ' closing tick for hsc2hs- type ReturnedOnly VkExportMemoryAllocateInfoKHR = 'False -- ' closing tick for hsc2hs- type StructExtends VkExportMemoryAllocateInfoKHR =- '[VkMemoryAllocateInfo] -- ' closing tick for hsc2hs--instance {-# OVERLAPPING #-}- HasVkSType VkExportMemoryAllocateInfoKHR where- type VkSTypeMType VkExportMemoryAllocateInfoKHR = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExportMemoryAllocateInfoKHR, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkExportMemoryAllocateInfoKHR, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkExportMemoryAllocateInfoKHR, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkExportMemoryAllocateInfoKHR, sType}--instance {-# OVERLAPPING #-}- HasField "sType" VkExportMemoryAllocateInfoKHR where- type FieldType "sType" VkExportMemoryAllocateInfoKHR =- VkStructureType- type FieldOptional "sType" VkExportMemoryAllocateInfoKHR = 'False -- ' closing tick for hsc2hs- type FieldOffset "sType" VkExportMemoryAllocateInfoKHR =- #{offset VkExportMemoryAllocateInfoKHR, sType}- type FieldIsArray "sType" VkExportMemoryAllocateInfoKHR = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkExportMemoryAllocateInfoKHR, sType}--instance CanReadField "sType" VkExportMemoryAllocateInfoKHR where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance CanWriteField "sType" VkExportMemoryAllocateInfoKHR where- {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-}- HasVkPNext VkExportMemoryAllocateInfoKHR where- type VkPNextMType VkExportMemoryAllocateInfoKHR = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExportMemoryAllocateInfoKHR, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkExportMemoryAllocateInfoKHR, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkExportMemoryAllocateInfoKHR, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkExportMemoryAllocateInfoKHR, pNext}--instance {-# OVERLAPPING #-}- HasField "pNext" VkExportMemoryAllocateInfoKHR where- type FieldType "pNext" VkExportMemoryAllocateInfoKHR = Ptr Void- type FieldOptional "pNext" VkExportMemoryAllocateInfoKHR = 'False -- ' closing tick for hsc2hs- type FieldOffset "pNext" VkExportMemoryAllocateInfoKHR =- #{offset VkExportMemoryAllocateInfoKHR, pNext}- type FieldIsArray "pNext" VkExportMemoryAllocateInfoKHR = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkExportMemoryAllocateInfoKHR, pNext}--instance CanReadField "pNext" VkExportMemoryAllocateInfoKHR where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkExportMemoryAllocateInfoKHR where- {-# INLINE writeField #-}- writeField = writeVkPNext--instance {-# OVERLAPPING #-}- HasVkHandleTypes VkExportMemoryAllocateInfoKHR where- type VkHandleTypesMType VkExportMemoryAllocateInfoKHR =- VkExternalMemoryHandleTypeFlagsKHR-- {-# NOINLINE vkHandleTypes #-}- vkHandleTypes x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExportMemoryAllocateInfoKHR, handleTypes})-- {-# INLINE vkHandleTypesByteOffset #-}- vkHandleTypesByteOffset ~_- = #{offset VkExportMemoryAllocateInfoKHR, handleTypes}-- {-# INLINE readVkHandleTypes #-}- readVkHandleTypes p- = peekByteOff p #{offset VkExportMemoryAllocateInfoKHR, handleTypes}-- {-# INLINE writeVkHandleTypes #-}- writeVkHandleTypes p- = pokeByteOff p #{offset VkExportMemoryAllocateInfoKHR, handleTypes}--instance {-# OVERLAPPING #-}- HasField "handleTypes" VkExportMemoryAllocateInfoKHR where- type FieldType "handleTypes" VkExportMemoryAllocateInfoKHR =- VkExternalMemoryHandleTypeFlagsKHR- type FieldOptional "handleTypes" VkExportMemoryAllocateInfoKHR =- 'True -- ' closing tick for hsc2hs- type FieldOffset "handleTypes" VkExportMemoryAllocateInfoKHR =- #{offset VkExportMemoryAllocateInfoKHR, handleTypes}- type FieldIsArray "handleTypes" VkExportMemoryAllocateInfoKHR =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = True-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkExportMemoryAllocateInfoKHR, handleTypes}--instance CanReadField "handleTypes" VkExportMemoryAllocateInfoKHR- where- {-# INLINE getField #-}- getField = vkHandleTypes-- {-# INLINE readField #-}- readField = readVkHandleTypes--instance CanWriteField "handleTypes" VkExportMemoryAllocateInfoKHR- where- {-# INLINE writeField #-}- writeField = writeVkHandleTypes--instance Show VkExportMemoryAllocateInfoKHR where- showsPrec d x- = showString "VkExportMemoryAllocateInfoKHR {" .- showString "vkSType = " .- showsPrec d (vkSType x) .- showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .- showString ", " .- showString "vkHandleTypes = " .- showsPrec d (vkHandleTypes x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkExportMemoryAllocateInfoNV (VkExportMemoryAllocateInfoNV(..)) where@@ -15,7 +16,6 @@ import Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlagsNV (VkExternalMemoryHandleTypeFlagsNV) import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType) import Graphics.Vulkan.Types.Struct.VkMemoryAllocateInfo (VkMemoryAllocateInfo)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkExportMemoryAllocateInfoNV {@@ -24,7 +24,7 @@ -- > VkExternalMemoryHandleTypeFlagsNV handleTypes; -- > } VkExportMemoryAllocateInfoNV; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkExportMemoryAllocateInfoNV.html VkExportMemoryAllocateInfoNV registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkExportMemoryAllocateInfoNV.html VkExportMemoryAllocateInfoNV registry at www.khronos.org> data VkExportMemoryAllocateInfoNV = VkExportMemoryAllocateInfoNV## Addr## ByteArray## @@ -79,27 +79,6 @@ '[VkMemoryAllocateInfo] -- ' closing tick for hsc2hs instance {-# OVERLAPPING #-}- HasVkSType VkExportMemoryAllocateInfoNV where- type VkSTypeMType VkExportMemoryAllocateInfoNV = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExportMemoryAllocateInfoNV, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkExportMemoryAllocateInfoNV, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkExportMemoryAllocateInfoNV, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkExportMemoryAllocateInfoNV, sType}--instance {-# OVERLAPPING #-} HasField "sType" VkExportMemoryAllocateInfoNV where type FieldType "sType" VkExportMemoryAllocateInfoNV = VkStructureType@@ -115,37 +94,22 @@ fieldOffset = #{offset VkExportMemoryAllocateInfoNV, sType} -instance CanReadField "sType" VkExportMemoryAllocateInfoNV where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance CanWriteField "sType" VkExportMemoryAllocateInfoNV where- {-# INLINE writeField #-}- writeField = writeVkSType- instance {-# OVERLAPPING #-}- HasVkPNext VkExportMemoryAllocateInfoNV where- type VkPNextMType VkExportMemoryAllocateInfoNV = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x+ CanReadField "sType" VkExportMemoryAllocateInfoNV where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExportMemoryAllocateInfoNV, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkExportMemoryAllocateInfoNV, pNext}+ (peekByteOff (unsafePtr x) #{offset VkExportMemoryAllocateInfoNV, sType}) - {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkExportMemoryAllocateInfoNV, pNext}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExportMemoryAllocateInfoNV, sType} - {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkExportMemoryAllocateInfoNV, pNext}+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkExportMemoryAllocateInfoNV where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExportMemoryAllocateInfoNV, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkExportMemoryAllocateInfoNV where@@ -162,38 +126,22 @@ fieldOffset = #{offset VkExportMemoryAllocateInfoNV, pNext} -instance CanReadField "pNext" VkExportMemoryAllocateInfoNV where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkExportMemoryAllocateInfoNV where- {-# INLINE writeField #-}- writeField = writeVkPNext- instance {-# OVERLAPPING #-}- HasVkHandleTypes VkExportMemoryAllocateInfoNV where- type VkHandleTypesMType VkExportMemoryAllocateInfoNV =- VkExternalMemoryHandleTypeFlagsNV-- {-# NOINLINE vkHandleTypes #-}- vkHandleTypes x+ CanReadField "pNext" VkExportMemoryAllocateInfoNV where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExportMemoryAllocateInfoNV, handleTypes})-- {-# INLINE vkHandleTypesByteOffset #-}- vkHandleTypesByteOffset ~_- = #{offset VkExportMemoryAllocateInfoNV, handleTypes}+ (peekByteOff (unsafePtr x) #{offset VkExportMemoryAllocateInfoNV, pNext}) - {-# INLINE readVkHandleTypes #-}- readVkHandleTypes p- = peekByteOff p #{offset VkExportMemoryAllocateInfoNV, handleTypes}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExportMemoryAllocateInfoNV, pNext} - {-# INLINE writeVkHandleTypes #-}- writeVkHandleTypes p- = pokeByteOff p #{offset VkExportMemoryAllocateInfoNV, handleTypes}+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkExportMemoryAllocateInfoNV where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExportMemoryAllocateInfoNV, pNext} instance {-# OVERLAPPING #-} HasField "handleTypes" VkExportMemoryAllocateInfoNV where@@ -213,27 +161,31 @@ fieldOffset = #{offset VkExportMemoryAllocateInfoNV, handleTypes} -instance CanReadField "handleTypes" VkExportMemoryAllocateInfoNV- where- {-# INLINE getField #-}- getField = vkHandleTypes+instance {-# OVERLAPPING #-}+ CanReadField "handleTypes" VkExportMemoryAllocateInfoNV where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExportMemoryAllocateInfoNV, handleTypes}) {-# INLINE readField #-}- readField = readVkHandleTypes+ readField p+ = peekByteOff p #{offset VkExportMemoryAllocateInfoNV, handleTypes} -instance CanWriteField "handleTypes" VkExportMemoryAllocateInfoNV- where+instance {-# OVERLAPPING #-}+ CanWriteField "handleTypes" VkExportMemoryAllocateInfoNV where {-# INLINE writeField #-}- writeField = writeVkHandleTypes+ writeField p+ = pokeByteOff p #{offset VkExportMemoryAllocateInfoNV, handleTypes} instance Show VkExportMemoryAllocateInfoNV where showsPrec d x = showString "VkExportMemoryAllocateInfoNV {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkHandleTypes = " .- showsPrec d (vkHandleTypes x) . showChar '}'+ showString "handleTypes = " .+ showsPrec d (getField @"handleTypes" x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkExportMemoryWin32HandleInfoKHR (VkExportMemoryWin32HandleInfoKHR(..)) where@@ -17,7 +18,6 @@ LPCWSTR, SECURITY_ATTRIBUTES) import Graphics.Vulkan.Types.Struct.VkMemoryAllocateInfo (VkMemoryAllocateInfo)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkExportMemoryWin32HandleInfoKHR {@@ -28,7 +28,7 @@ -- > LPCWSTR name; -- > } VkExportMemoryWin32HandleInfoKHR; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkExportMemoryWin32HandleInfoKHR.html VkExportMemoryWin32HandleInfoKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkExportMemoryWin32HandleInfoKHR.html VkExportMemoryWin32HandleInfoKHR registry at www.khronos.org> data VkExportMemoryWin32HandleInfoKHR = VkExportMemoryWin32HandleInfoKHR## Addr## ByteArray## @@ -84,28 +84,6 @@ '[VkMemoryAllocateInfo] -- ' closing tick for hsc2hs instance {-# OVERLAPPING #-}- HasVkSType VkExportMemoryWin32HandleInfoKHR where- type VkSTypeMType VkExportMemoryWin32HandleInfoKHR =- VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExportMemoryWin32HandleInfoKHR, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkExportMemoryWin32HandleInfoKHR, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkExportMemoryWin32HandleInfoKHR, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkExportMemoryWin32HandleInfoKHR, sType}--instance {-# OVERLAPPING #-} HasField "sType" VkExportMemoryWin32HandleInfoKHR where type FieldType "sType" VkExportMemoryWin32HandleInfoKHR = VkStructureType@@ -122,39 +100,22 @@ fieldOffset = #{offset VkExportMemoryWin32HandleInfoKHR, sType} -instance CanReadField "sType" VkExportMemoryWin32HandleInfoKHR- where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance CanWriteField "sType" VkExportMemoryWin32HandleInfoKHR- where- {-# INLINE writeField #-}- writeField = writeVkSType- instance {-# OVERLAPPING #-}- HasVkPNext VkExportMemoryWin32HandleInfoKHR where- type VkPNextMType VkExportMemoryWin32HandleInfoKHR = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x+ CanReadField "sType" VkExportMemoryWin32HandleInfoKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExportMemoryWin32HandleInfoKHR, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkExportMemoryWin32HandleInfoKHR, pNext}+ (peekByteOff (unsafePtr x) #{offset VkExportMemoryWin32HandleInfoKHR, sType}) - {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkExportMemoryWin32HandleInfoKHR, pNext}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExportMemoryWin32HandleInfoKHR, sType} - {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkExportMemoryWin32HandleInfoKHR, pNext}+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkExportMemoryWin32HandleInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExportMemoryWin32HandleInfoKHR, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkExportMemoryWin32HandleInfoKHR where@@ -172,40 +133,22 @@ fieldOffset = #{offset VkExportMemoryWin32HandleInfoKHR, pNext} -instance CanReadField "pNext" VkExportMemoryWin32HandleInfoKHR- where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkExportMemoryWin32HandleInfoKHR- where- {-# INLINE writeField #-}- writeField = writeVkPNext- instance {-# OVERLAPPING #-}- HasVkPAttributes VkExportMemoryWin32HandleInfoKHR where- type VkPAttributesMType VkExportMemoryWin32HandleInfoKHR =- Ptr SECURITY_ATTRIBUTES-- {-# NOINLINE vkPAttributes #-}- vkPAttributes x+ CanReadField "pNext" VkExportMemoryWin32HandleInfoKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExportMemoryWin32HandleInfoKHR, pAttributes})-- {-# INLINE vkPAttributesByteOffset #-}- vkPAttributesByteOffset ~_- = #{offset VkExportMemoryWin32HandleInfoKHR, pAttributes}+ (peekByteOff (unsafePtr x) #{offset VkExportMemoryWin32HandleInfoKHR, pNext}) - {-# INLINE readVkPAttributes #-}- readVkPAttributes p- = peekByteOff p #{offset VkExportMemoryWin32HandleInfoKHR, pAttributes}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExportMemoryWin32HandleInfoKHR, pNext} - {-# INLINE writeVkPAttributes #-}- writeVkPAttributes p- = pokeByteOff p #{offset VkExportMemoryWin32HandleInfoKHR, pAttributes}+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkExportMemoryWin32HandleInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExportMemoryWin32HandleInfoKHR, pNext} instance {-# OVERLAPPING #-} HasField "pAttributes" VkExportMemoryWin32HandleInfoKHR where@@ -225,41 +168,22 @@ fieldOffset = #{offset VkExportMemoryWin32HandleInfoKHR, pAttributes} -instance CanReadField "pAttributes"- VkExportMemoryWin32HandleInfoKHR- where- {-# INLINE getField #-}- getField = vkPAttributes-- {-# INLINE readField #-}- readField = readVkPAttributes--instance CanWriteField "pAttributes"- VkExportMemoryWin32HandleInfoKHR- where- {-# INLINE writeField #-}- writeField = writeVkPAttributes- instance {-# OVERLAPPING #-}- HasVkDwAccess VkExportMemoryWin32HandleInfoKHR where- type VkDwAccessMType VkExportMemoryWin32HandleInfoKHR = DWORD-- {-# NOINLINE vkDwAccess #-}- vkDwAccess x+ CanReadField "pAttributes" VkExportMemoryWin32HandleInfoKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExportMemoryWin32HandleInfoKHR, dwAccess})-- {-# INLINE vkDwAccessByteOffset #-}- vkDwAccessByteOffset ~_- = #{offset VkExportMemoryWin32HandleInfoKHR, dwAccess}+ (peekByteOff (unsafePtr x) #{offset VkExportMemoryWin32HandleInfoKHR, pAttributes}) - {-# INLINE readVkDwAccess #-}- readVkDwAccess p- = peekByteOff p #{offset VkExportMemoryWin32HandleInfoKHR, dwAccess}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExportMemoryWin32HandleInfoKHR, pAttributes} - {-# INLINE writeVkDwAccess #-}- writeVkDwAccess p- = pokeByteOff p #{offset VkExportMemoryWin32HandleInfoKHR, dwAccess}+instance {-# OVERLAPPING #-}+ CanWriteField "pAttributes" VkExportMemoryWin32HandleInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExportMemoryWin32HandleInfoKHR, pAttributes} instance {-# OVERLAPPING #-} HasField "dwAccess" VkExportMemoryWin32HandleInfoKHR where@@ -278,39 +202,22 @@ fieldOffset = #{offset VkExportMemoryWin32HandleInfoKHR, dwAccess} -instance CanReadField "dwAccess" VkExportMemoryWin32HandleInfoKHR- where- {-# INLINE getField #-}- getField = vkDwAccess-- {-# INLINE readField #-}- readField = readVkDwAccess--instance CanWriteField "dwAccess" VkExportMemoryWin32HandleInfoKHR- where- {-# INLINE writeField #-}- writeField = writeVkDwAccess- instance {-# OVERLAPPING #-}- HasVkName VkExportMemoryWin32HandleInfoKHR where- type VkNameMType VkExportMemoryWin32HandleInfoKHR = LPCWSTR-- {-# NOINLINE vkName #-}- vkName x+ CanReadField "dwAccess" VkExportMemoryWin32HandleInfoKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExportMemoryWin32HandleInfoKHR, name})-- {-# INLINE vkNameByteOffset #-}- vkNameByteOffset ~_- = #{offset VkExportMemoryWin32HandleInfoKHR, name}+ (peekByteOff (unsafePtr x) #{offset VkExportMemoryWin32HandleInfoKHR, dwAccess}) - {-# INLINE readVkName #-}- readVkName p- = peekByteOff p #{offset VkExportMemoryWin32HandleInfoKHR, name}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExportMemoryWin32HandleInfoKHR, dwAccess} - {-# INLINE writeVkName #-}- writeVkName p- = pokeByteOff p #{offset VkExportMemoryWin32HandleInfoKHR, name}+instance {-# OVERLAPPING #-}+ CanWriteField "dwAccess" VkExportMemoryWin32HandleInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExportMemoryWin32HandleInfoKHR, dwAccess} instance {-# OVERLAPPING #-} HasField "name" VkExportMemoryWin32HandleInfoKHR where@@ -327,31 +234,37 @@ fieldOffset = #{offset VkExportMemoryWin32HandleInfoKHR, name} -instance CanReadField "name" VkExportMemoryWin32HandleInfoKHR where- {-# INLINE getField #-}- getField = vkName+instance {-# OVERLAPPING #-}+ CanReadField "name" VkExportMemoryWin32HandleInfoKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExportMemoryWin32HandleInfoKHR, name}) {-# INLINE readField #-}- readField = readVkName+ readField p+ = peekByteOff p #{offset VkExportMemoryWin32HandleInfoKHR, name} -instance CanWriteField "name" VkExportMemoryWin32HandleInfoKHR- where+instance {-# OVERLAPPING #-}+ CanWriteField "name" VkExportMemoryWin32HandleInfoKHR where {-# INLINE writeField #-}- writeField = writeVkName+ writeField p+ = pokeByteOff p #{offset VkExportMemoryWin32HandleInfoKHR, name} instance Show VkExportMemoryWin32HandleInfoKHR where showsPrec d x = showString "VkExportMemoryWin32HandleInfoKHR {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkPAttributes = " .- showsPrec d (vkPAttributes x) .+ showString "pAttributes = " .+ showsPrec d (getField @"pAttributes" x) . showString ", " .- showString "vkDwAccess = " .- showsPrec d (vkDwAccess x) .+ showString "dwAccess = " .+ showsPrec d (getField @"dwAccess" x) . showString ", " .- showString "vkName = " . showsPrec d (vkName x) . showChar '}'+ showString "name = " .+ showsPrec d (getField @"name" x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkExportMemoryWin32HandleInfoNV (VkExportMemoryWin32HandleInfoNV(..)) where@@ -15,7 +16,6 @@ import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType) import Graphics.Vulkan.Types.Include (DWORD, SECURITY_ATTRIBUTES) import Graphics.Vulkan.Types.Struct.VkMemoryAllocateInfo (VkMemoryAllocateInfo)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkExportMemoryWin32HandleInfoNV {@@ -25,7 +25,7 @@ -- > DWORD dwAccess; -- > } VkExportMemoryWin32HandleInfoNV; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkExportMemoryWin32HandleInfoNV.html VkExportMemoryWin32HandleInfoNV registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkExportMemoryWin32HandleInfoNV.html VkExportMemoryWin32HandleInfoNV registry at www.khronos.org> data VkExportMemoryWin32HandleInfoNV = VkExportMemoryWin32HandleInfoNV## Addr## ByteArray## @@ -80,27 +80,6 @@ '[VkMemoryAllocateInfo] -- ' closing tick for hsc2hs instance {-# OVERLAPPING #-}- HasVkSType VkExportMemoryWin32HandleInfoNV where- type VkSTypeMType VkExportMemoryWin32HandleInfoNV = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExportMemoryWin32HandleInfoNV, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkExportMemoryWin32HandleInfoNV, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkExportMemoryWin32HandleInfoNV, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkExportMemoryWin32HandleInfoNV, sType}--instance {-# OVERLAPPING #-} HasField "sType" VkExportMemoryWin32HandleInfoNV where type FieldType "sType" VkExportMemoryWin32HandleInfoNV = VkStructureType@@ -116,38 +95,22 @@ fieldOffset = #{offset VkExportMemoryWin32HandleInfoNV, sType} -instance CanReadField "sType" VkExportMemoryWin32HandleInfoNV where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance CanWriteField "sType" VkExportMemoryWin32HandleInfoNV- where- {-# INLINE writeField #-}- writeField = writeVkSType- instance {-# OVERLAPPING #-}- HasVkPNext VkExportMemoryWin32HandleInfoNV where- type VkPNextMType VkExportMemoryWin32HandleInfoNV = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x+ CanReadField "sType" VkExportMemoryWin32HandleInfoNV where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExportMemoryWin32HandleInfoNV, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkExportMemoryWin32HandleInfoNV, pNext}+ (peekByteOff (unsafePtr x) #{offset VkExportMemoryWin32HandleInfoNV, sType}) - {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkExportMemoryWin32HandleInfoNV, pNext}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExportMemoryWin32HandleInfoNV, sType} - {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkExportMemoryWin32HandleInfoNV, pNext}+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkExportMemoryWin32HandleInfoNV where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExportMemoryWin32HandleInfoNV, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkExportMemoryWin32HandleInfoNV where@@ -164,39 +127,22 @@ fieldOffset = #{offset VkExportMemoryWin32HandleInfoNV, pNext} -instance CanReadField "pNext" VkExportMemoryWin32HandleInfoNV where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkExportMemoryWin32HandleInfoNV- where- {-# INLINE writeField #-}- writeField = writeVkPNext- instance {-# OVERLAPPING #-}- HasVkPAttributes VkExportMemoryWin32HandleInfoNV where- type VkPAttributesMType VkExportMemoryWin32HandleInfoNV =- Ptr SECURITY_ATTRIBUTES-- {-# NOINLINE vkPAttributes #-}- vkPAttributes x+ CanReadField "pNext" VkExportMemoryWin32HandleInfoNV where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExportMemoryWin32HandleInfoNV, pAttributes})-- {-# INLINE vkPAttributesByteOffset #-}- vkPAttributesByteOffset ~_- = #{offset VkExportMemoryWin32HandleInfoNV, pAttributes}+ (peekByteOff (unsafePtr x) #{offset VkExportMemoryWin32HandleInfoNV, pNext}) - {-# INLINE readVkPAttributes #-}- readVkPAttributes p- = peekByteOff p #{offset VkExportMemoryWin32HandleInfoNV, pAttributes}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExportMemoryWin32HandleInfoNV, pNext} - {-# INLINE writeVkPAttributes #-}- writeVkPAttributes p- = pokeByteOff p #{offset VkExportMemoryWin32HandleInfoNV, pAttributes}+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkExportMemoryWin32HandleInfoNV where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExportMemoryWin32HandleInfoNV, pNext} instance {-# OVERLAPPING #-} HasField "pAttributes" VkExportMemoryWin32HandleInfoNV where@@ -216,40 +162,22 @@ fieldOffset = #{offset VkExportMemoryWin32HandleInfoNV, pAttributes} -instance CanReadField "pAttributes" VkExportMemoryWin32HandleInfoNV- where- {-# INLINE getField #-}- getField = vkPAttributes-- {-# INLINE readField #-}- readField = readVkPAttributes--instance CanWriteField "pAttributes"- VkExportMemoryWin32HandleInfoNV- where- {-# INLINE writeField #-}- writeField = writeVkPAttributes- instance {-# OVERLAPPING #-}- HasVkDwAccess VkExportMemoryWin32HandleInfoNV where- type VkDwAccessMType VkExportMemoryWin32HandleInfoNV = DWORD-- {-# NOINLINE vkDwAccess #-}- vkDwAccess x+ CanReadField "pAttributes" VkExportMemoryWin32HandleInfoNV where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExportMemoryWin32HandleInfoNV, dwAccess})-- {-# INLINE vkDwAccessByteOffset #-}- vkDwAccessByteOffset ~_- = #{offset VkExportMemoryWin32HandleInfoNV, dwAccess}+ (peekByteOff (unsafePtr x) #{offset VkExportMemoryWin32HandleInfoNV, pAttributes}) - {-# INLINE readVkDwAccess #-}- readVkDwAccess p- = peekByteOff p #{offset VkExportMemoryWin32HandleInfoNV, dwAccess}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExportMemoryWin32HandleInfoNV, pAttributes} - {-# INLINE writeVkDwAccess #-}- writeVkDwAccess p- = pokeByteOff p #{offset VkExportMemoryWin32HandleInfoNV, dwAccess}+instance {-# OVERLAPPING #-}+ CanWriteField "pAttributes" VkExportMemoryWin32HandleInfoNV where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExportMemoryWin32HandleInfoNV, pAttributes} instance {-# OVERLAPPING #-} HasField "dwAccess" VkExportMemoryWin32HandleInfoNV where@@ -268,30 +196,34 @@ fieldOffset = #{offset VkExportMemoryWin32HandleInfoNV, dwAccess} -instance CanReadField "dwAccess" VkExportMemoryWin32HandleInfoNV- where- {-# INLINE getField #-}- getField = vkDwAccess+instance {-# OVERLAPPING #-}+ CanReadField "dwAccess" VkExportMemoryWin32HandleInfoNV where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExportMemoryWin32HandleInfoNV, dwAccess}) {-# INLINE readField #-}- readField = readVkDwAccess+ readField p+ = peekByteOff p #{offset VkExportMemoryWin32HandleInfoNV, dwAccess} -instance CanWriteField "dwAccess" VkExportMemoryWin32HandleInfoNV- where+instance {-# OVERLAPPING #-}+ CanWriteField "dwAccess" VkExportMemoryWin32HandleInfoNV where {-# INLINE writeField #-}- writeField = writeVkDwAccess+ writeField p+ = pokeByteOff p #{offset VkExportMemoryWin32HandleInfoNV, dwAccess} instance Show VkExportMemoryWin32HandleInfoNV where showsPrec d x = showString "VkExportMemoryWin32HandleInfoNV {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkPAttributes = " .- showsPrec d (vkPAttributes x) .+ showString "pAttributes = " .+ showsPrec d (getField @"pAttributes" x) . showString ", " .- showString "vkDwAccess = " .- showsPrec d (vkDwAccess x) . showChar '}'+ showString "dwAccess = " .+ showsPrec d (getField @"dwAccess" x) . showChar '}'
@@ -0,0 +1,190 @@+#include "vulkan/vulkan.h"++{-# LANGUAGE DataKinds #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-}+{-# LANGUAGE TypeFamilies #-}+module Graphics.Vulkan.Types.Struct.VkExportSemaphoreCreateInfo+ (VkExportSemaphoreCreateInfo(..)) where+import Foreign.Storable (Storable (..))+import GHC.Prim+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Marshal.Internal+import Graphics.Vulkan.Types.Enum.VkExternalSemaphoreHandleTypeFlags (VkExternalSemaphoreHandleTypeFlags)+import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)+import Graphics.Vulkan.Types.Struct.VkSemaphoreCreateInfo (VkSemaphoreCreateInfo)+import System.IO.Unsafe (unsafeDupablePerformIO)++-- | > typedef struct VkExportSemaphoreCreateInfo {+-- > VkStructureType sType;+-- > const void* pNext;+-- > VkExternalSemaphoreHandleTypeFlags handleTypes;+-- > } VkExportSemaphoreCreateInfo;+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkExportSemaphoreCreateInfo.html VkExportSemaphoreCreateInfo registry at www.khronos.org>+data VkExportSemaphoreCreateInfo = VkExportSemaphoreCreateInfo## Addr##+ ByteArray##++instance Eq VkExportSemaphoreCreateInfo where+ (VkExportSemaphoreCreateInfo## a _) ==+ x@(VkExportSemaphoreCreateInfo## b _)+ = EQ == cmpBytes## (sizeOf x) a b++ {-# INLINE (==) #-}++instance Ord VkExportSemaphoreCreateInfo where+ (VkExportSemaphoreCreateInfo## a _) `compare`+ x@(VkExportSemaphoreCreateInfo## b _) = cmpBytes## (sizeOf x) a b++ {-# INLINE compare #-}++instance Storable VkExportSemaphoreCreateInfo where+ sizeOf ~_ = #{size VkExportSemaphoreCreateInfo}++ {-# INLINE sizeOf #-}+ alignment ~_ = #{alignment VkExportSemaphoreCreateInfo}++ {-# INLINE alignment #-}+ peek = peekVkData##++ {-# INLINE peek #-}+ poke = pokeVkData##++ {-# INLINE poke #-}++instance VulkanMarshalPrim VkExportSemaphoreCreateInfo where+ unsafeAddr (VkExportSemaphoreCreateInfo## a _) = a++ {-# INLINE unsafeAddr #-}+ unsafeByteArray (VkExportSemaphoreCreateInfo## _ b) = b++ {-# INLINE unsafeByteArray #-}+ unsafeFromByteArrayOffset off b+ = VkExportSemaphoreCreateInfo##+ (plusAddr## (byteArrayContents## b) off)+ b++ {-# INLINE unsafeFromByteArrayOffset #-}++instance VulkanMarshal VkExportSemaphoreCreateInfo where+ type StructFields VkExportSemaphoreCreateInfo =+ '["sType", "pNext", "handleTypes"] -- ' closing tick for hsc2hs+ type CUnionType VkExportSemaphoreCreateInfo = 'False -- ' closing tick for hsc2hs+ type ReturnedOnly VkExportSemaphoreCreateInfo = 'False -- ' closing tick for hsc2hs+ type StructExtends VkExportSemaphoreCreateInfo =+ '[VkSemaphoreCreateInfo] -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-}+ HasField "sType" VkExportSemaphoreCreateInfo where+ type FieldType "sType" VkExportSemaphoreCreateInfo =+ VkStructureType+ type FieldOptional "sType" VkExportSemaphoreCreateInfo = 'False -- ' closing tick for hsc2hs+ type FieldOffset "sType" VkExportSemaphoreCreateInfo =+ #{offset VkExportSemaphoreCreateInfo, sType}+ type FieldIsArray "sType" VkExportSemaphoreCreateInfo = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkExportSemaphoreCreateInfo, sType}++instance {-# OVERLAPPING #-}+ CanReadField "sType" VkExportSemaphoreCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExportSemaphoreCreateInfo, sType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExportSemaphoreCreateInfo, sType}++instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkExportSemaphoreCreateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExportSemaphoreCreateInfo, sType}++instance {-# OVERLAPPING #-}+ HasField "pNext" VkExportSemaphoreCreateInfo where+ type FieldType "pNext" VkExportSemaphoreCreateInfo = Ptr Void+ type FieldOptional "pNext" VkExportSemaphoreCreateInfo = 'False -- ' closing tick for hsc2hs+ type FieldOffset "pNext" VkExportSemaphoreCreateInfo =+ #{offset VkExportSemaphoreCreateInfo, pNext}+ type FieldIsArray "pNext" VkExportSemaphoreCreateInfo = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkExportSemaphoreCreateInfo, pNext}++instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkExportSemaphoreCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExportSemaphoreCreateInfo, pNext})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExportSemaphoreCreateInfo, pNext}++instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkExportSemaphoreCreateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExportSemaphoreCreateInfo, pNext}++instance {-# OVERLAPPING #-}+ HasField "handleTypes" VkExportSemaphoreCreateInfo where+ type FieldType "handleTypes" VkExportSemaphoreCreateInfo =+ VkExternalSemaphoreHandleTypeFlags+ type FieldOptional "handleTypes" VkExportSemaphoreCreateInfo =+ 'True -- ' closing tick for hsc2hs+ type FieldOffset "handleTypes" VkExportSemaphoreCreateInfo =+ #{offset VkExportSemaphoreCreateInfo, handleTypes}+ type FieldIsArray "handleTypes" VkExportSemaphoreCreateInfo =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = True++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkExportSemaphoreCreateInfo, handleTypes}++instance {-# OVERLAPPING #-}+ CanReadField "handleTypes" VkExportSemaphoreCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExportSemaphoreCreateInfo, handleTypes})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExportSemaphoreCreateInfo, handleTypes}++instance {-# OVERLAPPING #-}+ CanWriteField "handleTypes" VkExportSemaphoreCreateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExportSemaphoreCreateInfo, handleTypes}++instance Show VkExportSemaphoreCreateInfo where+ showsPrec d x+ = showString "VkExportSemaphoreCreateInfo {" .+ showString "sType = " .+ showsPrec d (getField @"sType" x) .+ showString ", " .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) .+ showString ", " .+ showString "handleTypes = " .+ showsPrec d (getField @"handleTypes" x) . showChar '}'
@@ -0,0 +1,9 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Types.Struct.VkExportSemaphoreCreateInfoKHR+ (VkExportSemaphoreCreateInfo(..), VkExportSemaphoreCreateInfoKHR)+ where+import Graphics.Vulkan.Types.Struct.VkExportSemaphoreCreateInfo (VkExportSemaphoreCreateInfo (..))++-- | Alias for `VkExportSemaphoreCreateInfo`+type VkExportSemaphoreCreateInfoKHR = VkExportSemaphoreCreateInfo
@@ -1,244 +0,0 @@-#include "vulkan/vulkan.h"--{-# LANGUAGE DataKinds #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE MagicHash #-}-{-# LANGUAGE MultiParamTypeClasses #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE TypeFamilies #-}-module Graphics.Vulkan.Types.Struct.VkExportSemaphoreCreateInfoKHR- (VkExportSemaphoreCreateInfoKHR(..)) where-import Foreign.Storable- (Storable (..))-import GHC.Prim-import Graphics.Vulkan.Marshal-import Graphics.Vulkan.Marshal.Internal-import Graphics.Vulkan.Types.Enum.VkExternalSemaphoreHandleTypeFlagsKHR- (VkExternalSemaphoreHandleTypeFlagsKHR)-import Graphics.Vulkan.Types.Enum.VkStructureType- (VkStructureType)-import Graphics.Vulkan.Types.Struct.VkSemaphoreCreateInfo- (VkSemaphoreCreateInfo)-import Graphics.Vulkan.Types.StructMembers-import System.IO.Unsafe- (unsafeDupablePerformIO)---- | > typedef struct VkExportSemaphoreCreateInfoKHR {--- > VkStructureType sType;--- > const void* pNext;--- > VkExternalSemaphoreHandleTypeFlagsKHR handleTypes;--- > } VkExportSemaphoreCreateInfoKHR;------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkExportSemaphoreCreateInfoKHR.html VkExportSemaphoreCreateInfoKHR registry at www.khronos.org>-data VkExportSemaphoreCreateInfoKHR = VkExportSemaphoreCreateInfoKHR## Addr##- ByteArray##--instance Eq VkExportSemaphoreCreateInfoKHR where- (VkExportSemaphoreCreateInfoKHR## a _) ==- x@(VkExportSemaphoreCreateInfoKHR## b _)- = EQ == cmpBytes## (sizeOf x) a b-- {-# INLINE (==) #-}--instance Ord VkExportSemaphoreCreateInfoKHR where- (VkExportSemaphoreCreateInfoKHR## a _) `compare`- x@(VkExportSemaphoreCreateInfoKHR## b _) = cmpBytes## (sizeOf x) a b-- {-# INLINE compare #-}--instance Storable VkExportSemaphoreCreateInfoKHR where- sizeOf ~_ = #{size VkExportSemaphoreCreateInfoKHR}-- {-# INLINE sizeOf #-}- alignment ~_- = #{alignment VkExportSemaphoreCreateInfoKHR}-- {-# INLINE alignment #-}- peek = peekVkData##-- {-# INLINE peek #-}- poke = pokeVkData##-- {-# INLINE poke #-}--instance VulkanMarshalPrim VkExportSemaphoreCreateInfoKHR where- unsafeAddr (VkExportSemaphoreCreateInfoKHR## a _) = a-- {-# INLINE unsafeAddr #-}- unsafeByteArray (VkExportSemaphoreCreateInfoKHR## _ b) = b-- {-# INLINE unsafeByteArray #-}- unsafeFromByteArrayOffset off b- = VkExportSemaphoreCreateInfoKHR##- (plusAddr## (byteArrayContents## b) off)- b-- {-# INLINE unsafeFromByteArrayOffset #-}--instance VulkanMarshal VkExportSemaphoreCreateInfoKHR where- type StructFields VkExportSemaphoreCreateInfoKHR =- '["sType", "pNext", "handleTypes"] -- ' closing tick for hsc2hs- type CUnionType VkExportSemaphoreCreateInfoKHR = 'False -- ' closing tick for hsc2hs- type ReturnedOnly VkExportSemaphoreCreateInfoKHR = 'False -- ' closing tick for hsc2hs- type StructExtends VkExportSemaphoreCreateInfoKHR =- '[VkSemaphoreCreateInfo] -- ' closing tick for hsc2hs--instance {-# OVERLAPPING #-}- HasVkSType VkExportSemaphoreCreateInfoKHR where- type VkSTypeMType VkExportSemaphoreCreateInfoKHR = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExportSemaphoreCreateInfoKHR, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkExportSemaphoreCreateInfoKHR, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkExportSemaphoreCreateInfoKHR, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkExportSemaphoreCreateInfoKHR, sType}--instance {-# OVERLAPPING #-}- HasField "sType" VkExportSemaphoreCreateInfoKHR where- type FieldType "sType" VkExportSemaphoreCreateInfoKHR =- VkStructureType- type FieldOptional "sType" VkExportSemaphoreCreateInfoKHR = 'False -- ' closing tick for hsc2hs- type FieldOffset "sType" VkExportSemaphoreCreateInfoKHR =- #{offset VkExportSemaphoreCreateInfoKHR, sType}- type FieldIsArray "sType" VkExportSemaphoreCreateInfoKHR = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkExportSemaphoreCreateInfoKHR, sType}--instance CanReadField "sType" VkExportSemaphoreCreateInfoKHR where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance CanWriteField "sType" VkExportSemaphoreCreateInfoKHR where- {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-}- HasVkPNext VkExportSemaphoreCreateInfoKHR where- type VkPNextMType VkExportSemaphoreCreateInfoKHR = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExportSemaphoreCreateInfoKHR, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkExportSemaphoreCreateInfoKHR, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkExportSemaphoreCreateInfoKHR, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkExportSemaphoreCreateInfoKHR, pNext}--instance {-# OVERLAPPING #-}- HasField "pNext" VkExportSemaphoreCreateInfoKHR where- type FieldType "pNext" VkExportSemaphoreCreateInfoKHR = Ptr Void- type FieldOptional "pNext" VkExportSemaphoreCreateInfoKHR = 'False -- ' closing tick for hsc2hs- type FieldOffset "pNext" VkExportSemaphoreCreateInfoKHR =- #{offset VkExportSemaphoreCreateInfoKHR, pNext}- type FieldIsArray "pNext" VkExportSemaphoreCreateInfoKHR = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkExportSemaphoreCreateInfoKHR, pNext}--instance CanReadField "pNext" VkExportSemaphoreCreateInfoKHR where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkExportSemaphoreCreateInfoKHR where- {-# INLINE writeField #-}- writeField = writeVkPNext--instance {-# OVERLAPPING #-}- HasVkHandleTypes VkExportSemaphoreCreateInfoKHR where- type VkHandleTypesMType VkExportSemaphoreCreateInfoKHR =- VkExternalSemaphoreHandleTypeFlagsKHR-- {-# NOINLINE vkHandleTypes #-}- vkHandleTypes x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExportSemaphoreCreateInfoKHR, handleTypes})-- {-# INLINE vkHandleTypesByteOffset #-}- vkHandleTypesByteOffset ~_- = #{offset VkExportSemaphoreCreateInfoKHR, handleTypes}-- {-# INLINE readVkHandleTypes #-}- readVkHandleTypes p- = peekByteOff p #{offset VkExportSemaphoreCreateInfoKHR, handleTypes}-- {-# INLINE writeVkHandleTypes #-}- writeVkHandleTypes p- = pokeByteOff p #{offset VkExportSemaphoreCreateInfoKHR, handleTypes}--instance {-# OVERLAPPING #-}- HasField "handleTypes" VkExportSemaphoreCreateInfoKHR where- type FieldType "handleTypes" VkExportSemaphoreCreateInfoKHR =- VkExternalSemaphoreHandleTypeFlagsKHR- type FieldOptional "handleTypes" VkExportSemaphoreCreateInfoKHR =- 'True -- ' closing tick for hsc2hs- type FieldOffset "handleTypes" VkExportSemaphoreCreateInfoKHR =- #{offset VkExportSemaphoreCreateInfoKHR, handleTypes}- type FieldIsArray "handleTypes" VkExportSemaphoreCreateInfoKHR =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = True-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkExportSemaphoreCreateInfoKHR, handleTypes}--instance CanReadField "handleTypes" VkExportSemaphoreCreateInfoKHR- where- {-# INLINE getField #-}- getField = vkHandleTypes-- {-# INLINE readField #-}- readField = readVkHandleTypes--instance CanWriteField "handleTypes" VkExportSemaphoreCreateInfoKHR- where- {-# INLINE writeField #-}- writeField = writeVkHandleTypes--instance Show VkExportSemaphoreCreateInfoKHR where- showsPrec d x- = showString "VkExportSemaphoreCreateInfoKHR {" .- showString "vkSType = " .- showsPrec d (vkSType x) .- showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .- showString ", " .- showString "vkHandleTypes = " .- showsPrec d (vkHandleTypes x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkExportSemaphoreWin32HandleInfoKHR (VkExportSemaphoreWin32HandleInfoKHR(..)) where@@ -17,7 +18,6 @@ LPCWSTR, SECURITY_ATTRIBUTES) import Graphics.Vulkan.Types.Struct.VkSemaphoreCreateInfo (VkSemaphoreCreateInfo)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkExportSemaphoreWin32HandleInfoKHR {@@ -28,7 +28,7 @@ -- > LPCWSTR name; -- > } VkExportSemaphoreWin32HandleInfoKHR; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkExportSemaphoreWin32HandleInfoKHR.html VkExportSemaphoreWin32HandleInfoKHR registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkExportSemaphoreWin32HandleInfoKHR.html VkExportSemaphoreWin32HandleInfoKHR registry at www.khronos.org> data VkExportSemaphoreWin32HandleInfoKHR = VkExportSemaphoreWin32HandleInfoKHR## Addr## ByteArray## @@ -85,28 +85,6 @@ '[VkSemaphoreCreateInfo] -- ' closing tick for hsc2hs instance {-# OVERLAPPING #-}- HasVkSType VkExportSemaphoreWin32HandleInfoKHR where- type VkSTypeMType VkExportSemaphoreWin32HandleInfoKHR =- VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExportSemaphoreWin32HandleInfoKHR, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkExportSemaphoreWin32HandleInfoKHR, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkExportSemaphoreWin32HandleInfoKHR, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkExportSemaphoreWin32HandleInfoKHR, sType}--instance {-# OVERLAPPING #-} HasField "sType" VkExportSemaphoreWin32HandleInfoKHR where type FieldType "sType" VkExportSemaphoreWin32HandleInfoKHR = VkStructureType@@ -124,39 +102,22 @@ fieldOffset = #{offset VkExportSemaphoreWin32HandleInfoKHR, sType} -instance CanReadField "sType" VkExportSemaphoreWin32HandleInfoKHR- where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance CanWriteField "sType" VkExportSemaphoreWin32HandleInfoKHR- where- {-# INLINE writeField #-}- writeField = writeVkSType- instance {-# OVERLAPPING #-}- HasVkPNext VkExportSemaphoreWin32HandleInfoKHR where- type VkPNextMType VkExportSemaphoreWin32HandleInfoKHR = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x+ CanReadField "sType" VkExportSemaphoreWin32HandleInfoKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExportSemaphoreWin32HandleInfoKHR, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkExportSemaphoreWin32HandleInfoKHR, pNext}+ (peekByteOff (unsafePtr x) #{offset VkExportSemaphoreWin32HandleInfoKHR, sType}) - {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkExportSemaphoreWin32HandleInfoKHR, pNext}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExportSemaphoreWin32HandleInfoKHR, sType} - {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkExportSemaphoreWin32HandleInfoKHR, pNext}+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkExportSemaphoreWin32HandleInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExportSemaphoreWin32HandleInfoKHR, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkExportSemaphoreWin32HandleInfoKHR where@@ -176,40 +137,22 @@ fieldOffset = #{offset VkExportSemaphoreWin32HandleInfoKHR, pNext} -instance CanReadField "pNext" VkExportSemaphoreWin32HandleInfoKHR- where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkExportSemaphoreWin32HandleInfoKHR- where- {-# INLINE writeField #-}- writeField = writeVkPNext- instance {-# OVERLAPPING #-}- HasVkPAttributes VkExportSemaphoreWin32HandleInfoKHR where- type VkPAttributesMType VkExportSemaphoreWin32HandleInfoKHR =- Ptr SECURITY_ATTRIBUTES-- {-# NOINLINE vkPAttributes #-}- vkPAttributes x+ CanReadField "pNext" VkExportSemaphoreWin32HandleInfoKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExportSemaphoreWin32HandleInfoKHR, pAttributes})-- {-# INLINE vkPAttributesByteOffset #-}- vkPAttributesByteOffset ~_- = #{offset VkExportSemaphoreWin32HandleInfoKHR, pAttributes}+ (peekByteOff (unsafePtr x) #{offset VkExportSemaphoreWin32HandleInfoKHR, pNext}) - {-# INLINE readVkPAttributes #-}- readVkPAttributes p- = peekByteOff p #{offset VkExportSemaphoreWin32HandleInfoKHR, pAttributes}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExportSemaphoreWin32HandleInfoKHR, pNext} - {-# INLINE writeVkPAttributes #-}- writeVkPAttributes p- = pokeByteOff p #{offset VkExportSemaphoreWin32HandleInfoKHR, pAttributes}+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkExportSemaphoreWin32HandleInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExportSemaphoreWin32HandleInfoKHR, pNext} instance {-# OVERLAPPING #-} HasField "pAttributes" VkExportSemaphoreWin32HandleInfoKHR where@@ -231,41 +174,24 @@ fieldOffset = #{offset VkExportSemaphoreWin32HandleInfoKHR, pAttributes} -instance CanReadField "pAttributes"- VkExportSemaphoreWin32HandleInfoKHR+instance {-# OVERLAPPING #-}+ CanReadField "pAttributes" VkExportSemaphoreWin32HandleInfoKHR where- {-# INLINE getField #-}- getField = vkPAttributes+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExportSemaphoreWin32HandleInfoKHR, pAttributes}) {-# INLINE readField #-}- readField = readVkPAttributes+ readField p+ = peekByteOff p #{offset VkExportSemaphoreWin32HandleInfoKHR, pAttributes} -instance CanWriteField "pAttributes"- VkExportSemaphoreWin32HandleInfoKHR+instance {-# OVERLAPPING #-}+ CanWriteField "pAttributes" VkExportSemaphoreWin32HandleInfoKHR where {-# INLINE writeField #-}- writeField = writeVkPAttributes--instance {-# OVERLAPPING #-}- HasVkDwAccess VkExportSemaphoreWin32HandleInfoKHR where- type VkDwAccessMType VkExportSemaphoreWin32HandleInfoKHR = DWORD-- {-# NOINLINE vkDwAccess #-}- vkDwAccess x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExportSemaphoreWin32HandleInfoKHR, dwAccess})-- {-# INLINE vkDwAccessByteOffset #-}- vkDwAccessByteOffset ~_- = #{offset VkExportSemaphoreWin32HandleInfoKHR, dwAccess}-- {-# INLINE readVkDwAccess #-}- readVkDwAccess p- = peekByteOff p #{offset VkExportSemaphoreWin32HandleInfoKHR, dwAccess}-- {-# INLINE writeVkDwAccess #-}- writeVkDwAccess p- = pokeByteOff p #{offset VkExportSemaphoreWin32HandleInfoKHR, dwAccess}+ writeField p+ = pokeByteOff p #{offset VkExportSemaphoreWin32HandleInfoKHR, pAttributes} instance {-# OVERLAPPING #-} HasField "dwAccess" VkExportSemaphoreWin32HandleInfoKHR where@@ -285,41 +211,22 @@ fieldOffset = #{offset VkExportSemaphoreWin32HandleInfoKHR, dwAccess} -instance CanReadField "dwAccess"- VkExportSemaphoreWin32HandleInfoKHR- where- {-# INLINE getField #-}- getField = vkDwAccess-- {-# INLINE readField #-}- readField = readVkDwAccess--instance CanWriteField "dwAccess"- VkExportSemaphoreWin32HandleInfoKHR- where- {-# INLINE writeField #-}- writeField = writeVkDwAccess- instance {-# OVERLAPPING #-}- HasVkName VkExportSemaphoreWin32HandleInfoKHR where- type VkNameMType VkExportSemaphoreWin32HandleInfoKHR = LPCWSTR-- {-# NOINLINE vkName #-}- vkName x+ CanReadField "dwAccess" VkExportSemaphoreWin32HandleInfoKHR where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExportSemaphoreWin32HandleInfoKHR, name})-- {-# INLINE vkNameByteOffset #-}- vkNameByteOffset ~_- = #{offset VkExportSemaphoreWin32HandleInfoKHR, name}+ (peekByteOff (unsafePtr x) #{offset VkExportSemaphoreWin32HandleInfoKHR, dwAccess}) - {-# INLINE readVkName #-}- readVkName p- = peekByteOff p #{offset VkExportSemaphoreWin32HandleInfoKHR, name}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExportSemaphoreWin32HandleInfoKHR, dwAccess} - {-# INLINE writeVkName #-}- writeVkName p- = pokeByteOff p #{offset VkExportSemaphoreWin32HandleInfoKHR, name}+instance {-# OVERLAPPING #-}+ CanWriteField "dwAccess" VkExportSemaphoreWin32HandleInfoKHR where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExportSemaphoreWin32HandleInfoKHR, dwAccess} instance {-# OVERLAPPING #-} HasField "name" VkExportSemaphoreWin32HandleInfoKHR where@@ -338,32 +245,37 @@ fieldOffset = #{offset VkExportSemaphoreWin32HandleInfoKHR, name} -instance CanReadField "name" VkExportSemaphoreWin32HandleInfoKHR- where- {-# INLINE getField #-}- getField = vkName+instance {-# OVERLAPPING #-}+ CanReadField "name" VkExportSemaphoreWin32HandleInfoKHR where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExportSemaphoreWin32HandleInfoKHR, name}) {-# INLINE readField #-}- readField = readVkName+ readField p+ = peekByteOff p #{offset VkExportSemaphoreWin32HandleInfoKHR, name} -instance CanWriteField "name" VkExportSemaphoreWin32HandleInfoKHR- where+instance {-# OVERLAPPING #-}+ CanWriteField "name" VkExportSemaphoreWin32HandleInfoKHR where {-# INLINE writeField #-}- writeField = writeVkName+ writeField p+ = pokeByteOff p #{offset VkExportSemaphoreWin32HandleInfoKHR, name} instance Show VkExportSemaphoreWin32HandleInfoKHR where showsPrec d x = showString "VkExportSemaphoreWin32HandleInfoKHR {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkPAttributes = " .- showsPrec d (vkPAttributes x) .+ showString "pAttributes = " .+ showsPrec d (getField @"pAttributes" x) . showString ", " .- showString "vkDwAccess = " .- showsPrec d (vkDwAccess x) .+ showString "dwAccess = " .+ showsPrec d (getField @"dwAccess" x) . showString ", " .- showString "vkName = " . showsPrec d (vkName x) . showChar '}'+ showString "name = " .+ showsPrec d (getField @"name" x) . showChar '}'
@@ -8,26 +8,25 @@ {-# LANGUAGE PatternSynonyms #-} {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} {-# LANGUAGE UndecidableInstances #-} module Graphics.Vulkan.Types.Struct.VkExtensionProperties (VkExtensionProperties(..)) where-import Foreign.Storable (Storable (..))+import Foreign.Storable (Storable (..)) import GHC.Prim-import GHC.TypeLits (KnownNat, natVal') -- ' closing tick for hsc2hs-import Graphics.Vulkan.Constants (VK_MAX_EXTENSION_NAME_SIZE,- pattern VK_MAX_EXTENSION_NAME_SIZE)+import GHC.TypeLits (KnownNat, natVal') -- ' closing tick for hsc2hs+import Graphics.Vulkan.Constants (VK_MAX_EXTENSION_NAME_SIZE, pattern VK_MAX_EXTENSION_NAME_SIZE) import Graphics.Vulkan.Marshal import Graphics.Vulkan.Marshal.Internal-import Graphics.Vulkan.Types.StructMembers-import System.IO.Unsafe (unsafeDupablePerformIO)+import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkExtensionProperties { -- > char extensionName[VK_MAX_EXTENSION_NAME_SIZE]; -- > uint32_t specVersion; -- > } VkExtensionProperties; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkExtensionProperties.html VkExtensionProperties registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkExtensionProperties.html VkExtensionProperties registry at www.khronos.org> data VkExtensionProperties = VkExtensionProperties## Addr## ByteArray## @@ -77,33 +76,6 @@ type StructExtends VkExtensionProperties = '[] -- ' closing tick for hsc2hs instance {-# OVERLAPPING #-}- HasVkExtensionNameArray VkExtensionProperties where- type VkExtensionNameArrayMType VkExtensionProperties = CChar-- {-# NOINLINE vkExtensionNameArray #-}- vkExtensionNameArray x idx- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x)- (idx * sizeOf (undefined :: CChar) +- #{offset VkExtensionProperties, extensionName}))-- {-# INLINE vkExtensionNameArrayByteOffset #-}- vkExtensionNameArrayByteOffset ~_- = #{offset VkExtensionProperties, extensionName}-- {-# INLINE readVkExtensionNameArray #-}- readVkExtensionNameArray p idx- = peekByteOff p- (idx * sizeOf (undefined :: CChar) +- #{offset VkExtensionProperties, extensionName})-- {-# INLINE writeVkExtensionNameArray #-}- writeVkExtensionNameArray p idx- = pokeByteOff p- (idx * sizeOf (undefined :: CChar) +- #{offset VkExtensionProperties, extensionName})--instance {-# OVERLAPPING #-} HasField "extensionName" VkExtensionProperties where type FieldType "extensionName" VkExtensionProperties = CChar type FieldOptional "extensionName" VkExtensionProperties = 'False -- ' closing tick for hsc2hs@@ -118,7 +90,8 @@ fieldOffset = #{offset VkExtensionProperties, extensionName} -instance (KnownNat idx,+instance {-# OVERLAPPING #-}+ (KnownNat idx, IndexInBounds "extensionName" idx VkExtensionProperties) => CanReadFieldArray "extensionName" idx VkExtensionProperties where@@ -140,35 +113,44 @@ fieldArrayLength = VK_MAX_EXTENSION_NAME_SIZE {-# INLINE getFieldArray #-}- getFieldArray x- = vkExtensionNameArray x- (fromInteger $ natVal' (proxy## :: Proxy## idx)) -- ' closing tick for hsc2hs+ getFieldArray = f+ where {-# NOINLINE f #-}+ f x = unsafeDupablePerformIO (peekByteOff (unsafePtr x) off)+ off+ = #{offset VkExtensionProperties, extensionName} ++ sizeOf (undefined :: CChar) *+ fromInteger (natVal' (proxy## :: Proxy## idx)) -- ' closing tick for hsc2hs {-# INLINE readFieldArray #-}- readFieldArray x- = readVkExtensionNameArray x- (fromInteger $ natVal' (proxy## :: Proxy## idx)) -- ' closing tick for hsc2hs+ readFieldArray p+ = peekByteOff p+ (#{offset VkExtensionProperties, extensionName} ++ sizeOf (undefined :: CChar) *+ fromInteger (natVal' (proxy## :: Proxy## idx))) -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkSpecVersion VkExtensionProperties+instance {-# OVERLAPPING #-}+ (KnownNat idx,+ IndexInBounds "extensionName" idx VkExtensionProperties) =>+ CanWriteFieldArray "extensionName" idx VkExtensionProperties where- type VkSpecVersionMType VkExtensionProperties = Word32+ {-# SPECIALISE instance+ CanWriteFieldArray "extensionName" 0 VkExtensionProperties #-} - {-# NOINLINE vkSpecVersion #-}- vkSpecVersion x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExtensionProperties, specVersion})+ {-# SPECIALISE instance+ CanWriteFieldArray "extensionName" 1 VkExtensionProperties #-} - {-# INLINE vkSpecVersionByteOffset #-}- vkSpecVersionByteOffset ~_- = #{offset VkExtensionProperties, specVersion}+ {-# SPECIALISE instance+ CanWriteFieldArray "extensionName" 2 VkExtensionProperties #-} - {-# INLINE readVkSpecVersion #-}- readVkSpecVersion p- = peekByteOff p #{offset VkExtensionProperties, specVersion}+ {-# SPECIALISE instance+ CanWriteFieldArray "extensionName" 3 VkExtensionProperties #-} - {-# INLINE writeVkSpecVersion #-}- writeVkSpecVersion p- = pokeByteOff p #{offset VkExtensionProperties, specVersion}+ {-# INLINE writeFieldArray #-}+ writeFieldArray p+ = pokeByteOff p+ (#{offset VkExtensionProperties, extensionName} ++ sizeOf (undefined :: CChar) *+ fromInteger (natVal' (proxy## :: Proxy## idx))) -- ' closing tick for hsc2hs instance {-# OVERLAPPING #-} HasField "specVersion" VkExtensionProperties where@@ -185,21 +167,39 @@ fieldOffset = #{offset VkExtensionProperties, specVersion} -instance CanReadField "specVersion" VkExtensionProperties where- {-# INLINE getField #-}- getField = vkSpecVersion+instance {-# OVERLAPPING #-}+ CanReadField "specVersion" VkExtensionProperties where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExtensionProperties, specVersion}) {-# INLINE readField #-}- readField = readVkSpecVersion+ readField p+ = peekByteOff p #{offset VkExtensionProperties, specVersion} +instance {-# OVERLAPPING #-}+ CanWriteField "specVersion" VkExtensionProperties where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExtensionProperties, specVersion}+ instance Show VkExtensionProperties where showsPrec d x = showString "VkExtensionProperties {" .- showString "vkExtensionNameArray = [" .- showsPrec d- (map (vkExtensionNameArray x) [1 .. VK_MAX_EXTENSION_NAME_SIZE])- .- showChar ']' .- showString ", " .- showString "vkSpecVersion = " .- showsPrec d (vkSpecVersion x) . showChar '}'+ (showString "extensionName = [" .+ showsPrec d+ (let s = sizeOf+ (undefined :: FieldType "extensionName" VkExtensionProperties)+ o = fieldOffset @"extensionName" @VkExtensionProperties+ f i+ = peekByteOff (unsafePtr x) i ::+ IO (FieldType "extensionName" VkExtensionProperties)+ in+ unsafeDupablePerformIO . mapM f $+ map (\ i -> o + i * s) [0 .. VK_MAX_EXTENSION_NAME_SIZE - 1])+ . showChar ']')+ .+ showString ", " .+ showString "specVersion = " .+ showsPrec d (getField @"specVersion" x) . showChar '}'
@@ -5,22 +5,22 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkExtent2D (VkExtent2D(..)) where-import Foreign.Storable (Storable (..))+import Foreign.Storable (Storable (..)) import GHC.Prim import Graphics.Vulkan.Marshal import Graphics.Vulkan.Marshal.Internal-import Graphics.Vulkan.Types.StructMembers-import System.IO.Unsafe (unsafeDupablePerformIO)+import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkExtent2D { -- > uint32_t width; -- > uint32_t height; -- > } VkExtent2D; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkExtent2D.html VkExtent2D registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkExtent2D.html VkExtent2D registry at www.khronos.org> data VkExtent2D = VkExtent2D## Addr## ByteArray## instance Eq VkExtent2D where@@ -67,25 +67,6 @@ type ReturnedOnly VkExtent2D = 'False -- ' closing tick for hsc2hs type StructExtends VkExtent2D = '[] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkWidth VkExtent2D where- type VkWidthMType VkExtent2D = Word32-- {-# NOINLINE vkWidth #-}- vkWidth x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExtent2D, width})-- {-# INLINE vkWidthByteOffset #-}- vkWidthByteOffset ~_ = #{offset VkExtent2D, width}-- {-# INLINE readVkWidth #-}- readVkWidth p- = peekByteOff p #{offset VkExtent2D, width}-- {-# INLINE writeVkWidth #-}- writeVkWidth p- = pokeByteOff p #{offset VkExtent2D, width}- instance {-# OVERLAPPING #-} HasField "width" VkExtent2D where type FieldType "width" VkExtent2D = Word32 type FieldOptional "width" VkExtent2D = 'False -- ' closing tick for hsc2hs@@ -99,35 +80,19 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkExtent2D, width} -instance CanReadField "width" VkExtent2D where- {-# INLINE getField #-}- getField = vkWidth+instance {-# OVERLAPPING #-} CanReadField "width" VkExtent2D where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExtent2D, width}) {-# INLINE readField #-}- readField = readVkWidth+ readField p = peekByteOff p #{offset VkExtent2D, width} -instance CanWriteField "width" VkExtent2D where+instance {-# OVERLAPPING #-} CanWriteField "width" VkExtent2D where {-# INLINE writeField #-}- writeField = writeVkWidth--instance {-# OVERLAPPING #-} HasVkHeight VkExtent2D where- type VkHeightMType VkExtent2D = Word32-- {-# NOINLINE vkHeight #-}- vkHeight x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExtent2D, height})-- {-# INLINE vkHeightByteOffset #-}- vkHeightByteOffset ~_ = #{offset VkExtent2D, height}-- {-# INLINE readVkHeight #-}- readVkHeight p- = peekByteOff p #{offset VkExtent2D, height}-- {-# INLINE writeVkHeight #-}- writeVkHeight p- = pokeByteOff p #{offset VkExtent2D, height}+ writeField p+ = pokeByteOff p #{offset VkExtent2D, width} instance {-# OVERLAPPING #-} HasField "height" VkExtent2D where type FieldType "height" VkExtent2D = Word32@@ -142,21 +107,27 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkExtent2D, height} -instance CanReadField "height" VkExtent2D where- {-# INLINE getField #-}- getField = vkHeight+instance {-# OVERLAPPING #-} CanReadField "height" VkExtent2D where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExtent2D, height}) {-# INLINE readField #-}- readField = readVkHeight+ readField p+ = peekByteOff p #{offset VkExtent2D, height} -instance CanWriteField "height" VkExtent2D where+instance {-# OVERLAPPING #-} CanWriteField "height" VkExtent2D+ where {-# INLINE writeField #-}- writeField = writeVkHeight+ writeField p+ = pokeByteOff p #{offset VkExtent2D, height} instance Show VkExtent2D where showsPrec d x = showString "VkExtent2D {" .- showString "vkWidth = " .- showsPrec d (vkWidth x) .+ showString "width = " .+ showsPrec d (getField @"width" x) . showString ", " .- showString "vkHeight = " . showsPrec d (vkHeight x) . showChar '}'+ showString "height = " .+ showsPrec d (getField @"height" x) . showChar '}'
@@ -5,15 +5,15 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkExtent3D (VkExtent3D(..)) where-import Foreign.Storable (Storable (..))+import Foreign.Storable (Storable (..)) import GHC.Prim import Graphics.Vulkan.Marshal import Graphics.Vulkan.Marshal.Internal-import Graphics.Vulkan.Types.StructMembers-import System.IO.Unsafe (unsafeDupablePerformIO)+import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkExtent3D { -- > uint32_t width;@@ -21,7 +21,7 @@ -- > uint32_t depth; -- > } VkExtent3D; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkExtent3D.html VkExtent3D registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkExtent3D.html VkExtent3D registry at www.khronos.org> data VkExtent3D = VkExtent3D## Addr## ByteArray## instance Eq VkExtent3D where@@ -68,25 +68,6 @@ type ReturnedOnly VkExtent3D = 'False -- ' closing tick for hsc2hs type StructExtends VkExtent3D = '[] -- ' closing tick for hsc2hs -instance {-# OVERLAPPING #-} HasVkWidth VkExtent3D where- type VkWidthMType VkExtent3D = Word32-- {-# NOINLINE vkWidth #-}- vkWidth x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExtent3D, width})-- {-# INLINE vkWidthByteOffset #-}- vkWidthByteOffset ~_ = #{offset VkExtent3D, width}-- {-# INLINE readVkWidth #-}- readVkWidth p- = peekByteOff p #{offset VkExtent3D, width}-- {-# INLINE writeVkWidth #-}- writeVkWidth p- = pokeByteOff p #{offset VkExtent3D, width}- instance {-# OVERLAPPING #-} HasField "width" VkExtent3D where type FieldType "width" VkExtent3D = Word32 type FieldOptional "width" VkExtent3D = 'False -- ' closing tick for hsc2hs@@ -100,35 +81,19 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkExtent3D, width} -instance CanReadField "width" VkExtent3D where- {-# INLINE getField #-}- getField = vkWidth+instance {-# OVERLAPPING #-} CanReadField "width" VkExtent3D where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExtent3D, width}) {-# INLINE readField #-}- readField = readVkWidth+ readField p = peekByteOff p #{offset VkExtent3D, width} -instance CanWriteField "width" VkExtent3D where+instance {-# OVERLAPPING #-} CanWriteField "width" VkExtent3D where {-# INLINE writeField #-}- writeField = writeVkWidth--instance {-# OVERLAPPING #-} HasVkHeight VkExtent3D where- type VkHeightMType VkExtent3D = Word32-- {-# NOINLINE vkHeight #-}- vkHeight x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExtent3D, height})-- {-# INLINE vkHeightByteOffset #-}- vkHeightByteOffset ~_ = #{offset VkExtent3D, height}-- {-# INLINE readVkHeight #-}- readVkHeight p- = peekByteOff p #{offset VkExtent3D, height}-- {-# INLINE writeVkHeight #-}- writeVkHeight p- = pokeByteOff p #{offset VkExtent3D, height}+ writeField p+ = pokeByteOff p #{offset VkExtent3D, width} instance {-# OVERLAPPING #-} HasField "height" VkExtent3D where type FieldType "height" VkExtent3D = Word32@@ -143,35 +108,21 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkExtent3D, height} -instance CanReadField "height" VkExtent3D where- {-# INLINE getField #-}- getField = vkHeight+instance {-# OVERLAPPING #-} CanReadField "height" VkExtent3D where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExtent3D, height}) {-# INLINE readField #-}- readField = readVkHeight+ readField p+ = peekByteOff p #{offset VkExtent3D, height} -instance CanWriteField "height" VkExtent3D where+instance {-# OVERLAPPING #-} CanWriteField "height" VkExtent3D+ where {-# INLINE writeField #-}- writeField = writeVkHeight--instance {-# OVERLAPPING #-} HasVkDepth VkExtent3D where- type VkDepthMType VkExtent3D = Word32-- {-# NOINLINE vkDepth #-}- vkDepth x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExtent3D, depth})-- {-# INLINE vkDepthByteOffset #-}- vkDepthByteOffset ~_ = #{offset VkExtent3D, depth}-- {-# INLINE readVkDepth #-}- readVkDepth p- = peekByteOff p #{offset VkExtent3D, depth}-- {-# INLINE writeVkDepth #-}- writeVkDepth p- = pokeByteOff p #{offset VkExtent3D, depth}+ writeField p+ = pokeByteOff p #{offset VkExtent3D, height} instance {-# OVERLAPPING #-} HasField "depth" VkExtent3D where type FieldType "depth" VkExtent3D = Word32@@ -186,24 +137,28 @@ {-# INLINE fieldOffset #-} fieldOffset = #{offset VkExtent3D, depth} -instance CanReadField "depth" VkExtent3D where- {-# INLINE getField #-}- getField = vkDepth+instance {-# OVERLAPPING #-} CanReadField "depth" VkExtent3D where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExtent3D, depth}) {-# INLINE readField #-}- readField = readVkDepth+ readField p = peekByteOff p #{offset VkExtent3D, depth} -instance CanWriteField "depth" VkExtent3D where+instance {-# OVERLAPPING #-} CanWriteField "depth" VkExtent3D where {-# INLINE writeField #-}- writeField = writeVkDepth+ writeField p+ = pokeByteOff p #{offset VkExtent3D, depth} instance Show VkExtent3D where showsPrec d x = showString "VkExtent3D {" .- showString "vkWidth = " .- showsPrec d (vkWidth x) .+ showString "width = " .+ showsPrec d (getField @"width" x) . showString ", " .- showString "vkHeight = " .- showsPrec d (vkHeight x) .+ showString "height = " .+ showsPrec d (getField @"height" x) . showString ", " .- showString "vkDepth = " . showsPrec d (vkDepth x) . showChar '}'+ showString "depth = " .+ showsPrec d (getField @"depth" x) . showChar '}'
@@ -0,0 +1,195 @@+#include "vulkan/vulkan.h"++{-# LANGUAGE DataKinds #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-}+{-# LANGUAGE TypeFamilies #-}+module Graphics.Vulkan.Types.Struct.VkExternalBufferProperties+ (VkExternalBufferProperties(..)) where+import Foreign.Storable (Storable (..))+import GHC.Prim+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Marshal.Internal+import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)+import Graphics.Vulkan.Types.Struct.VkExternalMemoryProperties (VkExternalMemoryProperties)+import System.IO.Unsafe (unsafeDupablePerformIO)++-- | > typedef struct VkExternalBufferProperties {+-- > VkStructureType sType;+-- > void* pNext;+-- > VkExternalMemoryProperties externalMemoryProperties;+-- > } VkExternalBufferProperties;+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkExternalBufferProperties.html VkExternalBufferProperties registry at www.khronos.org>+data VkExternalBufferProperties = VkExternalBufferProperties## Addr##+ ByteArray##++instance Eq VkExternalBufferProperties where+ (VkExternalBufferProperties## a _) ==+ x@(VkExternalBufferProperties## b _)+ = EQ == cmpBytes## (sizeOf x) a b++ {-# INLINE (==) #-}++instance Ord VkExternalBufferProperties where+ (VkExternalBufferProperties## a _) `compare`+ x@(VkExternalBufferProperties## b _) = cmpBytes## (sizeOf x) a b++ {-# INLINE compare #-}++instance Storable VkExternalBufferProperties where+ sizeOf ~_ = #{size VkExternalBufferProperties}++ {-# INLINE sizeOf #-}+ alignment ~_ = #{alignment VkExternalBufferProperties}++ {-# INLINE alignment #-}+ peek = peekVkData##++ {-# INLINE peek #-}+ poke = pokeVkData##++ {-# INLINE poke #-}++instance VulkanMarshalPrim VkExternalBufferProperties where+ unsafeAddr (VkExternalBufferProperties## a _) = a++ {-# INLINE unsafeAddr #-}+ unsafeByteArray (VkExternalBufferProperties## _ b) = b++ {-# INLINE unsafeByteArray #-}+ unsafeFromByteArrayOffset off b+ = VkExternalBufferProperties##+ (plusAddr## (byteArrayContents## b) off)+ b++ {-# INLINE unsafeFromByteArrayOffset #-}++instance VulkanMarshal VkExternalBufferProperties where+ type StructFields VkExternalBufferProperties =+ '["sType", "pNext", "externalMemoryProperties"] -- ' closing tick for hsc2hs+ type CUnionType VkExternalBufferProperties = 'False -- ' closing tick for hsc2hs+ type ReturnedOnly VkExternalBufferProperties = 'True -- ' closing tick for hsc2hs+ type StructExtends VkExternalBufferProperties = '[] -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-}+ HasField "sType" VkExternalBufferProperties where+ type FieldType "sType" VkExternalBufferProperties = VkStructureType+ type FieldOptional "sType" VkExternalBufferProperties = 'False -- ' closing tick for hsc2hs+ type FieldOffset "sType" VkExternalBufferProperties =+ #{offset VkExternalBufferProperties, sType}+ type FieldIsArray "sType" VkExternalBufferProperties = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkExternalBufferProperties, sType}++instance {-# OVERLAPPING #-}+ CanReadField "sType" VkExternalBufferProperties where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExternalBufferProperties, sType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExternalBufferProperties, sType}++instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkExternalBufferProperties where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExternalBufferProperties, sType}++instance {-# OVERLAPPING #-}+ HasField "pNext" VkExternalBufferProperties where+ type FieldType "pNext" VkExternalBufferProperties = Ptr Void+ type FieldOptional "pNext" VkExternalBufferProperties = 'False -- ' closing tick for hsc2hs+ type FieldOffset "pNext" VkExternalBufferProperties =+ #{offset VkExternalBufferProperties, pNext}+ type FieldIsArray "pNext" VkExternalBufferProperties = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkExternalBufferProperties, pNext}++instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkExternalBufferProperties where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExternalBufferProperties, pNext})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExternalBufferProperties, pNext}++instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkExternalBufferProperties where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExternalBufferProperties, pNext}++instance {-# OVERLAPPING #-}+ HasField "externalMemoryProperties" VkExternalBufferProperties+ where+ type FieldType "externalMemoryProperties"+ VkExternalBufferProperties+ = VkExternalMemoryProperties+ type FieldOptional "externalMemoryProperties"+ VkExternalBufferProperties+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "externalMemoryProperties"+ VkExternalBufferProperties+ =+ #{offset VkExternalBufferProperties, externalMemoryProperties}+ type FieldIsArray "externalMemoryProperties"+ VkExternalBufferProperties+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkExternalBufferProperties, externalMemoryProperties}++instance {-# OVERLAPPING #-}+ CanReadField "externalMemoryProperties" VkExternalBufferProperties+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExternalBufferProperties, externalMemoryProperties})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExternalBufferProperties, externalMemoryProperties}++instance {-# OVERLAPPING #-}+ CanWriteField "externalMemoryProperties" VkExternalBufferProperties+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExternalBufferProperties, externalMemoryProperties}++instance Show VkExternalBufferProperties where+ showsPrec d x+ = showString "VkExternalBufferProperties {" .+ showString "sType = " .+ showsPrec d (getField @"sType" x) .+ showString ", " .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) .+ showString ", " .+ showString "externalMemoryProperties = " .+ showsPrec d (getField @"externalMemoryProperties" x) . showChar '}'
@@ -0,0 +1,9 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Types.Struct.VkExternalBufferPropertiesKHR+ (VkExternalBufferProperties(..), VkExternalBufferPropertiesKHR)+ where+import Graphics.Vulkan.Types.Struct.VkExternalBufferProperties (VkExternalBufferProperties (..))++-- | Alias for `VkExternalBufferProperties`+type VkExternalBufferPropertiesKHR = VkExternalBufferProperties
@@ -1,231 +0,0 @@-#include "vulkan/vulkan.h"--{-# LANGUAGE DataKinds #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE MagicHash #-}-{-# LANGUAGE MultiParamTypeClasses #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE TypeFamilies #-}-module Graphics.Vulkan.Types.Struct.VkExternalBufferPropertiesKHR- (VkExternalBufferPropertiesKHR(..)) where-import Foreign.Storable (Storable (..))-import GHC.Prim-import Graphics.Vulkan.Marshal-import Graphics.Vulkan.Marshal.Internal-import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)-import Graphics.Vulkan.Types.Struct.VkExternalMemoryPropertiesKHR (VkExternalMemoryPropertiesKHR)-import Graphics.Vulkan.Types.StructMembers-import System.IO.Unsafe (unsafeDupablePerformIO)---- | > typedef struct VkExternalBufferPropertiesKHR {--- > VkStructureType sType;--- > void* pNext;--- > VkExternalMemoryPropertiesKHR externalMemoryProperties;--- > } VkExternalBufferPropertiesKHR;------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkExternalBufferPropertiesKHR.html VkExternalBufferPropertiesKHR registry at www.khronos.org>-data VkExternalBufferPropertiesKHR = VkExternalBufferPropertiesKHR## Addr##- ByteArray##--instance Eq VkExternalBufferPropertiesKHR where- (VkExternalBufferPropertiesKHR## a _) ==- x@(VkExternalBufferPropertiesKHR## b _)- = EQ == cmpBytes## (sizeOf x) a b-- {-# INLINE (==) #-}--instance Ord VkExternalBufferPropertiesKHR where- (VkExternalBufferPropertiesKHR## a _) `compare`- x@(VkExternalBufferPropertiesKHR## b _) = cmpBytes## (sizeOf x) a b-- {-# INLINE compare #-}--instance Storable VkExternalBufferPropertiesKHR where- sizeOf ~_ = #{size VkExternalBufferPropertiesKHR}-- {-# INLINE sizeOf #-}- alignment ~_- = #{alignment VkExternalBufferPropertiesKHR}-- {-# INLINE alignment #-}- peek = peekVkData##-- {-# INLINE peek #-}- poke = pokeVkData##-- {-# INLINE poke #-}--instance VulkanMarshalPrim VkExternalBufferPropertiesKHR where- unsafeAddr (VkExternalBufferPropertiesKHR## a _) = a-- {-# INLINE unsafeAddr #-}- unsafeByteArray (VkExternalBufferPropertiesKHR## _ b) = b-- {-# INLINE unsafeByteArray #-}- unsafeFromByteArrayOffset off b- = VkExternalBufferPropertiesKHR##- (plusAddr## (byteArrayContents## b) off)- b-- {-# INLINE unsafeFromByteArrayOffset #-}--instance VulkanMarshal VkExternalBufferPropertiesKHR where- type StructFields VkExternalBufferPropertiesKHR =- '["sType", "pNext", "externalMemoryProperties"] -- ' closing tick for hsc2hs- type CUnionType VkExternalBufferPropertiesKHR = 'False -- ' closing tick for hsc2hs- type ReturnedOnly VkExternalBufferPropertiesKHR = 'True -- ' closing tick for hsc2hs- type StructExtends VkExternalBufferPropertiesKHR = '[] -- ' closing tick for hsc2hs--instance {-# OVERLAPPING #-}- HasVkSType VkExternalBufferPropertiesKHR where- type VkSTypeMType VkExternalBufferPropertiesKHR = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExternalBufferPropertiesKHR, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkExternalBufferPropertiesKHR, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkExternalBufferPropertiesKHR, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkExternalBufferPropertiesKHR, sType}--instance {-# OVERLAPPING #-}- HasField "sType" VkExternalBufferPropertiesKHR where- type FieldType "sType" VkExternalBufferPropertiesKHR =- VkStructureType- type FieldOptional "sType" VkExternalBufferPropertiesKHR = 'False -- ' closing tick for hsc2hs- type FieldOffset "sType" VkExternalBufferPropertiesKHR =- #{offset VkExternalBufferPropertiesKHR, sType}- type FieldIsArray "sType" VkExternalBufferPropertiesKHR = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkExternalBufferPropertiesKHR, sType}--instance CanReadField "sType" VkExternalBufferPropertiesKHR where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance {-# OVERLAPPING #-}- HasVkPNext VkExternalBufferPropertiesKHR where- type VkPNextMType VkExternalBufferPropertiesKHR = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExternalBufferPropertiesKHR, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkExternalBufferPropertiesKHR, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkExternalBufferPropertiesKHR, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkExternalBufferPropertiesKHR, pNext}--instance {-# OVERLAPPING #-}- HasField "pNext" VkExternalBufferPropertiesKHR where- type FieldType "pNext" VkExternalBufferPropertiesKHR = Ptr Void- type FieldOptional "pNext" VkExternalBufferPropertiesKHR = 'False -- ' closing tick for hsc2hs- type FieldOffset "pNext" VkExternalBufferPropertiesKHR =- #{offset VkExternalBufferPropertiesKHR, pNext}- type FieldIsArray "pNext" VkExternalBufferPropertiesKHR = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkExternalBufferPropertiesKHR, pNext}--instance CanReadField "pNext" VkExternalBufferPropertiesKHR where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance {-# OVERLAPPING #-}- HasVkExternalMemoryProperties VkExternalBufferPropertiesKHR where- type VkExternalMemoryPropertiesMType VkExternalBufferPropertiesKHR- = VkExternalMemoryPropertiesKHR-- {-# NOINLINE vkExternalMemoryProperties #-}- vkExternalMemoryProperties x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExternalBufferPropertiesKHR, externalMemoryProperties})-- {-# INLINE vkExternalMemoryPropertiesByteOffset #-}- vkExternalMemoryPropertiesByteOffset ~_- = #{offset VkExternalBufferPropertiesKHR, externalMemoryProperties}-- {-# INLINE readVkExternalMemoryProperties #-}- readVkExternalMemoryProperties p- = peekByteOff p #{offset VkExternalBufferPropertiesKHR, externalMemoryProperties}-- {-# INLINE writeVkExternalMemoryProperties #-}- writeVkExternalMemoryProperties p- = pokeByteOff p #{offset VkExternalBufferPropertiesKHR, externalMemoryProperties}--instance {-# OVERLAPPING #-}- HasField "externalMemoryProperties" VkExternalBufferPropertiesKHR- where- type FieldType "externalMemoryProperties"- VkExternalBufferPropertiesKHR- = VkExternalMemoryPropertiesKHR- type FieldOptional "externalMemoryProperties"- VkExternalBufferPropertiesKHR- = 'False -- ' closing tick for hsc2hs- type FieldOffset "externalMemoryProperties"- VkExternalBufferPropertiesKHR- =- #{offset VkExternalBufferPropertiesKHR, externalMemoryProperties}- type FieldIsArray "externalMemoryProperties"- VkExternalBufferPropertiesKHR- = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkExternalBufferPropertiesKHR, externalMemoryProperties}--instance CanReadField "externalMemoryProperties"- VkExternalBufferPropertiesKHR- where- {-# INLINE getField #-}- getField = vkExternalMemoryProperties-- {-# INLINE readField #-}- readField = readVkExternalMemoryProperties--instance Show VkExternalBufferPropertiesKHR where- showsPrec d x- = showString "VkExternalBufferPropertiesKHR {" .- showString "vkSType = " .- showsPrec d (vkSType x) .- showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .- showString ", " .- showString "vkExternalMemoryProperties = " .- showsPrec d (vkExternalMemoryProperties x) . showChar '}'
@@ -0,0 +1,284 @@+#include "vulkan/vulkan.h"++{-# LANGUAGE DataKinds #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-}+{-# LANGUAGE TypeFamilies #-}+module Graphics.Vulkan.Types.Struct.VkExternalFenceProperties+ (VkExternalFenceProperties(..)) where+import Foreign.Storable (Storable (..))+import GHC.Prim+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Marshal.Internal+import Graphics.Vulkan.Types.Enum.VkExternalFenceFeatureFlags (VkExternalFenceFeatureFlags)+import Graphics.Vulkan.Types.Enum.VkExternalFenceHandleTypeFlags (VkExternalFenceHandleTypeFlags)+import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)+import System.IO.Unsafe (unsafeDupablePerformIO)++-- | > typedef struct VkExternalFenceProperties {+-- > VkStructureType sType;+-- > void* pNext;+-- > VkExternalFenceHandleTypeFlags exportFromImportedHandleTypes;+-- > VkExternalFenceHandleTypeFlags compatibleHandleTypes;+-- > VkExternalFenceFeatureFlags externalFenceFeatures;+-- > } VkExternalFenceProperties;+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkExternalFenceProperties.html VkExternalFenceProperties registry at www.khronos.org>+data VkExternalFenceProperties = VkExternalFenceProperties## Addr##+ ByteArray##++instance Eq VkExternalFenceProperties where+ (VkExternalFenceProperties## a _) ==+ x@(VkExternalFenceProperties## b _) = EQ == cmpBytes## (sizeOf x) a b++ {-# INLINE (==) #-}++instance Ord VkExternalFenceProperties where+ (VkExternalFenceProperties## a _) `compare`+ x@(VkExternalFenceProperties## b _) = cmpBytes## (sizeOf x) a b++ {-# INLINE compare #-}++instance Storable VkExternalFenceProperties where+ sizeOf ~_ = #{size VkExternalFenceProperties}++ {-# INLINE sizeOf #-}+ alignment ~_ = #{alignment VkExternalFenceProperties}++ {-# INLINE alignment #-}+ peek = peekVkData##++ {-# INLINE peek #-}+ poke = pokeVkData##++ {-# INLINE poke #-}++instance VulkanMarshalPrim VkExternalFenceProperties where+ unsafeAddr (VkExternalFenceProperties## a _) = a++ {-# INLINE unsafeAddr #-}+ unsafeByteArray (VkExternalFenceProperties## _ b) = b++ {-# INLINE unsafeByteArray #-}+ unsafeFromByteArrayOffset off b+ = VkExternalFenceProperties## (plusAddr## (byteArrayContents## b) off)+ b++ {-# INLINE unsafeFromByteArrayOffset #-}++instance VulkanMarshal VkExternalFenceProperties where+ type StructFields VkExternalFenceProperties =+ '["sType", "pNext", "exportFromImportedHandleTypes", -- ' closing tick for hsc2hs+ "compatibleHandleTypes", "externalFenceFeatures"]+ type CUnionType VkExternalFenceProperties = 'False -- ' closing tick for hsc2hs+ type ReturnedOnly VkExternalFenceProperties = 'True -- ' closing tick for hsc2hs+ type StructExtends VkExternalFenceProperties = '[] -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-}+ HasField "sType" VkExternalFenceProperties where+ type FieldType "sType" VkExternalFenceProperties = VkStructureType+ type FieldOptional "sType" VkExternalFenceProperties = 'False -- ' closing tick for hsc2hs+ type FieldOffset "sType" VkExternalFenceProperties =+ #{offset VkExternalFenceProperties, sType}+ type FieldIsArray "sType" VkExternalFenceProperties = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkExternalFenceProperties, sType}++instance {-# OVERLAPPING #-}+ CanReadField "sType" VkExternalFenceProperties where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExternalFenceProperties, sType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExternalFenceProperties, sType}++instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkExternalFenceProperties where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExternalFenceProperties, sType}++instance {-# OVERLAPPING #-}+ HasField "pNext" VkExternalFenceProperties where+ type FieldType "pNext" VkExternalFenceProperties = Ptr Void+ type FieldOptional "pNext" VkExternalFenceProperties = 'False -- ' closing tick for hsc2hs+ type FieldOffset "pNext" VkExternalFenceProperties =+ #{offset VkExternalFenceProperties, pNext}+ type FieldIsArray "pNext" VkExternalFenceProperties = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkExternalFenceProperties, pNext}++instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkExternalFenceProperties where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExternalFenceProperties, pNext})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExternalFenceProperties, pNext}++instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkExternalFenceProperties where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExternalFenceProperties, pNext}++instance {-# OVERLAPPING #-}+ HasField "exportFromImportedHandleTypes" VkExternalFenceProperties+ where+ type FieldType "exportFromImportedHandleTypes"+ VkExternalFenceProperties+ = VkExternalFenceHandleTypeFlags+ type FieldOptional "exportFromImportedHandleTypes"+ VkExternalFenceProperties+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "exportFromImportedHandleTypes"+ VkExternalFenceProperties+ =+ #{offset VkExternalFenceProperties, exportFromImportedHandleTypes}+ type FieldIsArray "exportFromImportedHandleTypes"+ VkExternalFenceProperties+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkExternalFenceProperties, exportFromImportedHandleTypes}++instance {-# OVERLAPPING #-}+ CanReadField "exportFromImportedHandleTypes"+ VkExternalFenceProperties+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExternalFenceProperties, exportFromImportedHandleTypes})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExternalFenceProperties, exportFromImportedHandleTypes}++instance {-# OVERLAPPING #-}+ CanWriteField "exportFromImportedHandleTypes"+ VkExternalFenceProperties+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExternalFenceProperties, exportFromImportedHandleTypes}++instance {-# OVERLAPPING #-}+ HasField "compatibleHandleTypes" VkExternalFenceProperties where+ type FieldType "compatibleHandleTypes" VkExternalFenceProperties =+ VkExternalFenceHandleTypeFlags+ type FieldOptional "compatibleHandleTypes"+ VkExternalFenceProperties+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "compatibleHandleTypes" VkExternalFenceProperties+ =+ #{offset VkExternalFenceProperties, compatibleHandleTypes}+ type FieldIsArray "compatibleHandleTypes" VkExternalFenceProperties+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkExternalFenceProperties, compatibleHandleTypes}++instance {-# OVERLAPPING #-}+ CanReadField "compatibleHandleTypes" VkExternalFenceProperties+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExternalFenceProperties, compatibleHandleTypes})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExternalFenceProperties, compatibleHandleTypes}++instance {-# OVERLAPPING #-}+ CanWriteField "compatibleHandleTypes" VkExternalFenceProperties+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExternalFenceProperties, compatibleHandleTypes}++instance {-# OVERLAPPING #-}+ HasField "externalFenceFeatures" VkExternalFenceProperties where+ type FieldType "externalFenceFeatures" VkExternalFenceProperties =+ VkExternalFenceFeatureFlags+ type FieldOptional "externalFenceFeatures"+ VkExternalFenceProperties+ = 'True -- ' closing tick for hsc2hs+ type FieldOffset "externalFenceFeatures" VkExternalFenceProperties+ =+ #{offset VkExternalFenceProperties, externalFenceFeatures}+ type FieldIsArray "externalFenceFeatures" VkExternalFenceProperties+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = True++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkExternalFenceProperties, externalFenceFeatures}++instance {-# OVERLAPPING #-}+ CanReadField "externalFenceFeatures" VkExternalFenceProperties+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExternalFenceProperties, externalFenceFeatures})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExternalFenceProperties, externalFenceFeatures}++instance {-# OVERLAPPING #-}+ CanWriteField "externalFenceFeatures" VkExternalFenceProperties+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExternalFenceProperties, externalFenceFeatures}++instance Show VkExternalFenceProperties where+ showsPrec d x+ = showString "VkExternalFenceProperties {" .+ showString "sType = " .+ showsPrec d (getField @"sType" x) .+ showString ", " .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) .+ showString ", " .+ showString "exportFromImportedHandleTypes = " .+ showsPrec d (getField @"exportFromImportedHandleTypes" x) .+ showString ", " .+ showString "compatibleHandleTypes = " .+ showsPrec d (getField @"compatibleHandleTypes" x) .+ showString ", " .+ showString "externalFenceFeatures = " .+ showsPrec d (getField @"externalFenceFeatures" x) .+ showChar '}'
@@ -0,0 +1,8 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Types.Struct.VkExternalFencePropertiesKHR+ (VkExternalFenceProperties(..), VkExternalFencePropertiesKHR) where+import Graphics.Vulkan.Types.Struct.VkExternalFenceProperties (VkExternalFenceProperties (..))++-- | Alias for `VkExternalFenceProperties`+type VkExternalFencePropertiesKHR = VkExternalFenceProperties
@@ -1,350 +0,0 @@-#include "vulkan/vulkan.h"--{-# LANGUAGE DataKinds #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE MagicHash #-}-{-# LANGUAGE MultiParamTypeClasses #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE TypeFamilies #-}-module Graphics.Vulkan.Types.Struct.VkExternalFencePropertiesKHR- (VkExternalFencePropertiesKHR(..)) where-import Foreign.Storable (Storable (..))-import GHC.Prim-import Graphics.Vulkan.Marshal-import Graphics.Vulkan.Marshal.Internal-import Graphics.Vulkan.Types.Enum.VkExternalFenceFeatureFlagsKHR (VkExternalFenceFeatureFlagsKHR)-import Graphics.Vulkan.Types.Enum.VkExternalFenceHandleTypeFlagsKHR (VkExternalFenceHandleTypeFlagsKHR)-import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)-import Graphics.Vulkan.Types.StructMembers-import System.IO.Unsafe (unsafeDupablePerformIO)---- | > typedef struct VkExternalFencePropertiesKHR {--- > VkStructureType sType;--- > void* pNext;--- > VkExternalFenceHandleTypeFlagsKHR exportFromImportedHandleTypes;--- > VkExternalFenceHandleTypeFlagsKHR compatibleHandleTypes;--- > VkExternalFenceFeatureFlagsKHR externalFenceFeatures;--- > } VkExternalFencePropertiesKHR;------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkExternalFencePropertiesKHR.html VkExternalFencePropertiesKHR registry at www.khronos.org>-data VkExternalFencePropertiesKHR = VkExternalFencePropertiesKHR## Addr##- ByteArray##--instance Eq VkExternalFencePropertiesKHR where- (VkExternalFencePropertiesKHR## a _) ==- x@(VkExternalFencePropertiesKHR## b _)- = EQ == cmpBytes## (sizeOf x) a b-- {-# INLINE (==) #-}--instance Ord VkExternalFencePropertiesKHR where- (VkExternalFencePropertiesKHR## a _) `compare`- x@(VkExternalFencePropertiesKHR## b _) = cmpBytes## (sizeOf x) a b-- {-# INLINE compare #-}--instance Storable VkExternalFencePropertiesKHR where- sizeOf ~_ = #{size VkExternalFencePropertiesKHR}-- {-# INLINE sizeOf #-}- alignment ~_- = #{alignment VkExternalFencePropertiesKHR}-- {-# INLINE alignment #-}- peek = peekVkData##-- {-# INLINE peek #-}- poke = pokeVkData##-- {-# INLINE poke #-}--instance VulkanMarshalPrim VkExternalFencePropertiesKHR where- unsafeAddr (VkExternalFencePropertiesKHR## a _) = a-- {-# INLINE unsafeAddr #-}- unsafeByteArray (VkExternalFencePropertiesKHR## _ b) = b-- {-# INLINE unsafeByteArray #-}- unsafeFromByteArrayOffset off b- = VkExternalFencePropertiesKHR##- (plusAddr## (byteArrayContents## b) off)- b-- {-# INLINE unsafeFromByteArrayOffset #-}--instance VulkanMarshal VkExternalFencePropertiesKHR where- type StructFields VkExternalFencePropertiesKHR =- '["sType", "pNext", "exportFromImportedHandleTypes", -- ' closing tick for hsc2hs- "compatibleHandleTypes", "externalFenceFeatures"]- type CUnionType VkExternalFencePropertiesKHR = 'False -- ' closing tick for hsc2hs- type ReturnedOnly VkExternalFencePropertiesKHR = 'True -- ' closing tick for hsc2hs- type StructExtends VkExternalFencePropertiesKHR = '[] -- ' closing tick for hsc2hs--instance {-# OVERLAPPING #-}- HasVkSType VkExternalFencePropertiesKHR where- type VkSTypeMType VkExternalFencePropertiesKHR = VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExternalFencePropertiesKHR, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkExternalFencePropertiesKHR, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkExternalFencePropertiesKHR, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkExternalFencePropertiesKHR, sType}--instance {-# OVERLAPPING #-}- HasField "sType" VkExternalFencePropertiesKHR where- type FieldType "sType" VkExternalFencePropertiesKHR =- VkStructureType- type FieldOptional "sType" VkExternalFencePropertiesKHR = 'False -- ' closing tick for hsc2hs- type FieldOffset "sType" VkExternalFencePropertiesKHR =- #{offset VkExternalFencePropertiesKHR, sType}- type FieldIsArray "sType" VkExternalFencePropertiesKHR = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkExternalFencePropertiesKHR, sType}--instance CanReadField "sType" VkExternalFencePropertiesKHR where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance {-# OVERLAPPING #-}- HasVkPNext VkExternalFencePropertiesKHR where- type VkPNextMType VkExternalFencePropertiesKHR = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExternalFencePropertiesKHR, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkExternalFencePropertiesKHR, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkExternalFencePropertiesKHR, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkExternalFencePropertiesKHR, pNext}--instance {-# OVERLAPPING #-}- HasField "pNext" VkExternalFencePropertiesKHR where- type FieldType "pNext" VkExternalFencePropertiesKHR = Ptr Void- type FieldOptional "pNext" VkExternalFencePropertiesKHR = 'False -- ' closing tick for hsc2hs- type FieldOffset "pNext" VkExternalFencePropertiesKHR =- #{offset VkExternalFencePropertiesKHR, pNext}- type FieldIsArray "pNext" VkExternalFencePropertiesKHR = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkExternalFencePropertiesKHR, pNext}--instance CanReadField "pNext" VkExternalFencePropertiesKHR where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance {-# OVERLAPPING #-}- HasVkExportFromImportedHandleTypes VkExternalFencePropertiesKHR- where- type VkExportFromImportedHandleTypesMType- VkExternalFencePropertiesKHR- = VkExternalFenceHandleTypeFlagsKHR-- {-# NOINLINE vkExportFromImportedHandleTypes #-}- vkExportFromImportedHandleTypes x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExternalFencePropertiesKHR, exportFromImportedHandleTypes})-- {-# INLINE vkExportFromImportedHandleTypesByteOffset #-}- vkExportFromImportedHandleTypesByteOffset ~_- = #{offset VkExternalFencePropertiesKHR, exportFromImportedHandleTypes}-- {-# INLINE readVkExportFromImportedHandleTypes #-}- readVkExportFromImportedHandleTypes p- = peekByteOff p #{offset VkExternalFencePropertiesKHR, exportFromImportedHandleTypes}-- {-# INLINE writeVkExportFromImportedHandleTypes #-}- writeVkExportFromImportedHandleTypes p- = pokeByteOff p #{offset VkExternalFencePropertiesKHR, exportFromImportedHandleTypes}--instance {-# OVERLAPPING #-}- HasField "exportFromImportedHandleTypes"- VkExternalFencePropertiesKHR- where- type FieldType "exportFromImportedHandleTypes"- VkExternalFencePropertiesKHR- = VkExternalFenceHandleTypeFlagsKHR- type FieldOptional "exportFromImportedHandleTypes"- VkExternalFencePropertiesKHR- = 'False -- ' closing tick for hsc2hs- type FieldOffset "exportFromImportedHandleTypes"- VkExternalFencePropertiesKHR- =- #{offset VkExternalFencePropertiesKHR, exportFromImportedHandleTypes}- type FieldIsArray "exportFromImportedHandleTypes"- VkExternalFencePropertiesKHR- = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkExternalFencePropertiesKHR, exportFromImportedHandleTypes}--instance CanReadField "exportFromImportedHandleTypes"- VkExternalFencePropertiesKHR- where- {-# INLINE getField #-}- getField = vkExportFromImportedHandleTypes-- {-# INLINE readField #-}- readField = readVkExportFromImportedHandleTypes--instance {-# OVERLAPPING #-}- HasVkCompatibleHandleTypes VkExternalFencePropertiesKHR where- type VkCompatibleHandleTypesMType VkExternalFencePropertiesKHR =- VkExternalFenceHandleTypeFlagsKHR-- {-# NOINLINE vkCompatibleHandleTypes #-}- vkCompatibleHandleTypes x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExternalFencePropertiesKHR, compatibleHandleTypes})-- {-# INLINE vkCompatibleHandleTypesByteOffset #-}- vkCompatibleHandleTypesByteOffset ~_- = #{offset VkExternalFencePropertiesKHR, compatibleHandleTypes}-- {-# INLINE readVkCompatibleHandleTypes #-}- readVkCompatibleHandleTypes p- = peekByteOff p #{offset VkExternalFencePropertiesKHR, compatibleHandleTypes}-- {-# INLINE writeVkCompatibleHandleTypes #-}- writeVkCompatibleHandleTypes p- = pokeByteOff p #{offset VkExternalFencePropertiesKHR, compatibleHandleTypes}--instance {-# OVERLAPPING #-}- HasField "compatibleHandleTypes" VkExternalFencePropertiesKHR where- type FieldType "compatibleHandleTypes" VkExternalFencePropertiesKHR- = VkExternalFenceHandleTypeFlagsKHR- type FieldOptional "compatibleHandleTypes"- VkExternalFencePropertiesKHR- = 'False -- ' closing tick for hsc2hs- type FieldOffset "compatibleHandleTypes"- VkExternalFencePropertiesKHR- =- #{offset VkExternalFencePropertiesKHR, compatibleHandleTypes}- type FieldIsArray "compatibleHandleTypes"- VkExternalFencePropertiesKHR- = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkExternalFencePropertiesKHR, compatibleHandleTypes}--instance CanReadField "compatibleHandleTypes"- VkExternalFencePropertiesKHR- where- {-# INLINE getField #-}- getField = vkCompatibleHandleTypes-- {-# INLINE readField #-}- readField = readVkCompatibleHandleTypes--instance {-# OVERLAPPING #-}- HasVkExternalFenceFeatures VkExternalFencePropertiesKHR where- type VkExternalFenceFeaturesMType VkExternalFencePropertiesKHR =- VkExternalFenceFeatureFlagsKHR-- {-# NOINLINE vkExternalFenceFeatures #-}- vkExternalFenceFeatures x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExternalFencePropertiesKHR, externalFenceFeatures})-- {-# INLINE vkExternalFenceFeaturesByteOffset #-}- vkExternalFenceFeaturesByteOffset ~_- = #{offset VkExternalFencePropertiesKHR, externalFenceFeatures}-- {-# INLINE readVkExternalFenceFeatures #-}- readVkExternalFenceFeatures p- = peekByteOff p #{offset VkExternalFencePropertiesKHR, externalFenceFeatures}-- {-# INLINE writeVkExternalFenceFeatures #-}- writeVkExternalFenceFeatures p- = pokeByteOff p #{offset VkExternalFencePropertiesKHR, externalFenceFeatures}--instance {-# OVERLAPPING #-}- HasField "externalFenceFeatures" VkExternalFencePropertiesKHR where- type FieldType "externalFenceFeatures" VkExternalFencePropertiesKHR- = VkExternalFenceFeatureFlagsKHR- type FieldOptional "externalFenceFeatures"- VkExternalFencePropertiesKHR- = 'True -- ' closing tick for hsc2hs- type FieldOffset "externalFenceFeatures"- VkExternalFencePropertiesKHR- =- #{offset VkExternalFencePropertiesKHR, externalFenceFeatures}- type FieldIsArray "externalFenceFeatures"- VkExternalFencePropertiesKHR- = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = True-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkExternalFencePropertiesKHR, externalFenceFeatures}--instance CanReadField "externalFenceFeatures"- VkExternalFencePropertiesKHR- where- {-# INLINE getField #-}- getField = vkExternalFenceFeatures-- {-# INLINE readField #-}- readField = readVkExternalFenceFeatures--instance Show VkExternalFencePropertiesKHR where- showsPrec d x- = showString "VkExternalFencePropertiesKHR {" .- showString "vkSType = " .- showsPrec d (vkSType x) .- showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .- showString ", " .- showString "vkExportFromImportedHandleTypes = " .- showsPrec d (vkExportFromImportedHandleTypes x) .- showString ", " .- showString "vkCompatibleHandleTypes = " .- showsPrec d (vkCompatibleHandleTypes x) .- showString ", " .- showString "vkExternalFenceFeatures = " .- showsPrec d (vkExternalFenceFeatures x) . showChar '}'
@@ -0,0 +1,182 @@+#include "vulkan/vulkan.h"++{-# LANGUAGE DataKinds #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-}+{-# LANGUAGE TypeFamilies #-}+module Graphics.Vulkan.Types.Struct.VkExternalFormatANDROID+ (VkExternalFormatANDROID(..)) where+import Foreign.Storable (Storable (..))+import GHC.Prim+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Marshal.Internal+import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)+import Graphics.Vulkan.Types.Struct.VkImageCreateInfo (VkImageCreateInfo)+import Graphics.Vulkan.Types.Struct.VkSamplerYcbcrConversionCreateInfo (VkSamplerYcbcrConversionCreateInfo)+import System.IO.Unsafe (unsafeDupablePerformIO)++-- | > typedef struct VkExternalFormatANDROID {+-- > VkStructureType sType;+-- > void* pNext;+-- > uint64_t externalFormat;+-- > } VkExternalFormatANDROID;+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkExternalFormatANDROID.html VkExternalFormatANDROID registry at www.khronos.org>+data VkExternalFormatANDROID = VkExternalFormatANDROID## Addr##+ ByteArray##++instance Eq VkExternalFormatANDROID where+ (VkExternalFormatANDROID## a _) == x@(VkExternalFormatANDROID## b _)+ = EQ == cmpBytes## (sizeOf x) a b++ {-# INLINE (==) #-}++instance Ord VkExternalFormatANDROID where+ (VkExternalFormatANDROID## a _) `compare`+ x@(VkExternalFormatANDROID## b _) = cmpBytes## (sizeOf x) a b++ {-# INLINE compare #-}++instance Storable VkExternalFormatANDROID where+ sizeOf ~_ = #{size VkExternalFormatANDROID}++ {-# INLINE sizeOf #-}+ alignment ~_ = #{alignment VkExternalFormatANDROID}++ {-# INLINE alignment #-}+ peek = peekVkData##++ {-# INLINE peek #-}+ poke = pokeVkData##++ {-# INLINE poke #-}++instance VulkanMarshalPrim VkExternalFormatANDROID where+ unsafeAddr (VkExternalFormatANDROID## a _) = a++ {-# INLINE unsafeAddr #-}+ unsafeByteArray (VkExternalFormatANDROID## _ b) = b++ {-# INLINE unsafeByteArray #-}+ unsafeFromByteArrayOffset off b+ = VkExternalFormatANDROID## (plusAddr## (byteArrayContents## b) off) b++ {-# INLINE unsafeFromByteArrayOffset #-}++instance VulkanMarshal VkExternalFormatANDROID where+ type StructFields VkExternalFormatANDROID =+ '["sType", "pNext", "externalFormat"] -- ' closing tick for hsc2hs+ type CUnionType VkExternalFormatANDROID = 'False -- ' closing tick for hsc2hs+ type ReturnedOnly VkExternalFormatANDROID = 'False -- ' closing tick for hsc2hs+ type StructExtends VkExternalFormatANDROID =+ '[VkImageCreateInfo, VkSamplerYcbcrConversionCreateInfo] -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-}+ HasField "sType" VkExternalFormatANDROID where+ type FieldType "sType" VkExternalFormatANDROID = VkStructureType+ type FieldOptional "sType" VkExternalFormatANDROID = 'False -- ' closing tick for hsc2hs+ type FieldOffset "sType" VkExternalFormatANDROID =+ #{offset VkExternalFormatANDROID, sType}+ type FieldIsArray "sType" VkExternalFormatANDROID = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset = #{offset VkExternalFormatANDROID, sType}++instance {-# OVERLAPPING #-}+ CanReadField "sType" VkExternalFormatANDROID where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExternalFormatANDROID, sType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExternalFormatANDROID, sType}++instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkExternalFormatANDROID where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExternalFormatANDROID, sType}++instance {-# OVERLAPPING #-}+ HasField "pNext" VkExternalFormatANDROID where+ type FieldType "pNext" VkExternalFormatANDROID = Ptr Void+ type FieldOptional "pNext" VkExternalFormatANDROID = 'False -- ' closing tick for hsc2hs+ type FieldOffset "pNext" VkExternalFormatANDROID =+ #{offset VkExternalFormatANDROID, pNext}+ type FieldIsArray "pNext" VkExternalFormatANDROID = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset = #{offset VkExternalFormatANDROID, pNext}++instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkExternalFormatANDROID where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExternalFormatANDROID, pNext})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExternalFormatANDROID, pNext}++instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkExternalFormatANDROID where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExternalFormatANDROID, pNext}++instance {-# OVERLAPPING #-}+ HasField "externalFormat" VkExternalFormatANDROID where+ type FieldType "externalFormat" VkExternalFormatANDROID = Word64+ type FieldOptional "externalFormat" VkExternalFormatANDROID =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "externalFormat" VkExternalFormatANDROID =+ #{offset VkExternalFormatANDROID, externalFormat}+ type FieldIsArray "externalFormat" VkExternalFormatANDROID = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkExternalFormatANDROID, externalFormat}++instance {-# OVERLAPPING #-}+ CanReadField "externalFormat" VkExternalFormatANDROID where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExternalFormatANDROID, externalFormat})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExternalFormatANDROID, externalFormat}++instance {-# OVERLAPPING #-}+ CanWriteField "externalFormat" VkExternalFormatANDROID where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExternalFormatANDROID, externalFormat}++instance Show VkExternalFormatANDROID where+ showsPrec d x+ = showString "VkExternalFormatANDROID {" .+ showString "sType = " .+ showsPrec d (getField @"sType" x) .+ showString ", " .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) .+ showString ", " .+ showString "externalFormat = " .+ showsPrec d (getField @"externalFormat" x) . showChar '}'
@@ -0,0 +1,201 @@+#include "vulkan/vulkan.h"++{-# LANGUAGE DataKinds #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-}+{-# LANGUAGE TypeFamilies #-}+module Graphics.Vulkan.Types.Struct.VkExternalImageFormatProperties+ (VkExternalImageFormatProperties(..)) where+import Foreign.Storable (Storable (..))+import GHC.Prim+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Marshal.Internal+import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)+import Graphics.Vulkan.Types.Struct.VkExternalMemoryProperties (VkExternalMemoryProperties)+import Graphics.Vulkan.Types.Struct.VkImageFormatProperties2 (VkImageFormatProperties2)+import System.IO.Unsafe (unsafeDupablePerformIO)++-- | > typedef struct VkExternalImageFormatProperties {+-- > VkStructureType sType;+-- > void* pNext;+-- > VkExternalMemoryProperties externalMemoryProperties;+-- > } VkExternalImageFormatProperties;+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkExternalImageFormatProperties.html VkExternalImageFormatProperties registry at www.khronos.org>+data VkExternalImageFormatProperties = VkExternalImageFormatProperties## Addr##+ ByteArray##++instance Eq VkExternalImageFormatProperties where+ (VkExternalImageFormatProperties## a _) ==+ x@(VkExternalImageFormatProperties## b _)+ = EQ == cmpBytes## (sizeOf x) a b++ {-# INLINE (==) #-}++instance Ord VkExternalImageFormatProperties where+ (VkExternalImageFormatProperties## a _) `compare`+ x@(VkExternalImageFormatProperties## b _) = cmpBytes## (sizeOf x) a b++ {-# INLINE compare #-}++instance Storable VkExternalImageFormatProperties where+ sizeOf ~_ = #{size VkExternalImageFormatProperties}++ {-# INLINE sizeOf #-}+ alignment ~_+ = #{alignment VkExternalImageFormatProperties}++ {-# INLINE alignment #-}+ peek = peekVkData##++ {-# INLINE peek #-}+ poke = pokeVkData##++ {-# INLINE poke #-}++instance VulkanMarshalPrim VkExternalImageFormatProperties where+ unsafeAddr (VkExternalImageFormatProperties## a _) = a++ {-# INLINE unsafeAddr #-}+ unsafeByteArray (VkExternalImageFormatProperties## _ b) = b++ {-# INLINE unsafeByteArray #-}+ unsafeFromByteArrayOffset off b+ = VkExternalImageFormatProperties##+ (plusAddr## (byteArrayContents## b) off)+ b++ {-# INLINE unsafeFromByteArrayOffset #-}++instance VulkanMarshal VkExternalImageFormatProperties where+ type StructFields VkExternalImageFormatProperties =+ '["sType", "pNext", "externalMemoryProperties"] -- ' closing tick for hsc2hs+ type CUnionType VkExternalImageFormatProperties = 'False -- ' closing tick for hsc2hs+ type ReturnedOnly VkExternalImageFormatProperties = 'True -- ' closing tick for hsc2hs+ type StructExtends VkExternalImageFormatProperties =+ '[VkImageFormatProperties2] -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-}+ HasField "sType" VkExternalImageFormatProperties where+ type FieldType "sType" VkExternalImageFormatProperties =+ VkStructureType+ type FieldOptional "sType" VkExternalImageFormatProperties = 'False -- ' closing tick for hsc2hs+ type FieldOffset "sType" VkExternalImageFormatProperties =+ #{offset VkExternalImageFormatProperties, sType}+ type FieldIsArray "sType" VkExternalImageFormatProperties = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkExternalImageFormatProperties, sType}++instance {-# OVERLAPPING #-}+ CanReadField "sType" VkExternalImageFormatProperties where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExternalImageFormatProperties, sType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExternalImageFormatProperties, sType}++instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkExternalImageFormatProperties where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExternalImageFormatProperties, sType}++instance {-# OVERLAPPING #-}+ HasField "pNext" VkExternalImageFormatProperties where+ type FieldType "pNext" VkExternalImageFormatProperties = Ptr Void+ type FieldOptional "pNext" VkExternalImageFormatProperties = 'False -- ' closing tick for hsc2hs+ type FieldOffset "pNext" VkExternalImageFormatProperties =+ #{offset VkExternalImageFormatProperties, pNext}+ type FieldIsArray "pNext" VkExternalImageFormatProperties = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkExternalImageFormatProperties, pNext}++instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkExternalImageFormatProperties where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExternalImageFormatProperties, pNext})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExternalImageFormatProperties, pNext}++instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkExternalImageFormatProperties where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExternalImageFormatProperties, pNext}++instance {-# OVERLAPPING #-}+ HasField "externalMemoryProperties" VkExternalImageFormatProperties+ where+ type FieldType "externalMemoryProperties"+ VkExternalImageFormatProperties+ = VkExternalMemoryProperties+ type FieldOptional "externalMemoryProperties"+ VkExternalImageFormatProperties+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "externalMemoryProperties"+ VkExternalImageFormatProperties+ =+ #{offset VkExternalImageFormatProperties, externalMemoryProperties}+ type FieldIsArray "externalMemoryProperties"+ VkExternalImageFormatProperties+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkExternalImageFormatProperties, externalMemoryProperties}++instance {-# OVERLAPPING #-}+ CanReadField "externalMemoryProperties"+ VkExternalImageFormatProperties+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExternalImageFormatProperties, externalMemoryProperties})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExternalImageFormatProperties, externalMemoryProperties}++instance {-# OVERLAPPING #-}+ CanWriteField "externalMemoryProperties"+ VkExternalImageFormatProperties+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExternalImageFormatProperties, externalMemoryProperties}++instance Show VkExternalImageFormatProperties where+ showsPrec d x+ = showString "VkExternalImageFormatProperties {" .+ showString "sType = " .+ showsPrec d (getField @"sType" x) .+ showString ", " .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) .+ showString ", " .+ showString "externalMemoryProperties = " .+ showsPrec d (getField @"externalMemoryProperties" x) . showChar '}'
@@ -0,0 +1,11 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Types.Struct.VkExternalImageFormatPropertiesKHR+ (VkExternalImageFormatProperties(..),+ VkExternalImageFormatPropertiesKHR)+ where+import Graphics.Vulkan.Types.Struct.VkExternalImageFormatProperties (VkExternalImageFormatProperties (..))++-- | Alias for `VkExternalImageFormatProperties`+type VkExternalImageFormatPropertiesKHR =+ VkExternalImageFormatProperties
@@ -1,245 +0,0 @@-#include "vulkan/vulkan.h"--{-# LANGUAGE DataKinds #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE MagicHash #-}-{-# LANGUAGE MultiParamTypeClasses #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE TypeFamilies #-}-module Graphics.Vulkan.Types.Struct.VkExternalImageFormatPropertiesKHR- (VkExternalImageFormatPropertiesKHR(..)) where-import Foreign.Storable (Storable (..))-import GHC.Prim-import Graphics.Vulkan.Marshal-import Graphics.Vulkan.Marshal.Internal-import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)-import Graphics.Vulkan.Types.Struct.VkExternalMemoryPropertiesKHR (VkExternalMemoryPropertiesKHR)-import Graphics.Vulkan.Types.Struct.VkImageFormatProperties2KHR (VkImageFormatProperties2KHR)-import Graphics.Vulkan.Types.StructMembers-import System.IO.Unsafe (unsafeDupablePerformIO)---- | > typedef struct VkExternalImageFormatPropertiesKHR {--- > VkStructureType sType;--- > void* pNext;--- > VkExternalMemoryPropertiesKHR externalMemoryProperties;--- > } VkExternalImageFormatPropertiesKHR;------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkExternalImageFormatPropertiesKHR.html VkExternalImageFormatPropertiesKHR registry at www.khronos.org>-data VkExternalImageFormatPropertiesKHR = VkExternalImageFormatPropertiesKHR## Addr##- ByteArray##--instance Eq VkExternalImageFormatPropertiesKHR where- (VkExternalImageFormatPropertiesKHR## a _) ==- x@(VkExternalImageFormatPropertiesKHR## b _)- = EQ == cmpBytes## (sizeOf x) a b-- {-# INLINE (==) #-}--instance Ord VkExternalImageFormatPropertiesKHR where- (VkExternalImageFormatPropertiesKHR## a _) `compare`- x@(VkExternalImageFormatPropertiesKHR## b _)- = cmpBytes## (sizeOf x) a b-- {-# INLINE compare #-}--instance Storable VkExternalImageFormatPropertiesKHR where- sizeOf ~_ = #{size VkExternalImageFormatPropertiesKHR}-- {-# INLINE sizeOf #-}- alignment ~_- = #{alignment VkExternalImageFormatPropertiesKHR}-- {-# INLINE alignment #-}- peek = peekVkData##-- {-# INLINE peek #-}- poke = pokeVkData##-- {-# INLINE poke #-}--instance VulkanMarshalPrim VkExternalImageFormatPropertiesKHR where- unsafeAddr (VkExternalImageFormatPropertiesKHR## a _) = a-- {-# INLINE unsafeAddr #-}- unsafeByteArray (VkExternalImageFormatPropertiesKHR## _ b) = b-- {-# INLINE unsafeByteArray #-}- unsafeFromByteArrayOffset off b- = VkExternalImageFormatPropertiesKHR##- (plusAddr## (byteArrayContents## b) off)- b-- {-# INLINE unsafeFromByteArrayOffset #-}--instance VulkanMarshal VkExternalImageFormatPropertiesKHR where- type StructFields VkExternalImageFormatPropertiesKHR =- '["sType", "pNext", "externalMemoryProperties"] -- ' closing tick for hsc2hs- type CUnionType VkExternalImageFormatPropertiesKHR = 'False -- ' closing tick for hsc2hs- type ReturnedOnly VkExternalImageFormatPropertiesKHR = 'True -- ' closing tick for hsc2hs- type StructExtends VkExternalImageFormatPropertiesKHR =- '[VkImageFormatProperties2KHR] -- ' closing tick for hsc2hs--instance {-# OVERLAPPING #-}- HasVkSType VkExternalImageFormatPropertiesKHR where- type VkSTypeMType VkExternalImageFormatPropertiesKHR =- VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExternalImageFormatPropertiesKHR, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkExternalImageFormatPropertiesKHR, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkExternalImageFormatPropertiesKHR, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkExternalImageFormatPropertiesKHR, sType}--instance {-# OVERLAPPING #-}- HasField "sType" VkExternalImageFormatPropertiesKHR where- type FieldType "sType" VkExternalImageFormatPropertiesKHR =- VkStructureType- type FieldOptional "sType" VkExternalImageFormatPropertiesKHR =- 'False -- ' closing tick for hsc2hs- type FieldOffset "sType" VkExternalImageFormatPropertiesKHR =- #{offset VkExternalImageFormatPropertiesKHR, sType}- type FieldIsArray "sType" VkExternalImageFormatPropertiesKHR =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkExternalImageFormatPropertiesKHR, sType}--instance CanReadField "sType" VkExternalImageFormatPropertiesKHR- where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance {-# OVERLAPPING #-}- HasVkPNext VkExternalImageFormatPropertiesKHR where- type VkPNextMType VkExternalImageFormatPropertiesKHR = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExternalImageFormatPropertiesKHR, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkExternalImageFormatPropertiesKHR, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkExternalImageFormatPropertiesKHR, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkExternalImageFormatPropertiesKHR, pNext}--instance {-# OVERLAPPING #-}- HasField "pNext" VkExternalImageFormatPropertiesKHR where- type FieldType "pNext" VkExternalImageFormatPropertiesKHR =- Ptr Void- type FieldOptional "pNext" VkExternalImageFormatPropertiesKHR =- 'False -- ' closing tick for hsc2hs- type FieldOffset "pNext" VkExternalImageFormatPropertiesKHR =- #{offset VkExternalImageFormatPropertiesKHR, pNext}- type FieldIsArray "pNext" VkExternalImageFormatPropertiesKHR =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkExternalImageFormatPropertiesKHR, pNext}--instance CanReadField "pNext" VkExternalImageFormatPropertiesKHR- where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance {-# OVERLAPPING #-}- HasVkExternalMemoryProperties VkExternalImageFormatPropertiesKHR- where- type VkExternalMemoryPropertiesMType- VkExternalImageFormatPropertiesKHR- = VkExternalMemoryPropertiesKHR-- {-# NOINLINE vkExternalMemoryProperties #-}- vkExternalMemoryProperties x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExternalImageFormatPropertiesKHR, externalMemoryProperties})-- {-# INLINE vkExternalMemoryPropertiesByteOffset #-}- vkExternalMemoryPropertiesByteOffset ~_- = #{offset VkExternalImageFormatPropertiesKHR, externalMemoryProperties}-- {-# INLINE readVkExternalMemoryProperties #-}- readVkExternalMemoryProperties p- = peekByteOff p #{offset VkExternalImageFormatPropertiesKHR, externalMemoryProperties}-- {-# INLINE writeVkExternalMemoryProperties #-}- writeVkExternalMemoryProperties p- = pokeByteOff p #{offset VkExternalImageFormatPropertiesKHR, externalMemoryProperties}--instance {-# OVERLAPPING #-}- HasField "externalMemoryProperties"- VkExternalImageFormatPropertiesKHR- where- type FieldType "externalMemoryProperties"- VkExternalImageFormatPropertiesKHR- = VkExternalMemoryPropertiesKHR- type FieldOptional "externalMemoryProperties"- VkExternalImageFormatPropertiesKHR- = 'False -- ' closing tick for hsc2hs- type FieldOffset "externalMemoryProperties"- VkExternalImageFormatPropertiesKHR- =- #{offset VkExternalImageFormatPropertiesKHR, externalMemoryProperties}- type FieldIsArray "externalMemoryProperties"- VkExternalImageFormatPropertiesKHR- = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkExternalImageFormatPropertiesKHR, externalMemoryProperties}--instance CanReadField "externalMemoryProperties"- VkExternalImageFormatPropertiesKHR- where- {-# INLINE getField #-}- getField = vkExternalMemoryProperties-- {-# INLINE readField #-}- readField = readVkExternalMemoryProperties--instance Show VkExternalImageFormatPropertiesKHR where- showsPrec d x- = showString "VkExternalImageFormatPropertiesKHR {" .- showString "vkSType = " .- showsPrec d (vkSType x) .- showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .- showString ", " .- showString "vkExternalMemoryProperties = " .- showsPrec d (vkExternalMemoryProperties x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkExternalImageFormatPropertiesNV (VkExternalImageFormatPropertiesNV(..)) where@@ -15,7 +16,6 @@ import Graphics.Vulkan.Types.Enum.VkExternalMemoryFeatureFlagsNV (VkExternalMemoryFeatureFlagsNV) import Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlagsNV (VkExternalMemoryHandleTypeFlagsNV) import Graphics.Vulkan.Types.Struct.VkImageFormatProperties (VkImageFormatProperties)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkExternalImageFormatPropertiesNV {@@ -25,7 +25,7 @@ -- > VkExternalMemoryHandleTypeFlagsNV compatibleHandleTypes; -- > } VkExternalImageFormatPropertiesNV; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkExternalImageFormatPropertiesNV.html VkExternalImageFormatPropertiesNV registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkExternalImageFormatPropertiesNV.html VkExternalImageFormatPropertiesNV registry at www.khronos.org> data VkExternalImageFormatPropertiesNV = VkExternalImageFormatPropertiesNV## Addr## ByteArray## @@ -81,28 +81,6 @@ type StructExtends VkExternalImageFormatPropertiesNV = '[] -- ' closing tick for hsc2hs instance {-# OVERLAPPING #-}- HasVkImageFormatProperties VkExternalImageFormatPropertiesNV where- type VkImageFormatPropertiesMType VkExternalImageFormatPropertiesNV- = VkImageFormatProperties-- {-# NOINLINE vkImageFormatProperties #-}- vkImageFormatProperties x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExternalImageFormatPropertiesNV, imageFormatProperties})-- {-# INLINE vkImageFormatPropertiesByteOffset #-}- vkImageFormatPropertiesByteOffset ~_- = #{offset VkExternalImageFormatPropertiesNV, imageFormatProperties}-- {-# INLINE readVkImageFormatProperties #-}- readVkImageFormatProperties p- = peekByteOff p #{offset VkExternalImageFormatPropertiesNV, imageFormatProperties}-- {-# INLINE writeVkImageFormatProperties #-}- writeVkImageFormatProperties p- = pokeByteOff p #{offset VkExternalImageFormatPropertiesNV, imageFormatProperties}--instance {-# OVERLAPPING #-} HasField "imageFormatProperties" VkExternalImageFormatPropertiesNV where type FieldType "imageFormatProperties"@@ -126,37 +104,26 @@ fieldOffset = #{offset VkExternalImageFormatPropertiesNV, imageFormatProperties} -instance CanReadField "imageFormatProperties"+instance {-# OVERLAPPING #-}+ CanReadField "imageFormatProperties" VkExternalImageFormatPropertiesNV where- {-# INLINE getField #-}- getField = vkImageFormatProperties+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExternalImageFormatPropertiesNV, imageFormatProperties}) {-# INLINE readField #-}- readField = readVkImageFormatProperties+ readField p+ = peekByteOff p #{offset VkExternalImageFormatPropertiesNV, imageFormatProperties} instance {-# OVERLAPPING #-}- HasVkExternalMemoryFeatures VkExternalImageFormatPropertiesNV where- type VkExternalMemoryFeaturesMType- VkExternalImageFormatPropertiesNV- = VkExternalMemoryFeatureFlagsNV-- {-# NOINLINE vkExternalMemoryFeatures #-}- vkExternalMemoryFeatures x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExternalImageFormatPropertiesNV, externalMemoryFeatures})-- {-# INLINE vkExternalMemoryFeaturesByteOffset #-}- vkExternalMemoryFeaturesByteOffset ~_- = #{offset VkExternalImageFormatPropertiesNV, externalMemoryFeatures}-- {-# INLINE readVkExternalMemoryFeatures #-}- readVkExternalMemoryFeatures p- = peekByteOff p #{offset VkExternalImageFormatPropertiesNV, externalMemoryFeatures}-- {-# INLINE writeVkExternalMemoryFeatures #-}- writeVkExternalMemoryFeatures p- = pokeByteOff p #{offset VkExternalImageFormatPropertiesNV, externalMemoryFeatures}+ CanWriteField "imageFormatProperties"+ VkExternalImageFormatPropertiesNV+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExternalImageFormatPropertiesNV, imageFormatProperties} instance {-# OVERLAPPING #-} HasField "externalMemoryFeatures" VkExternalImageFormatPropertiesNV@@ -182,39 +149,26 @@ fieldOffset = #{offset VkExternalImageFormatPropertiesNV, externalMemoryFeatures} -instance CanReadField "externalMemoryFeatures"+instance {-# OVERLAPPING #-}+ CanReadField "externalMemoryFeatures" VkExternalImageFormatPropertiesNV where- {-# INLINE getField #-}- getField = vkExternalMemoryFeatures+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExternalImageFormatPropertiesNV, externalMemoryFeatures}) {-# INLINE readField #-}- readField = readVkExternalMemoryFeatures+ readField p+ = peekByteOff p #{offset VkExternalImageFormatPropertiesNV, externalMemoryFeatures} instance {-# OVERLAPPING #-}- HasVkExportFromImportedHandleTypes+ CanWriteField "externalMemoryFeatures" VkExternalImageFormatPropertiesNV where- type VkExportFromImportedHandleTypesMType- VkExternalImageFormatPropertiesNV- = VkExternalMemoryHandleTypeFlagsNV-- {-# NOINLINE vkExportFromImportedHandleTypes #-}- vkExportFromImportedHandleTypes x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExternalImageFormatPropertiesNV, exportFromImportedHandleTypes})-- {-# INLINE vkExportFromImportedHandleTypesByteOffset #-}- vkExportFromImportedHandleTypesByteOffset ~_- = #{offset VkExternalImageFormatPropertiesNV, exportFromImportedHandleTypes}-- {-# INLINE readVkExportFromImportedHandleTypes #-}- readVkExportFromImportedHandleTypes p- = peekByteOff p #{offset VkExternalImageFormatPropertiesNV, exportFromImportedHandleTypes}-- {-# INLINE writeVkExportFromImportedHandleTypes #-}- writeVkExportFromImportedHandleTypes p- = pokeByteOff p #{offset VkExternalImageFormatPropertiesNV, exportFromImportedHandleTypes}+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExternalImageFormatPropertiesNV, externalMemoryFeatures} instance {-# OVERLAPPING #-} HasField "exportFromImportedHandleTypes"@@ -241,36 +195,26 @@ fieldOffset = #{offset VkExternalImageFormatPropertiesNV, exportFromImportedHandleTypes} -instance CanReadField "exportFromImportedHandleTypes"+instance {-# OVERLAPPING #-}+ CanReadField "exportFromImportedHandleTypes" VkExternalImageFormatPropertiesNV where- {-# INLINE getField #-}- getField = vkExportFromImportedHandleTypes+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExternalImageFormatPropertiesNV, exportFromImportedHandleTypes}) {-# INLINE readField #-}- readField = readVkExportFromImportedHandleTypes+ readField p+ = peekByteOff p #{offset VkExternalImageFormatPropertiesNV, exportFromImportedHandleTypes} instance {-# OVERLAPPING #-}- HasVkCompatibleHandleTypes VkExternalImageFormatPropertiesNV where- type VkCompatibleHandleTypesMType VkExternalImageFormatPropertiesNV- = VkExternalMemoryHandleTypeFlagsNV-- {-# NOINLINE vkCompatibleHandleTypes #-}- vkCompatibleHandleTypes x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExternalImageFormatPropertiesNV, compatibleHandleTypes})-- {-# INLINE vkCompatibleHandleTypesByteOffset #-}- vkCompatibleHandleTypesByteOffset ~_- = #{offset VkExternalImageFormatPropertiesNV, compatibleHandleTypes}-- {-# INLINE readVkCompatibleHandleTypes #-}- readVkCompatibleHandleTypes p- = peekByteOff p #{offset VkExternalImageFormatPropertiesNV, compatibleHandleTypes}-- {-# INLINE writeVkCompatibleHandleTypes #-}- writeVkCompatibleHandleTypes p- = pokeByteOff p #{offset VkExternalImageFormatPropertiesNV, compatibleHandleTypes}+ CanWriteField "exportFromImportedHandleTypes"+ VkExternalImageFormatPropertiesNV+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExternalImageFormatPropertiesNV, exportFromImportedHandleTypes} instance {-# OVERLAPPING #-} HasField "compatibleHandleTypes" VkExternalImageFormatPropertiesNV@@ -296,26 +240,38 @@ fieldOffset = #{offset VkExternalImageFormatPropertiesNV, compatibleHandleTypes} -instance CanReadField "compatibleHandleTypes"+instance {-# OVERLAPPING #-}+ CanReadField "compatibleHandleTypes" VkExternalImageFormatPropertiesNV where- {-# INLINE getField #-}- getField = vkCompatibleHandleTypes+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExternalImageFormatPropertiesNV, compatibleHandleTypes}) {-# INLINE readField #-}- readField = readVkCompatibleHandleTypes+ readField p+ = peekByteOff p #{offset VkExternalImageFormatPropertiesNV, compatibleHandleTypes} +instance {-# OVERLAPPING #-}+ CanWriteField "compatibleHandleTypes"+ VkExternalImageFormatPropertiesNV+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExternalImageFormatPropertiesNV, compatibleHandleTypes}+ instance Show VkExternalImageFormatPropertiesNV where showsPrec d x = showString "VkExternalImageFormatPropertiesNV {" .- showString "vkImageFormatProperties = " .- showsPrec d (vkImageFormatProperties x) .+ showString "imageFormatProperties = " .+ showsPrec d (getField @"imageFormatProperties" x) . showString ", " .- showString "vkExternalMemoryFeatures = " .- showsPrec d (vkExternalMemoryFeatures x) .+ showString "externalMemoryFeatures = " .+ showsPrec d (getField @"externalMemoryFeatures" x) . showString ", " .- showString "vkExportFromImportedHandleTypes = " .- showsPrec d (vkExportFromImportedHandleTypes x) .+ showString "exportFromImportedHandleTypes = " .+ showsPrec d (getField @"exportFromImportedHandleTypes" x) . showString ", " .- showString "vkCompatibleHandleTypes = " .- showsPrec d (vkCompatibleHandleTypes x) . showChar '}'+ showString "compatibleHandleTypes = " .+ showsPrec d (getField @"compatibleHandleTypes" x) . showChar '}'
@@ -0,0 +1,194 @@+#include "vulkan/vulkan.h"++{-# LANGUAGE DataKinds #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-}+{-# LANGUAGE TypeFamilies #-}+module Graphics.Vulkan.Types.Struct.VkExternalMemoryBufferCreateInfo+ (VkExternalMemoryBufferCreateInfo(..)) where+import Foreign.Storable (Storable (..))+import GHC.Prim+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Marshal.Internal+import Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlags (VkExternalMemoryHandleTypeFlags)+import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)+import Graphics.Vulkan.Types.Struct.VkBufferCreateInfo (VkBufferCreateInfo)+import System.IO.Unsafe (unsafeDupablePerformIO)++-- | > typedef struct VkExternalMemoryBufferCreateInfo {+-- > VkStructureType sType;+-- > const void* pNext;+-- > VkExternalMemoryHandleTypeFlags handleTypes;+-- > } VkExternalMemoryBufferCreateInfo;+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkExternalMemoryBufferCreateInfo.html VkExternalMemoryBufferCreateInfo registry at www.khronos.org>+data VkExternalMemoryBufferCreateInfo = VkExternalMemoryBufferCreateInfo## Addr##+ ByteArray##++instance Eq VkExternalMemoryBufferCreateInfo where+ (VkExternalMemoryBufferCreateInfo## a _) ==+ x@(VkExternalMemoryBufferCreateInfo## b _)+ = EQ == cmpBytes## (sizeOf x) a b++ {-# INLINE (==) #-}++instance Ord VkExternalMemoryBufferCreateInfo where+ (VkExternalMemoryBufferCreateInfo## a _) `compare`+ x@(VkExternalMemoryBufferCreateInfo## b _)+ = cmpBytes## (sizeOf x) a b++ {-# INLINE compare #-}++instance Storable VkExternalMemoryBufferCreateInfo where+ sizeOf ~_ = #{size VkExternalMemoryBufferCreateInfo}++ {-# INLINE sizeOf #-}+ alignment ~_+ = #{alignment VkExternalMemoryBufferCreateInfo}++ {-# INLINE alignment #-}+ peek = peekVkData##++ {-# INLINE peek #-}+ poke = pokeVkData##++ {-# INLINE poke #-}++instance VulkanMarshalPrim VkExternalMemoryBufferCreateInfo where+ unsafeAddr (VkExternalMemoryBufferCreateInfo## a _) = a++ {-# INLINE unsafeAddr #-}+ unsafeByteArray (VkExternalMemoryBufferCreateInfo## _ b) = b++ {-# INLINE unsafeByteArray #-}+ unsafeFromByteArrayOffset off b+ = VkExternalMemoryBufferCreateInfo##+ (plusAddr## (byteArrayContents## b) off)+ b++ {-# INLINE unsafeFromByteArrayOffset #-}++instance VulkanMarshal VkExternalMemoryBufferCreateInfo where+ type StructFields VkExternalMemoryBufferCreateInfo =+ '["sType", "pNext", "handleTypes"] -- ' closing tick for hsc2hs+ type CUnionType VkExternalMemoryBufferCreateInfo = 'False -- ' closing tick for hsc2hs+ type ReturnedOnly VkExternalMemoryBufferCreateInfo = 'False -- ' closing tick for hsc2hs+ type StructExtends VkExternalMemoryBufferCreateInfo =+ '[VkBufferCreateInfo] -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-}+ HasField "sType" VkExternalMemoryBufferCreateInfo where+ type FieldType "sType" VkExternalMemoryBufferCreateInfo =+ VkStructureType+ type FieldOptional "sType" VkExternalMemoryBufferCreateInfo =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "sType" VkExternalMemoryBufferCreateInfo =+ #{offset VkExternalMemoryBufferCreateInfo, sType}+ type FieldIsArray "sType" VkExternalMemoryBufferCreateInfo = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkExternalMemoryBufferCreateInfo, sType}++instance {-# OVERLAPPING #-}+ CanReadField "sType" VkExternalMemoryBufferCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExternalMemoryBufferCreateInfo, sType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExternalMemoryBufferCreateInfo, sType}++instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkExternalMemoryBufferCreateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExternalMemoryBufferCreateInfo, sType}++instance {-# OVERLAPPING #-}+ HasField "pNext" VkExternalMemoryBufferCreateInfo where+ type FieldType "pNext" VkExternalMemoryBufferCreateInfo = Ptr Void+ type FieldOptional "pNext" VkExternalMemoryBufferCreateInfo =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "pNext" VkExternalMemoryBufferCreateInfo =+ #{offset VkExternalMemoryBufferCreateInfo, pNext}+ type FieldIsArray "pNext" VkExternalMemoryBufferCreateInfo = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkExternalMemoryBufferCreateInfo, pNext}++instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkExternalMemoryBufferCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExternalMemoryBufferCreateInfo, pNext})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExternalMemoryBufferCreateInfo, pNext}++instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkExternalMemoryBufferCreateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExternalMemoryBufferCreateInfo, pNext}++instance {-# OVERLAPPING #-}+ HasField "handleTypes" VkExternalMemoryBufferCreateInfo where+ type FieldType "handleTypes" VkExternalMemoryBufferCreateInfo =+ VkExternalMemoryHandleTypeFlags+ type FieldOptional "handleTypes" VkExternalMemoryBufferCreateInfo =+ 'True -- ' closing tick for hsc2hs+ type FieldOffset "handleTypes" VkExternalMemoryBufferCreateInfo =+ #{offset VkExternalMemoryBufferCreateInfo, handleTypes}+ type FieldIsArray "handleTypes" VkExternalMemoryBufferCreateInfo =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = True++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkExternalMemoryBufferCreateInfo, handleTypes}++instance {-# OVERLAPPING #-}+ CanReadField "handleTypes" VkExternalMemoryBufferCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExternalMemoryBufferCreateInfo, handleTypes})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExternalMemoryBufferCreateInfo, handleTypes}++instance {-# OVERLAPPING #-}+ CanWriteField "handleTypes" VkExternalMemoryBufferCreateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExternalMemoryBufferCreateInfo, handleTypes}++instance Show VkExternalMemoryBufferCreateInfo where+ showsPrec d x+ = showString "VkExternalMemoryBufferCreateInfo {" .+ showString "sType = " .+ showsPrec d (getField @"sType" x) .+ showString ", " .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) .+ showString ", " .+ showString "handleTypes = " .+ showsPrec d (getField @"handleTypes" x) . showChar '}'
@@ -0,0 +1,11 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Types.Struct.VkExternalMemoryBufferCreateInfoKHR+ (VkExternalMemoryBufferCreateInfo(..),+ VkExternalMemoryBufferCreateInfoKHR)+ where+import Graphics.Vulkan.Types.Struct.VkExternalMemoryBufferCreateInfo (VkExternalMemoryBufferCreateInfo (..))++-- | Alias for `VkExternalMemoryBufferCreateInfo`+type VkExternalMemoryBufferCreateInfoKHR =+ VkExternalMemoryBufferCreateInfo
@@ -1,255 +0,0 @@-#include "vulkan/vulkan.h"--{-# LANGUAGE DataKinds #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE MagicHash #-}-{-# LANGUAGE MultiParamTypeClasses #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE TypeFamilies #-}-module Graphics.Vulkan.Types.Struct.VkExternalMemoryBufferCreateInfoKHR- (VkExternalMemoryBufferCreateInfoKHR(..)) where-import Foreign.Storable (Storable (..))-import GHC.Prim-import Graphics.Vulkan.Marshal-import Graphics.Vulkan.Marshal.Internal-import Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlagsKHR (VkExternalMemoryHandleTypeFlagsKHR)-import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)-import Graphics.Vulkan.Types.Struct.VkBufferCreateInfo (VkBufferCreateInfo)-import Graphics.Vulkan.Types.StructMembers-import System.IO.Unsafe (unsafeDupablePerformIO)---- | > typedef struct VkExternalMemoryBufferCreateInfoKHR {--- > VkStructureType sType;--- > const void* pNext;--- > VkExternalMemoryHandleTypeFlagsKHR handleTypes;--- > } VkExternalMemoryBufferCreateInfoKHR;------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkExternalMemoryBufferCreateInfoKHR.html VkExternalMemoryBufferCreateInfoKHR registry at www.khronos.org>-data VkExternalMemoryBufferCreateInfoKHR = VkExternalMemoryBufferCreateInfoKHR## Addr##- ByteArray##--instance Eq VkExternalMemoryBufferCreateInfoKHR where- (VkExternalMemoryBufferCreateInfoKHR## a _) ==- x@(VkExternalMemoryBufferCreateInfoKHR## b _)- = EQ == cmpBytes## (sizeOf x) a b-- {-# INLINE (==) #-}--instance Ord VkExternalMemoryBufferCreateInfoKHR where- (VkExternalMemoryBufferCreateInfoKHR## a _) `compare`- x@(VkExternalMemoryBufferCreateInfoKHR## b _)- = cmpBytes## (sizeOf x) a b-- {-# INLINE compare #-}--instance Storable VkExternalMemoryBufferCreateInfoKHR where- sizeOf ~_ = #{size VkExternalMemoryBufferCreateInfoKHR}-- {-# INLINE sizeOf #-}- alignment ~_- = #{alignment VkExternalMemoryBufferCreateInfoKHR}-- {-# INLINE alignment #-}- peek = peekVkData##-- {-# INLINE peek #-}- poke = pokeVkData##-- {-# INLINE poke #-}--instance VulkanMarshalPrim VkExternalMemoryBufferCreateInfoKHR- where- unsafeAddr (VkExternalMemoryBufferCreateInfoKHR## a _) = a-- {-# INLINE unsafeAddr #-}- unsafeByteArray (VkExternalMemoryBufferCreateInfoKHR## _ b) = b-- {-# INLINE unsafeByteArray #-}- unsafeFromByteArrayOffset off b- = VkExternalMemoryBufferCreateInfoKHR##- (plusAddr## (byteArrayContents## b) off)- b-- {-# INLINE unsafeFromByteArrayOffset #-}--instance VulkanMarshal VkExternalMemoryBufferCreateInfoKHR where- type StructFields VkExternalMemoryBufferCreateInfoKHR =- '["sType", "pNext", "handleTypes"] -- ' closing tick for hsc2hs- type CUnionType VkExternalMemoryBufferCreateInfoKHR = 'False -- ' closing tick for hsc2hs- type ReturnedOnly VkExternalMemoryBufferCreateInfoKHR = 'False -- ' closing tick for hsc2hs- type StructExtends VkExternalMemoryBufferCreateInfoKHR =- '[VkBufferCreateInfo] -- ' closing tick for hsc2hs--instance {-# OVERLAPPING #-}- HasVkSType VkExternalMemoryBufferCreateInfoKHR where- type VkSTypeMType VkExternalMemoryBufferCreateInfoKHR =- VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExternalMemoryBufferCreateInfoKHR, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkExternalMemoryBufferCreateInfoKHR, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkExternalMemoryBufferCreateInfoKHR, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkExternalMemoryBufferCreateInfoKHR, sType}--instance {-# OVERLAPPING #-}- HasField "sType" VkExternalMemoryBufferCreateInfoKHR where- type FieldType "sType" VkExternalMemoryBufferCreateInfoKHR =- VkStructureType- type FieldOptional "sType" VkExternalMemoryBufferCreateInfoKHR =- 'False -- ' closing tick for hsc2hs- type FieldOffset "sType" VkExternalMemoryBufferCreateInfoKHR =- #{offset VkExternalMemoryBufferCreateInfoKHR, sType}- type FieldIsArray "sType" VkExternalMemoryBufferCreateInfoKHR =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkExternalMemoryBufferCreateInfoKHR, sType}--instance CanReadField "sType" VkExternalMemoryBufferCreateInfoKHR- where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance CanWriteField "sType" VkExternalMemoryBufferCreateInfoKHR- where- {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-}- HasVkPNext VkExternalMemoryBufferCreateInfoKHR where- type VkPNextMType VkExternalMemoryBufferCreateInfoKHR = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExternalMemoryBufferCreateInfoKHR, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkExternalMemoryBufferCreateInfoKHR, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkExternalMemoryBufferCreateInfoKHR, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkExternalMemoryBufferCreateInfoKHR, pNext}--instance {-# OVERLAPPING #-}- HasField "pNext" VkExternalMemoryBufferCreateInfoKHR where- type FieldType "pNext" VkExternalMemoryBufferCreateInfoKHR =- Ptr Void- type FieldOptional "pNext" VkExternalMemoryBufferCreateInfoKHR =- 'False -- ' closing tick for hsc2hs- type FieldOffset "pNext" VkExternalMemoryBufferCreateInfoKHR =- #{offset VkExternalMemoryBufferCreateInfoKHR, pNext}- type FieldIsArray "pNext" VkExternalMemoryBufferCreateInfoKHR =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkExternalMemoryBufferCreateInfoKHR, pNext}--instance CanReadField "pNext" VkExternalMemoryBufferCreateInfoKHR- where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkExternalMemoryBufferCreateInfoKHR- where- {-# INLINE writeField #-}- writeField = writeVkPNext--instance {-# OVERLAPPING #-}- HasVkHandleTypes VkExternalMemoryBufferCreateInfoKHR where- type VkHandleTypesMType VkExternalMemoryBufferCreateInfoKHR =- VkExternalMemoryHandleTypeFlagsKHR-- {-# NOINLINE vkHandleTypes #-}- vkHandleTypes x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExternalMemoryBufferCreateInfoKHR, handleTypes})-- {-# INLINE vkHandleTypesByteOffset #-}- vkHandleTypesByteOffset ~_- = #{offset VkExternalMemoryBufferCreateInfoKHR, handleTypes}-- {-# INLINE readVkHandleTypes #-}- readVkHandleTypes p- = peekByteOff p #{offset VkExternalMemoryBufferCreateInfoKHR, handleTypes}-- {-# INLINE writeVkHandleTypes #-}- writeVkHandleTypes p- = pokeByteOff p #{offset VkExternalMemoryBufferCreateInfoKHR, handleTypes}--instance {-# OVERLAPPING #-}- HasField "handleTypes" VkExternalMemoryBufferCreateInfoKHR where- type FieldType "handleTypes" VkExternalMemoryBufferCreateInfoKHR =- VkExternalMemoryHandleTypeFlagsKHR- type FieldOptional "handleTypes"- VkExternalMemoryBufferCreateInfoKHR- = 'True -- ' closing tick for hsc2hs- type FieldOffset "handleTypes" VkExternalMemoryBufferCreateInfoKHR- =- #{offset VkExternalMemoryBufferCreateInfoKHR, handleTypes}- type FieldIsArray "handleTypes" VkExternalMemoryBufferCreateInfoKHR- = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = True-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkExternalMemoryBufferCreateInfoKHR, handleTypes}--instance CanReadField "handleTypes"- VkExternalMemoryBufferCreateInfoKHR- where- {-# INLINE getField #-}- getField = vkHandleTypes-- {-# INLINE readField #-}- readField = readVkHandleTypes--instance CanWriteField "handleTypes"- VkExternalMemoryBufferCreateInfoKHR- where- {-# INLINE writeField #-}- writeField = writeVkHandleTypes--instance Show VkExternalMemoryBufferCreateInfoKHR where- showsPrec d x- = showString "VkExternalMemoryBufferCreateInfoKHR {" .- showString "vkSType = " .- showsPrec d (vkSType x) .- showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .- showString ", " .- showString "vkHandleTypes = " .- showsPrec d (vkHandleTypes x) . showChar '}'
@@ -0,0 +1,191 @@+#include "vulkan/vulkan.h"++{-# LANGUAGE DataKinds #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-}+{-# LANGUAGE TypeFamilies #-}+module Graphics.Vulkan.Types.Struct.VkExternalMemoryImageCreateInfo+ (VkExternalMemoryImageCreateInfo(..)) where+import Foreign.Storable (Storable (..))+import GHC.Prim+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Marshal.Internal+import Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlags (VkExternalMemoryHandleTypeFlags)+import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)+import Graphics.Vulkan.Types.Struct.VkImageCreateInfo (VkImageCreateInfo)+import System.IO.Unsafe (unsafeDupablePerformIO)++-- | > typedef struct VkExternalMemoryImageCreateInfo {+-- > VkStructureType sType;+-- > const void* pNext;+-- > VkExternalMemoryHandleTypeFlags handleTypes;+-- > } VkExternalMemoryImageCreateInfo;+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkExternalMemoryImageCreateInfo.html VkExternalMemoryImageCreateInfo registry at www.khronos.org>+data VkExternalMemoryImageCreateInfo = VkExternalMemoryImageCreateInfo## Addr##+ ByteArray##++instance Eq VkExternalMemoryImageCreateInfo where+ (VkExternalMemoryImageCreateInfo## a _) ==+ x@(VkExternalMemoryImageCreateInfo## b _)+ = EQ == cmpBytes## (sizeOf x) a b++ {-# INLINE (==) #-}++instance Ord VkExternalMemoryImageCreateInfo where+ (VkExternalMemoryImageCreateInfo## a _) `compare`+ x@(VkExternalMemoryImageCreateInfo## b _) = cmpBytes## (sizeOf x) a b++ {-# INLINE compare #-}++instance Storable VkExternalMemoryImageCreateInfo where+ sizeOf ~_ = #{size VkExternalMemoryImageCreateInfo}++ {-# INLINE sizeOf #-}+ alignment ~_+ = #{alignment VkExternalMemoryImageCreateInfo}++ {-# INLINE alignment #-}+ peek = peekVkData##++ {-# INLINE peek #-}+ poke = pokeVkData##++ {-# INLINE poke #-}++instance VulkanMarshalPrim VkExternalMemoryImageCreateInfo where+ unsafeAddr (VkExternalMemoryImageCreateInfo## a _) = a++ {-# INLINE unsafeAddr #-}+ unsafeByteArray (VkExternalMemoryImageCreateInfo## _ b) = b++ {-# INLINE unsafeByteArray #-}+ unsafeFromByteArrayOffset off b+ = VkExternalMemoryImageCreateInfo##+ (plusAddr## (byteArrayContents## b) off)+ b++ {-# INLINE unsafeFromByteArrayOffset #-}++instance VulkanMarshal VkExternalMemoryImageCreateInfo where+ type StructFields VkExternalMemoryImageCreateInfo =+ '["sType", "pNext", "handleTypes"] -- ' closing tick for hsc2hs+ type CUnionType VkExternalMemoryImageCreateInfo = 'False -- ' closing tick for hsc2hs+ type ReturnedOnly VkExternalMemoryImageCreateInfo = 'False -- ' closing tick for hsc2hs+ type StructExtends VkExternalMemoryImageCreateInfo =+ '[VkImageCreateInfo] -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-}+ HasField "sType" VkExternalMemoryImageCreateInfo where+ type FieldType "sType" VkExternalMemoryImageCreateInfo =+ VkStructureType+ type FieldOptional "sType" VkExternalMemoryImageCreateInfo = 'False -- ' closing tick for hsc2hs+ type FieldOffset "sType" VkExternalMemoryImageCreateInfo =+ #{offset VkExternalMemoryImageCreateInfo, sType}+ type FieldIsArray "sType" VkExternalMemoryImageCreateInfo = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkExternalMemoryImageCreateInfo, sType}++instance {-# OVERLAPPING #-}+ CanReadField "sType" VkExternalMemoryImageCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExternalMemoryImageCreateInfo, sType})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExternalMemoryImageCreateInfo, sType}++instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkExternalMemoryImageCreateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExternalMemoryImageCreateInfo, sType}++instance {-# OVERLAPPING #-}+ HasField "pNext" VkExternalMemoryImageCreateInfo where+ type FieldType "pNext" VkExternalMemoryImageCreateInfo = Ptr Void+ type FieldOptional "pNext" VkExternalMemoryImageCreateInfo = 'False -- ' closing tick for hsc2hs+ type FieldOffset "pNext" VkExternalMemoryImageCreateInfo =+ #{offset VkExternalMemoryImageCreateInfo, pNext}+ type FieldIsArray "pNext" VkExternalMemoryImageCreateInfo = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkExternalMemoryImageCreateInfo, pNext}++instance {-# OVERLAPPING #-}+ CanReadField "pNext" VkExternalMemoryImageCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExternalMemoryImageCreateInfo, pNext})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExternalMemoryImageCreateInfo, pNext}++instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkExternalMemoryImageCreateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExternalMemoryImageCreateInfo, pNext}++instance {-# OVERLAPPING #-}+ HasField "handleTypes" VkExternalMemoryImageCreateInfo where+ type FieldType "handleTypes" VkExternalMemoryImageCreateInfo =+ VkExternalMemoryHandleTypeFlags+ type FieldOptional "handleTypes" VkExternalMemoryImageCreateInfo =+ 'False -- ' closing tick for hsc2hs+ type FieldOffset "handleTypes" VkExternalMemoryImageCreateInfo =+ #{offset VkExternalMemoryImageCreateInfo, handleTypes}+ type FieldIsArray "handleTypes" VkExternalMemoryImageCreateInfo =+ 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkExternalMemoryImageCreateInfo, handleTypes}++instance {-# OVERLAPPING #-}+ CanReadField "handleTypes" VkExternalMemoryImageCreateInfo where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExternalMemoryImageCreateInfo, handleTypes})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExternalMemoryImageCreateInfo, handleTypes}++instance {-# OVERLAPPING #-}+ CanWriteField "handleTypes" VkExternalMemoryImageCreateInfo where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExternalMemoryImageCreateInfo, handleTypes}++instance Show VkExternalMemoryImageCreateInfo where+ showsPrec d x+ = showString "VkExternalMemoryImageCreateInfo {" .+ showString "sType = " .+ showsPrec d (getField @"sType" x) .+ showString ", " .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) .+ showString ", " .+ showString "handleTypes = " .+ showsPrec d (getField @"handleTypes" x) . showChar '}'
@@ -0,0 +1,11 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Types.Struct.VkExternalMemoryImageCreateInfoKHR+ (VkExternalMemoryImageCreateInfo(..),+ VkExternalMemoryImageCreateInfoKHR)+ where+import Graphics.Vulkan.Types.Struct.VkExternalMemoryImageCreateInfo (VkExternalMemoryImageCreateInfo (..))++-- | Alias for `VkExternalMemoryImageCreateInfo`+type VkExternalMemoryImageCreateInfoKHR =+ VkExternalMemoryImageCreateInfo
@@ -1,252 +0,0 @@-#include "vulkan/vulkan.h"--{-# LANGUAGE DataKinds #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE MagicHash #-}-{-# LANGUAGE MultiParamTypeClasses #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE TypeFamilies #-}-module Graphics.Vulkan.Types.Struct.VkExternalMemoryImageCreateInfoKHR- (VkExternalMemoryImageCreateInfoKHR(..)) where-import Foreign.Storable (Storable (..))-import GHC.Prim-import Graphics.Vulkan.Marshal-import Graphics.Vulkan.Marshal.Internal-import Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlagsKHR (VkExternalMemoryHandleTypeFlagsKHR)-import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType)-import Graphics.Vulkan.Types.Struct.VkImageCreateInfo (VkImageCreateInfo)-import Graphics.Vulkan.Types.StructMembers-import System.IO.Unsafe (unsafeDupablePerformIO)---- | > typedef struct VkExternalMemoryImageCreateInfoKHR {--- > VkStructureType sType;--- > const void* pNext;--- > VkExternalMemoryHandleTypeFlagsKHR handleTypes;--- > } VkExternalMemoryImageCreateInfoKHR;------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkExternalMemoryImageCreateInfoKHR.html VkExternalMemoryImageCreateInfoKHR registry at www.khronos.org>-data VkExternalMemoryImageCreateInfoKHR = VkExternalMemoryImageCreateInfoKHR## Addr##- ByteArray##--instance Eq VkExternalMemoryImageCreateInfoKHR where- (VkExternalMemoryImageCreateInfoKHR## a _) ==- x@(VkExternalMemoryImageCreateInfoKHR## b _)- = EQ == cmpBytes## (sizeOf x) a b-- {-# INLINE (==) #-}--instance Ord VkExternalMemoryImageCreateInfoKHR where- (VkExternalMemoryImageCreateInfoKHR## a _) `compare`- x@(VkExternalMemoryImageCreateInfoKHR## b _)- = cmpBytes## (sizeOf x) a b-- {-# INLINE compare #-}--instance Storable VkExternalMemoryImageCreateInfoKHR where- sizeOf ~_ = #{size VkExternalMemoryImageCreateInfoKHR}-- {-# INLINE sizeOf #-}- alignment ~_- = #{alignment VkExternalMemoryImageCreateInfoKHR}-- {-# INLINE alignment #-}- peek = peekVkData##-- {-# INLINE peek #-}- poke = pokeVkData##-- {-# INLINE poke #-}--instance VulkanMarshalPrim VkExternalMemoryImageCreateInfoKHR where- unsafeAddr (VkExternalMemoryImageCreateInfoKHR## a _) = a-- {-# INLINE unsafeAddr #-}- unsafeByteArray (VkExternalMemoryImageCreateInfoKHR## _ b) = b-- {-# INLINE unsafeByteArray #-}- unsafeFromByteArrayOffset off b- = VkExternalMemoryImageCreateInfoKHR##- (plusAddr## (byteArrayContents## b) off)- b-- {-# INLINE unsafeFromByteArrayOffset #-}--instance VulkanMarshal VkExternalMemoryImageCreateInfoKHR where- type StructFields VkExternalMemoryImageCreateInfoKHR =- '["sType", "pNext", "handleTypes"] -- ' closing tick for hsc2hs- type CUnionType VkExternalMemoryImageCreateInfoKHR = 'False -- ' closing tick for hsc2hs- type ReturnedOnly VkExternalMemoryImageCreateInfoKHR = 'False -- ' closing tick for hsc2hs- type StructExtends VkExternalMemoryImageCreateInfoKHR =- '[VkImageCreateInfo] -- ' closing tick for hsc2hs--instance {-# OVERLAPPING #-}- HasVkSType VkExternalMemoryImageCreateInfoKHR where- type VkSTypeMType VkExternalMemoryImageCreateInfoKHR =- VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExternalMemoryImageCreateInfoKHR, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkExternalMemoryImageCreateInfoKHR, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkExternalMemoryImageCreateInfoKHR, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkExternalMemoryImageCreateInfoKHR, sType}--instance {-# OVERLAPPING #-}- HasField "sType" VkExternalMemoryImageCreateInfoKHR where- type FieldType "sType" VkExternalMemoryImageCreateInfoKHR =- VkStructureType- type FieldOptional "sType" VkExternalMemoryImageCreateInfoKHR =- 'False -- ' closing tick for hsc2hs- type FieldOffset "sType" VkExternalMemoryImageCreateInfoKHR =- #{offset VkExternalMemoryImageCreateInfoKHR, sType}- type FieldIsArray "sType" VkExternalMemoryImageCreateInfoKHR =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkExternalMemoryImageCreateInfoKHR, sType}--instance CanReadField "sType" VkExternalMemoryImageCreateInfoKHR- where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance CanWriteField "sType" VkExternalMemoryImageCreateInfoKHR- where- {-# INLINE writeField #-}- writeField = writeVkSType--instance {-# OVERLAPPING #-}- HasVkPNext VkExternalMemoryImageCreateInfoKHR where- type VkPNextMType VkExternalMemoryImageCreateInfoKHR = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExternalMemoryImageCreateInfoKHR, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkExternalMemoryImageCreateInfoKHR, pNext}-- {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkExternalMemoryImageCreateInfoKHR, pNext}-- {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkExternalMemoryImageCreateInfoKHR, pNext}--instance {-# OVERLAPPING #-}- HasField "pNext" VkExternalMemoryImageCreateInfoKHR where- type FieldType "pNext" VkExternalMemoryImageCreateInfoKHR =- Ptr Void- type FieldOptional "pNext" VkExternalMemoryImageCreateInfoKHR =- 'False -- ' closing tick for hsc2hs- type FieldOffset "pNext" VkExternalMemoryImageCreateInfoKHR =- #{offset VkExternalMemoryImageCreateInfoKHR, pNext}- type FieldIsArray "pNext" VkExternalMemoryImageCreateInfoKHR =- 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkExternalMemoryImageCreateInfoKHR, pNext}--instance CanReadField "pNext" VkExternalMemoryImageCreateInfoKHR- where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkExternalMemoryImageCreateInfoKHR- where- {-# INLINE writeField #-}- writeField = writeVkPNext--instance {-# OVERLAPPING #-}- HasVkHandleTypes VkExternalMemoryImageCreateInfoKHR where- type VkHandleTypesMType VkExternalMemoryImageCreateInfoKHR =- VkExternalMemoryHandleTypeFlagsKHR-- {-# NOINLINE vkHandleTypes #-}- vkHandleTypes x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExternalMemoryImageCreateInfoKHR, handleTypes})-- {-# INLINE vkHandleTypesByteOffset #-}- vkHandleTypesByteOffset ~_- = #{offset VkExternalMemoryImageCreateInfoKHR, handleTypes}-- {-# INLINE readVkHandleTypes #-}- readVkHandleTypes p- = peekByteOff p #{offset VkExternalMemoryImageCreateInfoKHR, handleTypes}-- {-# INLINE writeVkHandleTypes #-}- writeVkHandleTypes p- = pokeByteOff p #{offset VkExternalMemoryImageCreateInfoKHR, handleTypes}--instance {-# OVERLAPPING #-}- HasField "handleTypes" VkExternalMemoryImageCreateInfoKHR where- type FieldType "handleTypes" VkExternalMemoryImageCreateInfoKHR =- VkExternalMemoryHandleTypeFlagsKHR- type FieldOptional "handleTypes" VkExternalMemoryImageCreateInfoKHR- = 'False -- ' closing tick for hsc2hs- type FieldOffset "handleTypes" VkExternalMemoryImageCreateInfoKHR =- #{offset VkExternalMemoryImageCreateInfoKHR, handleTypes}- type FieldIsArray "handleTypes" VkExternalMemoryImageCreateInfoKHR- = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkExternalMemoryImageCreateInfoKHR, handleTypes}--instance CanReadField "handleTypes"- VkExternalMemoryImageCreateInfoKHR- where- {-# INLINE getField #-}- getField = vkHandleTypes-- {-# INLINE readField #-}- readField = readVkHandleTypes--instance CanWriteField "handleTypes"- VkExternalMemoryImageCreateInfoKHR- where- {-# INLINE writeField #-}- writeField = writeVkHandleTypes--instance Show VkExternalMemoryImageCreateInfoKHR where- showsPrec d x- = showString "VkExternalMemoryImageCreateInfoKHR {" .- showString "vkSType = " .- showsPrec d (vkSType x) .- showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .- showString ", " .- showString "vkHandleTypes = " .- showsPrec d (vkHandleTypes x) . showChar '}'
@@ -5,6 +5,7 @@ {-# LANGUAGE MagicHash #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Graphics.Vulkan.Types.Struct.VkExternalMemoryImageCreateInfoNV (VkExternalMemoryImageCreateInfoNV(..)) where@@ -15,7 +16,6 @@ import Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlagsNV (VkExternalMemoryHandleTypeFlagsNV) import Graphics.Vulkan.Types.Enum.VkStructureType (VkStructureType) import Graphics.Vulkan.Types.Struct.VkImageCreateInfo (VkImageCreateInfo)-import Graphics.Vulkan.Types.StructMembers import System.IO.Unsafe (unsafeDupablePerformIO) -- | > typedef struct VkExternalMemoryImageCreateInfoNV {@@ -24,7 +24,7 @@ -- > VkExternalMemoryHandleTypeFlagsNV handleTypes; -- > } VkExternalMemoryImageCreateInfoNV; ----- <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkExternalMemoryImageCreateInfoNV.html VkExternalMemoryImageCreateInfoNV registry at www.khronos.org>+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkExternalMemoryImageCreateInfoNV.html VkExternalMemoryImageCreateInfoNV registry at www.khronos.org> data VkExternalMemoryImageCreateInfoNV = VkExternalMemoryImageCreateInfoNV## Addr## ByteArray## @@ -80,28 +80,6 @@ '[VkImageCreateInfo] -- ' closing tick for hsc2hs instance {-# OVERLAPPING #-}- HasVkSType VkExternalMemoryImageCreateInfoNV where- type VkSTypeMType VkExternalMemoryImageCreateInfoNV =- VkStructureType-- {-# NOINLINE vkSType #-}- vkSType x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExternalMemoryImageCreateInfoNV, sType})-- {-# INLINE vkSTypeByteOffset #-}- vkSTypeByteOffset ~_- = #{offset VkExternalMemoryImageCreateInfoNV, sType}-- {-# INLINE readVkSType #-}- readVkSType p- = peekByteOff p #{offset VkExternalMemoryImageCreateInfoNV, sType}-- {-# INLINE writeVkSType #-}- writeVkSType p- = pokeByteOff p #{offset VkExternalMemoryImageCreateInfoNV, sType}--instance {-# OVERLAPPING #-} HasField "sType" VkExternalMemoryImageCreateInfoNV where type FieldType "sType" VkExternalMemoryImageCreateInfoNV = VkStructureType@@ -119,39 +97,22 @@ fieldOffset = #{offset VkExternalMemoryImageCreateInfoNV, sType} -instance CanReadField "sType" VkExternalMemoryImageCreateInfoNV- where- {-# INLINE getField #-}- getField = vkSType-- {-# INLINE readField #-}- readField = readVkSType--instance CanWriteField "sType" VkExternalMemoryImageCreateInfoNV- where- {-# INLINE writeField #-}- writeField = writeVkSType- instance {-# OVERLAPPING #-}- HasVkPNext VkExternalMemoryImageCreateInfoNV where- type VkPNextMType VkExternalMemoryImageCreateInfoNV = Ptr Void-- {-# NOINLINE vkPNext #-}- vkPNext x+ CanReadField "sType" VkExternalMemoryImageCreateInfoNV where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExternalMemoryImageCreateInfoNV, pNext})-- {-# INLINE vkPNextByteOffset #-}- vkPNextByteOffset ~_- = #{offset VkExternalMemoryImageCreateInfoNV, pNext}+ (peekByteOff (unsafePtr x) #{offset VkExternalMemoryImageCreateInfoNV, sType}) - {-# INLINE readVkPNext #-}- readVkPNext p- = peekByteOff p #{offset VkExternalMemoryImageCreateInfoNV, pNext}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExternalMemoryImageCreateInfoNV, sType} - {-# INLINE writeVkPNext #-}- writeVkPNext p- = pokeByteOff p #{offset VkExternalMemoryImageCreateInfoNV, pNext}+instance {-# OVERLAPPING #-}+ CanWriteField "sType" VkExternalMemoryImageCreateInfoNV where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExternalMemoryImageCreateInfoNV, sType} instance {-# OVERLAPPING #-} HasField "pNext" VkExternalMemoryImageCreateInfoNV where@@ -170,40 +131,22 @@ fieldOffset = #{offset VkExternalMemoryImageCreateInfoNV, pNext} -instance CanReadField "pNext" VkExternalMemoryImageCreateInfoNV- where- {-# INLINE getField #-}- getField = vkPNext-- {-# INLINE readField #-}- readField = readVkPNext--instance CanWriteField "pNext" VkExternalMemoryImageCreateInfoNV- where- {-# INLINE writeField #-}- writeField = writeVkPNext- instance {-# OVERLAPPING #-}- HasVkHandleTypes VkExternalMemoryImageCreateInfoNV where- type VkHandleTypesMType VkExternalMemoryImageCreateInfoNV =- VkExternalMemoryHandleTypeFlagsNV-- {-# NOINLINE vkHandleTypes #-}- vkHandleTypes x+ CanReadField "pNext" VkExternalMemoryImageCreateInfoNV where+ {-# NOINLINE getField #-}+ getField x = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExternalMemoryImageCreateInfoNV, handleTypes})-- {-# INLINE vkHandleTypesByteOffset #-}- vkHandleTypesByteOffset ~_- = #{offset VkExternalMemoryImageCreateInfoNV, handleTypes}+ (peekByteOff (unsafePtr x) #{offset VkExternalMemoryImageCreateInfoNV, pNext}) - {-# INLINE readVkHandleTypes #-}- readVkHandleTypes p- = peekByteOff p #{offset VkExternalMemoryImageCreateInfoNV, handleTypes}+ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExternalMemoryImageCreateInfoNV, pNext} - {-# INLINE writeVkHandleTypes #-}- writeVkHandleTypes p- = pokeByteOff p #{offset VkExternalMemoryImageCreateInfoNV, handleTypes}+instance {-# OVERLAPPING #-}+ CanWriteField "pNext" VkExternalMemoryImageCreateInfoNV where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExternalMemoryImageCreateInfoNV, pNext} instance {-# OVERLAPPING #-} HasField "handleTypes" VkExternalMemoryImageCreateInfoNV where@@ -223,29 +166,31 @@ fieldOffset = #{offset VkExternalMemoryImageCreateInfoNV, handleTypes} -instance CanReadField "handleTypes"- VkExternalMemoryImageCreateInfoNV- where- {-# INLINE getField #-}- getField = vkHandleTypes+instance {-# OVERLAPPING #-}+ CanReadField "handleTypes" VkExternalMemoryImageCreateInfoNV where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExternalMemoryImageCreateInfoNV, handleTypes}) {-# INLINE readField #-}- readField = readVkHandleTypes+ readField p+ = peekByteOff p #{offset VkExternalMemoryImageCreateInfoNV, handleTypes} -instance CanWriteField "handleTypes"- VkExternalMemoryImageCreateInfoNV- where+instance {-# OVERLAPPING #-}+ CanWriteField "handleTypes" VkExternalMemoryImageCreateInfoNV where {-# INLINE writeField #-}- writeField = writeVkHandleTypes+ writeField p+ = pokeByteOff p #{offset VkExternalMemoryImageCreateInfoNV, handleTypes} instance Show VkExternalMemoryImageCreateInfoNV where showsPrec d x = showString "VkExternalMemoryImageCreateInfoNV {" .- showString "vkSType = " .- showsPrec d (vkSType x) .+ showString "sType = " .+ showsPrec d (getField @"sType" x) . showString ", " .- showString "vkPNext = " .- showsPrec d (vkPNext x) .+ showString "pNext = " .+ showsPrec d (getField @"pNext" x) . showString ", " .- showString "vkHandleTypes = " .- showsPrec d (vkHandleTypes x) . showChar '}'+ showString "handleTypes = " .+ showsPrec d (getField @"handleTypes" x) . showChar '}'
@@ -0,0 +1,215 @@+#include "vulkan/vulkan.h"++{-# LANGUAGE DataKinds #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MagicHash #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE Strict #-}+{-# LANGUAGE TypeApplications #-}+{-# LANGUAGE TypeFamilies #-}+module Graphics.Vulkan.Types.Struct.VkExternalMemoryProperties+ (VkExternalMemoryProperties(..)) where+import Foreign.Storable (Storable (..))+import GHC.Prim+import Graphics.Vulkan.Marshal+import Graphics.Vulkan.Marshal.Internal+import Graphics.Vulkan.Types.Enum.VkExternalMemoryFeatureFlags (VkExternalMemoryFeatureFlags)+import Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlags (VkExternalMemoryHandleTypeFlags)+import System.IO.Unsafe (unsafeDupablePerformIO)++-- | > typedef struct VkExternalMemoryProperties {+-- > VkExternalMemoryFeatureFlags externalMemoryFeatures;+-- > VkExternalMemoryHandleTypeFlags exportFromImportedHandleTypes;+-- > VkExternalMemoryHandleTypeFlags compatibleHandleTypes;+-- > } VkExternalMemoryProperties;+--+-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkExternalMemoryProperties.html VkExternalMemoryProperties registry at www.khronos.org>+data VkExternalMemoryProperties = VkExternalMemoryProperties## Addr##+ ByteArray##++instance Eq VkExternalMemoryProperties where+ (VkExternalMemoryProperties## a _) ==+ x@(VkExternalMemoryProperties## b _)+ = EQ == cmpBytes## (sizeOf x) a b++ {-# INLINE (==) #-}++instance Ord VkExternalMemoryProperties where+ (VkExternalMemoryProperties## a _) `compare`+ x@(VkExternalMemoryProperties## b _) = cmpBytes## (sizeOf x) a b++ {-# INLINE compare #-}++instance Storable VkExternalMemoryProperties where+ sizeOf ~_ = #{size VkExternalMemoryProperties}++ {-# INLINE sizeOf #-}+ alignment ~_ = #{alignment VkExternalMemoryProperties}++ {-# INLINE alignment #-}+ peek = peekVkData##++ {-# INLINE peek #-}+ poke = pokeVkData##++ {-# INLINE poke #-}++instance VulkanMarshalPrim VkExternalMemoryProperties where+ unsafeAddr (VkExternalMemoryProperties## a _) = a++ {-# INLINE unsafeAddr #-}+ unsafeByteArray (VkExternalMemoryProperties## _ b) = b++ {-# INLINE unsafeByteArray #-}+ unsafeFromByteArrayOffset off b+ = VkExternalMemoryProperties##+ (plusAddr## (byteArrayContents## b) off)+ b++ {-# INLINE unsafeFromByteArrayOffset #-}++instance VulkanMarshal VkExternalMemoryProperties where+ type StructFields VkExternalMemoryProperties =+ '["externalMemoryFeatures", "exportFromImportedHandleTypes", -- ' closing tick for hsc2hs+ "compatibleHandleTypes"]+ type CUnionType VkExternalMemoryProperties = 'False -- ' closing tick for hsc2hs+ type ReturnedOnly VkExternalMemoryProperties = 'True -- ' closing tick for hsc2hs+ type StructExtends VkExternalMemoryProperties = '[] -- ' closing tick for hsc2hs++instance {-# OVERLAPPING #-}+ HasField "externalMemoryFeatures" VkExternalMemoryProperties where+ type FieldType "externalMemoryFeatures" VkExternalMemoryProperties+ = VkExternalMemoryFeatureFlags+ type FieldOptional "externalMemoryFeatures"+ VkExternalMemoryProperties+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "externalMemoryFeatures"+ VkExternalMemoryProperties+ =+ #{offset VkExternalMemoryProperties, externalMemoryFeatures}+ type FieldIsArray "externalMemoryFeatures"+ VkExternalMemoryProperties+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkExternalMemoryProperties, externalMemoryFeatures}++instance {-# OVERLAPPING #-}+ CanReadField "externalMemoryFeatures" VkExternalMemoryProperties+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExternalMemoryProperties, externalMemoryFeatures})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExternalMemoryProperties, externalMemoryFeatures}++instance {-# OVERLAPPING #-}+ CanWriteField "externalMemoryFeatures" VkExternalMemoryProperties+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExternalMemoryProperties, externalMemoryFeatures}++instance {-# OVERLAPPING #-}+ HasField "exportFromImportedHandleTypes" VkExternalMemoryProperties+ where+ type FieldType "exportFromImportedHandleTypes"+ VkExternalMemoryProperties+ = VkExternalMemoryHandleTypeFlags+ type FieldOptional "exportFromImportedHandleTypes"+ VkExternalMemoryProperties+ = 'True -- ' closing tick for hsc2hs+ type FieldOffset "exportFromImportedHandleTypes"+ VkExternalMemoryProperties+ =+ #{offset VkExternalMemoryProperties, exportFromImportedHandleTypes}+ type FieldIsArray "exportFromImportedHandleTypes"+ VkExternalMemoryProperties+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = True++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkExternalMemoryProperties, exportFromImportedHandleTypes}++instance {-# OVERLAPPING #-}+ CanReadField "exportFromImportedHandleTypes"+ VkExternalMemoryProperties+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExternalMemoryProperties, exportFromImportedHandleTypes})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExternalMemoryProperties, exportFromImportedHandleTypes}++instance {-# OVERLAPPING #-}+ CanWriteField "exportFromImportedHandleTypes"+ VkExternalMemoryProperties+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExternalMemoryProperties, exportFromImportedHandleTypes}++instance {-# OVERLAPPING #-}+ HasField "compatibleHandleTypes" VkExternalMemoryProperties where+ type FieldType "compatibleHandleTypes" VkExternalMemoryProperties =+ VkExternalMemoryHandleTypeFlags+ type FieldOptional "compatibleHandleTypes"+ VkExternalMemoryProperties+ = 'False -- ' closing tick for hsc2hs+ type FieldOffset "compatibleHandleTypes" VkExternalMemoryProperties+ =+ #{offset VkExternalMemoryProperties, compatibleHandleTypes}+ type FieldIsArray "compatibleHandleTypes"+ VkExternalMemoryProperties+ = 'False -- ' closing tick for hsc2hs++ {-# INLINE fieldOptional #-}+ fieldOptional = False++ {-# INLINE fieldOffset #-}+ fieldOffset+ = #{offset VkExternalMemoryProperties, compatibleHandleTypes}++instance {-# OVERLAPPING #-}+ CanReadField "compatibleHandleTypes" VkExternalMemoryProperties+ where+ {-# NOINLINE getField #-}+ getField x+ = unsafeDupablePerformIO+ (peekByteOff (unsafePtr x) #{offset VkExternalMemoryProperties, compatibleHandleTypes})++ {-# INLINE readField #-}+ readField p+ = peekByteOff p #{offset VkExternalMemoryProperties, compatibleHandleTypes}++instance {-# OVERLAPPING #-}+ CanWriteField "compatibleHandleTypes" VkExternalMemoryProperties+ where+ {-# INLINE writeField #-}+ writeField p+ = pokeByteOff p #{offset VkExternalMemoryProperties, compatibleHandleTypes}++instance Show VkExternalMemoryProperties where+ showsPrec d x+ = showString "VkExternalMemoryProperties {" .+ showString "externalMemoryFeatures = " .+ showsPrec d (getField @"externalMemoryFeatures" x) .+ showString ", " .+ showString "exportFromImportedHandleTypes = " .+ showsPrec d (getField @"exportFromImportedHandleTypes" x) .+ showString ", " .+ showString "compatibleHandleTypes = " .+ showsPrec d (getField @"compatibleHandleTypes" x) . showChar '}'
@@ -0,0 +1,9 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE Strict #-}+module Graphics.Vulkan.Types.Struct.VkExternalMemoryPropertiesKHR+ (VkExternalMemoryProperties(..), VkExternalMemoryPropertiesKHR)+ where+import Graphics.Vulkan.Types.Struct.VkExternalMemoryProperties (VkExternalMemoryProperties (..))++-- | Alias for `VkExternalMemoryProperties`+type VkExternalMemoryPropertiesKHR = VkExternalMemoryProperties
@@ -1,258 +0,0 @@-#include "vulkan/vulkan.h"--{-# LANGUAGE DataKinds #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE MagicHash #-}-{-# LANGUAGE MultiParamTypeClasses #-}-{-# LANGUAGE Strict #-}-{-# LANGUAGE TypeFamilies #-}-module Graphics.Vulkan.Types.Struct.VkExternalMemoryPropertiesKHR- (VkExternalMemoryPropertiesKHR(..)) where-import Foreign.Storable (Storable (..))-import GHC.Prim-import Graphics.Vulkan.Marshal-import Graphics.Vulkan.Marshal.Internal-import Graphics.Vulkan.Types.Enum.VkExternalMemoryFeatureFlagsKHR (VkExternalMemoryFeatureFlagsKHR)-import Graphics.Vulkan.Types.Enum.VkExternalMemoryHandleTypeFlagsKHR (VkExternalMemoryHandleTypeFlagsKHR)-import Graphics.Vulkan.Types.StructMembers-import System.IO.Unsafe (unsafeDupablePerformIO)---- | > typedef struct VkExternalMemoryPropertiesKHR {--- > VkExternalMemoryFeatureFlagsKHR externalMemoryFeatures;--- > VkExternalMemoryHandleTypeFlagsKHR exportFromImportedHandleTypes;--- > VkExternalMemoryHandleTypeFlagsKHR compatibleHandleTypes;--- > } VkExternalMemoryPropertiesKHR;------ <https://www.khronos.org/registry/vulkan/specs/1.0-extensions/man/html/VkExternalMemoryPropertiesKHR.html VkExternalMemoryPropertiesKHR registry at www.khronos.org>-data VkExternalMemoryPropertiesKHR = VkExternalMemoryPropertiesKHR## Addr##- ByteArray##--instance Eq VkExternalMemoryPropertiesKHR where- (VkExternalMemoryPropertiesKHR## a _) ==- x@(VkExternalMemoryPropertiesKHR## b _)- = EQ == cmpBytes## (sizeOf x) a b-- {-# INLINE (==) #-}--instance Ord VkExternalMemoryPropertiesKHR where- (VkExternalMemoryPropertiesKHR## a _) `compare`- x@(VkExternalMemoryPropertiesKHR## b _) = cmpBytes## (sizeOf x) a b-- {-# INLINE compare #-}--instance Storable VkExternalMemoryPropertiesKHR where- sizeOf ~_ = #{size VkExternalMemoryPropertiesKHR}-- {-# INLINE sizeOf #-}- alignment ~_- = #{alignment VkExternalMemoryPropertiesKHR}-- {-# INLINE alignment #-}- peek = peekVkData##-- {-# INLINE peek #-}- poke = pokeVkData##-- {-# INLINE poke #-}--instance VulkanMarshalPrim VkExternalMemoryPropertiesKHR where- unsafeAddr (VkExternalMemoryPropertiesKHR## a _) = a-- {-# INLINE unsafeAddr #-}- unsafeByteArray (VkExternalMemoryPropertiesKHR## _ b) = b-- {-# INLINE unsafeByteArray #-}- unsafeFromByteArrayOffset off b- = VkExternalMemoryPropertiesKHR##- (plusAddr## (byteArrayContents## b) off)- b-- {-# INLINE unsafeFromByteArrayOffset #-}--instance VulkanMarshal VkExternalMemoryPropertiesKHR where- type StructFields VkExternalMemoryPropertiesKHR =- '["externalMemoryFeatures", "exportFromImportedHandleTypes", -- ' closing tick for hsc2hs- "compatibleHandleTypes"]- type CUnionType VkExternalMemoryPropertiesKHR = 'False -- ' closing tick for hsc2hs- type ReturnedOnly VkExternalMemoryPropertiesKHR = 'True -- ' closing tick for hsc2hs- type StructExtends VkExternalMemoryPropertiesKHR = '[] -- ' closing tick for hsc2hs--instance {-# OVERLAPPING #-}- HasVkExternalMemoryFeatures VkExternalMemoryPropertiesKHR where- type VkExternalMemoryFeaturesMType VkExternalMemoryPropertiesKHR =- VkExternalMemoryFeatureFlagsKHR-- {-# NOINLINE vkExternalMemoryFeatures #-}- vkExternalMemoryFeatures x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExternalMemoryPropertiesKHR, externalMemoryFeatures})-- {-# INLINE vkExternalMemoryFeaturesByteOffset #-}- vkExternalMemoryFeaturesByteOffset ~_- = #{offset VkExternalMemoryPropertiesKHR, externalMemoryFeatures}-- {-# INLINE readVkExternalMemoryFeatures #-}- readVkExternalMemoryFeatures p- = peekByteOff p #{offset VkExternalMemoryPropertiesKHR, externalMemoryFeatures}-- {-# INLINE writeVkExternalMemoryFeatures #-}- writeVkExternalMemoryFeatures p- = pokeByteOff p #{offset VkExternalMemoryPropertiesKHR, externalMemoryFeatures}--instance {-# OVERLAPPING #-}- HasField "externalMemoryFeatures" VkExternalMemoryPropertiesKHR- where- type FieldType "externalMemoryFeatures"- VkExternalMemoryPropertiesKHR- = VkExternalMemoryFeatureFlagsKHR- type FieldOptional "externalMemoryFeatures"- VkExternalMemoryPropertiesKHR- = 'False -- ' closing tick for hsc2hs- type FieldOffset "externalMemoryFeatures"- VkExternalMemoryPropertiesKHR- =- #{offset VkExternalMemoryPropertiesKHR, externalMemoryFeatures}- type FieldIsArray "externalMemoryFeatures"- VkExternalMemoryPropertiesKHR- = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkExternalMemoryPropertiesKHR, externalMemoryFeatures}--instance CanReadField "externalMemoryFeatures"- VkExternalMemoryPropertiesKHR- where- {-# INLINE getField #-}- getField = vkExternalMemoryFeatures-- {-# INLINE readField #-}- readField = readVkExternalMemoryFeatures--instance {-# OVERLAPPING #-}- HasVkExportFromImportedHandleTypes VkExternalMemoryPropertiesKHR- where- type VkExportFromImportedHandleTypesMType- VkExternalMemoryPropertiesKHR- = VkExternalMemoryHandleTypeFlagsKHR-- {-# NOINLINE vkExportFromImportedHandleTypes #-}- vkExportFromImportedHandleTypes x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExternalMemoryPropertiesKHR, exportFromImportedHandleTypes})-- {-# INLINE vkExportFromImportedHandleTypesByteOffset #-}- vkExportFromImportedHandleTypesByteOffset ~_- = #{offset VkExternalMemoryPropertiesKHR, exportFromImportedHandleTypes}-- {-# INLINE readVkExportFromImportedHandleTypes #-}- readVkExportFromImportedHandleTypes p- = peekByteOff p #{offset VkExternalMemoryPropertiesKHR, exportFromImportedHandleTypes}-- {-# INLINE writeVkExportFromImportedHandleTypes #-}- writeVkExportFromImportedHandleTypes p- = pokeByteOff p #{offset VkExternalMemoryPropertiesKHR, exportFromImportedHandleTypes}--instance {-# OVERLAPPING #-}- HasField "exportFromImportedHandleTypes"- VkExternalMemoryPropertiesKHR- where- type FieldType "exportFromImportedHandleTypes"- VkExternalMemoryPropertiesKHR- = VkExternalMemoryHandleTypeFlagsKHR- type FieldOptional "exportFromImportedHandleTypes"- VkExternalMemoryPropertiesKHR- = 'True -- ' closing tick for hsc2hs- type FieldOffset "exportFromImportedHandleTypes"- VkExternalMemoryPropertiesKHR- =- #{offset VkExternalMemoryPropertiesKHR, exportFromImportedHandleTypes}- type FieldIsArray "exportFromImportedHandleTypes"- VkExternalMemoryPropertiesKHR- = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = True-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkExternalMemoryPropertiesKHR, exportFromImportedHandleTypes}--instance CanReadField "exportFromImportedHandleTypes"- VkExternalMemoryPropertiesKHR- where- {-# INLINE getField #-}- getField = vkExportFromImportedHandleTypes-- {-# INLINE readField #-}- readField = readVkExportFromImportedHandleTypes--instance {-# OVERLAPPING #-}- HasVkCompatibleHandleTypes VkExternalMemoryPropertiesKHR where- type VkCompatibleHandleTypesMType VkExternalMemoryPropertiesKHR =- VkExternalMemoryHandleTypeFlagsKHR-- {-# NOINLINE vkCompatibleHandleTypes #-}- vkCompatibleHandleTypes x- = unsafeDupablePerformIO- (peekByteOff (unsafePtr x) #{offset VkExternalMemoryPropertiesKHR, compatibleHandleTypes})-- {-# INLINE vkCompatibleHandleTypesByteOffset #-}- vkCompatibleHandleTypesByteOffset ~_- = #{offset VkExternalMemoryPropertiesKHR, compatibleHandleTypes}-- {-# INLINE readVkCompatibleHandleTypes #-}- readVkCompatibleHandleTypes p- = peekByteOff p #{offset VkExternalMemoryPropertiesKHR, compatibleHandleTypes}-- {-# INLINE writeVkCompatibleHandleTypes #-}- writeVkCompatibleHandleTypes p- = pokeByteOff p #{offset VkExternalMemoryPropertiesKHR, compatibleHandleTypes}--instance {-# OVERLAPPING #-}- HasField "compatibleHandleTypes" VkExternalMemoryPropertiesKHR- where- type FieldType "compatibleHandleTypes"- VkExternalMemoryPropertiesKHR- = VkExternalMemoryHandleTypeFlagsKHR- type FieldOptional "compatibleHandleTypes"- VkExternalMemoryPropertiesKHR- = 'False -- ' closing tick for hsc2hs- type FieldOffset "compatibleHandleTypes"- VkExternalMemoryPropertiesKHR- =- #{offset VkExternalMemoryPropertiesKHR, compatibleHandleTypes}- type FieldIsArray "compatibleHandleTypes"- VkExternalMemoryPropertiesKHR- = 'False -- ' closing tick for hsc2hs-- {-# INLINE fieldOptional #-}- fieldOptional = False-- {-# INLINE fieldOffset #-}- fieldOffset- = #{offset VkExternalMemoryPropertiesKHR, compatibleHandleTypes}--instance CanReadField "compatibleHandleTypes"- VkExternalMemoryPropertiesKHR- where- {-# INLINE getField #-}- getField = vkCompatibleHandleTypes-- {-# INLINE readField #-}- readField = readVkCompatibleHandleTypes--instance Show VkExternalMemoryPropertiesKHR where- showsPrec d x- = showString "VkExternalMemoryPropertiesKHR {" .- showString "vkExternalMemoryFeatures = " .- showsPrec d (vkExternalMemoryFeatures x) .- showString ", " .- showString "vkExportFromImportedHandleTypes = " .- showsPrec d (vkExportFromImportedHandleTypes x) .- showString ", " .- showString "vkCompatibleHandleTypes = " .- showsPrec d (vkCompatibleHandleTypes x) . showChar '}'
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff
file too large to diff