{-# language CPP #-}
module Vulkan.Dynamic  ( InstanceCmds(..)
                       , getInstanceProcAddr'
                       , initInstanceCmds
                       , DeviceCmds(..)
                       , initDeviceCmds
                       ) where

import Vulkan.CStruct.Utils (FixedArray)
import Foreign.Ptr (castFunPtr)
import GHC.Ptr (nullFunPtr)
import Foreign.Ptr (nullPtr)
import Foreign.C.Types (CChar)
import Foreign.C.Types (CFloat)
import Foreign.C.Types (CInt)
import Foreign.C.Types (CSize)
import Data.Int (Int32)
import Foreign.Ptr (FunPtr)
import Foreign.Ptr (Ptr)
import GHC.Ptr (Ptr(Ptr))
import Data.Word (Word16)
import Data.Word (Word32)
import Data.Word (Word64)
import Vulkan.NamedType ((:::))
import {-# SOURCE #-} Vulkan.Extensions.WSITypes (AHardwareBuffer)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_ray_tracing (AccelerationStructureBuildGeometryInfoKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_ray_tracing (AccelerationStructureBuildOffsetInfoKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_ray_tracing (AccelerationStructureCreateInfoKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_NV_ray_tracing (AccelerationStructureCreateInfoNV)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_ray_tracing (AccelerationStructureDeviceAddressInfoKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_NV_ray_tracing (AccelerationStructureInfoNV)
import {-# SOURCE #-} Vulkan.Extensions.Handles (AccelerationStructureKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_ray_tracing (AccelerationStructureMemoryRequirementsInfoKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_NV_ray_tracing (AccelerationStructureMemoryRequirementsInfoNV)
import {-# SOURCE #-} Vulkan.Extensions.VK_NV_ray_tracing (AccelerationStructureNV)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_ray_tracing (AccelerationStructureVersionKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_swapchain (AcquireNextImageInfoKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_performance_query (AcquireProfilingLockInfoKHR)
import {-# SOURCE #-} Vulkan.Core10.AllocationCallbacks (AllocationCallbacks)
import {-# SOURCE #-} Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer (AndroidHardwareBufferPropertiesANDROID)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_android_surface (AndroidSurfaceCreateInfoKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_ray_tracing (BindAccelerationStructureMemoryInfoKHR)
import {-# SOURCE #-} Vulkan.Core11.Promoted_From_VK_KHR_bind_memory2 (BindBufferMemoryInfo)
import {-# SOURCE #-} Vulkan.Core11.Promoted_From_VK_KHR_bind_memory2 (BindImageMemoryInfo)
import {-# SOURCE #-} Vulkan.Core10.SparseResourceMemoryManagement (BindSparseInfo)
import {-# SOURCE #-} Vulkan.Core10.BaseType (Bool32)
import {-# SOURCE #-} Vulkan.Core10.Handles (Buffer)
import {-# SOURCE #-} Vulkan.Core10.CommandBufferBuilding (BufferCopy)
import {-# SOURCE #-} Vulkan.Core10.Buffer (BufferCreateInfo)
import {-# SOURCE #-} Vulkan.Core12.Promoted_From_VK_KHR_buffer_device_address (BufferDeviceAddressInfo)
import {-# SOURCE #-} Vulkan.Core10.CommandBufferBuilding (BufferImageCopy)
import {-# SOURCE #-} Vulkan.Core10.OtherTypes (BufferMemoryBarrier)
import {-# SOURCE #-} Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2 (BufferMemoryRequirementsInfo2)
import {-# SOURCE #-} Vulkan.Core10.Handles (BufferView)
import {-# SOURCE #-} Vulkan.Core10.BufferView (BufferViewCreateInfo)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_calibrated_timestamps (CalibratedTimestampInfoEXT)
import {-# SOURCE #-} Vulkan.Extensions.VK_NV_device_diagnostic_checkpoints (CheckpointDataNV)
import {-# SOURCE #-} Vulkan.Core10.CommandBufferBuilding (ClearAttachment)
import {-# SOURCE #-} Vulkan.Core10.SharedTypes (ClearColorValue)
import {-# SOURCE #-} Vulkan.Core10.SharedTypes (ClearDepthStencilValue)
import {-# SOURCE #-} Vulkan.Core10.CommandBufferBuilding (ClearRect)
import {-# SOURCE #-} Vulkan.Extensions.VK_NV_shading_rate_image (CoarseSampleOrderCustomNV)
import {-# SOURCE #-} Vulkan.Extensions.VK_NV_shading_rate_image (CoarseSampleOrderTypeNV)
import {-# SOURCE #-} Vulkan.Core10.CommandBuffer (CommandBufferAllocateInfo)
import {-# SOURCE #-} Vulkan.Core10.CommandBuffer (CommandBufferBeginInfo)
import {-# SOURCE #-} Vulkan.Core10.Enums.CommandBufferResetFlagBits (CommandBufferResetFlags)
import {-# SOURCE #-} Vulkan.Core10.Handles (CommandBuffer_T)
import {-# SOURCE #-} Vulkan.Core10.Handles (CommandPool)
import {-# SOURCE #-} Vulkan.Core10.CommandPool (CommandPoolCreateInfo)
import {-# SOURCE #-} Vulkan.Core10.Enums.CommandPoolResetFlagBits (CommandPoolResetFlags)
import {-# SOURCE #-} Vulkan.Core11.Enums.CommandPoolTrimFlags (CommandPoolTrimFlags)
import {-# SOURCE #-} Vulkan.Core10.Pipeline (ComputePipelineCreateInfo)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_conditional_rendering (ConditionalRenderingBeginInfoEXT)
import {-# SOURCE #-} Vulkan.Extensions.VK_NV_cooperative_matrix (CooperativeMatrixPropertiesNV)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_ray_tracing (CopyAccelerationStructureInfoKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_ray_tracing (CopyAccelerationStructureModeKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_ray_tracing (CopyAccelerationStructureToMemoryInfoKHR)
import {-# SOURCE #-} Vulkan.Core10.DescriptorSet (CopyDescriptorSet)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_ray_tracing (CopyMemoryToAccelerationStructureInfoKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_debug_marker (DebugMarkerMarkerInfoEXT)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_debug_marker (DebugMarkerObjectNameInfoEXT)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_debug_marker (DebugMarkerObjectTagInfoEXT)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_debug_report (DebugReportCallbackCreateInfoEXT)
import {-# SOURCE #-} Vulkan.Extensions.Handles (DebugReportCallbackEXT)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_debug_report (DebugReportFlagsEXT)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_debug_report (DebugReportObjectTypeEXT)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_debug_utils (DebugUtilsLabelEXT)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_debug_utils (DebugUtilsMessageSeverityFlagBitsEXT)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_debug_utils (DebugUtilsMessageTypeFlagsEXT)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_debug_utils (DebugUtilsMessengerCallbackDataEXT)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_debug_utils (DebugUtilsMessengerCreateInfoEXT)
import {-# SOURCE #-} Vulkan.Extensions.Handles (DebugUtilsMessengerEXT)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_debug_utils (DebugUtilsObjectNameInfoEXT)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_debug_utils (DebugUtilsObjectTagInfoEXT)
import {-# SOURCE #-} Vulkan.Extensions.Handles (DeferredOperationKHR)
import {-# SOURCE #-} Vulkan.Core10.Enums.DependencyFlagBits (DependencyFlags)
import {-# SOURCE #-} Vulkan.Core10.Handles (DescriptorPool)
import {-# SOURCE #-} Vulkan.Core10.DescriptorSet (DescriptorPoolCreateInfo)
import {-# SOURCE #-} Vulkan.Core10.Enums.DescriptorPoolResetFlags (DescriptorPoolResetFlags)
import {-# SOURCE #-} Vulkan.Core10.Handles (DescriptorSet)
import {-# SOURCE #-} Vulkan.Core10.DescriptorSet (DescriptorSetAllocateInfo)
import {-# SOURCE #-} Vulkan.Core10.Handles (DescriptorSetLayout)
import {-# SOURCE #-} Vulkan.Core10.DescriptorSet (DescriptorSetLayoutCreateInfo)
import {-# SOURCE #-} Vulkan.Core11.Promoted_From_VK_KHR_maintenance3 (DescriptorSetLayoutSupport)
import {-# SOURCE #-} Vulkan.Core11.Handles (DescriptorUpdateTemplate)
import {-# SOURCE #-} Vulkan.Core11.Promoted_From_VK_KHR_descriptor_update_template (DescriptorUpdateTemplateCreateInfo)
import {-# SOURCE #-} Vulkan.Core10.BaseType (DeviceAddress)
import {-# SOURCE #-} Vulkan.Core10.Device (DeviceCreateInfo)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_display_control (DeviceEventInfoEXT)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_swapchain (DeviceGroupPresentCapabilitiesKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_swapchain (DeviceGroupPresentModeFlagsKHR)
import {-# SOURCE #-} Vulkan.Core10.Handles (DeviceMemory)
import {-# SOURCE #-} Vulkan.Core12.Promoted_From_VK_KHR_buffer_device_address (DeviceMemoryOpaqueCaptureAddressInfo)
import {-# SOURCE #-} Vulkan.Core11.Originally_Based_On_VK_KHR_protected_memory (DeviceQueueInfo2)
import {-# SOURCE #-} Vulkan.Core10.BaseType (DeviceSize)
import {-# SOURCE #-} Vulkan.Core10.Handles (Device_T)
import {-# SOURCE #-} Vulkan.Extensions.WSITypes (Display)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_display_control (DisplayEventInfoEXT)
import {-# SOURCE #-} Vulkan.Extensions.Handles (DisplayKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_display (DisplayModeCreateInfoKHR)
import {-# SOURCE #-} Vulkan.Extensions.Handles (DisplayModeKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_get_display_properties2 (DisplayModeProperties2KHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_display (DisplayModePropertiesKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_get_display_properties2 (DisplayPlaneCapabilities2KHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_display (DisplayPlaneCapabilitiesKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_get_display_properties2 (DisplayPlaneInfo2KHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_get_display_properties2 (DisplayPlaneProperties2KHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_display (DisplayPlanePropertiesKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_display_control (DisplayPowerInfoEXT)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_get_display_properties2 (DisplayProperties2KHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_display (DisplayPropertiesKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_display (DisplaySurfaceCreateInfoKHR)
import {-# SOURCE #-} Vulkan.Core10.Handles (Event)
import {-# SOURCE #-} Vulkan.Core10.Event (EventCreateInfo)
import {-# SOURCE #-} Vulkan.Core10.ExtensionDiscovery (ExtensionProperties)
import {-# SOURCE #-} Vulkan.Core10.SharedTypes (Extent2D)
import {-# SOURCE #-} Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities (ExternalBufferProperties)
import {-# SOURCE #-} Vulkan.Core11.Promoted_From_VK_KHR_external_fence_capabilities (ExternalFenceProperties)
import {-# SOURCE #-} Vulkan.Extensions.VK_NV_external_memory_capabilities (ExternalImageFormatPropertiesNV)
import {-# SOURCE #-} Vulkan.Core11.Enums.ExternalMemoryHandleTypeFlagBits (ExternalMemoryHandleTypeFlagBits)
import {-# SOURCE #-} Vulkan.Extensions.VK_NV_external_memory_capabilities (ExternalMemoryHandleTypeFlagsNV)
import {-# SOURCE #-} Vulkan.Core11.Promoted_From_VK_KHR_external_semaphore_capabilities (ExternalSemaphoreProperties)
import {-# SOURCE #-} Vulkan.Core10.Handles (Fence)
import {-# SOURCE #-} Vulkan.Core10.Fence (FenceCreateInfo)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_external_fence_fd (FenceGetFdInfoKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_external_fence_win32 (FenceGetWin32HandleInfoKHR)
import {-# SOURCE #-} Vulkan.Core10.Enums.Filter (Filter)
import {-# SOURCE #-} Vulkan.Core10.Enums.Format (Format)
import {-# SOURCE #-} Vulkan.Core10.DeviceInitialization (FormatProperties)
import {-# SOURCE #-} Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2 (FormatProperties2)
import {-# SOURCE #-} Vulkan.Core10.Handles (Framebuffer)
import {-# SOURCE #-} Vulkan.Core10.Pass (FramebufferCreateInfo)
import {-# SOURCE #-} Vulkan.Extensions.VK_NV_coverage_reduction_mode (FramebufferMixedSamplesCombinationNV)
import {-# SOURCE #-} Vulkan.Extensions.VK_NV_device_generated_commands (GeneratedCommandsInfoNV)
import {-# SOURCE #-} Vulkan.Extensions.VK_NV_device_generated_commands (GeneratedCommandsMemoryRequirementsInfoNV)
import {-# SOURCE #-} Vulkan.Core10.Pipeline (GraphicsPipelineCreateInfo)
import {-# SOURCE #-} Vulkan.Extensions.WSITypes (HANDLE)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_hdr_metadata (HdrMetadataEXT)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_headless_surface (HeadlessSurfaceCreateInfoEXT)
import {-# SOURCE #-} Vulkan.Extensions.VK_MVK_ios_surface (IOSSurfaceCreateInfoMVK)
import {-# SOURCE #-} Vulkan.Core10.Handles (Image)
import {-# SOURCE #-} Vulkan.Core10.CommandBufferBuilding (ImageBlit)
import {-# SOURCE #-} Vulkan.Core10.CommandBufferBuilding (ImageCopy)
import {-# SOURCE #-} Vulkan.Core10.Enums.ImageCreateFlagBits (ImageCreateFlags)
import {-# SOURCE #-} Vulkan.Core10.Image (ImageCreateInfo)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_image_drm_format_modifier (ImageDrmFormatModifierPropertiesEXT)
import {-# SOURCE #-} Vulkan.Core10.DeviceInitialization (ImageFormatProperties)
import {-# SOURCE #-} Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2 (ImageFormatProperties2)
import {-# SOURCE #-} Vulkan.Core10.Enums.ImageLayout (ImageLayout)
import {-# SOURCE #-} Vulkan.Core10.OtherTypes (ImageMemoryBarrier)
import {-# SOURCE #-} Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2 (ImageMemoryRequirementsInfo2)
import {-# SOURCE #-} Vulkan.Extensions.VK_FUCHSIA_imagepipe_surface (ImagePipeSurfaceCreateInfoFUCHSIA)
import {-# SOURCE #-} Vulkan.Core10.CommandBufferBuilding (ImageResolve)
import {-# SOURCE #-} Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2 (ImageSparseMemoryRequirementsInfo2)
import {-# SOURCE #-} Vulkan.Core10.Image (ImageSubresource)
import {-# SOURCE #-} Vulkan.Core10.SharedTypes (ImageSubresourceRange)
import {-# SOURCE #-} Vulkan.Core10.Enums.ImageTiling (ImageTiling)
import {-# SOURCE #-} Vulkan.Core10.Enums.ImageType (ImageType)
import {-# SOURCE #-} Vulkan.Core10.Enums.ImageUsageFlagBits (ImageUsageFlags)
import {-# SOURCE #-} Vulkan.Core10.Handles (ImageView)
import {-# SOURCE #-} Vulkan.Extensions.VK_NVX_image_view_handle (ImageViewAddressPropertiesNVX)
import {-# SOURCE #-} Vulkan.Core10.ImageView (ImageViewCreateInfo)
import {-# SOURCE #-} Vulkan.Extensions.VK_NVX_image_view_handle (ImageViewHandleInfoNVX)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_external_fence_fd (ImportFenceFdInfoKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_external_fence_win32 (ImportFenceWin32HandleInfoKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_external_semaphore_fd (ImportSemaphoreFdInfoKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_external_semaphore_win32 (ImportSemaphoreWin32HandleInfoKHR)
import {-# SOURCE #-} Vulkan.Core10.Enums.IndexType (IndexType)
import {-# SOURCE #-} Vulkan.Extensions.VK_NV_device_generated_commands (IndirectCommandsLayoutCreateInfoNV)
import {-# SOURCE #-} Vulkan.Extensions.Handles (IndirectCommandsLayoutNV)
import {-# SOURCE #-} Vulkan.Extensions.VK_INTEL_performance_query (InitializePerformanceApiInfoINTEL)
import {-# SOURCE #-} Vulkan.Core10.Handles (Instance_T)
import {-# SOURCE #-} Vulkan.Core10.LayerDiscovery (LayerProperties)
import {-# SOURCE #-} Vulkan.Extensions.VK_MVK_macos_surface (MacOSSurfaceCreateInfoMVK)
import {-# SOURCE #-} Vulkan.Core10.Memory (MappedMemoryRange)
import {-# SOURCE #-} Vulkan.Core10.Memory (MemoryAllocateInfo)
import {-# SOURCE #-} Vulkan.Core10.OtherTypes (MemoryBarrier)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_external_memory_fd (MemoryFdPropertiesKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer (MemoryGetAndroidHardwareBufferInfoANDROID)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_external_memory_fd (MemoryGetFdInfoKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_external_memory_win32 (MemoryGetWin32HandleInfoKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_external_memory_host (MemoryHostPointerPropertiesEXT)
import {-# SOURCE #-} Vulkan.Core10.Enums.MemoryMapFlags (MemoryMapFlags)
import {-# SOURCE #-} Vulkan.Core10.MemoryManagement (MemoryRequirements)
import {-# SOURCE #-} Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2 (MemoryRequirements2)
import {-# SOURCE #-} Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2 (MemoryRequirements2KHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_external_memory_win32 (MemoryWin32HandlePropertiesKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_metal_surface (MetalSurfaceCreateInfoEXT)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_sample_locations (MultisamplePropertiesEXT)
import {-# SOURCE #-} Vulkan.Core10.Enums.ObjectType (ObjectType)
import {-# SOURCE #-} Vulkan.Core10.FuncPointers (PFN_vkVoidFunction)
import {-# SOURCE #-} Vulkan.Extensions.VK_GOOGLE_display_timing (PastPresentationTimingGOOGLE)
import {-# SOURCE #-} Vulkan.Core11.Enums.PeerMemoryFeatureFlagBits (PeerMemoryFeatureFlags)
import {-# SOURCE #-} Vulkan.Extensions.VK_INTEL_performance_query (PerformanceConfigurationAcquireInfoINTEL)
import {-# SOURCE #-} Vulkan.Extensions.Handles (PerformanceConfigurationINTEL)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_performance_query (PerformanceCounterDescriptionKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_performance_query (PerformanceCounterKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_INTEL_performance_query (PerformanceMarkerInfoINTEL)
import {-# SOURCE #-} Vulkan.Extensions.VK_INTEL_performance_query (PerformanceOverrideInfoINTEL)
import {-# SOURCE #-} Vulkan.Extensions.VK_INTEL_performance_query (PerformanceParameterTypeINTEL)
import {-# SOURCE #-} Vulkan.Extensions.VK_INTEL_performance_query (PerformanceStreamMarkerInfoINTEL)
import {-# SOURCE #-} Vulkan.Extensions.VK_INTEL_performance_query (PerformanceValueINTEL)
import {-# SOURCE #-} Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities (PhysicalDeviceExternalBufferInfo)
import {-# SOURCE #-} Vulkan.Core11.Promoted_From_VK_KHR_external_fence_capabilities (PhysicalDeviceExternalFenceInfo)
import {-# SOURCE #-} Vulkan.Core11.Promoted_From_VK_KHR_external_semaphore_capabilities (PhysicalDeviceExternalSemaphoreInfo)
import {-# SOURCE #-} Vulkan.Core10.DeviceInitialization (PhysicalDeviceFeatures)
import {-# SOURCE #-} Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2 (PhysicalDeviceFeatures2)
import {-# SOURCE #-} Vulkan.Core11.Promoted_From_VK_KHR_device_group_creation (PhysicalDeviceGroupProperties)
import {-# SOURCE #-} Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2 (PhysicalDeviceImageFormatInfo2)
import {-# SOURCE #-} Vulkan.Core10.DeviceInitialization (PhysicalDeviceMemoryProperties)
import {-# SOURCE #-} Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2 (PhysicalDeviceMemoryProperties2)
import {-# SOURCE #-} Vulkan.Core10.DeviceInitialization (PhysicalDeviceProperties)
import {-# SOURCE #-} Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2 (PhysicalDeviceProperties2)
import {-# SOURCE #-} Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2 (PhysicalDeviceSparseImageFormatInfo2)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_get_surface_capabilities2 (PhysicalDeviceSurfaceInfo2KHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_tooling_info (PhysicalDeviceToolPropertiesEXT)
import {-# SOURCE #-} Vulkan.Core10.Handles (PhysicalDevice_T)
import {-# SOURCE #-} Vulkan.Core10.Handles (Pipeline)
import {-# SOURCE #-} Vulkan.Core10.Enums.PipelineBindPoint (PipelineBindPoint)
import {-# SOURCE #-} Vulkan.Core10.Handles (PipelineCache)
import {-# SOURCE #-} Vulkan.Core10.PipelineCache (PipelineCacheCreateInfo)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_pipeline_executable_properties (PipelineExecutableInfoKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_pipeline_executable_properties (PipelineExecutableInternalRepresentationKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_pipeline_executable_properties (PipelineExecutablePropertiesKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_pipeline_executable_properties (PipelineExecutableStatisticKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_pipeline_executable_properties (PipelineInfoKHR)
import {-# SOURCE #-} Vulkan.Core10.Handles (PipelineLayout)
import {-# SOURCE #-} Vulkan.Core10.PipelineLayout (PipelineLayoutCreateInfo)
import {-# SOURCE #-} Vulkan.Core10.Enums.PipelineStageFlagBits (PipelineStageFlagBits)
import {-# SOURCE #-} Vulkan.Core10.Enums.PipelineStageFlagBits (PipelineStageFlags)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_swapchain (PresentInfoKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_surface (PresentModeKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_private_data (PrivateDataSlotCreateInfoEXT)
import {-# SOURCE #-} Vulkan.Extensions.Handles (PrivateDataSlotEXT)
import {-# SOURCE #-} Vulkan.Core10.Enums.QueryControlFlagBits (QueryControlFlags)
import {-# SOURCE #-} Vulkan.Core10.Handles (QueryPool)
import {-# SOURCE #-} Vulkan.Core10.Query (QueryPoolCreateInfo)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_performance_query (QueryPoolPerformanceCreateInfoKHR)
import {-# SOURCE #-} Vulkan.Core10.Enums.QueryResultFlagBits (QueryResultFlags)
import {-# SOURCE #-} Vulkan.Core10.Enums.QueryType (QueryType)
import {-# SOURCE #-} Vulkan.Core10.DeviceInitialization (QueueFamilyProperties)
import {-# SOURCE #-} Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2 (QueueFamilyProperties2)
import {-# SOURCE #-} Vulkan.Core10.Handles (Queue_T)
import {-# SOURCE #-} Vulkan.Extensions.WSITypes (RROutput)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_ray_tracing (RayTracingPipelineCreateInfoKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_NV_ray_tracing (RayTracingPipelineCreateInfoNV)
import {-# SOURCE #-} Vulkan.Core10.CommandBufferBuilding (Rect2D)
import {-# SOURCE #-} Vulkan.Extensions.VK_GOOGLE_display_timing (RefreshCycleDurationGOOGLE)
import {-# SOURCE #-} Vulkan.Core10.Handles (RenderPass)
import {-# SOURCE #-} Vulkan.Core10.CommandBufferBuilding (RenderPassBeginInfo)
import {-# SOURCE #-} Vulkan.Core10.Pass (RenderPassCreateInfo)
import {-# SOURCE #-} Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2 (RenderPassCreateInfo2)
import {-# SOURCE #-} Vulkan.Core10.Enums.Result (Result)
import {-# SOURCE #-} Vulkan.Core10.Enums.SampleCountFlagBits (SampleCountFlagBits)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_sample_locations (SampleLocationsInfoEXT)
import {-# SOURCE #-} Vulkan.Core10.Handles (Sampler)
import {-# SOURCE #-} Vulkan.Core10.Sampler (SamplerCreateInfo)
import {-# SOURCE #-} Vulkan.Core11.Handles (SamplerYcbcrConversion)
import {-# SOURCE #-} Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion (SamplerYcbcrConversionCreateInfo)
import {-# SOURCE #-} Vulkan.Core10.Handles (Semaphore)
import {-# SOURCE #-} Vulkan.Core10.QueueSemaphore (SemaphoreCreateInfo)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_external_semaphore_fd (SemaphoreGetFdInfoKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_external_semaphore_win32 (SemaphoreGetWin32HandleInfoKHR)
import {-# SOURCE #-} Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore (SemaphoreSignalInfo)
import {-# SOURCE #-} Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore (SemaphoreWaitInfo)
import {-# SOURCE #-} Vulkan.Extensions.VK_AMD_shader_info (ShaderInfoTypeAMD)
import {-# SOURCE #-} Vulkan.Core10.Handles (ShaderModule)
import {-# SOURCE #-} Vulkan.Core10.Shader (ShaderModuleCreateInfo)
import {-# SOURCE #-} Vulkan.Core10.Enums.ShaderStageFlagBits (ShaderStageFlagBits)
import {-# SOURCE #-} Vulkan.Core10.Enums.ShaderStageFlagBits (ShaderStageFlags)
import {-# SOURCE #-} Vulkan.Extensions.VK_NV_shading_rate_image (ShadingRatePaletteNV)
import {-# SOURCE #-} Vulkan.Core10.SparseResourceMemoryManagement (SparseImageFormatProperties)
import {-# SOURCE #-} Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2 (SparseImageFormatProperties2)
import {-# SOURCE #-} Vulkan.Core10.SparseResourceMemoryManagement (SparseImageMemoryRequirements)
import {-# SOURCE #-} Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2 (SparseImageMemoryRequirements2)
import {-# SOURCE #-} Vulkan.Core10.Enums.StencilFaceFlagBits (StencilFaceFlags)
import {-# SOURCE #-} Vulkan.Extensions.VK_GGP_stream_descriptor_surface (StreamDescriptorSurfaceCreateInfoGGP)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_ray_tracing (StridedBufferRegionKHR)
import {-# SOURCE #-} Vulkan.Core10.Queue (SubmitInfo)
import {-# SOURCE #-} Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2 (SubpassBeginInfo)
import {-# SOURCE #-} Vulkan.Core10.Enums.SubpassContents (SubpassContents)
import {-# SOURCE #-} Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2 (SubpassEndInfo)
import {-# SOURCE #-} Vulkan.Core10.Image (SubresourceLayout)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_display_surface_counter (SurfaceCapabilities2EXT)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_get_surface_capabilities2 (SurfaceCapabilities2KHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_surface (SurfaceCapabilitiesKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_display_surface_counter (SurfaceCounterFlagBitsEXT)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_get_surface_capabilities2 (SurfaceFormat2KHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_surface (SurfaceFormatKHR)
import {-# SOURCE #-} Vulkan.Extensions.Handles (SurfaceKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_swapchain (SwapchainCreateInfoKHR)
import {-# SOURCE #-} Vulkan.Extensions.Handles (SwapchainKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_calibrated_timestamps (TimeDomainEXT)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_validation_cache (ValidationCacheCreateInfoEXT)
import {-# SOURCE #-} Vulkan.Extensions.Handles (ValidationCacheEXT)
import {-# SOURCE #-} Vulkan.Extensions.VK_NN_vi_surface (ViSurfaceCreateInfoNN)
import {-# SOURCE #-} Vulkan.Core10.CommandBufferBuilding (Viewport)
import {-# SOURCE #-} Vulkan.Extensions.VK_NV_clip_space_w_scaling (ViewportWScalingNV)
import {-# SOURCE #-} Vulkan.Extensions.WSITypes (VisualID)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_wayland_surface (WaylandSurfaceCreateInfoKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_win32_surface (Win32SurfaceCreateInfoKHR)
import {-# SOURCE #-} Vulkan.Extensions.WSITypes (Wl_display)
import {-# SOURCE #-} Vulkan.Core10.DescriptorSet (WriteDescriptorSet)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_xcb_surface (XcbSurfaceCreateInfoKHR)
import {-# SOURCE #-} Vulkan.Extensions.WSITypes (Xcb_connection_t)
import {-# SOURCE #-} Vulkan.Extensions.WSITypes (Xcb_visualid_t)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_xlib_surface (XlibSurfaceCreateInfoKHR)
import Vulkan.Zero (Zero(..))
data InstanceCmds = InstanceCmds
  { InstanceCmds -> Ptr Instance_T
instanceCmdsHandle :: Ptr Instance_T
  , InstanceCmds
-> FunPtr
     (Ptr Instance_T
      -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
pVkDestroyInstance :: FunPtr (Ptr Instance_T -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
  , InstanceCmds
-> FunPtr
     (Ptr Instance_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pPhysicalDevices" ::: Ptr (Ptr PhysicalDevice_T))
      -> IO Result)
pVkEnumeratePhysicalDevices :: FunPtr (Ptr Instance_T -> ("pPhysicalDeviceCount" ::: Ptr Word32) -> ("pPhysicalDevices" ::: Ptr (Ptr PhysicalDevice_T)) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr Instance_T
      -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction)
pVkGetInstanceProcAddr :: FunPtr (Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction)
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pProperties" ::: Ptr PhysicalDeviceProperties) -> IO ())
pVkGetPhysicalDeviceProperties :: FunPtr (Ptr PhysicalDevice_T -> ("pProperties" ::: Ptr PhysicalDeviceProperties) -> IO ())
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pQueueFamilyProperties" ::: Ptr QueueFamilyProperties)
      -> IO ())
pVkGetPhysicalDeviceQueueFamilyProperties :: FunPtr (Ptr PhysicalDevice_T -> ("pQueueFamilyPropertyCount" ::: Ptr Word32) -> ("pQueueFamilyProperties" ::: Ptr QueueFamilyProperties) -> IO ())
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pMemoryProperties" ::: Ptr PhysicalDeviceMemoryProperties)
      -> IO ())
pVkGetPhysicalDeviceMemoryProperties :: FunPtr (Ptr PhysicalDevice_T -> ("pMemoryProperties" ::: Ptr PhysicalDeviceMemoryProperties) -> IO ())
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pFeatures" ::: Ptr PhysicalDeviceFeatures) -> IO ())
pVkGetPhysicalDeviceFeatures :: FunPtr (Ptr PhysicalDevice_T -> ("pFeatures" ::: Ptr PhysicalDeviceFeatures) -> IO ())
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T
      -> Format
      -> ("pFormatProperties" ::: Ptr FormatProperties)
      -> IO ())
pVkGetPhysicalDeviceFormatProperties :: FunPtr (Ptr PhysicalDevice_T -> Format -> ("pFormatProperties" ::: Ptr FormatProperties) -> IO ())
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T
      -> Format
      -> ImageType
      -> ImageTiling
      -> ImageUsageFlags
      -> ImageCreateFlags
      -> ("pImageFormatProperties" ::: Ptr ImageFormatProperties)
      -> IO Result)
pVkGetPhysicalDeviceImageFormatProperties :: FunPtr (Ptr PhysicalDevice_T -> Format -> ImageType -> ImageTiling -> ImageUsageFlags -> ImageCreateFlags -> ("pImageFormatProperties" ::: Ptr ImageFormatProperties) -> IO Result)
  , InstanceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr PhysicalDevice_T
      -> ("pCreateInfo" ::: Ptr (DeviceCreateInfo a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pDevice" ::: Ptr (Ptr Device_T))
      -> IO Result)
pVkCreateDevice :: forall a . FunPtr (Ptr PhysicalDevice_T -> ("pCreateInfo" ::: Ptr (DeviceCreateInfo a)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pDevice" ::: Ptr (Ptr Device_T)) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr LayerProperties)
      -> IO Result)
pVkEnumerateDeviceLayerProperties :: FunPtr (Ptr PhysicalDevice_T -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr LayerProperties) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pName" ::: Ptr CChar)
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr ExtensionProperties)
      -> IO Result)
pVkEnumerateDeviceExtensionProperties :: FunPtr (Ptr PhysicalDevice_T -> ("pLayerName" ::: Ptr CChar) -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr ExtensionProperties) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T
      -> Format
      -> ImageType
      -> ("samples" ::: SampleCountFlagBits)
      -> ImageUsageFlags
      -> ImageTiling
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr SparseImageFormatProperties)
      -> IO ())
pVkGetPhysicalDeviceSparseImageFormatProperties :: FunPtr (Ptr PhysicalDevice_T -> Format -> ImageType -> ("samples" ::: SampleCountFlagBits) -> ImageUsageFlags -> ImageTiling -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr SparseImageFormatProperties) -> IO ())
  , InstanceCmds
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr AndroidSurfaceCreateInfoKHR)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
pVkCreateAndroidSurfaceKHR :: FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr AndroidSurfaceCreateInfoKHR) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr DisplayPropertiesKHR)
      -> IO Result)
pVkGetPhysicalDeviceDisplayPropertiesKHR :: FunPtr (Ptr PhysicalDevice_T -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr DisplayPropertiesKHR) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr DisplayPlanePropertiesKHR)
      -> IO Result)
pVkGetPhysicalDeviceDisplayPlanePropertiesKHR :: FunPtr (Ptr PhysicalDevice_T -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr DisplayPlanePropertiesKHR) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T
      -> Word32
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pDisplays" ::: Ptr DisplayKHR)
      -> IO Result)
pVkGetDisplayPlaneSupportedDisplaysKHR :: FunPtr (Ptr PhysicalDevice_T -> ("planeIndex" ::: Word32) -> ("pDisplayCount" ::: Ptr Word32) -> ("pDisplays" ::: Ptr DisplayKHR) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T
      -> DisplayKHR
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr DisplayModePropertiesKHR)
      -> IO Result)
pVkGetDisplayModePropertiesKHR :: FunPtr (Ptr PhysicalDevice_T -> DisplayKHR -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr DisplayModePropertiesKHR) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T
      -> DisplayKHR
      -> ("pCreateInfo" ::: Ptr DisplayModeCreateInfoKHR)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pMode" ::: Ptr DisplayModeKHR)
      -> IO Result)
pVkCreateDisplayModeKHR :: FunPtr (Ptr PhysicalDevice_T -> DisplayKHR -> ("pCreateInfo" ::: Ptr DisplayModeCreateInfoKHR) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pMode" ::: Ptr DisplayModeKHR) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T
      -> DisplayModeKHR
      -> Word32
      -> ("pCapabilities" ::: Ptr DisplayPlaneCapabilitiesKHR)
      -> IO Result)
pVkGetDisplayPlaneCapabilitiesKHR :: FunPtr (Ptr PhysicalDevice_T -> DisplayModeKHR -> ("planeIndex" ::: Word32) -> ("pCapabilities" ::: Ptr DisplayPlaneCapabilitiesKHR) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr DisplaySurfaceCreateInfoKHR)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
pVkCreateDisplayPlaneSurfaceKHR :: FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr DisplaySurfaceCreateInfoKHR) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr Instance_T
      -> SurfaceKHR
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
pVkDestroySurfaceKHR :: FunPtr (Ptr Instance_T -> SurfaceKHR -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T
      -> Word32
      -> SurfaceKHR
      -> ("pSupported" ::: Ptr Bool32)
      -> IO Result)
pVkGetPhysicalDeviceSurfaceSupportKHR :: FunPtr (Ptr PhysicalDevice_T -> ("queueFamilyIndex" ::: Word32) -> SurfaceKHR -> ("pSupported" ::: Ptr Bool32) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T
      -> SurfaceKHR
      -> ("pSurfaceCapabilities" ::: Ptr SurfaceCapabilitiesKHR)
      -> IO Result)
pVkGetPhysicalDeviceSurfaceCapabilitiesKHR :: FunPtr (Ptr PhysicalDevice_T -> SurfaceKHR -> ("pSurfaceCapabilities" ::: Ptr SurfaceCapabilitiesKHR) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T
      -> SurfaceKHR
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pSurfaceFormats" ::: Ptr SurfaceFormatKHR)
      -> IO Result)
pVkGetPhysicalDeviceSurfaceFormatsKHR :: FunPtr (Ptr PhysicalDevice_T -> SurfaceKHR -> ("pSurfaceFormatCount" ::: Ptr Word32) -> ("pSurfaceFormats" ::: Ptr SurfaceFormatKHR) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T
      -> SurfaceKHR
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pPresentModes" ::: Ptr PresentModeKHR)
      -> IO Result)
pVkGetPhysicalDeviceSurfacePresentModesKHR :: FunPtr (Ptr PhysicalDevice_T -> SurfaceKHR -> ("pPresentModeCount" ::: Ptr Word32) -> ("pPresentModes" ::: Ptr PresentModeKHR) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr ViSurfaceCreateInfoNN)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
pVkCreateViSurfaceNN :: FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr ViSurfaceCreateInfoNN) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr WaylandSurfaceCreateInfoKHR)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
pVkCreateWaylandSurfaceKHR :: FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr WaylandSurfaceCreateInfoKHR) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T -> Word32 -> Ptr Wl_display -> IO Bool32)
pVkGetPhysicalDeviceWaylandPresentationSupportKHR :: FunPtr (Ptr PhysicalDevice_T -> ("queueFamilyIndex" ::: Word32) -> Ptr Wl_display -> IO Bool32)
  , InstanceCmds
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr Win32SurfaceCreateInfoKHR)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
pVkCreateWin32SurfaceKHR :: FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr Win32SurfaceCreateInfoKHR) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result)
  , InstanceCmds
-> FunPtr (Ptr PhysicalDevice_T -> Word32 -> IO Bool32)
pVkGetPhysicalDeviceWin32PresentationSupportKHR :: FunPtr (Ptr PhysicalDevice_T -> ("queueFamilyIndex" ::: Word32) -> IO Bool32)
  , InstanceCmds
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr XlibSurfaceCreateInfoKHR)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
pVkCreateXlibSurfaceKHR :: FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr XlibSurfaceCreateInfoKHR) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T
      -> Word32 -> ("dpy" ::: Ptr Display) -> VisualID -> IO Bool32)
pVkGetPhysicalDeviceXlibPresentationSupportKHR :: FunPtr (Ptr PhysicalDevice_T -> ("queueFamilyIndex" ::: Word32) -> ("dpy" ::: Ptr Display) -> VisualID -> IO Bool32)
  , InstanceCmds
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr XcbSurfaceCreateInfoKHR)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
pVkCreateXcbSurfaceKHR :: FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr XcbSurfaceCreateInfoKHR) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T
      -> Word32 -> Ptr Xcb_connection_t -> Word32 -> IO Bool32)
pVkGetPhysicalDeviceXcbPresentationSupportKHR :: FunPtr (Ptr PhysicalDevice_T -> ("queueFamilyIndex" ::: Word32) -> Ptr Xcb_connection_t -> ("visual_id" ::: Xcb_visualid_t) -> IO Bool32)
  , InstanceCmds
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr ImagePipeSurfaceCreateInfoFUCHSIA)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
pVkCreateImagePipeSurfaceFUCHSIA :: FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr ImagePipeSurfaceCreateInfoFUCHSIA) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr StreamDescriptorSurfaceCreateInfoGGP)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
pVkCreateStreamDescriptorSurfaceGGP :: FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr StreamDescriptorSurfaceCreateInfoGGP) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr DebugReportCallbackCreateInfoEXT)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pCallback" ::: Ptr DebugReportCallbackEXT)
      -> IO Result)
pVkCreateDebugReportCallbackEXT :: FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr DebugReportCallbackCreateInfoEXT) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pCallback" ::: Ptr DebugReportCallbackEXT) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr Instance_T
      -> DebugReportCallbackEXT
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
pVkDestroyDebugReportCallbackEXT :: FunPtr (Ptr Instance_T -> DebugReportCallbackEXT -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
  , InstanceCmds
-> FunPtr
     (Ptr Instance_T
      -> DebugReportFlagsEXT
      -> DebugReportObjectTypeEXT
      -> VisualID
      -> ("location" ::: CSize)
      -> ("messageCode" ::: Int32)
      -> ("pName" ::: Ptr CChar)
      -> ("pName" ::: Ptr CChar)
      -> IO ())
pVkDebugReportMessageEXT :: FunPtr (Ptr Instance_T -> DebugReportFlagsEXT -> DebugReportObjectTypeEXT -> ("object" ::: Word64) -> ("location" ::: CSize) -> ("messageCode" ::: Int32) -> ("pLayerPrefix" ::: Ptr CChar) -> ("pMessage" ::: Ptr CChar) -> IO ())
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T
      -> Format
      -> ImageType
      -> ImageTiling
      -> ImageUsageFlags
      -> ImageCreateFlags
      -> ("externalHandleType" ::: ExternalMemoryHandleTypeFlagsNV)
      -> ("pExternalImageFormatProperties"
          ::: Ptr ExternalImageFormatPropertiesNV)
      -> IO Result)
pVkGetPhysicalDeviceExternalImageFormatPropertiesNV :: FunPtr (Ptr PhysicalDevice_T -> Format -> ImageType -> ImageTiling -> ImageUsageFlags -> ImageCreateFlags -> ("externalHandleType" ::: ExternalMemoryHandleTypeFlagsNV) -> ("pExternalImageFormatProperties" ::: Ptr ExternalImageFormatPropertiesNV) -> IO Result)
  , InstanceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr PhysicalDevice_T
      -> ("pFeatures" ::: Ptr (PhysicalDeviceFeatures2 a)) -> IO ())
pVkGetPhysicalDeviceFeatures2 :: forall a . FunPtr (Ptr PhysicalDevice_T -> ("pFeatures" ::: Ptr (PhysicalDeviceFeatures2 a)) -> IO ())
  , InstanceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr PhysicalDevice_T
      -> ("pProperties" ::: Ptr (PhysicalDeviceProperties2 a)) -> IO ())
pVkGetPhysicalDeviceProperties2 :: forall a . FunPtr (Ptr PhysicalDevice_T -> ("pProperties" ::: Ptr (PhysicalDeviceProperties2 a)) -> IO ())
  , InstanceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr PhysicalDevice_T
      -> Format
      -> ("pFormatProperties" ::: Ptr (FormatProperties2 a))
      -> IO ())
pVkGetPhysicalDeviceFormatProperties2 :: forall a . FunPtr (Ptr PhysicalDevice_T -> Format -> ("pFormatProperties" ::: Ptr (FormatProperties2 a)) -> IO ())
  , InstanceCmds
-> forall (a :: [*]) (b :: [*]).
   FunPtr
     (Ptr PhysicalDevice_T
      -> ("pImageFormatInfo" ::: Ptr (PhysicalDeviceImageFormatInfo2 a))
      -> ("pImageFormatProperties" ::: Ptr (ImageFormatProperties2 b))
      -> IO Result)
pVkGetPhysicalDeviceImageFormatProperties2 :: forall a b . FunPtr (Ptr PhysicalDevice_T -> ("pImageFormatInfo" ::: Ptr (PhysicalDeviceImageFormatInfo2 a)) -> ("pImageFormatProperties" ::: Ptr (ImageFormatProperties2 b)) -> IO Result)
  , InstanceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pQueueFamilyProperties" ::: Ptr (QueueFamilyProperties2 a))
      -> IO ())
pVkGetPhysicalDeviceQueueFamilyProperties2 :: forall a . FunPtr (Ptr PhysicalDevice_T -> ("pQueueFamilyPropertyCount" ::: Ptr Word32) -> ("pQueueFamilyProperties" ::: Ptr (QueueFamilyProperties2 a)) -> IO ())
  , InstanceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr PhysicalDevice_T
      -> ("pMemoryProperties"
          ::: Ptr (PhysicalDeviceMemoryProperties2 a))
      -> IO ())
pVkGetPhysicalDeviceMemoryProperties2 :: forall a . FunPtr (Ptr PhysicalDevice_T -> ("pMemoryProperties" ::: Ptr (PhysicalDeviceMemoryProperties2 a)) -> IO ())
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pFormatInfo" ::: Ptr PhysicalDeviceSparseImageFormatInfo2)
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr SparseImageFormatProperties2)
      -> IO ())
pVkGetPhysicalDeviceSparseImageFormatProperties2 :: FunPtr (Ptr PhysicalDevice_T -> ("pFormatInfo" ::: Ptr PhysicalDeviceSparseImageFormatInfo2) -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr SparseImageFormatProperties2) -> IO ())
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pExternalBufferInfo" ::: Ptr PhysicalDeviceExternalBufferInfo)
      -> ("pExternalBufferProperties" ::: Ptr ExternalBufferProperties)
      -> IO ())
pVkGetPhysicalDeviceExternalBufferProperties :: FunPtr (Ptr PhysicalDevice_T -> ("pExternalBufferInfo" ::: Ptr PhysicalDeviceExternalBufferInfo) -> ("pExternalBufferProperties" ::: Ptr ExternalBufferProperties) -> IO ())
  , InstanceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr PhysicalDevice_T
      -> ("pExternalSemaphoreInfo"
          ::: Ptr (PhysicalDeviceExternalSemaphoreInfo a))
      -> ("pExternalSemaphoreProperties"
          ::: Ptr ExternalSemaphoreProperties)
      -> IO ())
pVkGetPhysicalDeviceExternalSemaphoreProperties :: forall a . FunPtr (Ptr PhysicalDevice_T -> ("pExternalSemaphoreInfo" ::: Ptr (PhysicalDeviceExternalSemaphoreInfo a)) -> ("pExternalSemaphoreProperties" ::: Ptr ExternalSemaphoreProperties) -> IO ())
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pExternalFenceInfo" ::: Ptr PhysicalDeviceExternalFenceInfo)
      -> ("pExternalFenceProperties" ::: Ptr ExternalFenceProperties)
      -> IO ())
pVkGetPhysicalDeviceExternalFenceProperties :: FunPtr (Ptr PhysicalDevice_T -> ("pExternalFenceInfo" ::: Ptr PhysicalDeviceExternalFenceInfo) -> ("pExternalFenceProperties" ::: Ptr ExternalFenceProperties) -> IO ())
  , InstanceCmds
-> FunPtr (Ptr PhysicalDevice_T -> DisplayKHR -> IO Result)
pVkReleaseDisplayEXT :: FunPtr (Ptr PhysicalDevice_T -> DisplayKHR -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("dpy" ::: Ptr Display) -> DisplayKHR -> IO Result)
pVkAcquireXlibDisplayEXT :: FunPtr (Ptr PhysicalDevice_T -> ("dpy" ::: Ptr Display) -> DisplayKHR -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("dpy" ::: Ptr Display)
      -> VisualID
      -> ("pDisplays" ::: Ptr DisplayKHR)
      -> IO Result)
pVkGetRandROutputDisplayEXT :: FunPtr (Ptr PhysicalDevice_T -> ("dpy" ::: Ptr Display) -> RROutput -> ("pDisplay" ::: Ptr DisplayKHR) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T
      -> SurfaceKHR
      -> ("pSurfaceCapabilities" ::: Ptr SurfaceCapabilities2EXT)
      -> IO Result)
pVkGetPhysicalDeviceSurfaceCapabilities2EXT :: FunPtr (Ptr PhysicalDevice_T -> SurfaceKHR -> ("pSurfaceCapabilities" ::: Ptr SurfaceCapabilities2EXT) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr Instance_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pPhysicalDeviceGroupProperties"
          ::: Ptr PhysicalDeviceGroupProperties)
      -> IO Result)
pVkEnumeratePhysicalDeviceGroups :: FunPtr (Ptr Instance_T -> ("pPhysicalDeviceGroupCount" ::: Ptr Word32) -> ("pPhysicalDeviceGroupProperties" ::: Ptr PhysicalDeviceGroupProperties) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T
      -> SurfaceKHR
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pRects" ::: Ptr Rect2D)
      -> IO Result)
pVkGetPhysicalDevicePresentRectanglesKHR :: FunPtr (Ptr PhysicalDevice_T -> SurfaceKHR -> ("pRectCount" ::: Ptr Word32) -> ("pRects" ::: Ptr Rect2D) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr IOSSurfaceCreateInfoMVK)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
pVkCreateIOSSurfaceMVK :: FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr IOSSurfaceCreateInfoMVK) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr MacOSSurfaceCreateInfoMVK)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
pVkCreateMacOSSurfaceMVK :: FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr MacOSSurfaceCreateInfoMVK) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr MetalSurfaceCreateInfoEXT)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
pVkCreateMetalSurfaceEXT :: FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr MetalSurfaceCreateInfoEXT) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("samples" ::: SampleCountFlagBits)
      -> ("pMultisampleProperties" ::: Ptr MultisamplePropertiesEXT)
      -> IO ())
pVkGetPhysicalDeviceMultisamplePropertiesEXT :: FunPtr (Ptr PhysicalDevice_T -> ("samples" ::: SampleCountFlagBits) -> ("pMultisampleProperties" ::: Ptr MultisamplePropertiesEXT) -> IO ())
  , InstanceCmds
-> forall (a :: [*]) (b :: [*]).
   FunPtr
     (Ptr PhysicalDevice_T
      -> ("pSurfaceInfo" ::: Ptr (PhysicalDeviceSurfaceInfo2KHR a))
      -> ("pSurfaceCapabilities" ::: Ptr (SurfaceCapabilities2KHR b))
      -> IO Result)
pVkGetPhysicalDeviceSurfaceCapabilities2KHR :: forall a b . FunPtr (Ptr PhysicalDevice_T -> ("pSurfaceInfo" ::: Ptr (PhysicalDeviceSurfaceInfo2KHR a)) -> ("pSurfaceCapabilities" ::: Ptr (SurfaceCapabilities2KHR b)) -> IO Result)
  , InstanceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr PhysicalDevice_T
      -> ("pSurfaceInfo" ::: Ptr (PhysicalDeviceSurfaceInfo2KHR a))
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pSurfaceFormats" ::: Ptr SurfaceFormat2KHR)
      -> IO Result)
pVkGetPhysicalDeviceSurfaceFormats2KHR :: forall a . FunPtr (Ptr PhysicalDevice_T -> ("pSurfaceInfo" ::: Ptr (PhysicalDeviceSurfaceInfo2KHR a)) -> ("pSurfaceFormatCount" ::: Ptr Word32) -> ("pSurfaceFormats" ::: Ptr SurfaceFormat2KHR) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr DisplayProperties2KHR)
      -> IO Result)
pVkGetPhysicalDeviceDisplayProperties2KHR :: FunPtr (Ptr PhysicalDevice_T -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr DisplayProperties2KHR) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr DisplayPlaneProperties2KHR)
      -> IO Result)
pVkGetPhysicalDeviceDisplayPlaneProperties2KHR :: FunPtr (Ptr PhysicalDevice_T -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr DisplayPlaneProperties2KHR) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T
      -> DisplayKHR
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr DisplayModeProperties2KHR)
      -> IO Result)
pVkGetDisplayModeProperties2KHR :: FunPtr (Ptr PhysicalDevice_T -> DisplayKHR -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr DisplayModeProperties2KHR) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pDisplayPlaneInfo" ::: Ptr DisplayPlaneInfo2KHR)
      -> ("pCapabilities" ::: Ptr DisplayPlaneCapabilities2KHR)
      -> IO Result)
pVkGetDisplayPlaneCapabilities2KHR :: FunPtr (Ptr PhysicalDevice_T -> ("pDisplayPlaneInfo" ::: Ptr DisplayPlaneInfo2KHR) -> ("pCapabilities" ::: Ptr DisplayPlaneCapabilities2KHR) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pTimeDomains" ::: Ptr TimeDomainEXT)
      -> IO Result)
pVkGetPhysicalDeviceCalibrateableTimeDomainsEXT :: FunPtr (Ptr PhysicalDevice_T -> ("pTimeDomainCount" ::: Ptr Word32) -> ("pTimeDomains" ::: Ptr TimeDomainEXT) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr DebugUtilsMessengerCreateInfoEXT)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pMessenger" ::: Ptr DebugUtilsMessengerEXT)
      -> IO Result)
pVkCreateDebugUtilsMessengerEXT :: FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr DebugUtilsMessengerCreateInfoEXT) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pMessenger" ::: Ptr DebugUtilsMessengerEXT) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr Instance_T
      -> DebugUtilsMessengerEXT
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
pVkDestroyDebugUtilsMessengerEXT :: FunPtr (Ptr Instance_T -> DebugUtilsMessengerEXT -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
  , InstanceCmds
-> FunPtr
     (Ptr Instance_T
      -> DebugUtilsMessageSeverityFlagBitsEXT
      -> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
      -> ("pCallbackData" ::: Ptr DebugUtilsMessengerCallbackDataEXT)
      -> IO ())
pVkSubmitDebugUtilsMessageEXT :: FunPtr (Ptr Instance_T -> DebugUtilsMessageSeverityFlagBitsEXT -> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> ("pCallbackData" ::: Ptr DebugUtilsMessengerCallbackDataEXT) -> IO ())
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr CooperativeMatrixPropertiesNV)
      -> IO Result)
pVkGetPhysicalDeviceCooperativeMatrixPropertiesNV :: FunPtr (Ptr PhysicalDevice_T -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr CooperativeMatrixPropertiesNV) -> IO Result)
  , InstanceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr PhysicalDevice_T
      -> ("pSurfaceInfo" ::: Ptr (PhysicalDeviceSurfaceInfo2KHR a))
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pPresentModes" ::: Ptr PresentModeKHR)
      -> IO Result)
pVkGetPhysicalDeviceSurfacePresentModes2EXT :: forall a . FunPtr (Ptr PhysicalDevice_T -> ("pSurfaceInfo" ::: Ptr (PhysicalDeviceSurfaceInfo2KHR a)) -> ("pPresentModeCount" ::: Ptr Word32) -> ("pPresentModes" ::: Ptr PresentModeKHR) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T
      -> Word32
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pCounters" ::: Ptr PerformanceCounterKHR)
      -> ("pCounterDescriptions"
          ::: Ptr PerformanceCounterDescriptionKHR)
      -> IO Result)
pVkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR :: FunPtr (Ptr PhysicalDevice_T -> ("queueFamilyIndex" ::: Word32) -> ("pCounterCount" ::: Ptr Word32) -> ("pCounters" ::: Ptr PerformanceCounterKHR) -> ("pCounterDescriptions" ::: Ptr PerformanceCounterDescriptionKHR) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPerformanceQueryCreateInfo"
          ::: Ptr QueryPoolPerformanceCreateInfoKHR)
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> IO ())
pVkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR :: FunPtr (Ptr PhysicalDevice_T -> ("pPerformanceQueryCreateInfo" ::: Ptr QueryPoolPerformanceCreateInfoKHR) -> ("pNumPasses" ::: Ptr Word32) -> IO ())
  , InstanceCmds
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr HeadlessSurfaceCreateInfoEXT)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
pVkCreateHeadlessSurfaceEXT :: FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr HeadlessSurfaceCreateInfoEXT) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pCombinations" ::: Ptr FramebufferMixedSamplesCombinationNV)
      -> IO Result)
pVkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV :: FunPtr (Ptr PhysicalDevice_T -> ("pCombinationCount" ::: Ptr Word32) -> ("pCombinations" ::: Ptr FramebufferMixedSamplesCombinationNV) -> IO Result)
  , InstanceCmds
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pToolProperties" ::: Ptr PhysicalDeviceToolPropertiesEXT)
      -> IO Result)
pVkGetPhysicalDeviceToolPropertiesEXT :: FunPtr (Ptr PhysicalDevice_T -> ("pToolCount" ::: Ptr Word32) -> ("pToolProperties" ::: Ptr PhysicalDeviceToolPropertiesEXT) -> IO Result)
  }

deriving instance Eq InstanceCmds
deriving instance Show InstanceCmds
instance Zero InstanceCmds where
  zero :: InstanceCmds
zero = Ptr Instance_T
-> FunPtr
     (Ptr Instance_T
      -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
-> FunPtr
     (Ptr Instance_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pPhysicalDevices" ::: Ptr (Ptr PhysicalDevice_T))
      -> IO Result)
-> FunPtr
     (Ptr Instance_T
      -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pProperties" ::: Ptr PhysicalDeviceProperties) -> IO ())
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pQueueFamilyProperties" ::: Ptr QueueFamilyProperties)
      -> IO ())
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pMemoryProperties" ::: Ptr PhysicalDeviceMemoryProperties)
      -> IO ())
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pFeatures" ::: Ptr PhysicalDeviceFeatures) -> IO ())
-> FunPtr
     (Ptr PhysicalDevice_T
      -> Format
      -> ("pFormatProperties" ::: Ptr FormatProperties)
      -> IO ())
-> FunPtr
     (Ptr PhysicalDevice_T
      -> Format
      -> ImageType
      -> ImageTiling
      -> ImageUsageFlags
      -> ImageCreateFlags
      -> ("pImageFormatProperties" ::: Ptr ImageFormatProperties)
      -> IO Result)
-> (forall (a :: [*]).
    FunPtr
      (Ptr PhysicalDevice_T
       -> ("pCreateInfo" ::: Ptr (DeviceCreateInfo a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pDevice" ::: Ptr (Ptr Device_T))
       -> IO Result))
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr LayerProperties)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pName" ::: Ptr CChar)
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr ExtensionProperties)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> Format
      -> ImageType
      -> ("samples" ::: SampleCountFlagBits)
      -> ImageUsageFlags
      -> ImageTiling
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr SparseImageFormatProperties)
      -> IO ())
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr AndroidSurfaceCreateInfoKHR)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr DisplayPropertiesKHR)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr DisplayPlanePropertiesKHR)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> Word32
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pDisplays" ::: Ptr DisplayKHR)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> DisplayKHR
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr DisplayModePropertiesKHR)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> DisplayKHR
      -> ("pCreateInfo" ::: Ptr DisplayModeCreateInfoKHR)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pMode" ::: Ptr DisplayModeKHR)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> DisplayModeKHR
      -> Word32
      -> ("pCapabilities" ::: Ptr DisplayPlaneCapabilitiesKHR)
      -> IO Result)
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr DisplaySurfaceCreateInfoKHR)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
-> FunPtr
     (Ptr Instance_T
      -> SurfaceKHR
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> FunPtr
     (Ptr PhysicalDevice_T
      -> Word32
      -> SurfaceKHR
      -> ("pSupported" ::: Ptr Bool32)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> SurfaceKHR
      -> ("pSurfaceCapabilities" ::: Ptr SurfaceCapabilitiesKHR)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> SurfaceKHR
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pSurfaceFormats" ::: Ptr SurfaceFormatKHR)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> SurfaceKHR
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pPresentModes" ::: Ptr PresentModeKHR)
      -> IO Result)
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr ViSurfaceCreateInfoNN)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr WaylandSurfaceCreateInfoKHR)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T -> Word32 -> Ptr Wl_display -> IO Bool32)
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr Win32SurfaceCreateInfoKHR)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
-> FunPtr (Ptr PhysicalDevice_T -> Word32 -> IO Bool32)
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr XlibSurfaceCreateInfoKHR)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> Word32 -> ("dpy" ::: Ptr Display) -> VisualID -> IO Bool32)
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr XcbSurfaceCreateInfoKHR)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> Word32 -> Ptr Xcb_connection_t -> Word32 -> IO Bool32)
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr ImagePipeSurfaceCreateInfoFUCHSIA)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr StreamDescriptorSurfaceCreateInfoGGP)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr DebugReportCallbackCreateInfoEXT)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pCallback" ::: Ptr DebugReportCallbackEXT)
      -> IO Result)
-> FunPtr
     (Ptr Instance_T
      -> DebugReportCallbackEXT
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> FunPtr
     (Ptr Instance_T
      -> DebugReportFlagsEXT
      -> DebugReportObjectTypeEXT
      -> VisualID
      -> ("location" ::: CSize)
      -> ("messageCode" ::: Int32)
      -> ("pName" ::: Ptr CChar)
      -> ("pName" ::: Ptr CChar)
      -> IO ())
-> FunPtr
     (Ptr PhysicalDevice_T
      -> Format
      -> ImageType
      -> ImageTiling
      -> ImageUsageFlags
      -> ImageCreateFlags
      -> ("externalHandleType" ::: ExternalMemoryHandleTypeFlagsNV)
      -> ("pExternalImageFormatProperties"
          ::: Ptr ExternalImageFormatPropertiesNV)
      -> IO Result)
-> (forall (a :: [*]).
    FunPtr
      (Ptr PhysicalDevice_T
       -> ("pFeatures" ::: Ptr (PhysicalDeviceFeatures2 a)) -> IO ()))
-> (forall (a :: [*]).
    FunPtr
      (Ptr PhysicalDevice_T
       -> ("pProperties" ::: Ptr (PhysicalDeviceProperties2 a)) -> IO ()))
-> (forall (a :: [*]).
    FunPtr
      (Ptr PhysicalDevice_T
       -> Format
       -> ("pFormatProperties" ::: Ptr (FormatProperties2 a))
       -> IO ()))
-> (forall (a :: [*]) (b :: [*]).
    FunPtr
      (Ptr PhysicalDevice_T
       -> ("pImageFormatInfo" ::: Ptr (PhysicalDeviceImageFormatInfo2 a))
       -> ("pImageFormatProperties" ::: Ptr (ImageFormatProperties2 b))
       -> IO Result))
-> (forall (a :: [*]).
    FunPtr
      (Ptr PhysicalDevice_T
       -> ("pPhysicalDeviceCount" ::: Ptr Word32)
       -> ("pQueueFamilyProperties" ::: Ptr (QueueFamilyProperties2 a))
       -> IO ()))
-> (forall (a :: [*]).
    FunPtr
      (Ptr PhysicalDevice_T
       -> ("pMemoryProperties"
           ::: Ptr (PhysicalDeviceMemoryProperties2 a))
       -> IO ()))
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pFormatInfo" ::: Ptr PhysicalDeviceSparseImageFormatInfo2)
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr SparseImageFormatProperties2)
      -> IO ())
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pExternalBufferInfo" ::: Ptr PhysicalDeviceExternalBufferInfo)
      -> ("pExternalBufferProperties" ::: Ptr ExternalBufferProperties)
      -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr PhysicalDevice_T
       -> ("pExternalSemaphoreInfo"
           ::: Ptr (PhysicalDeviceExternalSemaphoreInfo a))
       -> ("pExternalSemaphoreProperties"
           ::: Ptr ExternalSemaphoreProperties)
       -> IO ()))
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pExternalFenceInfo" ::: Ptr PhysicalDeviceExternalFenceInfo)
      -> ("pExternalFenceProperties" ::: Ptr ExternalFenceProperties)
      -> IO ())
-> FunPtr (Ptr PhysicalDevice_T -> DisplayKHR -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("dpy" ::: Ptr Display) -> DisplayKHR -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("dpy" ::: Ptr Display)
      -> VisualID
      -> ("pDisplays" ::: Ptr DisplayKHR)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> SurfaceKHR
      -> ("pSurfaceCapabilities" ::: Ptr SurfaceCapabilities2EXT)
      -> IO Result)
-> FunPtr
     (Ptr Instance_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pPhysicalDeviceGroupProperties"
          ::: Ptr PhysicalDeviceGroupProperties)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> SurfaceKHR
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pRects" ::: Ptr Rect2D)
      -> IO Result)
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr IOSSurfaceCreateInfoMVK)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr MacOSSurfaceCreateInfoMVK)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr MetalSurfaceCreateInfoEXT)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("samples" ::: SampleCountFlagBits)
      -> ("pMultisampleProperties" ::: Ptr MultisamplePropertiesEXT)
      -> IO ())
-> (forall (a :: [*]) (b :: [*]).
    FunPtr
      (Ptr PhysicalDevice_T
       -> ("pSurfaceInfo" ::: Ptr (PhysicalDeviceSurfaceInfo2KHR a))
       -> ("pSurfaceCapabilities" ::: Ptr (SurfaceCapabilities2KHR b))
       -> IO Result))
-> (forall (a :: [*]).
    FunPtr
      (Ptr PhysicalDevice_T
       -> ("pSurfaceInfo" ::: Ptr (PhysicalDeviceSurfaceInfo2KHR a))
       -> ("pPhysicalDeviceCount" ::: Ptr Word32)
       -> ("pSurfaceFormats" ::: Ptr SurfaceFormat2KHR)
       -> IO Result))
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr DisplayProperties2KHR)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr DisplayPlaneProperties2KHR)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> DisplayKHR
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr DisplayModeProperties2KHR)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pDisplayPlaneInfo" ::: Ptr DisplayPlaneInfo2KHR)
      -> ("pCapabilities" ::: Ptr DisplayPlaneCapabilities2KHR)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pTimeDomains" ::: Ptr TimeDomainEXT)
      -> IO Result)
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr DebugUtilsMessengerCreateInfoEXT)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pMessenger" ::: Ptr DebugUtilsMessengerEXT)
      -> IO Result)
-> FunPtr
     (Ptr Instance_T
      -> DebugUtilsMessengerEXT
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> FunPtr
     (Ptr Instance_T
      -> DebugUtilsMessageSeverityFlagBitsEXT
      -> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
      -> ("pCallbackData" ::: Ptr DebugUtilsMessengerCallbackDataEXT)
      -> IO ())
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr CooperativeMatrixPropertiesNV)
      -> IO Result)
-> (forall (a :: [*]).
    FunPtr
      (Ptr PhysicalDevice_T
       -> ("pSurfaceInfo" ::: Ptr (PhysicalDeviceSurfaceInfo2KHR a))
       -> ("pPhysicalDeviceCount" ::: Ptr Word32)
       -> ("pPresentModes" ::: Ptr PresentModeKHR)
       -> IO Result))
-> FunPtr
     (Ptr PhysicalDevice_T
      -> Word32
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pCounters" ::: Ptr PerformanceCounterKHR)
      -> ("pCounterDescriptions"
          ::: Ptr PerformanceCounterDescriptionKHR)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPerformanceQueryCreateInfo"
          ::: Ptr QueryPoolPerformanceCreateInfoKHR)
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> IO ())
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr HeadlessSurfaceCreateInfoEXT)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pCombinations" ::: Ptr FramebufferMixedSamplesCombinationNV)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pToolProperties" ::: Ptr PhysicalDeviceToolPropertiesEXT)
      -> IO Result)
-> InstanceCmds
InstanceCmds
    Ptr Instance_T
forall a. Ptr a
nullPtr FunPtr
  (Ptr Instance_T
   -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Instance_T
   -> ("pPhysicalDeviceCount" ::: Ptr Word32)
   -> ("pPhysicalDevices" ::: Ptr (Ptr PhysicalDevice_T))
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Instance_T
   -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr PhysicalDevice_T
   -> ("pProperties" ::: Ptr PhysicalDeviceProperties) -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr PhysicalDevice_T
   -> ("pPhysicalDeviceCount" ::: Ptr Word32)
   -> ("pQueueFamilyProperties" ::: Ptr QueueFamilyProperties)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr PhysicalDevice_T
   -> ("pMemoryProperties" ::: Ptr PhysicalDeviceMemoryProperties)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr PhysicalDevice_T
   -> ("pFeatures" ::: Ptr PhysicalDeviceFeatures) -> IO ())
forall a. FunPtr a
nullFunPtr
    FunPtr
  (Ptr PhysicalDevice_T
   -> Format
   -> ("pFormatProperties" ::: Ptr FormatProperties)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr PhysicalDevice_T
   -> Format
   -> ImageType
   -> ImageTiling
   -> ImageUsageFlags
   -> ImageCreateFlags
   -> ("pImageFormatProperties" ::: Ptr ImageFormatProperties)
   -> IO Result)
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr PhysicalDevice_T
   -> ("pCreateInfo" ::: Ptr (DeviceCreateInfo a))
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pDevice" ::: Ptr (Ptr Device_T))
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr PhysicalDevice_T
   -> ("pPhysicalDeviceCount" ::: Ptr Word32)
   -> ("pProperties" ::: Ptr LayerProperties)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr PhysicalDevice_T
   -> ("pName" ::: Ptr CChar)
   -> ("pPhysicalDeviceCount" ::: Ptr Word32)
   -> ("pProperties" ::: Ptr ExtensionProperties)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr PhysicalDevice_T
   -> Format
   -> ImageType
   -> ("samples" ::: SampleCountFlagBits)
   -> ImageUsageFlags
   -> ImageTiling
   -> ("pPhysicalDeviceCount" ::: Ptr Word32)
   -> ("pProperties" ::: Ptr SparseImageFormatProperties)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Instance_T
   -> ("pCreateInfo" ::: Ptr AndroidSurfaceCreateInfoKHR)
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pSurface" ::: Ptr SurfaceKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr PhysicalDevice_T
   -> ("pPhysicalDeviceCount" ::: Ptr Word32)
   -> ("pProperties" ::: Ptr DisplayPropertiesKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr
    FunPtr
  (Ptr PhysicalDevice_T
   -> ("pPhysicalDeviceCount" ::: Ptr Word32)
   -> ("pProperties" ::: Ptr DisplayPlanePropertiesKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr PhysicalDevice_T
   -> Word32
   -> ("pPhysicalDeviceCount" ::: Ptr Word32)
   -> ("pDisplays" ::: Ptr DisplayKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr PhysicalDevice_T
   -> DisplayKHR
   -> ("pPhysicalDeviceCount" ::: Ptr Word32)
   -> ("pProperties" ::: Ptr DisplayModePropertiesKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr PhysicalDevice_T
   -> DisplayKHR
   -> ("pCreateInfo" ::: Ptr DisplayModeCreateInfoKHR)
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pMode" ::: Ptr DisplayModeKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr PhysicalDevice_T
   -> DisplayModeKHR
   -> Word32
   -> ("pCapabilities" ::: Ptr DisplayPlaneCapabilitiesKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Instance_T
   -> ("pCreateInfo" ::: Ptr DisplaySurfaceCreateInfoKHR)
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pSurface" ::: Ptr SurfaceKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Instance_T
   -> SurfaceKHR
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr PhysicalDevice_T
   -> Word32
   -> SurfaceKHR
   -> ("pSupported" ::: Ptr Bool32)
   -> IO Result)
forall a. FunPtr a
nullFunPtr
    FunPtr
  (Ptr PhysicalDevice_T
   -> SurfaceKHR
   -> ("pSurfaceCapabilities" ::: Ptr SurfaceCapabilitiesKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr PhysicalDevice_T
   -> SurfaceKHR
   -> ("pPhysicalDeviceCount" ::: Ptr Word32)
   -> ("pSurfaceFormats" ::: Ptr SurfaceFormatKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr PhysicalDevice_T
   -> SurfaceKHR
   -> ("pPhysicalDeviceCount" ::: Ptr Word32)
   -> ("pPresentModes" ::: Ptr PresentModeKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Instance_T
   -> ("pCreateInfo" ::: Ptr ViSurfaceCreateInfoNN)
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pSurface" ::: Ptr SurfaceKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Instance_T
   -> ("pCreateInfo" ::: Ptr WaylandSurfaceCreateInfoKHR)
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pSurface" ::: Ptr SurfaceKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr PhysicalDevice_T -> Word32 -> Ptr Wl_display -> IO Bool32)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Instance_T
   -> ("pCreateInfo" ::: Ptr Win32SurfaceCreateInfoKHR)
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pSurface" ::: Ptr SurfaceKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr (Ptr PhysicalDevice_T -> Word32 -> IO Bool32)
forall a. FunPtr a
nullFunPtr
    FunPtr
  (Ptr Instance_T
   -> ("pCreateInfo" ::: Ptr XlibSurfaceCreateInfoKHR)
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pSurface" ::: Ptr SurfaceKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr PhysicalDevice_T
   -> Word32 -> ("dpy" ::: Ptr Display) -> VisualID -> IO Bool32)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Instance_T
   -> ("pCreateInfo" ::: Ptr XcbSurfaceCreateInfoKHR)
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pSurface" ::: Ptr SurfaceKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr PhysicalDevice_T
   -> Word32 -> Ptr Xcb_connection_t -> Word32 -> IO Bool32)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Instance_T
   -> ("pCreateInfo" ::: Ptr ImagePipeSurfaceCreateInfoFUCHSIA)
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pSurface" ::: Ptr SurfaceKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Instance_T
   -> ("pCreateInfo" ::: Ptr StreamDescriptorSurfaceCreateInfoGGP)
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pSurface" ::: Ptr SurfaceKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Instance_T
   -> ("pCreateInfo" ::: Ptr DebugReportCallbackCreateInfoEXT)
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pCallback" ::: Ptr DebugReportCallbackEXT)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Instance_T
   -> DebugReportCallbackEXT
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> IO ())
forall a. FunPtr a
nullFunPtr
    FunPtr
  (Ptr Instance_T
   -> DebugReportFlagsEXT
   -> DebugReportObjectTypeEXT
   -> VisualID
   -> ("location" ::: CSize)
   -> ("messageCode" ::: Int32)
   -> ("pName" ::: Ptr CChar)
   -> ("pName" ::: Ptr CChar)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr PhysicalDevice_T
   -> Format
   -> ImageType
   -> ImageTiling
   -> ImageUsageFlags
   -> ImageCreateFlags
   -> ("externalHandleType" ::: ExternalMemoryHandleTypeFlagsNV)
   -> ("pExternalImageFormatProperties"
       ::: Ptr ExternalImageFormatPropertiesNV)
   -> IO Result)
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr PhysicalDevice_T
   -> ("pFeatures" ::: Ptr (PhysicalDeviceFeatures2 a)) -> IO ())
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr PhysicalDevice_T
   -> ("pProperties" ::: Ptr (PhysicalDeviceProperties2 a)) -> IO ())
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr PhysicalDevice_T
   -> Format
   -> ("pFormatProperties" ::: Ptr (FormatProperties2 a))
   -> IO ())
forall a. FunPtr a
nullFunPtr forall (a :: [*]) (b :: [*]).
FunPtr
  (Ptr PhysicalDevice_T
   -> ("pImageFormatInfo" ::: Ptr (PhysicalDeviceImageFormatInfo2 a))
   -> ("pImageFormatProperties" ::: Ptr (ImageFormatProperties2 b))
   -> IO Result)
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr PhysicalDevice_T
   -> ("pPhysicalDeviceCount" ::: Ptr Word32)
   -> ("pQueueFamilyProperties" ::: Ptr (QueueFamilyProperties2 a))
   -> IO ())
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr PhysicalDevice_T
   -> ("pMemoryProperties"
       ::: Ptr (PhysicalDeviceMemoryProperties2 a))
   -> IO ())
forall a. FunPtr a
nullFunPtr
    FunPtr
  (Ptr PhysicalDevice_T
   -> ("pFormatInfo" ::: Ptr PhysicalDeviceSparseImageFormatInfo2)
   -> ("pPhysicalDeviceCount" ::: Ptr Word32)
   -> ("pProperties" ::: Ptr SparseImageFormatProperties2)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr PhysicalDevice_T
   -> ("pExternalBufferInfo" ::: Ptr PhysicalDeviceExternalBufferInfo)
   -> ("pExternalBufferProperties" ::: Ptr ExternalBufferProperties)
   -> IO ())
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr PhysicalDevice_T
   -> ("pExternalSemaphoreInfo"
       ::: Ptr (PhysicalDeviceExternalSemaphoreInfo a))
   -> ("pExternalSemaphoreProperties"
       ::: Ptr ExternalSemaphoreProperties)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr PhysicalDevice_T
   -> ("pExternalFenceInfo" ::: Ptr PhysicalDeviceExternalFenceInfo)
   -> ("pExternalFenceProperties" ::: Ptr ExternalFenceProperties)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr (Ptr PhysicalDevice_T -> DisplayKHR -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr PhysicalDevice_T
   -> ("dpy" ::: Ptr Display) -> DisplayKHR -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr PhysicalDevice_T
   -> ("dpy" ::: Ptr Display)
   -> VisualID
   -> ("pDisplays" ::: Ptr DisplayKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr PhysicalDevice_T
   -> SurfaceKHR
   -> ("pSurfaceCapabilities" ::: Ptr SurfaceCapabilities2EXT)
   -> IO Result)
forall a. FunPtr a
nullFunPtr
    FunPtr
  (Ptr Instance_T
   -> ("pPhysicalDeviceCount" ::: Ptr Word32)
   -> ("pPhysicalDeviceGroupProperties"
       ::: Ptr PhysicalDeviceGroupProperties)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr PhysicalDevice_T
   -> SurfaceKHR
   -> ("pPhysicalDeviceCount" ::: Ptr Word32)
   -> ("pRects" ::: Ptr Rect2D)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Instance_T
   -> ("pCreateInfo" ::: Ptr IOSSurfaceCreateInfoMVK)
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pSurface" ::: Ptr SurfaceKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Instance_T
   -> ("pCreateInfo" ::: Ptr MacOSSurfaceCreateInfoMVK)
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pSurface" ::: Ptr SurfaceKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Instance_T
   -> ("pCreateInfo" ::: Ptr MetalSurfaceCreateInfoEXT)
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pSurface" ::: Ptr SurfaceKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr PhysicalDevice_T
   -> ("samples" ::: SampleCountFlagBits)
   -> ("pMultisampleProperties" ::: Ptr MultisamplePropertiesEXT)
   -> IO ())
forall a. FunPtr a
nullFunPtr forall (a :: [*]) (b :: [*]).
FunPtr
  (Ptr PhysicalDevice_T
   -> ("pSurfaceInfo" ::: Ptr (PhysicalDeviceSurfaceInfo2KHR a))
   -> ("pSurfaceCapabilities" ::: Ptr (SurfaceCapabilities2KHR b))
   -> IO Result)
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr PhysicalDevice_T
   -> ("pSurfaceInfo" ::: Ptr (PhysicalDeviceSurfaceInfo2KHR a))
   -> ("pPhysicalDeviceCount" ::: Ptr Word32)
   -> ("pSurfaceFormats" ::: Ptr SurfaceFormat2KHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr
    FunPtr
  (Ptr PhysicalDevice_T
   -> ("pPhysicalDeviceCount" ::: Ptr Word32)
   -> ("pProperties" ::: Ptr DisplayProperties2KHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr PhysicalDevice_T
   -> ("pPhysicalDeviceCount" ::: Ptr Word32)
   -> ("pProperties" ::: Ptr DisplayPlaneProperties2KHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr PhysicalDevice_T
   -> DisplayKHR
   -> ("pPhysicalDeviceCount" ::: Ptr Word32)
   -> ("pProperties" ::: Ptr DisplayModeProperties2KHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr PhysicalDevice_T
   -> ("pDisplayPlaneInfo" ::: Ptr DisplayPlaneInfo2KHR)
   -> ("pCapabilities" ::: Ptr DisplayPlaneCapabilities2KHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr PhysicalDevice_T
   -> ("pPhysicalDeviceCount" ::: Ptr Word32)
   -> ("pTimeDomains" ::: Ptr TimeDomainEXT)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Instance_T
   -> ("pCreateInfo" ::: Ptr DebugUtilsMessengerCreateInfoEXT)
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pMessenger" ::: Ptr DebugUtilsMessengerEXT)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Instance_T
   -> DebugUtilsMessengerEXT
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Instance_T
   -> DebugUtilsMessageSeverityFlagBitsEXT
   -> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
   -> ("pCallbackData" ::: Ptr DebugUtilsMessengerCallbackDataEXT)
   -> IO ())
forall a. FunPtr a
nullFunPtr
    FunPtr
  (Ptr PhysicalDevice_T
   -> ("pPhysicalDeviceCount" ::: Ptr Word32)
   -> ("pProperties" ::: Ptr CooperativeMatrixPropertiesNV)
   -> IO Result)
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr PhysicalDevice_T
   -> ("pSurfaceInfo" ::: Ptr (PhysicalDeviceSurfaceInfo2KHR a))
   -> ("pPhysicalDeviceCount" ::: Ptr Word32)
   -> ("pPresentModes" ::: Ptr PresentModeKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr PhysicalDevice_T
   -> Word32
   -> ("pPhysicalDeviceCount" ::: Ptr Word32)
   -> ("pCounters" ::: Ptr PerformanceCounterKHR)
   -> ("pCounterDescriptions"
       ::: Ptr PerformanceCounterDescriptionKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr PhysicalDevice_T
   -> ("pPerformanceQueryCreateInfo"
       ::: Ptr QueryPoolPerformanceCreateInfoKHR)
   -> ("pPhysicalDeviceCount" ::: Ptr Word32)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Instance_T
   -> ("pCreateInfo" ::: Ptr HeadlessSurfaceCreateInfoEXT)
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pSurface" ::: Ptr SurfaceKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr PhysicalDevice_T
   -> ("pPhysicalDeviceCount" ::: Ptr Word32)
   -> ("pCombinations" ::: Ptr FramebufferMixedSamplesCombinationNV)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr PhysicalDevice_T
   -> ("pPhysicalDeviceCount" ::: Ptr Word32)
   -> ("pToolProperties" ::: Ptr PhysicalDeviceToolPropertiesEXT)
   -> IO Result)
forall a. FunPtr a
nullFunPtr

-- | A version of 'getInstanceProcAddr' which can be called
-- with a null pointer for the instance.
foreign import ccall
#if !defined(SAFE_FOREIGN_CALLS)
  unsafe
#endif
  "vkGetInstanceProcAddr" getInstanceProcAddr' :: Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction

initInstanceCmds :: Ptr Instance_T -> IO InstanceCmds
initInstanceCmds :: Ptr Instance_T -> IO InstanceCmds
initInstanceCmds handle :: Ptr Instance_T
handle = do
  PFN_vkVoidFunction
vkDestroyInstance <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkDestroyInstance"#)
  PFN_vkVoidFunction
vkEnumeratePhysicalDevices <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkEnumeratePhysicalDevices"#)
  PFN_vkVoidFunction
vkGetInstanceProcAddr <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetInstanceProcAddr"#)
  PFN_vkVoidFunction
vkGetPhysicalDeviceProperties <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDeviceProperties"#)
  PFN_vkVoidFunction
vkGetPhysicalDeviceQueueFamilyProperties <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDeviceQueueFamilyProperties"#)
  PFN_vkVoidFunction
vkGetPhysicalDeviceMemoryProperties <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDeviceMemoryProperties"#)
  PFN_vkVoidFunction
vkGetPhysicalDeviceFeatures <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDeviceFeatures"#)
  PFN_vkVoidFunction
vkGetPhysicalDeviceFormatProperties <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDeviceFormatProperties"#)
  PFN_vkVoidFunction
vkGetPhysicalDeviceImageFormatProperties <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDeviceImageFormatProperties"#)
  PFN_vkVoidFunction
vkCreateDevice <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateDevice"#)
  PFN_vkVoidFunction
vkEnumerateDeviceLayerProperties <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkEnumerateDeviceLayerProperties"#)
  PFN_vkVoidFunction
vkEnumerateDeviceExtensionProperties <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkEnumerateDeviceExtensionProperties"#)
  PFN_vkVoidFunction
vkGetPhysicalDeviceSparseImageFormatProperties <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDeviceSparseImageFormatProperties"#)
  PFN_vkVoidFunction
vkCreateAndroidSurfaceKHR <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateAndroidSurfaceKHR"#)
  PFN_vkVoidFunction
vkGetPhysicalDeviceDisplayPropertiesKHR <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDeviceDisplayPropertiesKHR"#)
  PFN_vkVoidFunction
vkGetPhysicalDeviceDisplayPlanePropertiesKHR <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDeviceDisplayPlanePropertiesKHR"#)
  PFN_vkVoidFunction
vkGetDisplayPlaneSupportedDisplaysKHR <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetDisplayPlaneSupportedDisplaysKHR"#)
  PFN_vkVoidFunction
vkGetDisplayModePropertiesKHR <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetDisplayModePropertiesKHR"#)
  PFN_vkVoidFunction
vkCreateDisplayModeKHR <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateDisplayModeKHR"#)
  PFN_vkVoidFunction
vkGetDisplayPlaneCapabilitiesKHR <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetDisplayPlaneCapabilitiesKHR"#)
  PFN_vkVoidFunction
vkCreateDisplayPlaneSurfaceKHR <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateDisplayPlaneSurfaceKHR"#)
  PFN_vkVoidFunction
vkDestroySurfaceKHR <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkDestroySurfaceKHR"#)
  PFN_vkVoidFunction
vkGetPhysicalDeviceSurfaceSupportKHR <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDeviceSurfaceSupportKHR"#)
  PFN_vkVoidFunction
vkGetPhysicalDeviceSurfaceCapabilitiesKHR <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDeviceSurfaceCapabilitiesKHR"#)
  PFN_vkVoidFunction
vkGetPhysicalDeviceSurfaceFormatsKHR <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDeviceSurfaceFormatsKHR"#)
  PFN_vkVoidFunction
vkGetPhysicalDeviceSurfacePresentModesKHR <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDeviceSurfacePresentModesKHR"#)
  PFN_vkVoidFunction
vkCreateViSurfaceNN <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateViSurfaceNN"#)
  PFN_vkVoidFunction
vkCreateWaylandSurfaceKHR <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateWaylandSurfaceKHR"#)
  PFN_vkVoidFunction
vkGetPhysicalDeviceWaylandPresentationSupportKHR <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDeviceWaylandPresentationSupportKHR"#)
  PFN_vkVoidFunction
vkCreateWin32SurfaceKHR <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateWin32SurfaceKHR"#)
  PFN_vkVoidFunction
vkGetPhysicalDeviceWin32PresentationSupportKHR <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDeviceWin32PresentationSupportKHR"#)
  PFN_vkVoidFunction
vkCreateXlibSurfaceKHR <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateXlibSurfaceKHR"#)
  PFN_vkVoidFunction
vkGetPhysicalDeviceXlibPresentationSupportKHR <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDeviceXlibPresentationSupportKHR"#)
  PFN_vkVoidFunction
vkCreateXcbSurfaceKHR <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateXcbSurfaceKHR"#)
  PFN_vkVoidFunction
vkGetPhysicalDeviceXcbPresentationSupportKHR <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDeviceXcbPresentationSupportKHR"#)
  PFN_vkVoidFunction
vkCreateImagePipeSurfaceFUCHSIA <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateImagePipeSurfaceFUCHSIA"#)
  PFN_vkVoidFunction
vkCreateStreamDescriptorSurfaceGGP <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateStreamDescriptorSurfaceGGP"#)
  PFN_vkVoidFunction
vkCreateDebugReportCallbackEXT <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateDebugReportCallbackEXT"#)
  PFN_vkVoidFunction
vkDestroyDebugReportCallbackEXT <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkDestroyDebugReportCallbackEXT"#)
  PFN_vkVoidFunction
vkDebugReportMessageEXT <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkDebugReportMessageEXT"#)
  PFN_vkVoidFunction
vkGetPhysicalDeviceExternalImageFormatPropertiesNV <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDeviceExternalImageFormatPropertiesNV"#)
  PFN_vkVoidFunction
vkGetPhysicalDeviceFeatures2 <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDeviceFeatures2"#)
  PFN_vkVoidFunction
vkGetPhysicalDeviceProperties2 <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDeviceProperties2"#)
  PFN_vkVoidFunction
vkGetPhysicalDeviceFormatProperties2 <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDeviceFormatProperties2"#)
  PFN_vkVoidFunction
vkGetPhysicalDeviceImageFormatProperties2 <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDeviceImageFormatProperties2"#)
  PFN_vkVoidFunction
vkGetPhysicalDeviceQueueFamilyProperties2 <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDeviceQueueFamilyProperties2"#)
  PFN_vkVoidFunction
vkGetPhysicalDeviceMemoryProperties2 <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDeviceMemoryProperties2"#)
  PFN_vkVoidFunction
vkGetPhysicalDeviceSparseImageFormatProperties2 <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDeviceSparseImageFormatProperties2"#)
  PFN_vkVoidFunction
vkGetPhysicalDeviceExternalBufferProperties <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDeviceExternalBufferProperties"#)
  PFN_vkVoidFunction
vkGetPhysicalDeviceExternalSemaphoreProperties <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDeviceExternalSemaphoreProperties"#)
  PFN_vkVoidFunction
vkGetPhysicalDeviceExternalFenceProperties <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDeviceExternalFenceProperties"#)
  PFN_vkVoidFunction
vkReleaseDisplayEXT <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkReleaseDisplayEXT"#)
  PFN_vkVoidFunction
vkAcquireXlibDisplayEXT <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkAcquireXlibDisplayEXT"#)
  PFN_vkVoidFunction
vkGetRandROutputDisplayEXT <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetRandROutputDisplayEXT"#)
  PFN_vkVoidFunction
vkGetPhysicalDeviceSurfaceCapabilities2EXT <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDeviceSurfaceCapabilities2EXT"#)
  PFN_vkVoidFunction
vkEnumeratePhysicalDeviceGroups <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkEnumeratePhysicalDeviceGroups"#)
  PFN_vkVoidFunction
vkGetPhysicalDevicePresentRectanglesKHR <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDevicePresentRectanglesKHR"#)
  PFN_vkVoidFunction
vkCreateIOSSurfaceMVK <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateIOSSurfaceMVK"#)
  PFN_vkVoidFunction
vkCreateMacOSSurfaceMVK <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateMacOSSurfaceMVK"#)
  PFN_vkVoidFunction
vkCreateMetalSurfaceEXT <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateMetalSurfaceEXT"#)
  PFN_vkVoidFunction
vkGetPhysicalDeviceMultisamplePropertiesEXT <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDeviceMultisamplePropertiesEXT"#)
  PFN_vkVoidFunction
vkGetPhysicalDeviceSurfaceCapabilities2KHR <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDeviceSurfaceCapabilities2KHR"#)
  PFN_vkVoidFunction
vkGetPhysicalDeviceSurfaceFormats2KHR <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDeviceSurfaceFormats2KHR"#)
  PFN_vkVoidFunction
vkGetPhysicalDeviceDisplayProperties2KHR <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDeviceDisplayProperties2KHR"#)
  PFN_vkVoidFunction
vkGetPhysicalDeviceDisplayPlaneProperties2KHR <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDeviceDisplayPlaneProperties2KHR"#)
  PFN_vkVoidFunction
vkGetDisplayModeProperties2KHR <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetDisplayModeProperties2KHR"#)
  PFN_vkVoidFunction
vkGetDisplayPlaneCapabilities2KHR <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetDisplayPlaneCapabilities2KHR"#)
  PFN_vkVoidFunction
vkGetPhysicalDeviceCalibrateableTimeDomainsEXT <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDeviceCalibrateableTimeDomainsEXT"#)
  PFN_vkVoidFunction
vkCreateDebugUtilsMessengerEXT <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateDebugUtilsMessengerEXT"#)
  PFN_vkVoidFunction
vkDestroyDebugUtilsMessengerEXT <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkDestroyDebugUtilsMessengerEXT"#)
  PFN_vkVoidFunction
vkSubmitDebugUtilsMessageEXT <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkSubmitDebugUtilsMessageEXT"#)
  PFN_vkVoidFunction
vkGetPhysicalDeviceCooperativeMatrixPropertiesNV <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDeviceCooperativeMatrixPropertiesNV"#)
  PFN_vkVoidFunction
vkGetPhysicalDeviceSurfacePresentModes2EXT <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDeviceSurfacePresentModes2EXT"#)
  PFN_vkVoidFunction
vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR"#)
  PFN_vkVoidFunction
vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR"#)
  PFN_vkVoidFunction
vkCreateHeadlessSurfaceEXT <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateHeadlessSurfaceEXT"#)
  PFN_vkVoidFunction
vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV"#)
  PFN_vkVoidFunction
vkGetPhysicalDeviceToolPropertiesEXT <- Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' Ptr Instance_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPhysicalDeviceToolPropertiesEXT"#)
  InstanceCmds -> IO InstanceCmds
forall (f :: * -> *) a. Applicative f => a -> f a
pure (InstanceCmds -> IO InstanceCmds)
-> InstanceCmds -> IO InstanceCmds
forall a b. (a -> b) -> a -> b
$ Ptr Instance_T
-> FunPtr
     (Ptr Instance_T
      -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
-> FunPtr
     (Ptr Instance_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pPhysicalDevices" ::: Ptr (Ptr PhysicalDevice_T))
      -> IO Result)
-> FunPtr
     (Ptr Instance_T
      -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pProperties" ::: Ptr PhysicalDeviceProperties) -> IO ())
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pQueueFamilyProperties" ::: Ptr QueueFamilyProperties)
      -> IO ())
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pMemoryProperties" ::: Ptr PhysicalDeviceMemoryProperties)
      -> IO ())
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pFeatures" ::: Ptr PhysicalDeviceFeatures) -> IO ())
-> FunPtr
     (Ptr PhysicalDevice_T
      -> Format
      -> ("pFormatProperties" ::: Ptr FormatProperties)
      -> IO ())
-> FunPtr
     (Ptr PhysicalDevice_T
      -> Format
      -> ImageType
      -> ImageTiling
      -> ImageUsageFlags
      -> ImageCreateFlags
      -> ("pImageFormatProperties" ::: Ptr ImageFormatProperties)
      -> IO Result)
-> (forall (a :: [*]).
    FunPtr
      (Ptr PhysicalDevice_T
       -> ("pCreateInfo" ::: Ptr (DeviceCreateInfo a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pDevice" ::: Ptr (Ptr Device_T))
       -> IO Result))
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr LayerProperties)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pName" ::: Ptr CChar)
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr ExtensionProperties)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> Format
      -> ImageType
      -> ("samples" ::: SampleCountFlagBits)
      -> ImageUsageFlags
      -> ImageTiling
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr SparseImageFormatProperties)
      -> IO ())
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr AndroidSurfaceCreateInfoKHR)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr DisplayPropertiesKHR)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr DisplayPlanePropertiesKHR)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> Word32
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pDisplays" ::: Ptr DisplayKHR)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> DisplayKHR
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr DisplayModePropertiesKHR)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> DisplayKHR
      -> ("pCreateInfo" ::: Ptr DisplayModeCreateInfoKHR)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pMode" ::: Ptr DisplayModeKHR)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> DisplayModeKHR
      -> Word32
      -> ("pCapabilities" ::: Ptr DisplayPlaneCapabilitiesKHR)
      -> IO Result)
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr DisplaySurfaceCreateInfoKHR)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
-> FunPtr
     (Ptr Instance_T
      -> SurfaceKHR
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> FunPtr
     (Ptr PhysicalDevice_T
      -> Word32
      -> SurfaceKHR
      -> ("pSupported" ::: Ptr Bool32)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> SurfaceKHR
      -> ("pSurfaceCapabilities" ::: Ptr SurfaceCapabilitiesKHR)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> SurfaceKHR
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pSurfaceFormats" ::: Ptr SurfaceFormatKHR)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> SurfaceKHR
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pPresentModes" ::: Ptr PresentModeKHR)
      -> IO Result)
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr ViSurfaceCreateInfoNN)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr WaylandSurfaceCreateInfoKHR)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T -> Word32 -> Ptr Wl_display -> IO Bool32)
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr Win32SurfaceCreateInfoKHR)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
-> FunPtr (Ptr PhysicalDevice_T -> Word32 -> IO Bool32)
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr XlibSurfaceCreateInfoKHR)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> Word32 -> ("dpy" ::: Ptr Display) -> VisualID -> IO Bool32)
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr XcbSurfaceCreateInfoKHR)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> Word32 -> Ptr Xcb_connection_t -> Word32 -> IO Bool32)
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr ImagePipeSurfaceCreateInfoFUCHSIA)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr StreamDescriptorSurfaceCreateInfoGGP)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr DebugReportCallbackCreateInfoEXT)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pCallback" ::: Ptr DebugReportCallbackEXT)
      -> IO Result)
-> FunPtr
     (Ptr Instance_T
      -> DebugReportCallbackEXT
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> FunPtr
     (Ptr Instance_T
      -> DebugReportFlagsEXT
      -> DebugReportObjectTypeEXT
      -> VisualID
      -> ("location" ::: CSize)
      -> ("messageCode" ::: Int32)
      -> ("pName" ::: Ptr CChar)
      -> ("pName" ::: Ptr CChar)
      -> IO ())
-> FunPtr
     (Ptr PhysicalDevice_T
      -> Format
      -> ImageType
      -> ImageTiling
      -> ImageUsageFlags
      -> ImageCreateFlags
      -> ("externalHandleType" ::: ExternalMemoryHandleTypeFlagsNV)
      -> ("pExternalImageFormatProperties"
          ::: Ptr ExternalImageFormatPropertiesNV)
      -> IO Result)
-> (forall (a :: [*]).
    FunPtr
      (Ptr PhysicalDevice_T
       -> ("pFeatures" ::: Ptr (PhysicalDeviceFeatures2 a)) -> IO ()))
-> (forall (a :: [*]).
    FunPtr
      (Ptr PhysicalDevice_T
       -> ("pProperties" ::: Ptr (PhysicalDeviceProperties2 a)) -> IO ()))
-> (forall (a :: [*]).
    FunPtr
      (Ptr PhysicalDevice_T
       -> Format
       -> ("pFormatProperties" ::: Ptr (FormatProperties2 a))
       -> IO ()))
-> (forall (a :: [*]) (b :: [*]).
    FunPtr
      (Ptr PhysicalDevice_T
       -> ("pImageFormatInfo" ::: Ptr (PhysicalDeviceImageFormatInfo2 a))
       -> ("pImageFormatProperties" ::: Ptr (ImageFormatProperties2 b))
       -> IO Result))
-> (forall (a :: [*]).
    FunPtr
      (Ptr PhysicalDevice_T
       -> ("pPhysicalDeviceCount" ::: Ptr Word32)
       -> ("pQueueFamilyProperties" ::: Ptr (QueueFamilyProperties2 a))
       -> IO ()))
-> (forall (a :: [*]).
    FunPtr
      (Ptr PhysicalDevice_T
       -> ("pMemoryProperties"
           ::: Ptr (PhysicalDeviceMemoryProperties2 a))
       -> IO ()))
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pFormatInfo" ::: Ptr PhysicalDeviceSparseImageFormatInfo2)
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr SparseImageFormatProperties2)
      -> IO ())
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pExternalBufferInfo" ::: Ptr PhysicalDeviceExternalBufferInfo)
      -> ("pExternalBufferProperties" ::: Ptr ExternalBufferProperties)
      -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr PhysicalDevice_T
       -> ("pExternalSemaphoreInfo"
           ::: Ptr (PhysicalDeviceExternalSemaphoreInfo a))
       -> ("pExternalSemaphoreProperties"
           ::: Ptr ExternalSemaphoreProperties)
       -> IO ()))
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pExternalFenceInfo" ::: Ptr PhysicalDeviceExternalFenceInfo)
      -> ("pExternalFenceProperties" ::: Ptr ExternalFenceProperties)
      -> IO ())
-> FunPtr (Ptr PhysicalDevice_T -> DisplayKHR -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("dpy" ::: Ptr Display) -> DisplayKHR -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("dpy" ::: Ptr Display)
      -> VisualID
      -> ("pDisplays" ::: Ptr DisplayKHR)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> SurfaceKHR
      -> ("pSurfaceCapabilities" ::: Ptr SurfaceCapabilities2EXT)
      -> IO Result)
-> FunPtr
     (Ptr Instance_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pPhysicalDeviceGroupProperties"
          ::: Ptr PhysicalDeviceGroupProperties)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> SurfaceKHR
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pRects" ::: Ptr Rect2D)
      -> IO Result)
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr IOSSurfaceCreateInfoMVK)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr MacOSSurfaceCreateInfoMVK)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr MetalSurfaceCreateInfoEXT)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("samples" ::: SampleCountFlagBits)
      -> ("pMultisampleProperties" ::: Ptr MultisamplePropertiesEXT)
      -> IO ())
-> (forall (a :: [*]) (b :: [*]).
    FunPtr
      (Ptr PhysicalDevice_T
       -> ("pSurfaceInfo" ::: Ptr (PhysicalDeviceSurfaceInfo2KHR a))
       -> ("pSurfaceCapabilities" ::: Ptr (SurfaceCapabilities2KHR b))
       -> IO Result))
-> (forall (a :: [*]).
    FunPtr
      (Ptr PhysicalDevice_T
       -> ("pSurfaceInfo" ::: Ptr (PhysicalDeviceSurfaceInfo2KHR a))
       -> ("pPhysicalDeviceCount" ::: Ptr Word32)
       -> ("pSurfaceFormats" ::: Ptr SurfaceFormat2KHR)
       -> IO Result))
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr DisplayProperties2KHR)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr DisplayPlaneProperties2KHR)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> DisplayKHR
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr DisplayModeProperties2KHR)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pDisplayPlaneInfo" ::: Ptr DisplayPlaneInfo2KHR)
      -> ("pCapabilities" ::: Ptr DisplayPlaneCapabilities2KHR)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pTimeDomains" ::: Ptr TimeDomainEXT)
      -> IO Result)
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr DebugUtilsMessengerCreateInfoEXT)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pMessenger" ::: Ptr DebugUtilsMessengerEXT)
      -> IO Result)
-> FunPtr
     (Ptr Instance_T
      -> DebugUtilsMessengerEXT
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> FunPtr
     (Ptr Instance_T
      -> DebugUtilsMessageSeverityFlagBitsEXT
      -> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
      -> ("pCallbackData" ::: Ptr DebugUtilsMessengerCallbackDataEXT)
      -> IO ())
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr CooperativeMatrixPropertiesNV)
      -> IO Result)
-> (forall (a :: [*]).
    FunPtr
      (Ptr PhysicalDevice_T
       -> ("pSurfaceInfo" ::: Ptr (PhysicalDeviceSurfaceInfo2KHR a))
       -> ("pPhysicalDeviceCount" ::: Ptr Word32)
       -> ("pPresentModes" ::: Ptr PresentModeKHR)
       -> IO Result))
-> FunPtr
     (Ptr PhysicalDevice_T
      -> Word32
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pCounters" ::: Ptr PerformanceCounterKHR)
      -> ("pCounterDescriptions"
          ::: Ptr PerformanceCounterDescriptionKHR)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPerformanceQueryCreateInfo"
          ::: Ptr QueryPoolPerformanceCreateInfoKHR)
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> IO ())
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr HeadlessSurfaceCreateInfoEXT)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pCombinations" ::: Ptr FramebufferMixedSamplesCombinationNV)
      -> IO Result)
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pToolProperties" ::: Ptr PhysicalDeviceToolPropertiesEXT)
      -> IO Result)
-> InstanceCmds
InstanceCmds Ptr Instance_T
handle
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Instance_T
      -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Instance_T -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) PFN_vkVoidFunction
vkDestroyInstance)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Instance_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pPhysicalDevices" ::: Ptr (Ptr PhysicalDevice_T))
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Instance_T -> ("pPhysicalDeviceCount" ::: Ptr Word32) -> ("pPhysicalDevices" ::: Ptr (Ptr PhysicalDevice_T)) -> IO Result) PFN_vkVoidFunction
vkEnumeratePhysicalDevices)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Instance_T
      -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction) PFN_vkVoidFunction
vkGetInstanceProcAddr)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pProperties" ::: Ptr PhysicalDeviceProperties) -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> ("pProperties" ::: Ptr PhysicalDeviceProperties) -> IO ()) PFN_vkVoidFunction
vkGetPhysicalDeviceProperties)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pQueueFamilyProperties" ::: Ptr QueueFamilyProperties)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> ("pQueueFamilyPropertyCount" ::: Ptr Word32) -> ("pQueueFamilyProperties" ::: Ptr QueueFamilyProperties) -> IO ()) PFN_vkVoidFunction
vkGetPhysicalDeviceQueueFamilyProperties)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pMemoryProperties" ::: Ptr PhysicalDeviceMemoryProperties)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> ("pMemoryProperties" ::: Ptr PhysicalDeviceMemoryProperties) -> IO ()) PFN_vkVoidFunction
vkGetPhysicalDeviceMemoryProperties)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pFeatures" ::: Ptr PhysicalDeviceFeatures) -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> ("pFeatures" ::: Ptr PhysicalDeviceFeatures) -> IO ()) PFN_vkVoidFunction
vkGetPhysicalDeviceFeatures)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> Format
      -> ("pFormatProperties" ::: Ptr FormatProperties)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> Format -> ("pFormatProperties" ::: Ptr FormatProperties) -> IO ()) PFN_vkVoidFunction
vkGetPhysicalDeviceFormatProperties)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> Format
      -> ImageType
      -> ImageTiling
      -> ImageUsageFlags
      -> ImageCreateFlags
      -> ("pImageFormatProperties" ::: Ptr ImageFormatProperties)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> Format -> ImageType -> ImageTiling -> ImageUsageFlags -> ImageCreateFlags -> ("pImageFormatProperties" ::: Ptr ImageFormatProperties) -> IO Result) PFN_vkVoidFunction
vkGetPhysicalDeviceImageFormatProperties)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pCreateInfo" ::: Ptr (DeviceCreateInfo a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pDevice" ::: Ptr (Ptr Device_T))
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> ("pCreateInfo" ::: Ptr (DeviceCreateInfo _)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pDevice" ::: Ptr (Ptr Device_T)) -> IO Result) PFN_vkVoidFunction
vkCreateDevice)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr LayerProperties)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr LayerProperties) -> IO Result) PFN_vkVoidFunction
vkEnumerateDeviceLayerProperties)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pName" ::: Ptr CChar)
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr ExtensionProperties)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> ("pLayerName" ::: Ptr CChar) -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr ExtensionProperties) -> IO Result) PFN_vkVoidFunction
vkEnumerateDeviceExtensionProperties)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> Format
      -> ImageType
      -> ("samples" ::: SampleCountFlagBits)
      -> ImageUsageFlags
      -> ImageTiling
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr SparseImageFormatProperties)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> Format -> ImageType -> ("samples" ::: SampleCountFlagBits) -> ImageUsageFlags -> ImageTiling -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr SparseImageFormatProperties) -> IO ()) PFN_vkVoidFunction
vkGetPhysicalDeviceSparseImageFormatProperties)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr AndroidSurfaceCreateInfoKHR)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Instance_T -> ("pCreateInfo" ::: Ptr AndroidSurfaceCreateInfoKHR) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result) PFN_vkVoidFunction
vkCreateAndroidSurfaceKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr DisplayPropertiesKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr DisplayPropertiesKHR) -> IO Result) PFN_vkVoidFunction
vkGetPhysicalDeviceDisplayPropertiesKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr DisplayPlanePropertiesKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr DisplayPlanePropertiesKHR) -> IO Result) PFN_vkVoidFunction
vkGetPhysicalDeviceDisplayPlanePropertiesKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> Word32
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pDisplays" ::: Ptr DisplayKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> ("planeIndex" ::: Word32) -> ("pDisplayCount" ::: Ptr Word32) -> ("pDisplays" ::: Ptr DisplayKHR) -> IO Result) PFN_vkVoidFunction
vkGetDisplayPlaneSupportedDisplaysKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> DisplayKHR
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr DisplayModePropertiesKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> DisplayKHR -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr DisplayModePropertiesKHR) -> IO Result) PFN_vkVoidFunction
vkGetDisplayModePropertiesKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> DisplayKHR
      -> ("pCreateInfo" ::: Ptr DisplayModeCreateInfoKHR)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pMode" ::: Ptr DisplayModeKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> DisplayKHR -> ("pCreateInfo" ::: Ptr DisplayModeCreateInfoKHR) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pMode" ::: Ptr DisplayModeKHR) -> IO Result) PFN_vkVoidFunction
vkCreateDisplayModeKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> DisplayModeKHR
      -> Word32
      -> ("pCapabilities" ::: Ptr DisplayPlaneCapabilitiesKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> DisplayModeKHR -> ("planeIndex" ::: Word32) -> ("pCapabilities" ::: Ptr DisplayPlaneCapabilitiesKHR) -> IO Result) PFN_vkVoidFunction
vkGetDisplayPlaneCapabilitiesKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr DisplaySurfaceCreateInfoKHR)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Instance_T -> ("pCreateInfo" ::: Ptr DisplaySurfaceCreateInfoKHR) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result) PFN_vkVoidFunction
vkCreateDisplayPlaneSurfaceKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Instance_T
      -> SurfaceKHR
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Instance_T -> SurfaceKHR -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) PFN_vkVoidFunction
vkDestroySurfaceKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> Word32
      -> SurfaceKHR
      -> ("pSupported" ::: Ptr Bool32)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> ("queueFamilyIndex" ::: Word32) -> SurfaceKHR -> ("pSupported" ::: Ptr Bool32) -> IO Result) PFN_vkVoidFunction
vkGetPhysicalDeviceSurfaceSupportKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> SurfaceKHR
      -> ("pSurfaceCapabilities" ::: Ptr SurfaceCapabilitiesKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> SurfaceKHR -> ("pSurfaceCapabilities" ::: Ptr SurfaceCapabilitiesKHR) -> IO Result) PFN_vkVoidFunction
vkGetPhysicalDeviceSurfaceCapabilitiesKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> SurfaceKHR
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pSurfaceFormats" ::: Ptr SurfaceFormatKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> SurfaceKHR -> ("pSurfaceFormatCount" ::: Ptr Word32) -> ("pSurfaceFormats" ::: Ptr SurfaceFormatKHR) -> IO Result) PFN_vkVoidFunction
vkGetPhysicalDeviceSurfaceFormatsKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> SurfaceKHR
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pPresentModes" ::: Ptr PresentModeKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> SurfaceKHR -> ("pPresentModeCount" ::: Ptr Word32) -> ("pPresentModes" ::: Ptr PresentModeKHR) -> IO Result) PFN_vkVoidFunction
vkGetPhysicalDeviceSurfacePresentModesKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr ViSurfaceCreateInfoNN)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Instance_T -> ("pCreateInfo" ::: Ptr ViSurfaceCreateInfoNN) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result) PFN_vkVoidFunction
vkCreateViSurfaceNN)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr WaylandSurfaceCreateInfoKHR)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Instance_T -> ("pCreateInfo" ::: Ptr WaylandSurfaceCreateInfoKHR) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result) PFN_vkVoidFunction
vkCreateWaylandSurfaceKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T -> Word32 -> Ptr Wl_display -> IO Bool32)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> ("queueFamilyIndex" ::: Word32) -> Ptr Wl_display -> IO Bool32) PFN_vkVoidFunction
vkGetPhysicalDeviceWaylandPresentationSupportKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr Win32SurfaceCreateInfoKHR)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Instance_T -> ("pCreateInfo" ::: Ptr Win32SurfaceCreateInfoKHR) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result) PFN_vkVoidFunction
vkCreateWin32SurfaceKHR)
    (PFN_vkVoidFunction
-> FunPtr (Ptr PhysicalDevice_T -> Word32 -> IO Bool32)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> ("queueFamilyIndex" ::: Word32) -> IO Bool32) PFN_vkVoidFunction
vkGetPhysicalDeviceWin32PresentationSupportKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr XlibSurfaceCreateInfoKHR)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Instance_T -> ("pCreateInfo" ::: Ptr XlibSurfaceCreateInfoKHR) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result) PFN_vkVoidFunction
vkCreateXlibSurfaceKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> Word32 -> ("dpy" ::: Ptr Display) -> VisualID -> IO Bool32)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> ("queueFamilyIndex" ::: Word32) -> ("dpy" ::: Ptr Display) -> VisualID -> IO Bool32) PFN_vkVoidFunction
vkGetPhysicalDeviceXlibPresentationSupportKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr XcbSurfaceCreateInfoKHR)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Instance_T -> ("pCreateInfo" ::: Ptr XcbSurfaceCreateInfoKHR) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result) PFN_vkVoidFunction
vkCreateXcbSurfaceKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> Word32 -> Ptr Xcb_connection_t -> Word32 -> IO Bool32)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> ("queueFamilyIndex" ::: Word32) -> Ptr Xcb_connection_t -> ("visual_id" ::: Xcb_visualid_t) -> IO Bool32) PFN_vkVoidFunction
vkGetPhysicalDeviceXcbPresentationSupportKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr ImagePipeSurfaceCreateInfoFUCHSIA)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Instance_T -> ("pCreateInfo" ::: Ptr ImagePipeSurfaceCreateInfoFUCHSIA) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result) PFN_vkVoidFunction
vkCreateImagePipeSurfaceFUCHSIA)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr StreamDescriptorSurfaceCreateInfoGGP)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Instance_T -> ("pCreateInfo" ::: Ptr StreamDescriptorSurfaceCreateInfoGGP) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result) PFN_vkVoidFunction
vkCreateStreamDescriptorSurfaceGGP)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr DebugReportCallbackCreateInfoEXT)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pCallback" ::: Ptr DebugReportCallbackEXT)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Instance_T -> ("pCreateInfo" ::: Ptr DebugReportCallbackCreateInfoEXT) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pCallback" ::: Ptr DebugReportCallbackEXT) -> IO Result) PFN_vkVoidFunction
vkCreateDebugReportCallbackEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Instance_T
      -> DebugReportCallbackEXT
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Instance_T -> DebugReportCallbackEXT -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) PFN_vkVoidFunction
vkDestroyDebugReportCallbackEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Instance_T
      -> DebugReportFlagsEXT
      -> DebugReportObjectTypeEXT
      -> VisualID
      -> ("location" ::: CSize)
      -> ("messageCode" ::: Int32)
      -> ("pName" ::: Ptr CChar)
      -> ("pName" ::: Ptr CChar)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Instance_T -> DebugReportFlagsEXT -> DebugReportObjectTypeEXT -> ("object" ::: Word64) -> ("location" ::: CSize) -> ("messageCode" ::: Int32) -> ("pLayerPrefix" ::: Ptr CChar) -> ("pMessage" ::: Ptr CChar) -> IO ()) PFN_vkVoidFunction
vkDebugReportMessageEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> Format
      -> ImageType
      -> ImageTiling
      -> ImageUsageFlags
      -> ImageCreateFlags
      -> ("externalHandleType" ::: ExternalMemoryHandleTypeFlagsNV)
      -> ("pExternalImageFormatProperties"
          ::: Ptr ExternalImageFormatPropertiesNV)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> Format -> ImageType -> ImageTiling -> ImageUsageFlags -> ImageCreateFlags -> ("externalHandleType" ::: ExternalMemoryHandleTypeFlagsNV) -> ("pExternalImageFormatProperties" ::: Ptr ExternalImageFormatPropertiesNV) -> IO Result) PFN_vkVoidFunction
vkGetPhysicalDeviceExternalImageFormatPropertiesNV)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pFeatures" ::: Ptr (PhysicalDeviceFeatures2 a)) -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> ("pFeatures" ::: Ptr (PhysicalDeviceFeatures2 _)) -> IO ()) PFN_vkVoidFunction
vkGetPhysicalDeviceFeatures2)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pProperties" ::: Ptr (PhysicalDeviceProperties2 a)) -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> ("pProperties" ::: Ptr (PhysicalDeviceProperties2 _)) -> IO ()) PFN_vkVoidFunction
vkGetPhysicalDeviceProperties2)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> Format
      -> ("pFormatProperties" ::: Ptr (FormatProperties2 a))
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> Format -> ("pFormatProperties" ::: Ptr (FormatProperties2 _)) -> IO ()) PFN_vkVoidFunction
vkGetPhysicalDeviceFormatProperties2)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pImageFormatInfo" ::: Ptr (PhysicalDeviceImageFormatInfo2 a))
      -> ("pImageFormatProperties" ::: Ptr (ImageFormatProperties2 b))
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> ("pImageFormatInfo" ::: Ptr (PhysicalDeviceImageFormatInfo2 _)) -> ("pImageFormatProperties" ::: Ptr (ImageFormatProperties2 _)) -> IO Result) PFN_vkVoidFunction
vkGetPhysicalDeviceImageFormatProperties2)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pQueueFamilyProperties" ::: Ptr (QueueFamilyProperties2 a))
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> ("pQueueFamilyPropertyCount" ::: Ptr Word32) -> ("pQueueFamilyProperties" ::: Ptr (QueueFamilyProperties2 _)) -> IO ()) PFN_vkVoidFunction
vkGetPhysicalDeviceQueueFamilyProperties2)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pMemoryProperties"
          ::: Ptr (PhysicalDeviceMemoryProperties2 a))
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> ("pMemoryProperties" ::: Ptr (PhysicalDeviceMemoryProperties2 _)) -> IO ()) PFN_vkVoidFunction
vkGetPhysicalDeviceMemoryProperties2)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pFormatInfo" ::: Ptr PhysicalDeviceSparseImageFormatInfo2)
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr SparseImageFormatProperties2)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> ("pFormatInfo" ::: Ptr PhysicalDeviceSparseImageFormatInfo2) -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr SparseImageFormatProperties2) -> IO ()) PFN_vkVoidFunction
vkGetPhysicalDeviceSparseImageFormatProperties2)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pExternalBufferInfo" ::: Ptr PhysicalDeviceExternalBufferInfo)
      -> ("pExternalBufferProperties" ::: Ptr ExternalBufferProperties)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> ("pExternalBufferInfo" ::: Ptr PhysicalDeviceExternalBufferInfo) -> ("pExternalBufferProperties" ::: Ptr ExternalBufferProperties) -> IO ()) PFN_vkVoidFunction
vkGetPhysicalDeviceExternalBufferProperties)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pExternalSemaphoreInfo"
          ::: Ptr (PhysicalDeviceExternalSemaphoreInfo a))
      -> ("pExternalSemaphoreProperties"
          ::: Ptr ExternalSemaphoreProperties)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> ("pExternalSemaphoreInfo" ::: Ptr (PhysicalDeviceExternalSemaphoreInfo _)) -> ("pExternalSemaphoreProperties" ::: Ptr ExternalSemaphoreProperties) -> IO ()) PFN_vkVoidFunction
vkGetPhysicalDeviceExternalSemaphoreProperties)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pExternalFenceInfo" ::: Ptr PhysicalDeviceExternalFenceInfo)
      -> ("pExternalFenceProperties" ::: Ptr ExternalFenceProperties)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> ("pExternalFenceInfo" ::: Ptr PhysicalDeviceExternalFenceInfo) -> ("pExternalFenceProperties" ::: Ptr ExternalFenceProperties) -> IO ()) PFN_vkVoidFunction
vkGetPhysicalDeviceExternalFenceProperties)
    (PFN_vkVoidFunction
-> FunPtr (Ptr PhysicalDevice_T -> DisplayKHR -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> DisplayKHR -> IO Result) PFN_vkVoidFunction
vkReleaseDisplayEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("dpy" ::: Ptr Display) -> DisplayKHR -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> ("dpy" ::: Ptr Display) -> DisplayKHR -> IO Result) PFN_vkVoidFunction
vkAcquireXlibDisplayEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("dpy" ::: Ptr Display)
      -> VisualID
      -> ("pDisplays" ::: Ptr DisplayKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> ("dpy" ::: Ptr Display) -> RROutput -> ("pDisplay" ::: Ptr DisplayKHR) -> IO Result) PFN_vkVoidFunction
vkGetRandROutputDisplayEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> SurfaceKHR
      -> ("pSurfaceCapabilities" ::: Ptr SurfaceCapabilities2EXT)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> SurfaceKHR -> ("pSurfaceCapabilities" ::: Ptr SurfaceCapabilities2EXT) -> IO Result) PFN_vkVoidFunction
vkGetPhysicalDeviceSurfaceCapabilities2EXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Instance_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pPhysicalDeviceGroupProperties"
          ::: Ptr PhysicalDeviceGroupProperties)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Instance_T -> ("pPhysicalDeviceGroupCount" ::: Ptr Word32) -> ("pPhysicalDeviceGroupProperties" ::: Ptr PhysicalDeviceGroupProperties) -> IO Result) PFN_vkVoidFunction
vkEnumeratePhysicalDeviceGroups)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> SurfaceKHR
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pRects" ::: Ptr Rect2D)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> SurfaceKHR -> ("pRectCount" ::: Ptr Word32) -> ("pRects" ::: Ptr Rect2D) -> IO Result) PFN_vkVoidFunction
vkGetPhysicalDevicePresentRectanglesKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr IOSSurfaceCreateInfoMVK)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Instance_T -> ("pCreateInfo" ::: Ptr IOSSurfaceCreateInfoMVK) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result) PFN_vkVoidFunction
vkCreateIOSSurfaceMVK)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr MacOSSurfaceCreateInfoMVK)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Instance_T -> ("pCreateInfo" ::: Ptr MacOSSurfaceCreateInfoMVK) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result) PFN_vkVoidFunction
vkCreateMacOSSurfaceMVK)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr MetalSurfaceCreateInfoEXT)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Instance_T -> ("pCreateInfo" ::: Ptr MetalSurfaceCreateInfoEXT) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result) PFN_vkVoidFunction
vkCreateMetalSurfaceEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("samples" ::: SampleCountFlagBits)
      -> ("pMultisampleProperties" ::: Ptr MultisamplePropertiesEXT)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> ("samples" ::: SampleCountFlagBits) -> ("pMultisampleProperties" ::: Ptr MultisamplePropertiesEXT) -> IO ()) PFN_vkVoidFunction
vkGetPhysicalDeviceMultisamplePropertiesEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pSurfaceInfo" ::: Ptr (PhysicalDeviceSurfaceInfo2KHR a))
      -> ("pSurfaceCapabilities" ::: Ptr (SurfaceCapabilities2KHR b))
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> ("pSurfaceInfo" ::: Ptr (PhysicalDeviceSurfaceInfo2KHR _)) -> ("pSurfaceCapabilities" ::: Ptr (SurfaceCapabilities2KHR _)) -> IO Result) PFN_vkVoidFunction
vkGetPhysicalDeviceSurfaceCapabilities2KHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pSurfaceInfo" ::: Ptr (PhysicalDeviceSurfaceInfo2KHR a))
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pSurfaceFormats" ::: Ptr SurfaceFormat2KHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> ("pSurfaceInfo" ::: Ptr (PhysicalDeviceSurfaceInfo2KHR _)) -> ("pSurfaceFormatCount" ::: Ptr Word32) -> ("pSurfaceFormats" ::: Ptr SurfaceFormat2KHR) -> IO Result) PFN_vkVoidFunction
vkGetPhysicalDeviceSurfaceFormats2KHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr DisplayProperties2KHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr DisplayProperties2KHR) -> IO Result) PFN_vkVoidFunction
vkGetPhysicalDeviceDisplayProperties2KHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr DisplayPlaneProperties2KHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr DisplayPlaneProperties2KHR) -> IO Result) PFN_vkVoidFunction
vkGetPhysicalDeviceDisplayPlaneProperties2KHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> DisplayKHR
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr DisplayModeProperties2KHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> DisplayKHR -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr DisplayModeProperties2KHR) -> IO Result) PFN_vkVoidFunction
vkGetDisplayModeProperties2KHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pDisplayPlaneInfo" ::: Ptr DisplayPlaneInfo2KHR)
      -> ("pCapabilities" ::: Ptr DisplayPlaneCapabilities2KHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> ("pDisplayPlaneInfo" ::: Ptr DisplayPlaneInfo2KHR) -> ("pCapabilities" ::: Ptr DisplayPlaneCapabilities2KHR) -> IO Result) PFN_vkVoidFunction
vkGetDisplayPlaneCapabilities2KHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pTimeDomains" ::: Ptr TimeDomainEXT)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> ("pTimeDomainCount" ::: Ptr Word32) -> ("pTimeDomains" ::: Ptr TimeDomainEXT) -> IO Result) PFN_vkVoidFunction
vkGetPhysicalDeviceCalibrateableTimeDomainsEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr DebugUtilsMessengerCreateInfoEXT)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pMessenger" ::: Ptr DebugUtilsMessengerEXT)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Instance_T -> ("pCreateInfo" ::: Ptr DebugUtilsMessengerCreateInfoEXT) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pMessenger" ::: Ptr DebugUtilsMessengerEXT) -> IO Result) PFN_vkVoidFunction
vkCreateDebugUtilsMessengerEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Instance_T
      -> DebugUtilsMessengerEXT
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Instance_T -> DebugUtilsMessengerEXT -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) PFN_vkVoidFunction
vkDestroyDebugUtilsMessengerEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Instance_T
      -> DebugUtilsMessageSeverityFlagBitsEXT
      -> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT)
      -> ("pCallbackData" ::: Ptr DebugUtilsMessengerCallbackDataEXT)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Instance_T -> DebugUtilsMessageSeverityFlagBitsEXT -> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> ("pCallbackData" ::: Ptr DebugUtilsMessengerCallbackDataEXT) -> IO ()) PFN_vkVoidFunction
vkSubmitDebugUtilsMessageEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr CooperativeMatrixPropertiesNV)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr CooperativeMatrixPropertiesNV) -> IO Result) PFN_vkVoidFunction
vkGetPhysicalDeviceCooperativeMatrixPropertiesNV)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pSurfaceInfo" ::: Ptr (PhysicalDeviceSurfaceInfo2KHR a))
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pPresentModes" ::: Ptr PresentModeKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> ("pSurfaceInfo" ::: Ptr (PhysicalDeviceSurfaceInfo2KHR _)) -> ("pPresentModeCount" ::: Ptr Word32) -> ("pPresentModes" ::: Ptr PresentModeKHR) -> IO Result) PFN_vkVoidFunction
vkGetPhysicalDeviceSurfacePresentModes2EXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> Word32
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pCounters" ::: Ptr PerformanceCounterKHR)
      -> ("pCounterDescriptions"
          ::: Ptr PerformanceCounterDescriptionKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> ("queueFamilyIndex" ::: Word32) -> ("pCounterCount" ::: Ptr Word32) -> ("pCounters" ::: Ptr PerformanceCounterKHR) -> ("pCounterDescriptions" ::: Ptr PerformanceCounterDescriptionKHR) -> IO Result) PFN_vkVoidFunction
vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPerformanceQueryCreateInfo"
          ::: Ptr QueryPoolPerformanceCreateInfoKHR)
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> ("pPerformanceQueryCreateInfo" ::: Ptr QueryPoolPerformanceCreateInfoKHR) -> ("pNumPasses" ::: Ptr Word32) -> IO ()) PFN_vkVoidFunction
vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Instance_T
      -> ("pCreateInfo" ::: Ptr HeadlessSurfaceCreateInfoEXT)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSurface" ::: Ptr SurfaceKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Instance_T -> ("pCreateInfo" ::: Ptr HeadlessSurfaceCreateInfoEXT) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result) PFN_vkVoidFunction
vkCreateHeadlessSurfaceEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pCombinations" ::: Ptr FramebufferMixedSamplesCombinationNV)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> ("pCombinationCount" ::: Ptr Word32) -> ("pCombinations" ::: Ptr FramebufferMixedSamplesCombinationNV) -> IO Result) PFN_vkVoidFunction
vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr PhysicalDevice_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pToolProperties" ::: Ptr PhysicalDeviceToolPropertiesEXT)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr PhysicalDevice_T -> ("pToolCount" ::: Ptr Word32) -> ("pToolProperties" ::: Ptr PhysicalDeviceToolPropertiesEXT) -> IO Result) PFN_vkVoidFunction
vkGetPhysicalDeviceToolPropertiesEXT)

data DeviceCmds = DeviceCmds
  { DeviceCmds -> Ptr Device_T
deviceCmdsHandle :: Ptr Device_T
  , DeviceCmds
-> FunPtr
     (Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction)
pVkGetDeviceProcAddr :: FunPtr (Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
pVkDestroyDevice :: FunPtr (Ptr Device_T -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> Word32 -> Word32 -> ("pQueue" ::: Ptr (Ptr Queue_T)) -> IO ())
pVkGetDeviceQueue :: FunPtr (Ptr Device_T -> ("queueFamilyIndex" ::: Word32) -> ("queueIndex" ::: Word32) -> ("pQueue" ::: Ptr (Ptr Queue_T)) -> IO ())
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr Queue_T
      -> Word32
      -> ("pSubmits" ::: Ptr (SubmitInfo a))
      -> Fence
      -> IO Result)
pVkQueueSubmit :: forall a . FunPtr (Ptr Queue_T -> ("submitCount" ::: Word32) -> ("pSubmits" ::: Ptr (SubmitInfo a)) -> Fence -> IO Result)
  , DeviceCmds -> FunPtr (Ptr Queue_T -> IO Result)
pVkQueueWaitIdle :: FunPtr (Ptr Queue_T -> IO Result)
  , DeviceCmds -> FunPtr (Ptr Device_T -> IO Result)
pVkDeviceWaitIdle :: FunPtr (Ptr Device_T -> IO Result)
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr Device_T
      -> ("pAllocateInfo" ::: Ptr (MemoryAllocateInfo a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pMemory" ::: Ptr DeviceMemory)
      -> IO Result)
pVkAllocateMemory :: forall a . FunPtr (Ptr Device_T -> ("pAllocateInfo" ::: Ptr (MemoryAllocateInfo a)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pMemory" ::: Ptr DeviceMemory) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> DeviceMemory
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
pVkFreeMemory :: FunPtr (Ptr Device_T -> DeviceMemory -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> DeviceMemory
      -> VisualID
      -> VisualID
      -> MemoryMapFlags
      -> ("dpy" ::: Ptr Display)
      -> IO Result)
pVkMapMemory :: FunPtr (Ptr Device_T -> DeviceMemory -> ("offset" ::: DeviceSize) -> DeviceSize -> MemoryMapFlags -> ("ppData" ::: Ptr (Ptr ())) -> IO Result)
  , DeviceCmds -> FunPtr (Ptr Device_T -> DeviceMemory -> IO ())
pVkUnmapMemory :: FunPtr (Ptr Device_T -> DeviceMemory -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> Word32
      -> ("pMemoryRanges" ::: Ptr MappedMemoryRange)
      -> IO Result)
pVkFlushMappedMemoryRanges :: FunPtr (Ptr Device_T -> ("memoryRangeCount" ::: Word32) -> ("pMemoryRanges" ::: Ptr MappedMemoryRange) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> Word32
      -> ("pMemoryRanges" ::: Ptr MappedMemoryRange)
      -> IO Result)
pVkInvalidateMappedMemoryRanges :: FunPtr (Ptr Device_T -> ("memoryRangeCount" ::: Word32) -> ("pMemoryRanges" ::: Ptr MappedMemoryRange) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> DeviceMemory
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> IO ())
pVkGetDeviceMemoryCommitment :: FunPtr (Ptr Device_T -> DeviceMemory -> ("pCommittedMemoryInBytes" ::: Ptr DeviceSize) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> Buffer
      -> ("pMemoryRequirements" ::: Ptr MemoryRequirements)
      -> IO ())
pVkGetBufferMemoryRequirements :: FunPtr (Ptr Device_T -> Buffer -> ("pMemoryRequirements" ::: Ptr MemoryRequirements) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T -> Buffer -> DeviceMemory -> VisualID -> IO Result)
pVkBindBufferMemory :: FunPtr (Ptr Device_T -> Buffer -> DeviceMemory -> ("memoryOffset" ::: DeviceSize) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> Image
      -> ("pMemoryRequirements" ::: Ptr MemoryRequirements)
      -> IO ())
pVkGetImageMemoryRequirements :: FunPtr (Ptr Device_T -> Image -> ("pMemoryRequirements" ::: Ptr MemoryRequirements) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T -> Image -> DeviceMemory -> VisualID -> IO Result)
pVkBindImageMemory :: FunPtr (Ptr Device_T -> Image -> DeviceMemory -> ("memoryOffset" ::: DeviceSize) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> Image
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pSparseMemoryRequirements"
          ::: Ptr SparseImageMemoryRequirements)
      -> IO ())
pVkGetImageSparseMemoryRequirements :: FunPtr (Ptr Device_T -> Image -> ("pSparseMemoryRequirementCount" ::: Ptr Word32) -> ("pSparseMemoryRequirements" ::: Ptr SparseImageMemoryRequirements) -> IO ())
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr Queue_T
      -> Word32
      -> ("pBindInfo" ::: Ptr (BindSparseInfo a))
      -> Fence
      -> IO Result)
pVkQueueBindSparse :: forall a . FunPtr (Ptr Queue_T -> ("bindInfoCount" ::: Word32) -> ("pBindInfo" ::: Ptr (BindSparseInfo a)) -> Fence -> IO Result)
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr (FenceCreateInfo a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pFence" ::: Ptr Fence)
      -> IO Result)
pVkCreateFence :: forall a . FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (FenceCreateInfo a)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pFence" ::: Ptr Fence) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> Fence -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
pVkDestroyFence :: FunPtr (Ptr Device_T -> Fence -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T -> Word32 -> ("pFence" ::: Ptr Fence) -> IO Result)
pVkResetFences :: FunPtr (Ptr Device_T -> ("fenceCount" ::: Word32) -> ("pFences" ::: Ptr Fence) -> IO Result)
  , DeviceCmds -> FunPtr (Ptr Device_T -> Fence -> IO Result)
pVkGetFenceStatus :: FunPtr (Ptr Device_T -> Fence -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> Word32
      -> ("pFence" ::: Ptr Fence)
      -> Bool32
      -> VisualID
      -> IO Result)
pVkWaitForFences :: FunPtr (Ptr Device_T -> ("fenceCount" ::: Word32) -> ("pFences" ::: Ptr Fence) -> ("waitAll" ::: Bool32) -> ("timeout" ::: Word64) -> IO Result)
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr (SemaphoreCreateInfo a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSemaphore" ::: Ptr Semaphore)
      -> IO Result)
pVkCreateSemaphore :: forall a . FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (SemaphoreCreateInfo a)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSemaphore" ::: Ptr Semaphore) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> Semaphore
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
pVkDestroySemaphore :: FunPtr (Ptr Device_T -> Semaphore -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr EventCreateInfo)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pEvent" ::: Ptr Event)
      -> IO Result)
pVkCreateEvent :: FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr EventCreateInfo) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pEvent" ::: Ptr Event) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> Event -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
pVkDestroyEvent :: FunPtr (Ptr Device_T -> Event -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
  , DeviceCmds -> FunPtr (Ptr Device_T -> Event -> IO Result)
pVkGetEventStatus :: FunPtr (Ptr Device_T -> Event -> IO Result)
  , DeviceCmds -> FunPtr (Ptr Device_T -> Event -> IO Result)
pVkSetEvent :: FunPtr (Ptr Device_T -> Event -> IO Result)
  , DeviceCmds -> FunPtr (Ptr Device_T -> Event -> IO Result)
pVkResetEvent :: FunPtr (Ptr Device_T -> Event -> IO Result)
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr (QueryPoolCreateInfo a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pQueryPool" ::: Ptr QueryPool)
      -> IO Result)
pVkCreateQueryPool :: forall a . FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (QueryPoolCreateInfo a)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pQueryPool" ::: Ptr QueryPool) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> QueryPool
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
pVkDestroyQueryPool :: FunPtr (Ptr Device_T -> QueryPool -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> QueryPool
      -> Word32
      -> Word32
      -> ("location" ::: CSize)
      -> Display
      -> VisualID
      -> QueryResultFlags
      -> IO Result)
pVkGetQueryPoolResults :: FunPtr (Ptr Device_T -> QueryPool -> ("firstQuery" ::: Word32) -> ("queryCount" ::: Word32) -> ("dataSize" ::: CSize) -> ("pData" ::: Ptr ()) -> ("stride" ::: DeviceSize) -> QueryResultFlags -> IO Result)
  , DeviceCmds
-> FunPtr (Ptr Device_T -> QueryPool -> Word32 -> Word32 -> IO ())
pVkResetQueryPool :: FunPtr (Ptr Device_T -> QueryPool -> ("firstQuery" ::: Word32) -> ("queryCount" ::: Word32) -> IO ())
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr (BufferCreateInfo a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pBuffer" ::: Ptr Buffer)
      -> IO Result)
pVkCreateBuffer :: forall a . FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (BufferCreateInfo a)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pBuffer" ::: Ptr Buffer) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> Buffer -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
pVkDestroyBuffer :: FunPtr (Ptr Device_T -> Buffer -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr BufferViewCreateInfo)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pView" ::: Ptr BufferView)
      -> IO Result)
pVkCreateBufferView :: FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr BufferViewCreateInfo) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pView" ::: Ptr BufferView) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> BufferView
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
pVkDestroyBufferView :: FunPtr (Ptr Device_T -> BufferView -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr (ImageCreateInfo a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pImage" ::: Ptr Image)
      -> IO Result)
pVkCreateImage :: forall a . FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (ImageCreateInfo a)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pImage" ::: Ptr Image) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> Image -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
pVkDestroyImage :: FunPtr (Ptr Device_T -> Image -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> Image
      -> ("pSubresource" ::: Ptr ImageSubresource)
      -> ("pLayout" ::: Ptr SubresourceLayout)
      -> IO ())
pVkGetImageSubresourceLayout :: FunPtr (Ptr Device_T -> Image -> ("pSubresource" ::: Ptr ImageSubresource) -> ("pLayout" ::: Ptr SubresourceLayout) -> IO ())
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr (ImageViewCreateInfo a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pView" ::: Ptr ImageView)
      -> IO Result)
pVkCreateImageView :: forall a . FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (ImageViewCreateInfo a)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pView" ::: Ptr ImageView) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ImageView
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
pVkDestroyImageView :: FunPtr (Ptr Device_T -> ImageView -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr (ShaderModuleCreateInfo a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pShaderModule" ::: Ptr ShaderModule)
      -> IO Result)
pVkCreateShaderModule :: forall a . FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (ShaderModuleCreateInfo a)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pShaderModule" ::: Ptr ShaderModule) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ShaderModule
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
pVkDestroyShaderModule :: FunPtr (Ptr Device_T -> ShaderModule -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr PipelineCacheCreateInfo)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pPipelineCache" ::: Ptr PipelineCache)
      -> IO Result)
pVkCreatePipelineCache :: FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr PipelineCacheCreateInfo) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pPipelineCache" ::: Ptr PipelineCache) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> PipelineCache
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
pVkDestroyPipelineCache :: FunPtr (Ptr Device_T -> PipelineCache -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> PipelineCache
      -> ("pDataSize" ::: Ptr ("location" ::: CSize))
      -> Display
      -> IO Result)
pVkGetPipelineCacheData :: FunPtr (Ptr Device_T -> PipelineCache -> ("pDataSize" ::: Ptr CSize) -> ("pData" ::: Ptr ()) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> PipelineCache
      -> Word32
      -> ("pPipelineCache" ::: Ptr PipelineCache)
      -> IO Result)
pVkMergePipelineCaches :: FunPtr (Ptr Device_T -> ("dstCache" ::: PipelineCache) -> ("srcCacheCount" ::: Word32) -> ("pSrcCaches" ::: Ptr PipelineCache) -> IO Result)
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr Device_T
      -> PipelineCache
      -> Word32
      -> ("pCreateInfos" ::: Ptr (GraphicsPipelineCreateInfo a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pPipelines" ::: Ptr Pipeline)
      -> IO Result)
pVkCreateGraphicsPipelines :: forall a . FunPtr (Ptr Device_T -> PipelineCache -> ("createInfoCount" ::: Word32) -> ("pCreateInfos" ::: Ptr (GraphicsPipelineCreateInfo a)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pPipelines" ::: Ptr Pipeline) -> IO Result)
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr Device_T
      -> PipelineCache
      -> Word32
      -> ("pCreateInfos" ::: Ptr (ComputePipelineCreateInfo a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pPipelines" ::: Ptr Pipeline)
      -> IO Result)
pVkCreateComputePipelines :: forall a . FunPtr (Ptr Device_T -> PipelineCache -> ("createInfoCount" ::: Word32) -> ("pCreateInfos" ::: Ptr (ComputePipelineCreateInfo a)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pPipelines" ::: Ptr Pipeline) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> Pipeline -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
pVkDestroyPipeline :: FunPtr (Ptr Device_T -> Pipeline -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr PipelineLayoutCreateInfo)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pPipelineLayout" ::: Ptr PipelineLayout)
      -> IO Result)
pVkCreatePipelineLayout :: FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr PipelineLayoutCreateInfo) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pPipelineLayout" ::: Ptr PipelineLayout) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> PipelineLayout
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
pVkDestroyPipelineLayout :: FunPtr (Ptr Device_T -> PipelineLayout -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr (SamplerCreateInfo a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSampler" ::: Ptr Sampler)
      -> IO Result)
pVkCreateSampler :: forall a . FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (SamplerCreateInfo a)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSampler" ::: Ptr Sampler) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> Sampler -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
pVkDestroySampler :: FunPtr (Ptr Device_T -> Sampler -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr (DescriptorSetLayoutCreateInfo a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSetLayout" ::: Ptr DescriptorSetLayout)
      -> IO Result)
pVkCreateDescriptorSetLayout :: forall a . FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (DescriptorSetLayoutCreateInfo a)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSetLayout" ::: Ptr DescriptorSetLayout) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> DescriptorSetLayout
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
pVkDestroyDescriptorSetLayout :: FunPtr (Ptr Device_T -> DescriptorSetLayout -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr (DescriptorPoolCreateInfo a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pDescriptorPool" ::: Ptr DescriptorPool)
      -> IO Result)
pVkCreateDescriptorPool :: forall a . FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (DescriptorPoolCreateInfo a)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pDescriptorPool" ::: Ptr DescriptorPool) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> DescriptorPool
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
pVkDestroyDescriptorPool :: FunPtr (Ptr Device_T -> DescriptorPool -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> DescriptorPool -> DescriptorPoolResetFlags -> IO Result)
pVkResetDescriptorPool :: FunPtr (Ptr Device_T -> DescriptorPool -> DescriptorPoolResetFlags -> IO Result)
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr Device_T
      -> ("pAllocateInfo" ::: Ptr (DescriptorSetAllocateInfo a))
      -> ("pDescriptorSets" ::: Ptr DescriptorSet)
      -> IO Result)
pVkAllocateDescriptorSets :: forall a . FunPtr (Ptr Device_T -> ("pAllocateInfo" ::: Ptr (DescriptorSetAllocateInfo a)) -> ("pDescriptorSets" ::: Ptr DescriptorSet) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> DescriptorPool
      -> Word32
      -> ("pDescriptorSets" ::: Ptr DescriptorSet)
      -> IO Result)
pVkFreeDescriptorSets :: FunPtr (Ptr Device_T -> DescriptorPool -> ("descriptorSetCount" ::: Word32) -> ("pDescriptorSets" ::: Ptr DescriptorSet) -> IO Result)
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr Device_T
      -> Word32
      -> ("pDescriptorWrites" ::: Ptr (WriteDescriptorSet a))
      -> Word32
      -> ("pDescriptorCopies" ::: Ptr CopyDescriptorSet)
      -> IO ())
pVkUpdateDescriptorSets :: forall a . FunPtr (Ptr Device_T -> ("descriptorWriteCount" ::: Word32) -> ("pDescriptorWrites" ::: Ptr (WriteDescriptorSet a)) -> ("descriptorCopyCount" ::: Word32) -> ("pDescriptorCopies" ::: Ptr CopyDescriptorSet) -> IO ())
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr (FramebufferCreateInfo a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pFramebuffer" ::: Ptr Framebuffer)
      -> IO Result)
pVkCreateFramebuffer :: forall a . FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (FramebufferCreateInfo a)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pFramebuffer" ::: Ptr Framebuffer) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> Framebuffer
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
pVkDestroyFramebuffer :: FunPtr (Ptr Device_T -> Framebuffer -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr (RenderPassCreateInfo a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pRenderPass" ::: Ptr RenderPass)
      -> IO Result)
pVkCreateRenderPass :: forall a . FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (RenderPassCreateInfo a)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pRenderPass" ::: Ptr RenderPass) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> RenderPass
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
pVkDestroyRenderPass :: FunPtr (Ptr Device_T -> RenderPass -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> RenderPass -> ("pGranularity" ::: Ptr Extent2D) -> IO ())
pVkGetRenderAreaGranularity :: FunPtr (Ptr Device_T -> RenderPass -> ("pGranularity" ::: Ptr Extent2D) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr CommandPoolCreateInfo)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pCommandPool" ::: Ptr CommandPool)
      -> IO Result)
pVkCreateCommandPool :: FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr CommandPoolCreateInfo) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pCommandPool" ::: Ptr CommandPool) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> CommandPool
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
pVkDestroyCommandPool :: FunPtr (Ptr Device_T -> CommandPool -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T -> CommandPool -> CommandPoolResetFlags -> IO Result)
pVkResetCommandPool :: FunPtr (Ptr Device_T -> CommandPool -> CommandPoolResetFlags -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pAllocateInfo" ::: Ptr CommandBufferAllocateInfo)
      -> ("pCommandBuffers" ::: Ptr (Ptr CommandBuffer_T))
      -> IO Result)
pVkAllocateCommandBuffers :: FunPtr (Ptr Device_T -> ("pAllocateInfo" ::: Ptr CommandBufferAllocateInfo) -> ("pCommandBuffers" ::: Ptr (Ptr CommandBuffer_T)) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> CommandPool
      -> Word32
      -> ("pCommandBuffers" ::: Ptr (Ptr CommandBuffer_T))
      -> IO ())
pVkFreeCommandBuffers :: FunPtr (Ptr Device_T -> CommandPool -> ("commandBufferCount" ::: Word32) -> ("pCommandBuffers" ::: Ptr (Ptr CommandBuffer_T)) -> IO ())
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr CommandBuffer_T
      -> ("pBeginInfo" ::: Ptr (CommandBufferBeginInfo a)) -> IO Result)
pVkBeginCommandBuffer :: forall a . FunPtr (Ptr CommandBuffer_T -> ("pBeginInfo" ::: Ptr (CommandBufferBeginInfo a)) -> IO Result)
  , DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> IO Result)
pVkEndCommandBuffer :: FunPtr (Ptr CommandBuffer_T -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T -> CommandBufferResetFlags -> IO Result)
pVkResetCommandBuffer :: FunPtr (Ptr CommandBuffer_T -> CommandBufferResetFlags -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T -> PipelineBindPoint -> Pipeline -> IO ())
pVkCmdBindPipeline :: FunPtr (Ptr CommandBuffer_T -> PipelineBindPoint -> Pipeline -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32 -> Word32 -> ("pViewports" ::: Ptr Viewport) -> IO ())
pVkCmdSetViewport :: FunPtr (Ptr CommandBuffer_T -> ("firstViewport" ::: Word32) -> ("viewportCount" ::: Word32) -> ("pViewports" ::: Ptr Viewport) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32 -> Word32 -> ("pRects" ::: Ptr Rect2D) -> IO ())
pVkCmdSetScissor :: FunPtr (Ptr CommandBuffer_T -> ("firstScissor" ::: Word32) -> ("scissorCount" ::: Word32) -> ("pScissors" ::: Ptr Rect2D) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T -> ("lineWidth" ::: CFloat) -> IO ())
pVkCmdSetLineWidth :: FunPtr (Ptr CommandBuffer_T -> ("lineWidth" ::: CFloat) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("lineWidth" ::: CFloat)
      -> ("lineWidth" ::: CFloat)
      -> ("lineWidth" ::: CFloat)
      -> IO ())
pVkCmdSetDepthBias :: FunPtr (Ptr CommandBuffer_T -> ("depthBiasConstantFactor" ::: CFloat) -> ("depthBiasClamp" ::: CFloat) -> ("depthBiasSlopeFactor" ::: CFloat) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("blendConstants"
          ::: Ptr (FixedArray 4 ("lineWidth" ::: CFloat)))
      -> IO ())
pVkCmdSetBlendConstants :: FunPtr (Ptr CommandBuffer_T -> ("blendConstants" ::: Ptr (FixedArray 4 CFloat)) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("lineWidth" ::: CFloat) -> ("lineWidth" ::: CFloat) -> IO ())
pVkCmdSetDepthBounds :: FunPtr (Ptr CommandBuffer_T -> ("minDepthBounds" ::: CFloat) -> ("maxDepthBounds" ::: CFloat) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("faceMask" ::: StencilFaceFlags) -> Word32 -> IO ())
pVkCmdSetStencilCompareMask :: FunPtr (Ptr CommandBuffer_T -> ("faceMask" ::: StencilFaceFlags) -> ("compareMask" ::: Word32) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("faceMask" ::: StencilFaceFlags) -> Word32 -> IO ())
pVkCmdSetStencilWriteMask :: FunPtr (Ptr CommandBuffer_T -> ("faceMask" ::: StencilFaceFlags) -> ("writeMask" ::: Word32) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("faceMask" ::: StencilFaceFlags) -> Word32 -> IO ())
pVkCmdSetStencilReference :: FunPtr (Ptr CommandBuffer_T -> ("faceMask" ::: StencilFaceFlags) -> ("reference" ::: Word32) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> PipelineBindPoint
      -> PipelineLayout
      -> Word32
      -> Word32
      -> ("pDescriptorSets" ::: Ptr DescriptorSet)
      -> Word32
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> IO ())
pVkCmdBindDescriptorSets :: FunPtr (Ptr CommandBuffer_T -> PipelineBindPoint -> PipelineLayout -> ("firstSet" ::: Word32) -> ("descriptorSetCount" ::: Word32) -> ("pDescriptorSets" ::: Ptr DescriptorSet) -> ("dynamicOffsetCount" ::: Word32) -> ("pDynamicOffsets" ::: Ptr Word32) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T -> Buffer -> VisualID -> IndexType -> IO ())
pVkCmdBindIndexBuffer :: FunPtr (Ptr CommandBuffer_T -> Buffer -> ("offset" ::: DeviceSize) -> IndexType -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> Word32
      -> ("pBuffer" ::: Ptr Buffer)
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> IO ())
pVkCmdBindVertexBuffers :: FunPtr (Ptr CommandBuffer_T -> ("firstBinding" ::: Word32) -> ("bindingCount" ::: Word32) -> ("pBuffers" ::: Ptr Buffer) -> ("pOffsets" ::: Ptr DeviceSize) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32 -> Word32 -> Word32 -> Word32 -> IO ())
pVkCmdDraw :: FunPtr (Ptr CommandBuffer_T -> ("vertexCount" ::: Word32) -> ("instanceCount" ::: Word32) -> ("firstVertex" ::: Word32) -> ("firstInstance" ::: Word32) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> Word32
      -> Word32
      -> ("messageCode" ::: Int32)
      -> Word32
      -> IO ())
pVkCmdDrawIndexed :: FunPtr (Ptr CommandBuffer_T -> ("indexCount" ::: Word32) -> ("instanceCount" ::: Word32) -> ("firstIndex" ::: Word32) -> ("vertexOffset" ::: Int32) -> ("firstInstance" ::: Word32) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer -> VisualID -> Word32 -> Word32 -> IO ())
pVkCmdDrawIndirect :: FunPtr (Ptr CommandBuffer_T -> Buffer -> ("offset" ::: DeviceSize) -> ("drawCount" ::: Word32) -> ("stride" ::: Word32) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer -> VisualID -> Word32 -> Word32 -> IO ())
pVkCmdDrawIndexedIndirect :: FunPtr (Ptr CommandBuffer_T -> Buffer -> ("offset" ::: DeviceSize) -> ("drawCount" ::: Word32) -> ("stride" ::: Word32) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T -> Word32 -> Word32 -> Word32 -> IO ())
pVkCmdDispatch :: FunPtr (Ptr CommandBuffer_T -> ("groupCountX" ::: Word32) -> ("groupCountY" ::: Word32) -> ("groupCountZ" ::: Word32) -> IO ())
  , DeviceCmds
-> FunPtr (Ptr CommandBuffer_T -> Buffer -> VisualID -> IO ())
pVkCmdDispatchIndirect :: FunPtr (Ptr CommandBuffer_T -> Buffer -> ("offset" ::: DeviceSize) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer
      -> Buffer
      -> Word32
      -> ("pRegions" ::: Ptr BufferCopy)
      -> IO ())
pVkCmdCopyBuffer :: FunPtr (Ptr CommandBuffer_T -> ("srcBuffer" ::: Buffer) -> ("dstBuffer" ::: Buffer) -> ("regionCount" ::: Word32) -> ("pRegions" ::: Ptr BufferCopy) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> Image
      -> ("srcImageLayout" ::: ImageLayout)
      -> Image
      -> ("srcImageLayout" ::: ImageLayout)
      -> Word32
      -> ("pRegions" ::: Ptr ImageCopy)
      -> IO ())
pVkCmdCopyImage :: FunPtr (Ptr CommandBuffer_T -> ("srcImage" ::: Image) -> ("srcImageLayout" ::: ImageLayout) -> ("dstImage" ::: Image) -> ("dstImageLayout" ::: ImageLayout) -> ("regionCount" ::: Word32) -> ("pRegions" ::: Ptr ImageCopy) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> Image
      -> ("srcImageLayout" ::: ImageLayout)
      -> Image
      -> ("srcImageLayout" ::: ImageLayout)
      -> Word32
      -> ("pRegions" ::: Ptr ImageBlit)
      -> Filter
      -> IO ())
pVkCmdBlitImage :: FunPtr (Ptr CommandBuffer_T -> ("srcImage" ::: Image) -> ("srcImageLayout" ::: ImageLayout) -> ("dstImage" ::: Image) -> ("dstImageLayout" ::: ImageLayout) -> ("regionCount" ::: Word32) -> ("pRegions" ::: Ptr ImageBlit) -> Filter -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer
      -> Image
      -> ("srcImageLayout" ::: ImageLayout)
      -> Word32
      -> ("pRegions" ::: Ptr BufferImageCopy)
      -> IO ())
pVkCmdCopyBufferToImage :: FunPtr (Ptr CommandBuffer_T -> ("srcBuffer" ::: Buffer) -> ("dstImage" ::: Image) -> ("dstImageLayout" ::: ImageLayout) -> ("regionCount" ::: Word32) -> ("pRegions" ::: Ptr BufferImageCopy) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> Image
      -> ("srcImageLayout" ::: ImageLayout)
      -> Buffer
      -> Word32
      -> ("pRegions" ::: Ptr BufferImageCopy)
      -> IO ())
pVkCmdCopyImageToBuffer :: FunPtr (Ptr CommandBuffer_T -> ("srcImage" ::: Image) -> ("srcImageLayout" ::: ImageLayout) -> ("dstBuffer" ::: Buffer) -> ("regionCount" ::: Word32) -> ("pRegions" ::: Ptr BufferImageCopy) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer -> VisualID -> VisualID -> Display -> IO ())
pVkCmdUpdateBuffer :: FunPtr (Ptr CommandBuffer_T -> ("dstBuffer" ::: Buffer) -> ("dstOffset" ::: DeviceSize) -> ("dataSize" ::: DeviceSize) -> ("pData" ::: Ptr ()) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer -> VisualID -> VisualID -> Word32 -> IO ())
pVkCmdFillBuffer :: FunPtr (Ptr CommandBuffer_T -> ("dstBuffer" ::: Buffer) -> ("dstOffset" ::: DeviceSize) -> DeviceSize -> ("data" ::: Word32) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> Image
      -> ("srcImageLayout" ::: ImageLayout)
      -> ("pColor" ::: Ptr ClearColorValue)
      -> Word32
      -> ("pRanges" ::: Ptr ImageSubresourceRange)
      -> IO ())
pVkCmdClearColorImage :: FunPtr (Ptr CommandBuffer_T -> Image -> ImageLayout -> ("pColor" ::: Ptr ClearColorValue) -> ("rangeCount" ::: Word32) -> ("pRanges" ::: Ptr ImageSubresourceRange) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> Image
      -> ("srcImageLayout" ::: ImageLayout)
      -> ("pDepthStencil" ::: Ptr ClearDepthStencilValue)
      -> Word32
      -> ("pRanges" ::: Ptr ImageSubresourceRange)
      -> IO ())
pVkCmdClearDepthStencilImage :: FunPtr (Ptr CommandBuffer_T -> Image -> ImageLayout -> ("pDepthStencil" ::: Ptr ClearDepthStencilValue) -> ("rangeCount" ::: Word32) -> ("pRanges" ::: Ptr ImageSubresourceRange) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> ("pAttachments" ::: Ptr ClearAttachment)
      -> Word32
      -> ("pRects" ::: Ptr ClearRect)
      -> IO ())
pVkCmdClearAttachments :: FunPtr (Ptr CommandBuffer_T -> ("attachmentCount" ::: Word32) -> ("pAttachments" ::: Ptr ClearAttachment) -> ("rectCount" ::: Word32) -> ("pRects" ::: Ptr ClearRect) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> Image
      -> ("srcImageLayout" ::: ImageLayout)
      -> Image
      -> ("srcImageLayout" ::: ImageLayout)
      -> Word32
      -> ("pRegions" ::: Ptr ImageResolve)
      -> IO ())
pVkCmdResolveImage :: FunPtr (Ptr CommandBuffer_T -> ("srcImage" ::: Image) -> ("srcImageLayout" ::: ImageLayout) -> ("dstImage" ::: Image) -> ("dstImageLayout" ::: ImageLayout) -> ("regionCount" ::: Word32) -> ("pRegions" ::: Ptr ImageResolve) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> Event -> ("stageMask" ::: PipelineStageFlags) -> IO ())
pVkCmdSetEvent :: FunPtr (Ptr CommandBuffer_T -> Event -> ("stageMask" ::: PipelineStageFlags) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> Event -> ("stageMask" ::: PipelineStageFlags) -> IO ())
pVkCmdResetEvent :: FunPtr (Ptr CommandBuffer_T -> Event -> ("stageMask" ::: PipelineStageFlags) -> IO ())
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> ("pEvent" ::: Ptr Event)
      -> ("stageMask" ::: PipelineStageFlags)
      -> ("stageMask" ::: PipelineStageFlags)
      -> Word32
      -> ("pMemoryBarriers" ::: Ptr MemoryBarrier)
      -> Word32
      -> ("pBufferMemoryBarriers" ::: Ptr BufferMemoryBarrier)
      -> Word32
      -> ("pImageMemoryBarriers" ::: Ptr (ImageMemoryBarrier a))
      -> IO ())
pVkCmdWaitEvents :: forall a . FunPtr (Ptr CommandBuffer_T -> ("eventCount" ::: Word32) -> ("pEvents" ::: Ptr Event) -> ("srcStageMask" ::: PipelineStageFlags) -> ("dstStageMask" ::: PipelineStageFlags) -> ("memoryBarrierCount" ::: Word32) -> ("pMemoryBarriers" ::: Ptr MemoryBarrier) -> ("bufferMemoryBarrierCount" ::: Word32) -> ("pBufferMemoryBarriers" ::: Ptr BufferMemoryBarrier) -> ("imageMemoryBarrierCount" ::: Word32) -> ("pImageMemoryBarriers" ::: Ptr (ImageMemoryBarrier a)) -> IO ())
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr CommandBuffer_T
      -> ("stageMask" ::: PipelineStageFlags)
      -> ("stageMask" ::: PipelineStageFlags)
      -> DependencyFlags
      -> Word32
      -> ("pMemoryBarriers" ::: Ptr MemoryBarrier)
      -> Word32
      -> ("pBufferMemoryBarriers" ::: Ptr BufferMemoryBarrier)
      -> Word32
      -> ("pImageMemoryBarriers" ::: Ptr (ImageMemoryBarrier a))
      -> IO ())
pVkCmdPipelineBarrier :: forall a . FunPtr (Ptr CommandBuffer_T -> ("srcStageMask" ::: PipelineStageFlags) -> ("dstStageMask" ::: PipelineStageFlags) -> DependencyFlags -> ("memoryBarrierCount" ::: Word32) -> ("pMemoryBarriers" ::: Ptr MemoryBarrier) -> ("bufferMemoryBarrierCount" ::: Word32) -> ("pBufferMemoryBarriers" ::: Ptr BufferMemoryBarrier) -> ("imageMemoryBarrierCount" ::: Word32) -> ("pImageMemoryBarriers" ::: Ptr (ImageMemoryBarrier a)) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> QueryPool -> Word32 -> QueryControlFlags -> IO ())
pVkCmdBeginQuery :: FunPtr (Ptr CommandBuffer_T -> QueryPool -> ("query" ::: Word32) -> QueryControlFlags -> IO ())
  , DeviceCmds
-> FunPtr (Ptr CommandBuffer_T -> QueryPool -> Word32 -> IO ())
pVkCmdEndQuery :: FunPtr (Ptr CommandBuffer_T -> QueryPool -> ("query" ::: Word32) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pConditionalRenderingBegin"
          ::: Ptr ConditionalRenderingBeginInfoEXT)
      -> IO ())
pVkCmdBeginConditionalRenderingEXT :: FunPtr (Ptr CommandBuffer_T -> ("pConditionalRenderingBegin" ::: Ptr ConditionalRenderingBeginInfoEXT) -> IO ())
  , DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> IO ())
pVkCmdEndConditionalRenderingEXT :: FunPtr (Ptr CommandBuffer_T -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T -> QueryPool -> Word32 -> Word32 -> IO ())
pVkCmdResetQueryPool :: FunPtr (Ptr CommandBuffer_T -> QueryPool -> ("firstQuery" ::: Word32) -> ("queryCount" ::: Word32) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("stageMask" ::: PipelineStageFlags)
      -> QueryPool
      -> Word32
      -> IO ())
pVkCmdWriteTimestamp :: FunPtr (Ptr CommandBuffer_T -> PipelineStageFlagBits -> QueryPool -> ("query" ::: Word32) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> QueryPool
      -> Word32
      -> Word32
      -> Buffer
      -> VisualID
      -> VisualID
      -> QueryResultFlags
      -> IO ())
pVkCmdCopyQueryPoolResults :: FunPtr (Ptr CommandBuffer_T -> QueryPool -> ("firstQuery" ::: Word32) -> ("queryCount" ::: Word32) -> ("dstBuffer" ::: Buffer) -> ("dstOffset" ::: DeviceSize) -> ("stride" ::: DeviceSize) -> QueryResultFlags -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> PipelineLayout
      -> ShaderStageFlags
      -> Word32
      -> Word32
      -> Display
      -> IO ())
pVkCmdPushConstants :: FunPtr (Ptr CommandBuffer_T -> PipelineLayout -> ShaderStageFlags -> ("offset" ::: Word32) -> ("size" ::: Word32) -> ("pValues" ::: Ptr ()) -> IO ())
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr CommandBuffer_T
      -> ("pRenderPassBegin" ::: Ptr (RenderPassBeginInfo a))
      -> SubpassContents
      -> IO ())
pVkCmdBeginRenderPass :: forall a . FunPtr (Ptr CommandBuffer_T -> ("pRenderPassBegin" ::: Ptr (RenderPassBeginInfo a)) -> SubpassContents -> IO ())
  , DeviceCmds
-> FunPtr (Ptr CommandBuffer_T -> SubpassContents -> IO ())
pVkCmdNextSubpass :: FunPtr (Ptr CommandBuffer_T -> SubpassContents -> IO ())
  , DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> IO ())
pVkCmdEndRenderPass :: FunPtr (Ptr CommandBuffer_T -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> ("pCommandBuffers" ::: Ptr (Ptr CommandBuffer_T))
      -> IO ())
pVkCmdExecuteCommands :: FunPtr (Ptr CommandBuffer_T -> ("commandBufferCount" ::: Word32) -> ("pCommandBuffers" ::: Ptr (Ptr CommandBuffer_T)) -> IO ())
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr Device_T
      -> Word32
      -> ("pCreateInfos" ::: Ptr (SwapchainCreateInfoKHR a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSwapchains" ::: Ptr SwapchainKHR)
      -> IO Result)
pVkCreateSharedSwapchainsKHR :: forall a . FunPtr (Ptr Device_T -> ("swapchainCount" ::: Word32) -> ("pCreateInfos" ::: Ptr (SwapchainCreateInfoKHR a)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSwapchains" ::: Ptr SwapchainKHR) -> IO Result)
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr (SwapchainCreateInfoKHR a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSwapchains" ::: Ptr SwapchainKHR)
      -> IO Result)
pVkCreateSwapchainKHR :: forall a . FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (SwapchainCreateInfoKHR a)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSwapchain" ::: Ptr SwapchainKHR) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> SwapchainKHR
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
pVkDestroySwapchainKHR :: FunPtr (Ptr Device_T -> SwapchainKHR -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> SwapchainKHR
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pImage" ::: Ptr Image)
      -> IO Result)
pVkGetSwapchainImagesKHR :: FunPtr (Ptr Device_T -> SwapchainKHR -> ("pSwapchainImageCount" ::: Ptr Word32) -> ("pSwapchainImages" ::: Ptr Image) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> SwapchainKHR
      -> VisualID
      -> Semaphore
      -> Fence
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> IO Result)
pVkAcquireNextImageKHR :: FunPtr (Ptr Device_T -> SwapchainKHR -> ("timeout" ::: Word64) -> Semaphore -> Fence -> ("pImageIndex" ::: Ptr Word32) -> IO Result)
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr Queue_T
      -> ("pPresentInfo" ::: Ptr (PresentInfoKHR a)) -> IO Result)
pVkQueuePresentKHR :: forall a . FunPtr (Ptr Queue_T -> ("pPresentInfo" ::: Ptr (PresentInfoKHR a)) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pNameInfo" ::: Ptr DebugMarkerObjectNameInfoEXT) -> IO Result)
pVkDebugMarkerSetObjectNameEXT :: FunPtr (Ptr Device_T -> ("pNameInfo" ::: Ptr DebugMarkerObjectNameInfoEXT) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pTagInfo" ::: Ptr DebugMarkerObjectTagInfoEXT) -> IO Result)
pVkDebugMarkerSetObjectTagEXT :: FunPtr (Ptr Device_T -> ("pTagInfo" ::: Ptr DebugMarkerObjectTagInfoEXT) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pMarkerInfo" ::: Ptr DebugMarkerMarkerInfoEXT) -> IO ())
pVkCmdDebugMarkerBeginEXT :: FunPtr (Ptr CommandBuffer_T -> ("pMarkerInfo" ::: Ptr DebugMarkerMarkerInfoEXT) -> IO ())
  , DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> IO ())
pVkCmdDebugMarkerEndEXT :: FunPtr (Ptr CommandBuffer_T -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pMarkerInfo" ::: Ptr DebugMarkerMarkerInfoEXT) -> IO ())
pVkCmdDebugMarkerInsertEXT :: FunPtr (Ptr CommandBuffer_T -> ("pMarkerInfo" ::: Ptr DebugMarkerMarkerInfoEXT) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> DeviceMemory
      -> ("externalHandleType" ::: ExternalMemoryHandleTypeFlagsNV)
      -> ("dpy" ::: Ptr Display)
      -> IO Result)
pVkGetMemoryWin32HandleNV :: FunPtr (Ptr Device_T -> DeviceMemory -> ExternalMemoryHandleTypeFlagsNV -> ("pHandle" ::: Ptr HANDLE) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> Bool32
      -> ("pGeneratedCommandsInfo" ::: Ptr GeneratedCommandsInfoNV)
      -> IO ())
pVkCmdExecuteGeneratedCommandsNV :: FunPtr (Ptr CommandBuffer_T -> ("isPreprocessed" ::: Bool32) -> ("pGeneratedCommandsInfo" ::: Ptr GeneratedCommandsInfoNV) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pGeneratedCommandsInfo" ::: Ptr GeneratedCommandsInfoNV)
      -> IO ())
pVkCmdPreprocessGeneratedCommandsNV :: FunPtr (Ptr CommandBuffer_T -> ("pGeneratedCommandsInfo" ::: Ptr GeneratedCommandsInfoNV) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> PipelineBindPoint -> Pipeline -> Word32 -> IO ())
pVkCmdBindPipelineShaderGroupNV :: FunPtr (Ptr CommandBuffer_T -> PipelineBindPoint -> Pipeline -> ("groupIndex" ::: Word32) -> IO ())
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr GeneratedCommandsMemoryRequirementsInfoNV)
      -> ("pMemoryRequirements" ::: Ptr (MemoryRequirements2 a))
      -> IO ())
pVkGetGeneratedCommandsMemoryRequirementsNV :: forall a . FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr GeneratedCommandsMemoryRequirementsInfoNV) -> ("pMemoryRequirements" ::: Ptr (MemoryRequirements2 a)) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr IndirectCommandsLayoutCreateInfoNV)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pIndirectCommandsLayout" ::: Ptr IndirectCommandsLayoutNV)
      -> IO Result)
pVkCreateIndirectCommandsLayoutNV :: FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr IndirectCommandsLayoutCreateInfoNV) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pIndirectCommandsLayout" ::: Ptr IndirectCommandsLayoutNV) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> IndirectCommandsLayoutNV
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
pVkDestroyIndirectCommandsLayoutNV :: FunPtr (Ptr Device_T -> IndirectCommandsLayoutNV -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr CommandBuffer_T
      -> PipelineBindPoint
      -> PipelineLayout
      -> Word32
      -> Word32
      -> ("pDescriptorWrites" ::: Ptr (WriteDescriptorSet a))
      -> IO ())
pVkCmdPushDescriptorSetKHR :: forall a . FunPtr (Ptr CommandBuffer_T -> PipelineBindPoint -> PipelineLayout -> ("set" ::: Word32) -> ("descriptorWriteCount" ::: Word32) -> ("pDescriptorWrites" ::: Ptr (WriteDescriptorSet a)) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T -> CommandPool -> CommandPoolTrimFlags -> IO ())
pVkTrimCommandPool :: FunPtr (Ptr Device_T -> CommandPool -> CommandPoolTrimFlags -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pGetWin32HandleInfo" ::: Ptr MemoryGetWin32HandleInfoKHR)
      -> ("dpy" ::: Ptr Display)
      -> IO Result)
pVkGetMemoryWin32HandleKHR :: FunPtr (Ptr Device_T -> ("pGetWin32HandleInfo" ::: Ptr MemoryGetWin32HandleInfoKHR) -> ("pHandle" ::: Ptr HANDLE) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ExternalMemoryHandleTypeFlagBits
      -> Display
      -> ("pMemoryWin32HandleProperties"
          ::: Ptr MemoryWin32HandlePropertiesKHR)
      -> IO Result)
pVkGetMemoryWin32HandlePropertiesKHR :: FunPtr (Ptr Device_T -> ExternalMemoryHandleTypeFlagBits -> HANDLE -> ("pMemoryWin32HandleProperties" ::: Ptr MemoryWin32HandlePropertiesKHR) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pGetFdInfo" ::: Ptr MemoryGetFdInfoKHR)
      -> ("pFd" ::: Ptr CInt)
      -> IO Result)
pVkGetMemoryFdKHR :: FunPtr (Ptr Device_T -> ("pGetFdInfo" ::: Ptr MemoryGetFdInfoKHR) -> ("pFd" ::: Ptr CInt) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ExternalMemoryHandleTypeFlagBits
      -> CInt
      -> ("pMemoryFdProperties" ::: Ptr MemoryFdPropertiesKHR)
      -> IO Result)
pVkGetMemoryFdPropertiesKHR :: FunPtr (Ptr Device_T -> ExternalMemoryHandleTypeFlagBits -> ("fd" ::: CInt) -> ("pMemoryFdProperties" ::: Ptr MemoryFdPropertiesKHR) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pGetWin32HandleInfo" ::: Ptr SemaphoreGetWin32HandleInfoKHR)
      -> ("dpy" ::: Ptr Display)
      -> IO Result)
pVkGetSemaphoreWin32HandleKHR :: FunPtr (Ptr Device_T -> ("pGetWin32HandleInfo" ::: Ptr SemaphoreGetWin32HandleInfoKHR) -> ("pHandle" ::: Ptr HANDLE) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pImportSemaphoreWin32HandleInfo"
          ::: Ptr ImportSemaphoreWin32HandleInfoKHR)
      -> IO Result)
pVkImportSemaphoreWin32HandleKHR :: FunPtr (Ptr Device_T -> ("pImportSemaphoreWin32HandleInfo" ::: Ptr ImportSemaphoreWin32HandleInfoKHR) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pGetFdInfo" ::: Ptr SemaphoreGetFdInfoKHR)
      -> ("pFd" ::: Ptr CInt)
      -> IO Result)
pVkGetSemaphoreFdKHR :: FunPtr (Ptr Device_T -> ("pGetFdInfo" ::: Ptr SemaphoreGetFdInfoKHR) -> ("pFd" ::: Ptr CInt) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pImportSemaphoreFdInfo" ::: Ptr ImportSemaphoreFdInfoKHR)
      -> IO Result)
pVkImportSemaphoreFdKHR :: FunPtr (Ptr Device_T -> ("pImportSemaphoreFdInfo" ::: Ptr ImportSemaphoreFdInfoKHR) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pGetWin32HandleInfo" ::: Ptr FenceGetWin32HandleInfoKHR)
      -> ("dpy" ::: Ptr Display)
      -> IO Result)
pVkGetFenceWin32HandleKHR :: FunPtr (Ptr Device_T -> ("pGetWin32HandleInfo" ::: Ptr FenceGetWin32HandleInfoKHR) -> ("pHandle" ::: Ptr HANDLE) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pImportFenceWin32HandleInfo"
          ::: Ptr ImportFenceWin32HandleInfoKHR)
      -> IO Result)
pVkImportFenceWin32HandleKHR :: FunPtr (Ptr Device_T -> ("pImportFenceWin32HandleInfo" ::: Ptr ImportFenceWin32HandleInfoKHR) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pGetFdInfo" ::: Ptr FenceGetFdInfoKHR)
      -> ("pFd" ::: Ptr CInt)
      -> IO Result)
pVkGetFenceFdKHR :: FunPtr (Ptr Device_T -> ("pGetFdInfo" ::: Ptr FenceGetFdInfoKHR) -> ("pFd" ::: Ptr CInt) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pImportFenceFdInfo" ::: Ptr ImportFenceFdInfoKHR)
      -> IO Result)
pVkImportFenceFdKHR :: FunPtr (Ptr Device_T -> ("pImportFenceFdInfo" ::: Ptr ImportFenceFdInfoKHR) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> DisplayKHR
      -> ("pDisplayPowerInfo" ::: Ptr DisplayPowerInfoEXT)
      -> IO Result)
pVkDisplayPowerControlEXT :: FunPtr (Ptr Device_T -> DisplayKHR -> ("pDisplayPowerInfo" ::: Ptr DisplayPowerInfoEXT) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pDeviceEventInfo" ::: Ptr DeviceEventInfoEXT)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pFence" ::: Ptr Fence)
      -> IO Result)
pVkRegisterDeviceEventEXT :: FunPtr (Ptr Device_T -> ("pDeviceEventInfo" ::: Ptr DeviceEventInfoEXT) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pFence" ::: Ptr Fence) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> DisplayKHR
      -> ("pDisplayEventInfo" ::: Ptr DisplayEventInfoEXT)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pFence" ::: Ptr Fence)
      -> IO Result)
pVkRegisterDisplayEventEXT :: FunPtr (Ptr Device_T -> DisplayKHR -> ("pDisplayEventInfo" ::: Ptr DisplayEventInfoEXT) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pFence" ::: Ptr Fence) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> SwapchainKHR
      -> SurfaceCounterFlagBitsEXT
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> IO Result)
pVkGetSwapchainCounterEXT :: FunPtr (Ptr Device_T -> SwapchainKHR -> SurfaceCounterFlagBitsEXT -> ("pCounterValue" ::: Ptr Word64) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> Word32
      -> Word32
      -> Word32
      -> ("pPeerMemoryFeatures" ::: Ptr PeerMemoryFeatureFlags)
      -> IO ())
pVkGetDeviceGroupPeerMemoryFeatures :: FunPtr (Ptr Device_T -> ("heapIndex" ::: Word32) -> ("localDeviceIndex" ::: Word32) -> ("remoteDeviceIndex" ::: Word32) -> ("pPeerMemoryFeatures" ::: Ptr PeerMemoryFeatureFlags) -> IO ())
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr Device_T
      -> Word32
      -> ("pBindInfos" ::: Ptr (BindBufferMemoryInfo a))
      -> IO Result)
pVkBindBufferMemory2 :: forall a . FunPtr (Ptr Device_T -> ("bindInfoCount" ::: Word32) -> ("pBindInfos" ::: Ptr (BindBufferMemoryInfo a)) -> IO Result)
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr Device_T
      -> Word32
      -> ("pBindInfos" ::: Ptr (BindImageMemoryInfo a))
      -> IO Result)
pVkBindImageMemory2 :: forall a . FunPtr (Ptr Device_T -> ("bindInfoCount" ::: Word32) -> ("pBindInfos" ::: Ptr (BindImageMemoryInfo a)) -> IO Result)
  , DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> Word32 -> IO ())
pVkCmdSetDeviceMask :: FunPtr (Ptr CommandBuffer_T -> ("deviceMask" ::: Word32) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pDeviceGroupPresentCapabilities"
          ::: Ptr DeviceGroupPresentCapabilitiesKHR)
      -> IO Result)
pVkGetDeviceGroupPresentCapabilitiesKHR :: FunPtr (Ptr Device_T -> ("pDeviceGroupPresentCapabilities" ::: Ptr DeviceGroupPresentCapabilitiesKHR) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> SurfaceKHR
      -> ("pModes" ::: Ptr DeviceGroupPresentModeFlagsKHR)
      -> IO Result)
pVkGetDeviceGroupSurfacePresentModesKHR :: FunPtr (Ptr Device_T -> SurfaceKHR -> ("pModes" ::: Ptr DeviceGroupPresentModeFlagsKHR) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pAcquireInfo" ::: Ptr AcquireNextImageInfoKHR)
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> IO Result)
pVkAcquireNextImage2KHR :: FunPtr (Ptr Device_T -> ("pAcquireInfo" ::: Ptr AcquireNextImageInfoKHR) -> ("pImageIndex" ::: Ptr Word32) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> Word32
      -> Word32
      -> Word32
      -> Word32
      -> Word32
      -> IO ())
pVkCmdDispatchBase :: FunPtr (Ptr CommandBuffer_T -> ("baseGroupX" ::: Word32) -> ("baseGroupY" ::: Word32) -> ("baseGroupZ" ::: Word32) -> ("groupCountX" ::: Word32) -> ("groupCountY" ::: Word32) -> ("groupCountZ" ::: Word32) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr DescriptorUpdateTemplateCreateInfo)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pDescriptorUpdateTemplate" ::: Ptr DescriptorUpdateTemplate)
      -> IO Result)
pVkCreateDescriptorUpdateTemplate :: FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr DescriptorUpdateTemplateCreateInfo) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pDescriptorUpdateTemplate" ::: Ptr DescriptorUpdateTemplate) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> DescriptorUpdateTemplate
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
pVkDestroyDescriptorUpdateTemplate :: FunPtr (Ptr Device_T -> DescriptorUpdateTemplate -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> DescriptorSet -> DescriptorUpdateTemplate -> Display -> IO ())
pVkUpdateDescriptorSetWithTemplate :: FunPtr (Ptr Device_T -> DescriptorSet -> DescriptorUpdateTemplate -> ("pData" ::: Ptr ()) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> DescriptorUpdateTemplate
      -> PipelineLayout
      -> Word32
      -> Display
      -> IO ())
pVkCmdPushDescriptorSetWithTemplateKHR :: FunPtr (Ptr CommandBuffer_T -> DescriptorUpdateTemplate -> PipelineLayout -> ("set" ::: Word32) -> ("pData" ::: Ptr ()) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> Word32
      -> ("pSwapchains" ::: Ptr SwapchainKHR)
      -> ("pMetadata" ::: Ptr HdrMetadataEXT)
      -> IO ())
pVkSetHdrMetadataEXT :: FunPtr (Ptr Device_T -> ("swapchainCount" ::: Word32) -> ("pSwapchains" ::: Ptr SwapchainKHR) -> ("pMetadata" ::: Ptr HdrMetadataEXT) -> IO ())
  , DeviceCmds -> FunPtr (Ptr Device_T -> SwapchainKHR -> IO Result)
pVkGetSwapchainStatusKHR :: FunPtr (Ptr Device_T -> SwapchainKHR -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> SwapchainKHR
      -> ("pDisplayTimingProperties" ::: Ptr RefreshCycleDurationGOOGLE)
      -> IO Result)
pVkGetRefreshCycleDurationGOOGLE :: FunPtr (Ptr Device_T -> SwapchainKHR -> ("pDisplayTimingProperties" ::: Ptr RefreshCycleDurationGOOGLE) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> SwapchainKHR
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pPresentationTimings" ::: Ptr PastPresentationTimingGOOGLE)
      -> IO Result)
pVkGetPastPresentationTimingGOOGLE :: FunPtr (Ptr Device_T -> SwapchainKHR -> ("pPresentationTimingCount" ::: Ptr Word32) -> ("pPresentationTimings" ::: Ptr PastPresentationTimingGOOGLE) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> Word32
      -> ("pViewportWScalings" ::: Ptr ViewportWScalingNV)
      -> IO ())
pVkCmdSetViewportWScalingNV :: FunPtr (Ptr CommandBuffer_T -> ("firstViewport" ::: Word32) -> ("viewportCount" ::: Word32) -> ("pViewportWScalings" ::: Ptr ViewportWScalingNV) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32 -> Word32 -> ("pRects" ::: Ptr Rect2D) -> IO ())
pVkCmdSetDiscardRectangleEXT :: FunPtr (Ptr CommandBuffer_T -> ("firstDiscardRectangle" ::: Word32) -> ("discardRectangleCount" ::: Word32) -> ("pDiscardRectangles" ::: Ptr Rect2D) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pSampleLocationsInfo" ::: Ptr SampleLocationsInfoEXT)
      -> IO ())
pVkCmdSetSampleLocationsEXT :: FunPtr (Ptr CommandBuffer_T -> ("pSampleLocationsInfo" ::: Ptr SampleLocationsInfoEXT) -> IO ())
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr BufferMemoryRequirementsInfo2)
      -> ("pMemoryRequirements" ::: Ptr (MemoryRequirements2 a))
      -> IO ())
pVkGetBufferMemoryRequirements2 :: forall a . FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr BufferMemoryRequirementsInfo2) -> ("pMemoryRequirements" ::: Ptr (MemoryRequirements2 a)) -> IO ())
  , DeviceCmds
-> forall (a :: [*]) (b :: [*]).
   FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr (ImageMemoryRequirementsInfo2 a))
      -> ("pMemoryRequirements" ::: Ptr (MemoryRequirements2 b))
      -> IO ())
pVkGetImageMemoryRequirements2 :: forall a b . FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr (ImageMemoryRequirementsInfo2 a)) -> ("pMemoryRequirements" ::: Ptr (MemoryRequirements2 b)) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr ImageSparseMemoryRequirementsInfo2)
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pSparseMemoryRequirements"
          ::: Ptr SparseImageMemoryRequirements2)
      -> IO ())
pVkGetImageSparseMemoryRequirements2 :: FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr ImageSparseMemoryRequirementsInfo2) -> ("pSparseMemoryRequirementCount" ::: Ptr Word32) -> ("pSparseMemoryRequirements" ::: Ptr SparseImageMemoryRequirements2) -> IO ())
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr (SamplerYcbcrConversionCreateInfo a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pYcbcrConversion" ::: Ptr SamplerYcbcrConversion)
      -> IO Result)
pVkCreateSamplerYcbcrConversion :: forall a . FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (SamplerYcbcrConversionCreateInfo a)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pYcbcrConversion" ::: Ptr SamplerYcbcrConversion) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> SamplerYcbcrConversion
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
pVkDestroySamplerYcbcrConversion :: FunPtr (Ptr Device_T -> SamplerYcbcrConversion -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pQueueInfo" ::: Ptr DeviceQueueInfo2)
      -> ("pQueue" ::: Ptr (Ptr Queue_T))
      -> IO ())
pVkGetDeviceQueue2 :: FunPtr (Ptr Device_T -> ("pQueueInfo" ::: Ptr DeviceQueueInfo2) -> ("pQueue" ::: Ptr (Ptr Queue_T)) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr ValidationCacheCreateInfoEXT)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pValidationCache" ::: Ptr ValidationCacheEXT)
      -> IO Result)
pVkCreateValidationCacheEXT :: FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr ValidationCacheCreateInfoEXT) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pValidationCache" ::: Ptr ValidationCacheEXT) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ValidationCacheEXT
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
pVkDestroyValidationCacheEXT :: FunPtr (Ptr Device_T -> ValidationCacheEXT -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ValidationCacheEXT
      -> ("pDataSize" ::: Ptr ("location" ::: CSize))
      -> Display
      -> IO Result)
pVkGetValidationCacheDataEXT :: FunPtr (Ptr Device_T -> ValidationCacheEXT -> ("pDataSize" ::: Ptr CSize) -> ("pData" ::: Ptr ()) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ValidationCacheEXT
      -> Word32
      -> ("pValidationCache" ::: Ptr ValidationCacheEXT)
      -> IO Result)
pVkMergeValidationCachesEXT :: FunPtr (Ptr Device_T -> ("dstCache" ::: ValidationCacheEXT) -> ("srcCacheCount" ::: Word32) -> ("pSrcCaches" ::: Ptr ValidationCacheEXT) -> IO Result)
  , DeviceCmds
-> forall (a :: [*]) (b :: [*]).
   FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr (DescriptorSetLayoutCreateInfo a))
      -> ("pSupport" ::: Ptr (DescriptorSetLayoutSupport b))
      -> IO ())
pVkGetDescriptorSetLayoutSupport :: forall a b . FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (DescriptorSetLayoutCreateInfo a)) -> ("pSupport" ::: Ptr (DescriptorSetLayoutSupport b)) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> Pipeline
      -> ShaderStageFlags
      -> ShaderInfoTypeAMD
      -> ("pDataSize" ::: Ptr ("location" ::: CSize))
      -> Display
      -> IO Result)
pVkGetShaderInfoAMD :: FunPtr (Ptr Device_T -> Pipeline -> ShaderStageFlagBits -> ShaderInfoTypeAMD -> ("pInfoSize" ::: Ptr CSize) -> ("pInfo" ::: Ptr ()) -> IO Result)
  , DeviceCmds
-> FunPtr (Ptr Device_T -> SwapchainKHR -> Bool32 -> IO ())
pVkSetLocalDimmingAMD :: FunPtr (Ptr Device_T -> SwapchainKHR -> ("localDimmingEnable" ::: Bool32) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> Word32
      -> ("pTimestampInfos" ::: Ptr CalibratedTimestampInfoEXT)
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> IO Result)
pVkGetCalibratedTimestampsEXT :: FunPtr (Ptr Device_T -> ("timestampCount" ::: Word32) -> ("pTimestampInfos" ::: Ptr CalibratedTimestampInfoEXT) -> ("pTimestamps" ::: Ptr Word64) -> ("pMaxDeviation" ::: Ptr Word64) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pNameInfo" ::: Ptr DebugUtilsObjectNameInfoEXT) -> IO Result)
pVkSetDebugUtilsObjectNameEXT :: FunPtr (Ptr Device_T -> ("pNameInfo" ::: Ptr DebugUtilsObjectNameInfoEXT) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pTagInfo" ::: Ptr DebugUtilsObjectTagInfoEXT) -> IO Result)
pVkSetDebugUtilsObjectTagEXT :: FunPtr (Ptr Device_T -> ("pTagInfo" ::: Ptr DebugUtilsObjectTagInfoEXT) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Queue_T -> ("pLabelInfo" ::: Ptr DebugUtilsLabelEXT) -> IO ())
pVkQueueBeginDebugUtilsLabelEXT :: FunPtr (Ptr Queue_T -> ("pLabelInfo" ::: Ptr DebugUtilsLabelEXT) -> IO ())
  , DeviceCmds -> FunPtr (Ptr Queue_T -> IO ())
pVkQueueEndDebugUtilsLabelEXT :: FunPtr (Ptr Queue_T -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Queue_T -> ("pLabelInfo" ::: Ptr DebugUtilsLabelEXT) -> IO ())
pVkQueueInsertDebugUtilsLabelEXT :: FunPtr (Ptr Queue_T -> ("pLabelInfo" ::: Ptr DebugUtilsLabelEXT) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pLabelInfo" ::: Ptr DebugUtilsLabelEXT) -> IO ())
pVkCmdBeginDebugUtilsLabelEXT :: FunPtr (Ptr CommandBuffer_T -> ("pLabelInfo" ::: Ptr DebugUtilsLabelEXT) -> IO ())
  , DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> IO ())
pVkCmdEndDebugUtilsLabelEXT :: FunPtr (Ptr CommandBuffer_T -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pLabelInfo" ::: Ptr DebugUtilsLabelEXT) -> IO ())
pVkCmdInsertDebugUtilsLabelEXT :: FunPtr (Ptr CommandBuffer_T -> ("pLabelInfo" ::: Ptr DebugUtilsLabelEXT) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ExternalMemoryHandleTypeFlagBits
      -> Display
      -> ("pMemoryHostPointerProperties"
          ::: Ptr MemoryHostPointerPropertiesEXT)
      -> IO Result)
pVkGetMemoryHostPointerPropertiesEXT :: FunPtr (Ptr Device_T -> ExternalMemoryHandleTypeFlagBits -> ("pHostPointer" ::: Ptr ()) -> ("pMemoryHostPointerProperties" ::: Ptr MemoryHostPointerPropertiesEXT) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("stageMask" ::: PipelineStageFlags)
      -> Buffer
      -> VisualID
      -> Word32
      -> IO ())
pVkCmdWriteBufferMarkerAMD :: FunPtr (Ptr CommandBuffer_T -> PipelineStageFlagBits -> ("dstBuffer" ::: Buffer) -> ("dstOffset" ::: DeviceSize) -> ("marker" ::: Word32) -> IO ())
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr (RenderPassCreateInfo2 a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pRenderPass" ::: Ptr RenderPass)
      -> IO Result)
pVkCreateRenderPass2 :: forall a . FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (RenderPassCreateInfo2 a)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pRenderPass" ::: Ptr RenderPass) -> IO Result)
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr CommandBuffer_T
      -> ("pRenderPassBegin" ::: Ptr (RenderPassBeginInfo a))
      -> ("pSubpassBeginInfo" ::: Ptr SubpassBeginInfo)
      -> IO ())
pVkCmdBeginRenderPass2 :: forall a . FunPtr (Ptr CommandBuffer_T -> ("pRenderPassBegin" ::: Ptr (RenderPassBeginInfo a)) -> ("pSubpassBeginInfo" ::: Ptr SubpassBeginInfo) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pSubpassBeginInfo" ::: Ptr SubpassBeginInfo)
      -> ("pSubpassEndInfo" ::: Ptr SubpassEndInfo)
      -> IO ())
pVkCmdNextSubpass2 :: FunPtr (Ptr CommandBuffer_T -> ("pSubpassBeginInfo" ::: Ptr SubpassBeginInfo) -> ("pSubpassEndInfo" ::: Ptr SubpassEndInfo) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pSubpassEndInfo" ::: Ptr SubpassEndInfo) -> IO ())
pVkCmdEndRenderPass2 :: FunPtr (Ptr CommandBuffer_T -> ("pSubpassEndInfo" ::: Ptr SubpassEndInfo) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> Semaphore
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> IO Result)
pVkGetSemaphoreCounterValue :: FunPtr (Ptr Device_T -> Semaphore -> ("pValue" ::: Ptr Word64) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pWaitInfo" ::: Ptr SemaphoreWaitInfo)
      -> VisualID
      -> IO Result)
pVkWaitSemaphores :: FunPtr (Ptr Device_T -> ("pWaitInfo" ::: Ptr SemaphoreWaitInfo) -> ("timeout" ::: Word64) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pSignalInfo" ::: Ptr SemaphoreSignalInfo) -> IO Result)
pVkSignalSemaphore :: FunPtr (Ptr Device_T -> ("pSignalInfo" ::: Ptr SemaphoreSignalInfo) -> IO Result)
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr Device_T
      -> Ptr AHardwareBuffer
      -> ("pProperties"
          ::: Ptr (AndroidHardwareBufferPropertiesANDROID a))
      -> IO Result)
pVkGetAndroidHardwareBufferPropertiesANDROID :: forall a . FunPtr (Ptr Device_T -> Ptr AHardwareBuffer -> ("pProperties" ::: Ptr (AndroidHardwareBufferPropertiesANDROID a)) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr MemoryGetAndroidHardwareBufferInfoANDROID)
      -> ("pBuffer" ::: Ptr (Ptr AHardwareBuffer))
      -> IO Result)
pVkGetMemoryAndroidHardwareBufferANDROID :: FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr MemoryGetAndroidHardwareBufferInfoANDROID) -> ("pBuffer" ::: Ptr (Ptr AHardwareBuffer)) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer
      -> VisualID
      -> Buffer
      -> VisualID
      -> Word32
      -> Word32
      -> IO ())
pVkCmdDrawIndirectCount :: FunPtr (Ptr CommandBuffer_T -> Buffer -> ("offset" ::: DeviceSize) -> ("countBuffer" ::: Buffer) -> ("countBufferOffset" ::: DeviceSize) -> ("maxDrawCount" ::: Word32) -> ("stride" ::: Word32) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer
      -> VisualID
      -> Buffer
      -> VisualID
      -> Word32
      -> Word32
      -> IO ())
pVkCmdDrawIndexedIndirectCount :: FunPtr (Ptr CommandBuffer_T -> Buffer -> ("offset" ::: DeviceSize) -> ("countBuffer" ::: Buffer) -> ("countBufferOffset" ::: DeviceSize) -> ("maxDrawCount" ::: Word32) -> ("stride" ::: Word32) -> IO ())
  , DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> Display -> IO ())
pVkCmdSetCheckpointNV :: FunPtr (Ptr CommandBuffer_T -> ("pCheckpointMarker" ::: Ptr ()) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Queue_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pCheckpointData" ::: Ptr CheckpointDataNV)
      -> IO ())
pVkGetQueueCheckpointDataNV :: FunPtr (Ptr Queue_T -> ("pCheckpointDataCount" ::: Ptr Word32) -> ("pCheckpointData" ::: Ptr CheckpointDataNV) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> Word32
      -> ("pBuffer" ::: Ptr Buffer)
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> IO ())
pVkCmdBindTransformFeedbackBuffersEXT :: FunPtr (Ptr CommandBuffer_T -> ("firstBinding" ::: Word32) -> ("bindingCount" ::: Word32) -> ("pBuffers" ::: Ptr Buffer) -> ("pOffsets" ::: Ptr DeviceSize) -> ("pSizes" ::: Ptr DeviceSize) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> Word32
      -> ("pBuffer" ::: Ptr Buffer)
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> IO ())
pVkCmdBeginTransformFeedbackEXT :: FunPtr (Ptr CommandBuffer_T -> ("firstCounterBuffer" ::: Word32) -> ("counterBufferCount" ::: Word32) -> ("pCounterBuffers" ::: Ptr Buffer) -> ("pCounterBufferOffsets" ::: Ptr DeviceSize) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> Word32
      -> ("pBuffer" ::: Ptr Buffer)
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> IO ())
pVkCmdEndTransformFeedbackEXT :: FunPtr (Ptr CommandBuffer_T -> ("firstCounterBuffer" ::: Word32) -> ("counterBufferCount" ::: Word32) -> ("pCounterBuffers" ::: Ptr Buffer) -> ("pCounterBufferOffsets" ::: Ptr DeviceSize) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> QueryPool -> Word32 -> QueryControlFlags -> Word32 -> IO ())
pVkCmdBeginQueryIndexedEXT :: FunPtr (Ptr CommandBuffer_T -> QueryPool -> ("query" ::: Word32) -> QueryControlFlags -> ("index" ::: Word32) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T -> QueryPool -> Word32 -> Word32 -> IO ())
pVkCmdEndQueryIndexedEXT :: FunPtr (Ptr CommandBuffer_T -> QueryPool -> ("query" ::: Word32) -> ("index" ::: Word32) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> Word32
      -> Buffer
      -> VisualID
      -> Word32
      -> Word32
      -> IO ())
pVkCmdDrawIndirectByteCountEXT :: FunPtr (Ptr CommandBuffer_T -> ("instanceCount" ::: Word32) -> ("firstInstance" ::: Word32) -> ("counterBuffer" ::: Buffer) -> ("counterBufferOffset" ::: DeviceSize) -> ("counterOffset" ::: Word32) -> ("vertexStride" ::: Word32) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32 -> Word32 -> ("pRects" ::: Ptr Rect2D) -> IO ())
pVkCmdSetExclusiveScissorNV :: FunPtr (Ptr CommandBuffer_T -> ("firstExclusiveScissor" ::: Word32) -> ("exclusiveScissorCount" ::: Word32) -> ("pExclusiveScissors" ::: Ptr Rect2D) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> ImageView -> ("srcImageLayout" ::: ImageLayout) -> IO ())
pVkCmdBindShadingRateImageNV :: FunPtr (Ptr CommandBuffer_T -> ImageView -> ImageLayout -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> Word32
      -> ("pShadingRatePalettes" ::: Ptr ShadingRatePaletteNV)
      -> IO ())
pVkCmdSetViewportShadingRatePaletteNV :: FunPtr (Ptr CommandBuffer_T -> ("firstViewport" ::: Word32) -> ("viewportCount" ::: Word32) -> ("pShadingRatePalettes" ::: Ptr ShadingRatePaletteNV) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> CoarseSampleOrderTypeNV
      -> Word32
      -> ("pCustomSampleOrders" ::: Ptr CoarseSampleOrderCustomNV)
      -> IO ())
pVkCmdSetCoarseSampleOrderNV :: FunPtr (Ptr CommandBuffer_T -> CoarseSampleOrderTypeNV -> ("customSampleOrderCount" ::: Word32) -> ("pCustomSampleOrders" ::: Ptr CoarseSampleOrderCustomNV) -> IO ())
  , DeviceCmds
-> FunPtr (Ptr CommandBuffer_T -> Word32 -> Word32 -> IO ())
pVkCmdDrawMeshTasksNV :: FunPtr (Ptr CommandBuffer_T -> ("taskCount" ::: Word32) -> ("firstTask" ::: Word32) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer -> VisualID -> Word32 -> Word32 -> IO ())
pVkCmdDrawMeshTasksIndirectNV :: FunPtr (Ptr CommandBuffer_T -> Buffer -> ("offset" ::: DeviceSize) -> ("drawCount" ::: Word32) -> ("stride" ::: Word32) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer
      -> VisualID
      -> Buffer
      -> VisualID
      -> Word32
      -> Word32
      -> IO ())
pVkCmdDrawMeshTasksIndirectCountNV :: FunPtr (Ptr CommandBuffer_T -> Buffer -> ("offset" ::: DeviceSize) -> ("countBuffer" ::: Buffer) -> ("countBufferOffset" ::: DeviceSize) -> ("maxDrawCount" ::: Word32) -> ("stride" ::: Word32) -> IO ())
  , DeviceCmds
-> FunPtr (Ptr Device_T -> Pipeline -> Word32 -> IO Result)
pVkCompileDeferredNV :: FunPtr (Ptr Device_T -> Pipeline -> ("shader" ::: Word32) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr AccelerationStructureCreateInfoNV)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pAccelerationStructure" ::: Ptr AccelerationStructureNV)
      -> IO Result)
pVkCreateAccelerationStructureNV :: FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr AccelerationStructureCreateInfoNV) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pAccelerationStructure" ::: Ptr AccelerationStructureNV) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> AccelerationStructureNV
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
pVkDestroyAccelerationStructureKHR :: FunPtr (Ptr Device_T -> AccelerationStructureKHR -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr AccelerationStructureMemoryRequirementsInfoKHR)
      -> ("pMemoryRequirements" ::: Ptr (MemoryRequirements2 a))
      -> IO ())
pVkGetAccelerationStructureMemoryRequirementsKHR :: forall a . FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr AccelerationStructureMemoryRequirementsInfoKHR) -> ("pMemoryRequirements" ::: Ptr (MemoryRequirements2 a)) -> IO ())
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr AccelerationStructureMemoryRequirementsInfoNV)
      -> ("pMemoryRequirements" ::: Ptr (MemoryRequirements2KHR a))
      -> IO ())
pVkGetAccelerationStructureMemoryRequirementsNV :: forall a . FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr AccelerationStructureMemoryRequirementsInfoNV) -> ("pMemoryRequirements" ::: Ptr (MemoryRequirements2KHR a)) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> Word32
      -> ("pBindInfos" ::: Ptr BindAccelerationStructureMemoryInfoKHR)
      -> IO Result)
pVkBindAccelerationStructureMemoryKHR :: FunPtr (Ptr Device_T -> ("bindInfoCount" ::: Word32) -> ("pBindInfos" ::: Ptr BindAccelerationStructureMemoryInfoKHR) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> AccelerationStructureNV
      -> AccelerationStructureNV
      -> CopyAccelerationStructureModeKHR
      -> IO ())
pVkCmdCopyAccelerationStructureNV :: FunPtr (Ptr CommandBuffer_T -> ("dst" ::: AccelerationStructureKHR) -> ("src" ::: AccelerationStructureKHR) -> CopyAccelerationStructureModeKHR -> IO ())
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr CommandBuffer_T
      -> ("pInfo" ::: Ptr (CopyAccelerationStructureInfoKHR a)) -> IO ())
pVkCmdCopyAccelerationStructureKHR :: forall a . FunPtr (Ptr CommandBuffer_T -> ("pInfo" ::: Ptr (CopyAccelerationStructureInfoKHR a)) -> IO ())
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr (CopyAccelerationStructureInfoKHR a))
      -> IO Result)
pVkCopyAccelerationStructureKHR :: forall a . FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr (CopyAccelerationStructureInfoKHR a)) -> IO Result)
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr CommandBuffer_T
      -> ("pInfo" ::: Ptr (CopyAccelerationStructureToMemoryInfoKHR a))
      -> IO ())
pVkCmdCopyAccelerationStructureToMemoryKHR :: forall a . FunPtr (Ptr CommandBuffer_T -> ("pInfo" ::: Ptr (CopyAccelerationStructureToMemoryInfoKHR a)) -> IO ())
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr (CopyAccelerationStructureToMemoryInfoKHR a))
      -> IO Result)
pVkCopyAccelerationStructureToMemoryKHR :: forall a . FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr (CopyAccelerationStructureToMemoryInfoKHR a)) -> IO Result)
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr CommandBuffer_T
      -> ("pInfo" ::: Ptr (CopyMemoryToAccelerationStructureInfoKHR a))
      -> IO ())
pVkCmdCopyMemoryToAccelerationStructureKHR :: forall a . FunPtr (Ptr CommandBuffer_T -> ("pInfo" ::: Ptr (CopyMemoryToAccelerationStructureInfoKHR a)) -> IO ())
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr (CopyMemoryToAccelerationStructureInfoKHR a))
      -> IO Result)
pVkCopyMemoryToAccelerationStructureKHR :: forall a . FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr (CopyMemoryToAccelerationStructureInfoKHR a)) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> ("pAccelerationStructure" ::: Ptr AccelerationStructureNV)
      -> QueryType
      -> QueryPool
      -> Word32
      -> IO ())
pVkCmdWriteAccelerationStructuresPropertiesKHR :: FunPtr (Ptr CommandBuffer_T -> ("accelerationStructureCount" ::: Word32) -> ("pAccelerationStructures" ::: Ptr AccelerationStructureKHR) -> QueryType -> QueryPool -> ("firstQuery" ::: Word32) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pInfo" ::: Ptr AccelerationStructureInfoNV)
      -> Buffer
      -> VisualID
      -> Bool32
      -> AccelerationStructureNV
      -> AccelerationStructureNV
      -> Buffer
      -> VisualID
      -> IO ())
pVkCmdBuildAccelerationStructureNV :: FunPtr (Ptr CommandBuffer_T -> ("pInfo" ::: Ptr AccelerationStructureInfoNV) -> ("instanceData" ::: Buffer) -> ("instanceOffset" ::: DeviceSize) -> ("update" ::: Bool32) -> ("dst" ::: AccelerationStructureKHR) -> ("src" ::: AccelerationStructureKHR) -> ("scratch" ::: Buffer) -> ("scratchOffset" ::: DeviceSize) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> Word32
      -> ("pAccelerationStructure" ::: Ptr AccelerationStructureNV)
      -> QueryType
      -> ("location" ::: CSize)
      -> Display
      -> ("location" ::: CSize)
      -> IO Result)
pVkWriteAccelerationStructuresPropertiesKHR :: FunPtr (Ptr Device_T -> ("accelerationStructureCount" ::: Word32) -> ("pAccelerationStructures" ::: Ptr AccelerationStructureKHR) -> QueryType -> ("dataSize" ::: CSize) -> ("pData" ::: Ptr ()) -> ("stride" ::: CSize) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR)
      -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR)
      -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR)
      -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR)
      -> Word32
      -> Word32
      -> Word32
      -> IO ())
pVkCmdTraceRaysKHR :: FunPtr (Ptr CommandBuffer_T -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR) -> ("pMissShaderBindingTable" ::: Ptr StridedBufferRegionKHR) -> ("pHitShaderBindingTable" ::: Ptr StridedBufferRegionKHR) -> ("pCallableShaderBindingTable" ::: Ptr StridedBufferRegionKHR) -> ("width" ::: Word32) -> ("height" ::: Word32) -> ("depth" ::: Word32) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer
      -> VisualID
      -> Buffer
      -> VisualID
      -> VisualID
      -> Buffer
      -> VisualID
      -> VisualID
      -> Buffer
      -> VisualID
      -> VisualID
      -> Word32
      -> Word32
      -> Word32
      -> IO ())
pVkCmdTraceRaysNV :: FunPtr (Ptr CommandBuffer_T -> ("raygenShaderBindingTableBuffer" ::: Buffer) -> ("raygenShaderBindingOffset" ::: DeviceSize) -> ("missShaderBindingTableBuffer" ::: Buffer) -> ("missShaderBindingOffset" ::: DeviceSize) -> ("missShaderBindingStride" ::: DeviceSize) -> ("hitShaderBindingTableBuffer" ::: Buffer) -> ("hitShaderBindingOffset" ::: DeviceSize) -> ("hitShaderBindingStride" ::: DeviceSize) -> ("callableShaderBindingTableBuffer" ::: Buffer) -> ("callableShaderBindingOffset" ::: DeviceSize) -> ("callableShaderBindingStride" ::: DeviceSize) -> ("width" ::: Word32) -> ("height" ::: Word32) -> ("depth" ::: Word32) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> Pipeline
      -> Word32
      -> Word32
      -> ("location" ::: CSize)
      -> Display
      -> IO Result)
pVkGetRayTracingShaderGroupHandlesKHR :: FunPtr (Ptr Device_T -> Pipeline -> ("firstGroup" ::: Word32) -> ("groupCount" ::: Word32) -> ("dataSize" ::: CSize) -> ("pData" ::: Ptr ()) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> Pipeline
      -> Word32
      -> Word32
      -> ("location" ::: CSize)
      -> Display
      -> IO Result)
pVkGetRayTracingCaptureReplayShaderGroupHandlesKHR :: FunPtr (Ptr Device_T -> Pipeline -> ("firstGroup" ::: Word32) -> ("groupCount" ::: Word32) -> ("dataSize" ::: CSize) -> ("pData" ::: Ptr ()) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> AccelerationStructureNV
      -> ("location" ::: CSize)
      -> Display
      -> IO Result)
pVkGetAccelerationStructureHandleNV :: FunPtr (Ptr Device_T -> AccelerationStructureKHR -> ("dataSize" ::: CSize) -> ("pData" ::: Ptr ()) -> IO Result)
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr Device_T
      -> PipelineCache
      -> Word32
      -> ("pCreateInfos" ::: Ptr (RayTracingPipelineCreateInfoNV a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pPipelines" ::: Ptr Pipeline)
      -> IO Result)
pVkCreateRayTracingPipelinesNV :: forall a . FunPtr (Ptr Device_T -> PipelineCache -> ("createInfoCount" ::: Word32) -> ("pCreateInfos" ::: Ptr (RayTracingPipelineCreateInfoNV a)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pPipelines" ::: Ptr Pipeline) -> IO Result)
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr Device_T
      -> PipelineCache
      -> Word32
      -> ("pCreateInfos" ::: Ptr (RayTracingPipelineCreateInfoKHR a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pPipelines" ::: Ptr Pipeline)
      -> IO Result)
pVkCreateRayTracingPipelinesKHR :: forall a . FunPtr (Ptr Device_T -> PipelineCache -> ("createInfoCount" ::: Word32) -> ("pCreateInfos" ::: Ptr (RayTracingPipelineCreateInfoKHR a)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pPipelines" ::: Ptr Pipeline) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR)
      -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR)
      -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR)
      -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR)
      -> Buffer
      -> VisualID
      -> IO ())
pVkCmdTraceRaysIndirectKHR :: FunPtr (Ptr CommandBuffer_T -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR) -> ("pMissShaderBindingTable" ::: Ptr StridedBufferRegionKHR) -> ("pHitShaderBindingTable" ::: Ptr StridedBufferRegionKHR) -> ("pCallableShaderBindingTable" ::: Ptr StridedBufferRegionKHR) -> Buffer -> ("offset" ::: DeviceSize) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T -> Ptr AccelerationStructureVersionKHR -> IO Result)
pVkGetDeviceAccelerationStructureCompatibilityKHR :: FunPtr (Ptr Device_T -> Ptr AccelerationStructureVersionKHR -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr ImageViewHandleInfoNVX) -> IO Word32)
pVkGetImageViewHandleNVX :: FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr ImageViewHandleInfoNVX) -> IO Word32)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ImageView
      -> ("pProperties" ::: Ptr ImageViewAddressPropertiesNVX)
      -> IO Result)
pVkGetImageViewAddressNVX :: FunPtr (Ptr Device_T -> ImageView -> ("pProperties" ::: Ptr ImageViewAddressPropertiesNVX) -> IO Result)
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr Device_T
      -> ("pSurfaceInfo" ::: Ptr (PhysicalDeviceSurfaceInfo2KHR a))
      -> ("pModes" ::: Ptr DeviceGroupPresentModeFlagsKHR)
      -> IO Result)
pVkGetDeviceGroupSurfacePresentModes2EXT :: forall a . FunPtr (Ptr Device_T -> ("pSurfaceInfo" ::: Ptr (PhysicalDeviceSurfaceInfo2KHR a)) -> ("pModes" ::: Ptr DeviceGroupPresentModeFlagsKHR) -> IO Result)
  , DeviceCmds -> FunPtr (Ptr Device_T -> SwapchainKHR -> IO Result)
pVkAcquireFullScreenExclusiveModeEXT :: FunPtr (Ptr Device_T -> SwapchainKHR -> IO Result)
  , DeviceCmds -> FunPtr (Ptr Device_T -> SwapchainKHR -> IO Result)
pVkReleaseFullScreenExclusiveModeEXT :: FunPtr (Ptr Device_T -> SwapchainKHR -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr AcquireProfilingLockInfoKHR) -> IO Result)
pVkAcquireProfilingLockKHR :: FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr AcquireProfilingLockInfoKHR) -> IO Result)
  , DeviceCmds -> FunPtr (Ptr Device_T -> IO ())
pVkReleaseProfilingLockKHR :: FunPtr (Ptr Device_T -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> Image
      -> ("pProperties" ::: Ptr ImageDrmFormatModifierPropertiesEXT)
      -> IO Result)
pVkGetImageDrmFormatModifierPropertiesEXT :: FunPtr (Ptr Device_T -> Image -> ("pProperties" ::: Ptr ImageDrmFormatModifierPropertiesEXT) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr BufferDeviceAddressInfo) -> IO VisualID)
pVkGetBufferOpaqueCaptureAddress :: FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr BufferDeviceAddressInfo) -> IO Word64)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr BufferDeviceAddressInfo) -> IO VisualID)
pVkGetBufferDeviceAddress :: FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr BufferDeviceAddressInfo) -> IO DeviceAddress)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pInitializeInfo" ::: Ptr InitializePerformanceApiInfoINTEL)
      -> IO Result)
pVkInitializePerformanceApiINTEL :: FunPtr (Ptr Device_T -> ("pInitializeInfo" ::: Ptr InitializePerformanceApiInfoINTEL) -> IO Result)
  , DeviceCmds -> FunPtr (Ptr Device_T -> IO ())
pVkUninitializePerformanceApiINTEL :: FunPtr (Ptr Device_T -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pMarkerInfo" ::: Ptr PerformanceMarkerInfoINTEL) -> IO Result)
pVkCmdSetPerformanceMarkerINTEL :: FunPtr (Ptr CommandBuffer_T -> ("pMarkerInfo" ::: Ptr PerformanceMarkerInfoINTEL) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pMarkerInfo" ::: Ptr PerformanceStreamMarkerInfoINTEL)
      -> IO Result)
pVkCmdSetPerformanceStreamMarkerINTEL :: FunPtr (Ptr CommandBuffer_T -> ("pMarkerInfo" ::: Ptr PerformanceStreamMarkerInfoINTEL) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pOverrideInfo" ::: Ptr PerformanceOverrideInfoINTEL)
      -> IO Result)
pVkCmdSetPerformanceOverrideINTEL :: FunPtr (Ptr CommandBuffer_T -> ("pOverrideInfo" ::: Ptr PerformanceOverrideInfoINTEL) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pAcquireInfo"
          ::: Ptr PerformanceConfigurationAcquireInfoINTEL)
      -> ("pConfiguration" ::: Ptr PerformanceConfigurationINTEL)
      -> IO Result)
pVkAcquirePerformanceConfigurationINTEL :: FunPtr (Ptr Device_T -> ("pAcquireInfo" ::: Ptr PerformanceConfigurationAcquireInfoINTEL) -> ("pConfiguration" ::: Ptr PerformanceConfigurationINTEL) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T -> PerformanceConfigurationINTEL -> IO Result)
pVkReleasePerformanceConfigurationINTEL :: FunPtr (Ptr Device_T -> PerformanceConfigurationINTEL -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Queue_T -> PerformanceConfigurationINTEL -> IO Result)
pVkQueueSetPerformanceConfigurationINTEL :: FunPtr (Ptr Queue_T -> PerformanceConfigurationINTEL -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> PerformanceParameterTypeINTEL
      -> ("pValue" ::: Ptr PerformanceValueINTEL)
      -> IO Result)
pVkGetPerformanceParameterINTEL :: FunPtr (Ptr Device_T -> PerformanceParameterTypeINTEL -> ("pValue" ::: Ptr PerformanceValueINTEL) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr DeviceMemoryOpaqueCaptureAddressInfo)
      -> IO VisualID)
pVkGetDeviceMemoryOpaqueCaptureAddress :: FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr DeviceMemoryOpaqueCaptureAddressInfo) -> IO Word64)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pPipelineInfo" ::: Ptr PipelineInfoKHR)
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr PipelineExecutablePropertiesKHR)
      -> IO Result)
pVkGetPipelineExecutablePropertiesKHR :: FunPtr (Ptr Device_T -> ("pPipelineInfo" ::: Ptr PipelineInfoKHR) -> ("pExecutableCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr PipelineExecutablePropertiesKHR) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pExecutableInfo" ::: Ptr PipelineExecutableInfoKHR)
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pStatistics" ::: Ptr PipelineExecutableStatisticKHR)
      -> IO Result)
pVkGetPipelineExecutableStatisticsKHR :: FunPtr (Ptr Device_T -> ("pExecutableInfo" ::: Ptr PipelineExecutableInfoKHR) -> ("pStatisticCount" ::: Ptr Word32) -> ("pStatistics" ::: Ptr PipelineExecutableStatisticKHR) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pExecutableInfo" ::: Ptr PipelineExecutableInfoKHR)
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pInternalRepresentations"
          ::: Ptr PipelineExecutableInternalRepresentationKHR)
      -> IO Result)
pVkGetPipelineExecutableInternalRepresentationsKHR :: FunPtr (Ptr Device_T -> ("pExecutableInfo" ::: Ptr PipelineExecutableInfoKHR) -> ("pInternalRepresentationCount" ::: Ptr Word32) -> ("pInternalRepresentations" ::: Ptr PipelineExecutableInternalRepresentationKHR) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32 -> ("lineStipplePattern" ::: Word16) -> IO ())
pVkCmdSetLineStippleEXT :: FunPtr (Ptr CommandBuffer_T -> ("lineStippleFactor" ::: Word32) -> ("lineStipplePattern" ::: Word16) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr AccelerationStructureCreateInfoKHR)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pAccelerationStructure" ::: Ptr AccelerationStructureNV)
      -> IO Result)
pVkCreateAccelerationStructureKHR :: FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr AccelerationStructureCreateInfoKHR) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pAccelerationStructure" ::: Ptr AccelerationStructureKHR) -> IO Result)
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> ("pInfos" ::: Ptr (AccelerationStructureBuildGeometryInfoKHR a))
      -> ("ppOffsetInfos"
          ::: Ptr (Ptr AccelerationStructureBuildOffsetInfoKHR))
      -> IO ())
pVkCmdBuildAccelerationStructureKHR :: forall a . FunPtr (Ptr CommandBuffer_T -> ("infoCount" ::: Word32) -> ("pInfos" ::: Ptr (AccelerationStructureBuildGeometryInfoKHR a)) -> ("ppOffsetInfos" ::: Ptr (Ptr AccelerationStructureBuildOffsetInfoKHR)) -> IO ())
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr CommandBuffer_T
      -> ("pInfo" ::: Ptr (AccelerationStructureBuildGeometryInfoKHR a))
      -> Buffer
      -> VisualID
      -> Word32
      -> IO ())
pVkCmdBuildAccelerationStructureIndirectKHR :: forall a . FunPtr (Ptr CommandBuffer_T -> ("pInfo" ::: Ptr (AccelerationStructureBuildGeometryInfoKHR a)) -> ("indirectBuffer" ::: Buffer) -> ("indirectOffset" ::: DeviceSize) -> ("indirectStride" ::: Word32) -> IO ())
  , DeviceCmds
-> forall (a :: [*]).
   FunPtr
     (Ptr Device_T
      -> Word32
      -> ("pInfos" ::: Ptr (AccelerationStructureBuildGeometryInfoKHR a))
      -> ("ppOffsetInfos"
          ::: Ptr (Ptr AccelerationStructureBuildOffsetInfoKHR))
      -> IO Result)
pVkBuildAccelerationStructureKHR :: forall a . FunPtr (Ptr Device_T -> ("infoCount" ::: Word32) -> ("pInfos" ::: Ptr (AccelerationStructureBuildGeometryInfoKHR a)) -> ("ppOffsetInfos" ::: Ptr (Ptr AccelerationStructureBuildOffsetInfoKHR)) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr AccelerationStructureDeviceAddressInfoKHR)
      -> IO VisualID)
pVkGetAccelerationStructureDeviceAddressKHR :: FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr AccelerationStructureDeviceAddressInfoKHR) -> IO DeviceAddress)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pDeferredOperation" ::: Ptr DeferredOperationKHR)
      -> IO Result)
pVkCreateDeferredOperationKHR :: FunPtr (Ptr Device_T -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pDeferredOperation" ::: Ptr DeferredOperationKHR) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> DeferredOperationKHR
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
pVkDestroyDeferredOperationKHR :: FunPtr (Ptr Device_T -> DeferredOperationKHR -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
  , DeviceCmds
-> FunPtr (Ptr Device_T -> DeferredOperationKHR -> IO Word32)
pVkGetDeferredOperationMaxConcurrencyKHR :: FunPtr (Ptr Device_T -> DeferredOperationKHR -> IO Word32)
  , DeviceCmds
-> FunPtr (Ptr Device_T -> DeferredOperationKHR -> IO Result)
pVkGetDeferredOperationResultKHR :: FunPtr (Ptr Device_T -> DeferredOperationKHR -> IO Result)
  , DeviceCmds
-> FunPtr (Ptr Device_T -> DeferredOperationKHR -> IO Result)
pVkDeferredOperationJoinKHR :: FunPtr (Ptr Device_T -> DeferredOperationKHR -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr PrivateDataSlotCreateInfoEXT)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pPrivateDataSlot" ::: Ptr PrivateDataSlotEXT)
      -> IO Result)
pVkCreatePrivateDataSlotEXT :: FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr PrivateDataSlotCreateInfoEXT) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pPrivateDataSlot" ::: Ptr PrivateDataSlotEXT) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> PrivateDataSlotEXT
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
pVkDestroyPrivateDataSlotEXT :: FunPtr (Ptr Device_T -> PrivateDataSlotEXT -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ObjectType
      -> VisualID
      -> PrivateDataSlotEXT
      -> VisualID
      -> IO Result)
pVkSetPrivateDataEXT :: FunPtr (Ptr Device_T -> ObjectType -> ("objectHandle" ::: Word64) -> PrivateDataSlotEXT -> ("data" ::: Word64) -> IO Result)
  , DeviceCmds
-> FunPtr
     (Ptr Device_T
      -> ObjectType
      -> VisualID
      -> PrivateDataSlotEXT
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> IO ())
pVkGetPrivateDataEXT :: FunPtr (Ptr Device_T -> ObjectType -> ("objectHandle" ::: Word64) -> PrivateDataSlotEXT -> ("pData" ::: Ptr Word64) -> IO ())
  }

deriving instance Eq DeviceCmds
deriving instance Show DeviceCmds
instance Zero DeviceCmds where
  zero :: DeviceCmds
zero = Ptr Device_T
-> FunPtr
     (Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction)
-> FunPtr
     (Ptr Device_T
      -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
-> FunPtr
     (Ptr Device_T
      -> Word32 -> Word32 -> ("pQueue" ::: Ptr (Ptr Queue_T)) -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr Queue_T
       -> Word32
       -> ("pSubmits" ::: Ptr (SubmitInfo a))
       -> Fence
       -> IO Result))
-> FunPtr (Ptr Queue_T -> IO Result)
-> FunPtr (Ptr Device_T -> IO Result)
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pAllocateInfo" ::: Ptr (MemoryAllocateInfo a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pMemory" ::: Ptr DeviceMemory)
       -> IO Result))
-> FunPtr
     (Ptr Device_T
      -> DeviceMemory
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> FunPtr
     (Ptr Device_T
      -> DeviceMemory
      -> VisualID
      -> VisualID
      -> MemoryMapFlags
      -> ("dpy" ::: Ptr Display)
      -> IO Result)
-> FunPtr (Ptr Device_T -> DeviceMemory -> IO ())
-> FunPtr
     (Ptr Device_T
      -> Word32
      -> ("pMemoryRanges" ::: Ptr MappedMemoryRange)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> Word32
      -> ("pMemoryRanges" ::: Ptr MappedMemoryRange)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> DeviceMemory
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> IO ())
-> FunPtr
     (Ptr Device_T
      -> Buffer
      -> ("pMemoryRequirements" ::: Ptr MemoryRequirements)
      -> IO ())
-> FunPtr
     (Ptr Device_T -> Buffer -> DeviceMemory -> VisualID -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> Image
      -> ("pMemoryRequirements" ::: Ptr MemoryRequirements)
      -> IO ())
-> FunPtr
     (Ptr Device_T -> Image -> DeviceMemory -> VisualID -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> Image
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pSparseMemoryRequirements"
          ::: Ptr SparseImageMemoryRequirements)
      -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr Queue_T
       -> Word32
       -> ("pBindInfo" ::: Ptr (BindSparseInfo a))
       -> Fence
       -> IO Result))
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pCreateInfo" ::: Ptr (FenceCreateInfo a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pFence" ::: Ptr Fence)
       -> IO Result))
-> FunPtr
     (Ptr Device_T
      -> Fence -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
-> FunPtr
     (Ptr Device_T -> Word32 -> ("pFence" ::: Ptr Fence) -> IO Result)
-> FunPtr (Ptr Device_T -> Fence -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> Word32
      -> ("pFence" ::: Ptr Fence)
      -> Bool32
      -> VisualID
      -> IO Result)
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pCreateInfo" ::: Ptr (SemaphoreCreateInfo a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pSemaphore" ::: Ptr Semaphore)
       -> IO Result))
-> FunPtr
     (Ptr Device_T
      -> Semaphore
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr EventCreateInfo)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pEvent" ::: Ptr Event)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> Event -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
-> FunPtr (Ptr Device_T -> Event -> IO Result)
-> FunPtr (Ptr Device_T -> Event -> IO Result)
-> FunPtr (Ptr Device_T -> Event -> IO Result)
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pCreateInfo" ::: Ptr (QueryPoolCreateInfo a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pQueryPool" ::: Ptr QueryPool)
       -> IO Result))
-> FunPtr
     (Ptr Device_T
      -> QueryPool
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> FunPtr
     (Ptr Device_T
      -> QueryPool
      -> Word32
      -> Word32
      -> ("location" ::: CSize)
      -> Display
      -> VisualID
      -> QueryResultFlags
      -> IO Result)
-> FunPtr (Ptr Device_T -> QueryPool -> Word32 -> Word32 -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pCreateInfo" ::: Ptr (BufferCreateInfo a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pBuffer" ::: Ptr Buffer)
       -> IO Result))
-> FunPtr
     (Ptr Device_T
      -> Buffer -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr BufferViewCreateInfo)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pView" ::: Ptr BufferView)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> BufferView
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pCreateInfo" ::: Ptr (ImageCreateInfo a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pImage" ::: Ptr Image)
       -> IO Result))
-> FunPtr
     (Ptr Device_T
      -> Image -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
-> FunPtr
     (Ptr Device_T
      -> Image
      -> ("pSubresource" ::: Ptr ImageSubresource)
      -> ("pLayout" ::: Ptr SubresourceLayout)
      -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pCreateInfo" ::: Ptr (ImageViewCreateInfo a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pView" ::: Ptr ImageView)
       -> IO Result))
-> FunPtr
     (Ptr Device_T
      -> ImageView
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pCreateInfo" ::: Ptr (ShaderModuleCreateInfo a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pShaderModule" ::: Ptr ShaderModule)
       -> IO Result))
-> FunPtr
     (Ptr Device_T
      -> ShaderModule
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr PipelineCacheCreateInfo)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pPipelineCache" ::: Ptr PipelineCache)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> PipelineCache
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> FunPtr
     (Ptr Device_T
      -> PipelineCache
      -> ("pDataSize" ::: Ptr ("location" ::: CSize))
      -> Display
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> PipelineCache
      -> Word32
      -> ("pPipelineCache" ::: Ptr PipelineCache)
      -> IO Result)
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> PipelineCache
       -> Word32
       -> ("pCreateInfos" ::: Ptr (GraphicsPipelineCreateInfo a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pPipelines" ::: Ptr Pipeline)
       -> IO Result))
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> PipelineCache
       -> Word32
       -> ("pCreateInfos" ::: Ptr (ComputePipelineCreateInfo a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pPipelines" ::: Ptr Pipeline)
       -> IO Result))
-> FunPtr
     (Ptr Device_T
      -> Pipeline -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr PipelineLayoutCreateInfo)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pPipelineLayout" ::: Ptr PipelineLayout)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> PipelineLayout
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pCreateInfo" ::: Ptr (SamplerCreateInfo a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pSampler" ::: Ptr Sampler)
       -> IO Result))
-> FunPtr
     (Ptr Device_T
      -> Sampler -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pCreateInfo" ::: Ptr (DescriptorSetLayoutCreateInfo a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pSetLayout" ::: Ptr DescriptorSetLayout)
       -> IO Result))
-> FunPtr
     (Ptr Device_T
      -> DescriptorSetLayout
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pCreateInfo" ::: Ptr (DescriptorPoolCreateInfo a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pDescriptorPool" ::: Ptr DescriptorPool)
       -> IO Result))
-> FunPtr
     (Ptr Device_T
      -> DescriptorPool
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> FunPtr
     (Ptr Device_T
      -> DescriptorPool -> DescriptorPoolResetFlags -> IO Result)
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pAllocateInfo" ::: Ptr (DescriptorSetAllocateInfo a))
       -> ("pDescriptorSets" ::: Ptr DescriptorSet)
       -> IO Result))
-> FunPtr
     (Ptr Device_T
      -> DescriptorPool
      -> Word32
      -> ("pDescriptorSets" ::: Ptr DescriptorSet)
      -> IO Result)
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> Word32
       -> ("pDescriptorWrites" ::: Ptr (WriteDescriptorSet a))
       -> Word32
       -> ("pDescriptorCopies" ::: Ptr CopyDescriptorSet)
       -> IO ()))
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pCreateInfo" ::: Ptr (FramebufferCreateInfo a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pFramebuffer" ::: Ptr Framebuffer)
       -> IO Result))
-> FunPtr
     (Ptr Device_T
      -> Framebuffer
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pCreateInfo" ::: Ptr (RenderPassCreateInfo a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pRenderPass" ::: Ptr RenderPass)
       -> IO Result))
-> FunPtr
     (Ptr Device_T
      -> RenderPass
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> FunPtr
     (Ptr Device_T
      -> RenderPass -> ("pGranularity" ::: Ptr Extent2D) -> IO ())
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr CommandPoolCreateInfo)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pCommandPool" ::: Ptr CommandPool)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> CommandPool
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> FunPtr
     (Ptr Device_T -> CommandPool -> CommandPoolResetFlags -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pAllocateInfo" ::: Ptr CommandBufferAllocateInfo)
      -> ("pCommandBuffers" ::: Ptr (Ptr CommandBuffer_T))
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> CommandPool
      -> Word32
      -> ("pCommandBuffers" ::: Ptr (Ptr CommandBuffer_T))
      -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr CommandBuffer_T
       -> ("pBeginInfo" ::: Ptr (CommandBufferBeginInfo a)) -> IO Result))
-> FunPtr (Ptr CommandBuffer_T -> IO Result)
-> FunPtr
     (Ptr CommandBuffer_T -> CommandBufferResetFlags -> IO Result)
-> FunPtr
     (Ptr CommandBuffer_T -> PipelineBindPoint -> Pipeline -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32 -> Word32 -> ("pViewports" ::: Ptr Viewport) -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32 -> Word32 -> ("pRects" ::: Ptr Rect2D) -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T -> ("lineWidth" ::: CFloat) -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("lineWidth" ::: CFloat)
      -> ("lineWidth" ::: CFloat)
      -> ("lineWidth" ::: CFloat)
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("blendConstants"
          ::: Ptr (FixedArray 4 ("lineWidth" ::: CFloat)))
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("lineWidth" ::: CFloat) -> ("lineWidth" ::: CFloat) -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("faceMask" ::: StencilFaceFlags) -> Word32 -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("faceMask" ::: StencilFaceFlags) -> Word32 -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("faceMask" ::: StencilFaceFlags) -> Word32 -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> PipelineBindPoint
      -> PipelineLayout
      -> Word32
      -> Word32
      -> ("pDescriptorSets" ::: Ptr DescriptorSet)
      -> Word32
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T -> Buffer -> VisualID -> IndexType -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> Word32
      -> ("pBuffer" ::: Ptr Buffer)
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32 -> Word32 -> Word32 -> Word32 -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> Word32
      -> Word32
      -> ("messageCode" ::: Int32)
      -> Word32
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer -> VisualID -> Word32 -> Word32 -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer -> VisualID -> Word32 -> Word32 -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T -> Word32 -> Word32 -> Word32 -> IO ())
-> FunPtr (Ptr CommandBuffer_T -> Buffer -> VisualID -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer
      -> Buffer
      -> Word32
      -> ("pRegions" ::: Ptr BufferCopy)
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Image
      -> ("srcImageLayout" ::: ImageLayout)
      -> Image
      -> ("srcImageLayout" ::: ImageLayout)
      -> Word32
      -> ("pRegions" ::: Ptr ImageCopy)
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Image
      -> ("srcImageLayout" ::: ImageLayout)
      -> Image
      -> ("srcImageLayout" ::: ImageLayout)
      -> Word32
      -> ("pRegions" ::: Ptr ImageBlit)
      -> Filter
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer
      -> Image
      -> ("srcImageLayout" ::: ImageLayout)
      -> Word32
      -> ("pRegions" ::: Ptr BufferImageCopy)
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Image
      -> ("srcImageLayout" ::: ImageLayout)
      -> Buffer
      -> Word32
      -> ("pRegions" ::: Ptr BufferImageCopy)
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer -> VisualID -> VisualID -> Display -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer -> VisualID -> VisualID -> Word32 -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Image
      -> ("srcImageLayout" ::: ImageLayout)
      -> ("pColor" ::: Ptr ClearColorValue)
      -> Word32
      -> ("pRanges" ::: Ptr ImageSubresourceRange)
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Image
      -> ("srcImageLayout" ::: ImageLayout)
      -> ("pDepthStencil" ::: Ptr ClearDepthStencilValue)
      -> Word32
      -> ("pRanges" ::: Ptr ImageSubresourceRange)
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> ("pAttachments" ::: Ptr ClearAttachment)
      -> Word32
      -> ("pRects" ::: Ptr ClearRect)
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Image
      -> ("srcImageLayout" ::: ImageLayout)
      -> Image
      -> ("srcImageLayout" ::: ImageLayout)
      -> Word32
      -> ("pRegions" ::: Ptr ImageResolve)
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Event -> ("stageMask" ::: PipelineStageFlags) -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Event -> ("stageMask" ::: PipelineStageFlags) -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr CommandBuffer_T
       -> Word32
       -> ("pEvent" ::: Ptr Event)
       -> ("stageMask" ::: PipelineStageFlags)
       -> ("stageMask" ::: PipelineStageFlags)
       -> Word32
       -> ("pMemoryBarriers" ::: Ptr MemoryBarrier)
       -> Word32
       -> ("pBufferMemoryBarriers" ::: Ptr BufferMemoryBarrier)
       -> Word32
       -> ("pImageMemoryBarriers" ::: Ptr (ImageMemoryBarrier a))
       -> IO ()))
-> (forall (a :: [*]).
    FunPtr
      (Ptr CommandBuffer_T
       -> ("stageMask" ::: PipelineStageFlags)
       -> ("stageMask" ::: PipelineStageFlags)
       -> DependencyFlags
       -> Word32
       -> ("pMemoryBarriers" ::: Ptr MemoryBarrier)
       -> Word32
       -> ("pBufferMemoryBarriers" ::: Ptr BufferMemoryBarrier)
       -> Word32
       -> ("pImageMemoryBarriers" ::: Ptr (ImageMemoryBarrier a))
       -> IO ()))
-> FunPtr
     (Ptr CommandBuffer_T
      -> QueryPool -> Word32 -> QueryControlFlags -> IO ())
-> FunPtr (Ptr CommandBuffer_T -> QueryPool -> Word32 -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pConditionalRenderingBegin"
          ::: Ptr ConditionalRenderingBeginInfoEXT)
      -> IO ())
-> FunPtr (Ptr CommandBuffer_T -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T -> QueryPool -> Word32 -> Word32 -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("stageMask" ::: PipelineStageFlags)
      -> QueryPool
      -> Word32
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> QueryPool
      -> Word32
      -> Word32
      -> Buffer
      -> VisualID
      -> VisualID
      -> QueryResultFlags
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> PipelineLayout
      -> ShaderStageFlags
      -> Word32
      -> Word32
      -> Display
      -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr CommandBuffer_T
       -> ("pRenderPassBegin" ::: Ptr (RenderPassBeginInfo a))
       -> SubpassContents
       -> IO ()))
-> FunPtr (Ptr CommandBuffer_T -> SubpassContents -> IO ())
-> FunPtr (Ptr CommandBuffer_T -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> ("pCommandBuffers" ::: Ptr (Ptr CommandBuffer_T))
      -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> Word32
       -> ("pCreateInfos" ::: Ptr (SwapchainCreateInfoKHR a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pSwapchains" ::: Ptr SwapchainKHR)
       -> IO Result))
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pCreateInfo" ::: Ptr (SwapchainCreateInfoKHR a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pSwapchains" ::: Ptr SwapchainKHR)
       -> IO Result))
-> FunPtr
     (Ptr Device_T
      -> SwapchainKHR
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> FunPtr
     (Ptr Device_T
      -> SwapchainKHR
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pImage" ::: Ptr Image)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> SwapchainKHR
      -> VisualID
      -> Semaphore
      -> Fence
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> IO Result)
-> (forall (a :: [*]).
    FunPtr
      (Ptr Queue_T
       -> ("pPresentInfo" ::: Ptr (PresentInfoKHR a)) -> IO Result))
-> FunPtr
     (Ptr Device_T
      -> ("pNameInfo" ::: Ptr DebugMarkerObjectNameInfoEXT) -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pTagInfo" ::: Ptr DebugMarkerObjectTagInfoEXT) -> IO Result)
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pMarkerInfo" ::: Ptr DebugMarkerMarkerInfoEXT) -> IO ())
-> FunPtr (Ptr CommandBuffer_T -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pMarkerInfo" ::: Ptr DebugMarkerMarkerInfoEXT) -> IO ())
-> FunPtr
     (Ptr Device_T
      -> DeviceMemory
      -> ("externalHandleType" ::: ExternalMemoryHandleTypeFlagsNV)
      -> ("dpy" ::: Ptr Display)
      -> IO Result)
-> FunPtr
     (Ptr CommandBuffer_T
      -> Bool32
      -> ("pGeneratedCommandsInfo" ::: Ptr GeneratedCommandsInfoNV)
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pGeneratedCommandsInfo" ::: Ptr GeneratedCommandsInfoNV)
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> PipelineBindPoint -> Pipeline -> Word32 -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pInfo" ::: Ptr GeneratedCommandsMemoryRequirementsInfoNV)
       -> ("pMemoryRequirements" ::: Ptr (MemoryRequirements2 a))
       -> IO ()))
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr IndirectCommandsLayoutCreateInfoNV)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pIndirectCommandsLayout" ::: Ptr IndirectCommandsLayoutNV)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> IndirectCommandsLayoutNV
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr CommandBuffer_T
       -> PipelineBindPoint
       -> PipelineLayout
       -> Word32
       -> Word32
       -> ("pDescriptorWrites" ::: Ptr (WriteDescriptorSet a))
       -> IO ()))
-> FunPtr
     (Ptr Device_T -> CommandPool -> CommandPoolTrimFlags -> IO ())
-> FunPtr
     (Ptr Device_T
      -> ("pGetWin32HandleInfo" ::: Ptr MemoryGetWin32HandleInfoKHR)
      -> ("dpy" ::: Ptr Display)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ExternalMemoryHandleTypeFlagBits
      -> Display
      -> ("pMemoryWin32HandleProperties"
          ::: Ptr MemoryWin32HandlePropertiesKHR)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pGetFdInfo" ::: Ptr MemoryGetFdInfoKHR)
      -> ("pFd" ::: Ptr CInt)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ExternalMemoryHandleTypeFlagBits
      -> CInt
      -> ("pMemoryFdProperties" ::: Ptr MemoryFdPropertiesKHR)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pGetWin32HandleInfo" ::: Ptr SemaphoreGetWin32HandleInfoKHR)
      -> ("dpy" ::: Ptr Display)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pImportSemaphoreWin32HandleInfo"
          ::: Ptr ImportSemaphoreWin32HandleInfoKHR)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pGetFdInfo" ::: Ptr SemaphoreGetFdInfoKHR)
      -> ("pFd" ::: Ptr CInt)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pImportSemaphoreFdInfo" ::: Ptr ImportSemaphoreFdInfoKHR)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pGetWin32HandleInfo" ::: Ptr FenceGetWin32HandleInfoKHR)
      -> ("dpy" ::: Ptr Display)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pImportFenceWin32HandleInfo"
          ::: Ptr ImportFenceWin32HandleInfoKHR)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pGetFdInfo" ::: Ptr FenceGetFdInfoKHR)
      -> ("pFd" ::: Ptr CInt)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pImportFenceFdInfo" ::: Ptr ImportFenceFdInfoKHR)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> DisplayKHR
      -> ("pDisplayPowerInfo" ::: Ptr DisplayPowerInfoEXT)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pDeviceEventInfo" ::: Ptr DeviceEventInfoEXT)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pFence" ::: Ptr Fence)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> DisplayKHR
      -> ("pDisplayEventInfo" ::: Ptr DisplayEventInfoEXT)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pFence" ::: Ptr Fence)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> SwapchainKHR
      -> SurfaceCounterFlagBitsEXT
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> Word32
      -> Word32
      -> Word32
      -> ("pPeerMemoryFeatures" ::: Ptr PeerMemoryFeatureFlags)
      -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> Word32
       -> ("pBindInfos" ::: Ptr (BindBufferMemoryInfo a))
       -> IO Result))
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> Word32
       -> ("pBindInfos" ::: Ptr (BindImageMemoryInfo a))
       -> IO Result))
-> FunPtr (Ptr CommandBuffer_T -> Word32 -> IO ())
-> FunPtr
     (Ptr Device_T
      -> ("pDeviceGroupPresentCapabilities"
          ::: Ptr DeviceGroupPresentCapabilitiesKHR)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> SurfaceKHR
      -> ("pModes" ::: Ptr DeviceGroupPresentModeFlagsKHR)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pAcquireInfo" ::: Ptr AcquireNextImageInfoKHR)
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> IO Result)
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> Word32
      -> Word32
      -> Word32
      -> Word32
      -> Word32
      -> IO ())
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr DescriptorUpdateTemplateCreateInfo)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pDescriptorUpdateTemplate" ::: Ptr DescriptorUpdateTemplate)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> DescriptorUpdateTemplate
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> FunPtr
     (Ptr Device_T
      -> DescriptorSet -> DescriptorUpdateTemplate -> Display -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> DescriptorUpdateTemplate
      -> PipelineLayout
      -> Word32
      -> Display
      -> IO ())
-> FunPtr
     (Ptr Device_T
      -> Word32
      -> ("pSwapchains" ::: Ptr SwapchainKHR)
      -> ("pMetadata" ::: Ptr HdrMetadataEXT)
      -> IO ())
-> FunPtr (Ptr Device_T -> SwapchainKHR -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> SwapchainKHR
      -> ("pDisplayTimingProperties" ::: Ptr RefreshCycleDurationGOOGLE)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> SwapchainKHR
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pPresentationTimings" ::: Ptr PastPresentationTimingGOOGLE)
      -> IO Result)
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> Word32
      -> ("pViewportWScalings" ::: Ptr ViewportWScalingNV)
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32 -> Word32 -> ("pRects" ::: Ptr Rect2D) -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pSampleLocationsInfo" ::: Ptr SampleLocationsInfoEXT)
      -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pInfo" ::: Ptr BufferMemoryRequirementsInfo2)
       -> ("pMemoryRequirements" ::: Ptr (MemoryRequirements2 a))
       -> IO ()))
-> (forall (a :: [*]) (b :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pInfo" ::: Ptr (ImageMemoryRequirementsInfo2 a))
       -> ("pMemoryRequirements" ::: Ptr (MemoryRequirements2 b))
       -> IO ()))
-> FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr ImageSparseMemoryRequirementsInfo2)
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pSparseMemoryRequirements"
          ::: Ptr SparseImageMemoryRequirements2)
      -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pCreateInfo" ::: Ptr (SamplerYcbcrConversionCreateInfo a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pYcbcrConversion" ::: Ptr SamplerYcbcrConversion)
       -> IO Result))
-> FunPtr
     (Ptr Device_T
      -> SamplerYcbcrConversion
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> FunPtr
     (Ptr Device_T
      -> ("pQueueInfo" ::: Ptr DeviceQueueInfo2)
      -> ("pQueue" ::: Ptr (Ptr Queue_T))
      -> IO ())
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr ValidationCacheCreateInfoEXT)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pValidationCache" ::: Ptr ValidationCacheEXT)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ValidationCacheEXT
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> FunPtr
     (Ptr Device_T
      -> ValidationCacheEXT
      -> ("pDataSize" ::: Ptr ("location" ::: CSize))
      -> Display
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ValidationCacheEXT
      -> Word32
      -> ("pValidationCache" ::: Ptr ValidationCacheEXT)
      -> IO Result)
-> (forall (a :: [*]) (b :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pCreateInfo" ::: Ptr (DescriptorSetLayoutCreateInfo a))
       -> ("pSupport" ::: Ptr (DescriptorSetLayoutSupport b))
       -> IO ()))
-> FunPtr
     (Ptr Device_T
      -> Pipeline
      -> ShaderStageFlags
      -> ShaderInfoTypeAMD
      -> ("pDataSize" ::: Ptr ("location" ::: CSize))
      -> Display
      -> IO Result)
-> FunPtr (Ptr Device_T -> SwapchainKHR -> Bool32 -> IO ())
-> FunPtr
     (Ptr Device_T
      -> Word32
      -> ("pTimestampInfos" ::: Ptr CalibratedTimestampInfoEXT)
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pNameInfo" ::: Ptr DebugUtilsObjectNameInfoEXT) -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pTagInfo" ::: Ptr DebugUtilsObjectTagInfoEXT) -> IO Result)
-> FunPtr
     (Ptr Queue_T -> ("pLabelInfo" ::: Ptr DebugUtilsLabelEXT) -> IO ())
-> FunPtr (Ptr Queue_T -> IO ())
-> FunPtr
     (Ptr Queue_T -> ("pLabelInfo" ::: Ptr DebugUtilsLabelEXT) -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pLabelInfo" ::: Ptr DebugUtilsLabelEXT) -> IO ())
-> FunPtr (Ptr CommandBuffer_T -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pLabelInfo" ::: Ptr DebugUtilsLabelEXT) -> IO ())
-> FunPtr
     (Ptr Device_T
      -> ExternalMemoryHandleTypeFlagBits
      -> Display
      -> ("pMemoryHostPointerProperties"
          ::: Ptr MemoryHostPointerPropertiesEXT)
      -> IO Result)
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("stageMask" ::: PipelineStageFlags)
      -> Buffer
      -> VisualID
      -> Word32
      -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pCreateInfo" ::: Ptr (RenderPassCreateInfo2 a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pRenderPass" ::: Ptr RenderPass)
       -> IO Result))
-> (forall (a :: [*]).
    FunPtr
      (Ptr CommandBuffer_T
       -> ("pRenderPassBegin" ::: Ptr (RenderPassBeginInfo a))
       -> ("pSubpassBeginInfo" ::: Ptr SubpassBeginInfo)
       -> IO ()))
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pSubpassBeginInfo" ::: Ptr SubpassBeginInfo)
      -> ("pSubpassEndInfo" ::: Ptr SubpassEndInfo)
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pSubpassEndInfo" ::: Ptr SubpassEndInfo) -> IO ())
-> FunPtr
     (Ptr Device_T
      -> Semaphore
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pWaitInfo" ::: Ptr SemaphoreWaitInfo)
      -> VisualID
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pSignalInfo" ::: Ptr SemaphoreSignalInfo) -> IO Result)
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> Ptr AHardwareBuffer
       -> ("pProperties"
           ::: Ptr (AndroidHardwareBufferPropertiesANDROID a))
       -> IO Result))
-> FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr MemoryGetAndroidHardwareBufferInfoANDROID)
      -> ("pBuffer" ::: Ptr (Ptr AHardwareBuffer))
      -> IO Result)
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer
      -> VisualID
      -> Buffer
      -> VisualID
      -> Word32
      -> Word32
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer
      -> VisualID
      -> Buffer
      -> VisualID
      -> Word32
      -> Word32
      -> IO ())
-> FunPtr (Ptr CommandBuffer_T -> Display -> IO ())
-> FunPtr
     (Ptr Queue_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pCheckpointData" ::: Ptr CheckpointDataNV)
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> Word32
      -> ("pBuffer" ::: Ptr Buffer)
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> Word32
      -> ("pBuffer" ::: Ptr Buffer)
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> Word32
      -> ("pBuffer" ::: Ptr Buffer)
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> QueryPool -> Word32 -> QueryControlFlags -> Word32 -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T -> QueryPool -> Word32 -> Word32 -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> Word32
      -> Buffer
      -> VisualID
      -> Word32
      -> Word32
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32 -> Word32 -> ("pRects" ::: Ptr Rect2D) -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> ImageView -> ("srcImageLayout" ::: ImageLayout) -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> Word32
      -> ("pShadingRatePalettes" ::: Ptr ShadingRatePaletteNV)
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> CoarseSampleOrderTypeNV
      -> Word32
      -> ("pCustomSampleOrders" ::: Ptr CoarseSampleOrderCustomNV)
      -> IO ())
-> FunPtr (Ptr CommandBuffer_T -> Word32 -> Word32 -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer -> VisualID -> Word32 -> Word32 -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer
      -> VisualID
      -> Buffer
      -> VisualID
      -> Word32
      -> Word32
      -> IO ())
-> FunPtr (Ptr Device_T -> Pipeline -> Word32 -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr AccelerationStructureCreateInfoNV)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pAccelerationStructure" ::: Ptr AccelerationStructureNV)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> AccelerationStructureNV
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pInfo" ::: Ptr AccelerationStructureMemoryRequirementsInfoKHR)
       -> ("pMemoryRequirements" ::: Ptr (MemoryRequirements2 a))
       -> IO ()))
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pInfo" ::: Ptr AccelerationStructureMemoryRequirementsInfoNV)
       -> ("pMemoryRequirements" ::: Ptr (MemoryRequirements2KHR a))
       -> IO ()))
-> FunPtr
     (Ptr Device_T
      -> Word32
      -> ("pBindInfos" ::: Ptr BindAccelerationStructureMemoryInfoKHR)
      -> IO Result)
-> FunPtr
     (Ptr CommandBuffer_T
      -> AccelerationStructureNV
      -> AccelerationStructureNV
      -> CopyAccelerationStructureModeKHR
      -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr CommandBuffer_T
       -> ("pInfo" ::: Ptr (CopyAccelerationStructureInfoKHR a))
       -> IO ()))
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pInfo" ::: Ptr (CopyAccelerationStructureInfoKHR a))
       -> IO Result))
-> (forall (a :: [*]).
    FunPtr
      (Ptr CommandBuffer_T
       -> ("pInfo" ::: Ptr (CopyAccelerationStructureToMemoryInfoKHR a))
       -> IO ()))
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pInfo" ::: Ptr (CopyAccelerationStructureToMemoryInfoKHR a))
       -> IO Result))
-> (forall (a :: [*]).
    FunPtr
      (Ptr CommandBuffer_T
       -> ("pInfo" ::: Ptr (CopyMemoryToAccelerationStructureInfoKHR a))
       -> IO ()))
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pInfo" ::: Ptr (CopyMemoryToAccelerationStructureInfoKHR a))
       -> IO Result))
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> ("pAccelerationStructure" ::: Ptr AccelerationStructureNV)
      -> QueryType
      -> QueryPool
      -> Word32
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pInfo" ::: Ptr AccelerationStructureInfoNV)
      -> Buffer
      -> VisualID
      -> Bool32
      -> AccelerationStructureNV
      -> AccelerationStructureNV
      -> Buffer
      -> VisualID
      -> IO ())
-> FunPtr
     (Ptr Device_T
      -> Word32
      -> ("pAccelerationStructure" ::: Ptr AccelerationStructureNV)
      -> QueryType
      -> ("location" ::: CSize)
      -> Display
      -> ("location" ::: CSize)
      -> IO Result)
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR)
      -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR)
      -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR)
      -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR)
      -> Word32
      -> Word32
      -> Word32
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer
      -> VisualID
      -> Buffer
      -> VisualID
      -> VisualID
      -> Buffer
      -> VisualID
      -> VisualID
      -> Buffer
      -> VisualID
      -> VisualID
      -> Word32
      -> Word32
      -> Word32
      -> IO ())
-> FunPtr
     (Ptr Device_T
      -> Pipeline
      -> Word32
      -> Word32
      -> ("location" ::: CSize)
      -> Display
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> Pipeline
      -> Word32
      -> Word32
      -> ("location" ::: CSize)
      -> Display
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> AccelerationStructureNV
      -> ("location" ::: CSize)
      -> Display
      -> IO Result)
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> PipelineCache
       -> Word32
       -> ("pCreateInfos" ::: Ptr (RayTracingPipelineCreateInfoNV a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pPipelines" ::: Ptr Pipeline)
       -> IO Result))
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> PipelineCache
       -> Word32
       -> ("pCreateInfos" ::: Ptr (RayTracingPipelineCreateInfoKHR a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pPipelines" ::: Ptr Pipeline)
       -> IO Result))
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR)
      -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR)
      -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR)
      -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR)
      -> Buffer
      -> VisualID
      -> IO ())
-> FunPtr
     (Ptr Device_T -> Ptr AccelerationStructureVersionKHR -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr ImageViewHandleInfoNVX) -> IO Word32)
-> FunPtr
     (Ptr Device_T
      -> ImageView
      -> ("pProperties" ::: Ptr ImageViewAddressPropertiesNVX)
      -> IO Result)
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pSurfaceInfo" ::: Ptr (PhysicalDeviceSurfaceInfo2KHR a))
       -> ("pModes" ::: Ptr DeviceGroupPresentModeFlagsKHR)
       -> IO Result))
-> FunPtr (Ptr Device_T -> SwapchainKHR -> IO Result)
-> FunPtr (Ptr Device_T -> SwapchainKHR -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr AcquireProfilingLockInfoKHR) -> IO Result)
-> FunPtr (Ptr Device_T -> IO ())
-> FunPtr
     (Ptr Device_T
      -> Image
      -> ("pProperties" ::: Ptr ImageDrmFormatModifierPropertiesEXT)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr BufferDeviceAddressInfo) -> IO VisualID)
-> FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr BufferDeviceAddressInfo) -> IO VisualID)
-> FunPtr
     (Ptr Device_T
      -> ("pInitializeInfo" ::: Ptr InitializePerformanceApiInfoINTEL)
      -> IO Result)
-> FunPtr (Ptr Device_T -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pMarkerInfo" ::: Ptr PerformanceMarkerInfoINTEL) -> IO Result)
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pMarkerInfo" ::: Ptr PerformanceStreamMarkerInfoINTEL)
      -> IO Result)
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pOverrideInfo" ::: Ptr PerformanceOverrideInfoINTEL)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pAcquireInfo"
          ::: Ptr PerformanceConfigurationAcquireInfoINTEL)
      -> ("pConfiguration" ::: Ptr PerformanceConfigurationINTEL)
      -> IO Result)
-> FunPtr
     (Ptr Device_T -> PerformanceConfigurationINTEL -> IO Result)
-> FunPtr
     (Ptr Queue_T -> PerformanceConfigurationINTEL -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> PerformanceParameterTypeINTEL
      -> ("pValue" ::: Ptr PerformanceValueINTEL)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr DeviceMemoryOpaqueCaptureAddressInfo)
      -> IO VisualID)
-> FunPtr
     (Ptr Device_T
      -> ("pPipelineInfo" ::: Ptr PipelineInfoKHR)
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr PipelineExecutablePropertiesKHR)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pExecutableInfo" ::: Ptr PipelineExecutableInfoKHR)
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pStatistics" ::: Ptr PipelineExecutableStatisticKHR)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pExecutableInfo" ::: Ptr PipelineExecutableInfoKHR)
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pInternalRepresentations"
          ::: Ptr PipelineExecutableInternalRepresentationKHR)
      -> IO Result)
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32 -> ("lineStipplePattern" ::: Word16) -> IO ())
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr AccelerationStructureCreateInfoKHR)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pAccelerationStructure" ::: Ptr AccelerationStructureNV)
      -> IO Result)
-> (forall (a :: [*]).
    FunPtr
      (Ptr CommandBuffer_T
       -> Word32
       -> ("pInfos" ::: Ptr (AccelerationStructureBuildGeometryInfoKHR a))
       -> ("ppOffsetInfos"
           ::: Ptr (Ptr AccelerationStructureBuildOffsetInfoKHR))
       -> IO ()))
-> (forall (a :: [*]).
    FunPtr
      (Ptr CommandBuffer_T
       -> ("pInfo" ::: Ptr (AccelerationStructureBuildGeometryInfoKHR a))
       -> Buffer
       -> VisualID
       -> Word32
       -> IO ()))
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> Word32
       -> ("pInfos" ::: Ptr (AccelerationStructureBuildGeometryInfoKHR a))
       -> ("ppOffsetInfos"
           ::: Ptr (Ptr AccelerationStructureBuildOffsetInfoKHR))
       -> IO Result))
-> FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr AccelerationStructureDeviceAddressInfoKHR)
      -> IO VisualID)
-> FunPtr
     (Ptr Device_T
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pDeferredOperation" ::: Ptr DeferredOperationKHR)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> DeferredOperationKHR
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> FunPtr (Ptr Device_T -> DeferredOperationKHR -> IO Word32)
-> FunPtr (Ptr Device_T -> DeferredOperationKHR -> IO Result)
-> FunPtr (Ptr Device_T -> DeferredOperationKHR -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr PrivateDataSlotCreateInfoEXT)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pPrivateDataSlot" ::: Ptr PrivateDataSlotEXT)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> PrivateDataSlotEXT
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> FunPtr
     (Ptr Device_T
      -> ObjectType
      -> VisualID
      -> PrivateDataSlotEXT
      -> VisualID
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ObjectType
      -> VisualID
      -> PrivateDataSlotEXT
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> IO ())
-> DeviceCmds
DeviceCmds
    Ptr Device_T
forall a. Ptr a
nullPtr FunPtr
  (Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> Word32 -> Word32 -> ("pQueue" ::: Ptr (Ptr Queue_T)) -> IO ())
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr Queue_T
   -> Word32
   -> ("pSubmits" ::: Ptr (SubmitInfo a))
   -> Fence
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr (Ptr Queue_T -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr (Ptr Device_T -> IO Result)
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr Device_T
   -> ("pAllocateInfo" ::: Ptr (MemoryAllocateInfo a))
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pMemory" ::: Ptr DeviceMemory)
   -> IO Result)
forall a. FunPtr a
nullFunPtr
    FunPtr
  (Ptr Device_T
   -> DeviceMemory
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> DeviceMemory
   -> VisualID
   -> VisualID
   -> MemoryMapFlags
   -> ("dpy" ::: Ptr Display)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr (Ptr Device_T -> DeviceMemory -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> Word32
   -> ("pMemoryRanges" ::: Ptr MappedMemoryRange)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> Word32
   -> ("pMemoryRanges" ::: Ptr MappedMemoryRange)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> DeviceMemory
   -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> Buffer
   -> ("pMemoryRequirements" ::: Ptr MemoryRequirements)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T -> Buffer -> DeviceMemory -> VisualID -> IO Result)
forall a. FunPtr a
nullFunPtr
    FunPtr
  (Ptr Device_T
   -> Image
   -> ("pMemoryRequirements" ::: Ptr MemoryRequirements)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T -> Image -> DeviceMemory -> VisualID -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> Image
   -> ("pPhysicalDeviceCount" ::: Ptr Word32)
   -> ("pSparseMemoryRequirements"
       ::: Ptr SparseImageMemoryRequirements)
   -> IO ())
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr Queue_T
   -> Word32
   -> ("pBindInfo" ::: Ptr (BindSparseInfo a))
   -> Fence
   -> IO Result)
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr Device_T
   -> ("pCreateInfo" ::: Ptr (FenceCreateInfo a))
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pFence" ::: Ptr Fence)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> Fence -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T -> Word32 -> ("pFence" ::: Ptr Fence) -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr (Ptr Device_T -> Fence -> IO Result)
forall a. FunPtr a
nullFunPtr
    FunPtr
  (Ptr Device_T
   -> Word32
   -> ("pFence" ::: Ptr Fence)
   -> Bool32
   -> VisualID
   -> IO Result)
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr Device_T
   -> ("pCreateInfo" ::: Ptr (SemaphoreCreateInfo a))
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pSemaphore" ::: Ptr Semaphore)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> Semaphore
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pCreateInfo" ::: Ptr EventCreateInfo)
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pEvent" ::: Ptr Event)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> Event -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr (Ptr Device_T -> Event -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr (Ptr Device_T -> Event -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr (Ptr Device_T -> Event -> IO Result)
forall a. FunPtr a
nullFunPtr
    forall (a :: [*]).
FunPtr
  (Ptr Device_T
   -> ("pCreateInfo" ::: Ptr (QueryPoolCreateInfo a))
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pQueryPool" ::: Ptr QueryPool)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> QueryPool
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> QueryPool
   -> Word32
   -> Word32
   -> ("location" ::: CSize)
   -> Display
   -> VisualID
   -> QueryResultFlags
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr (Ptr Device_T -> QueryPool -> Word32 -> Word32 -> IO ())
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr Device_T
   -> ("pCreateInfo" ::: Ptr (BufferCreateInfo a))
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pBuffer" ::: Ptr Buffer)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> Buffer -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pCreateInfo" ::: Ptr BufferViewCreateInfo)
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pView" ::: Ptr BufferView)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> BufferView
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> IO ())
forall a. FunPtr a
nullFunPtr
    forall (a :: [*]).
FunPtr
  (Ptr Device_T
   -> ("pCreateInfo" ::: Ptr (ImageCreateInfo a))
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pImage" ::: Ptr Image)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> Image -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> Image
   -> ("pSubresource" ::: Ptr ImageSubresource)
   -> ("pLayout" ::: Ptr SubresourceLayout)
   -> IO ())
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr Device_T
   -> ("pCreateInfo" ::: Ptr (ImageViewCreateInfo a))
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pView" ::: Ptr ImageView)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ImageView
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> IO ())
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr Device_T
   -> ("pCreateInfo" ::: Ptr (ShaderModuleCreateInfo a))
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pShaderModule" ::: Ptr ShaderModule)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ShaderModule
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pCreateInfo" ::: Ptr PipelineCacheCreateInfo)
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pPipelineCache" ::: Ptr PipelineCache)
   -> IO Result)
forall a. FunPtr a
nullFunPtr
    FunPtr
  (Ptr Device_T
   -> PipelineCache
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> PipelineCache
   -> ("pDataSize" ::: Ptr ("location" ::: CSize))
   -> Display
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> PipelineCache
   -> Word32
   -> ("pPipelineCache" ::: Ptr PipelineCache)
   -> IO Result)
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr Device_T
   -> PipelineCache
   -> Word32
   -> ("pCreateInfos" ::: Ptr (GraphicsPipelineCreateInfo a))
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pPipelines" ::: Ptr Pipeline)
   -> IO Result)
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr Device_T
   -> PipelineCache
   -> Word32
   -> ("pCreateInfos" ::: Ptr (ComputePipelineCreateInfo a))
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pPipelines" ::: Ptr Pipeline)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> Pipeline -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pCreateInfo" ::: Ptr PipelineLayoutCreateInfo)
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pPipelineLayout" ::: Ptr PipelineLayout)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> PipelineLayout
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> IO ())
forall a. FunPtr a
nullFunPtr
    forall (a :: [*]).
FunPtr
  (Ptr Device_T
   -> ("pCreateInfo" ::: Ptr (SamplerCreateInfo a))
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pSampler" ::: Ptr Sampler)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> Sampler -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr Device_T
   -> ("pCreateInfo" ::: Ptr (DescriptorSetLayoutCreateInfo a))
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pSetLayout" ::: Ptr DescriptorSetLayout)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> DescriptorSetLayout
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> IO ())
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr Device_T
   -> ("pCreateInfo" ::: Ptr (DescriptorPoolCreateInfo a))
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pDescriptorPool" ::: Ptr DescriptorPool)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> DescriptorPool
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> DescriptorPool -> DescriptorPoolResetFlags -> IO Result)
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr Device_T
   -> ("pAllocateInfo" ::: Ptr (DescriptorSetAllocateInfo a))
   -> ("pDescriptorSets" ::: Ptr DescriptorSet)
   -> IO Result)
forall a. FunPtr a
nullFunPtr
    FunPtr
  (Ptr Device_T
   -> DescriptorPool
   -> Word32
   -> ("pDescriptorSets" ::: Ptr DescriptorSet)
   -> IO Result)
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr Device_T
   -> Word32
   -> ("pDescriptorWrites" ::: Ptr (WriteDescriptorSet a))
   -> Word32
   -> ("pDescriptorCopies" ::: Ptr CopyDescriptorSet)
   -> IO ())
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr Device_T
   -> ("pCreateInfo" ::: Ptr (FramebufferCreateInfo a))
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pFramebuffer" ::: Ptr Framebuffer)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> Framebuffer
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> IO ())
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr Device_T
   -> ("pCreateInfo" ::: Ptr (RenderPassCreateInfo a))
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pRenderPass" ::: Ptr RenderPass)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> RenderPass
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> RenderPass -> ("pGranularity" ::: Ptr Extent2D) -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pCreateInfo" ::: Ptr CommandPoolCreateInfo)
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pCommandPool" ::: Ptr CommandPool)
   -> IO Result)
forall a. FunPtr a
nullFunPtr
    FunPtr
  (Ptr Device_T
   -> CommandPool
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T -> CommandPool -> CommandPoolResetFlags -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pAllocateInfo" ::: Ptr CommandBufferAllocateInfo)
   -> ("pCommandBuffers" ::: Ptr (Ptr CommandBuffer_T))
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> CommandPool
   -> Word32
   -> ("pCommandBuffers" ::: Ptr (Ptr CommandBuffer_T))
   -> IO ())
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr CommandBuffer_T
   -> ("pBeginInfo" ::: Ptr (CommandBufferBeginInfo a)) -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr (Ptr CommandBuffer_T -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T -> CommandBufferResetFlags -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T -> PipelineBindPoint -> Pipeline -> IO ())
forall a. FunPtr a
nullFunPtr
    FunPtr
  (Ptr CommandBuffer_T
   -> Word32 -> Word32 -> ("pViewports" ::: Ptr Viewport) -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> Word32 -> Word32 -> ("pRects" ::: Ptr Rect2D) -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr (Ptr CommandBuffer_T -> ("lineWidth" ::: CFloat) -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> ("lineWidth" ::: CFloat)
   -> ("lineWidth" ::: CFloat)
   -> ("lineWidth" ::: CFloat)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> ("blendConstants"
       ::: Ptr (FixedArray 4 ("lineWidth" ::: CFloat)))
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> ("lineWidth" ::: CFloat) -> ("lineWidth" ::: CFloat) -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> ("faceMask" ::: StencilFaceFlags) -> Word32 -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> ("faceMask" ::: StencilFaceFlags) -> Word32 -> IO ())
forall a. FunPtr a
nullFunPtr
    FunPtr
  (Ptr CommandBuffer_T
   -> ("faceMask" ::: StencilFaceFlags) -> Word32 -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> PipelineBindPoint
   -> PipelineLayout
   -> Word32
   -> Word32
   -> ("pDescriptorSets" ::: Ptr DescriptorSet)
   -> Word32
   -> ("pPhysicalDeviceCount" ::: Ptr Word32)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T -> Buffer -> VisualID -> IndexType -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> Word32
   -> Word32
   -> ("pBuffer" ::: Ptr Buffer)
   -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> Word32 -> Word32 -> Word32 -> Word32 -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> Word32
   -> Word32
   -> Word32
   -> ("messageCode" ::: Int32)
   -> Word32
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> Buffer -> VisualID -> Word32 -> Word32 -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> Buffer -> VisualID -> Word32 -> Word32 -> IO ())
forall a. FunPtr a
nullFunPtr
    FunPtr (Ptr CommandBuffer_T -> Word32 -> Word32 -> Word32 -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr (Ptr CommandBuffer_T -> Buffer -> VisualID -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> Buffer
   -> Buffer
   -> Word32
   -> ("pRegions" ::: Ptr BufferCopy)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> Image
   -> ("srcImageLayout" ::: ImageLayout)
   -> Image
   -> ("srcImageLayout" ::: ImageLayout)
   -> Word32
   -> ("pRegions" ::: Ptr ImageCopy)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> Image
   -> ("srcImageLayout" ::: ImageLayout)
   -> Image
   -> ("srcImageLayout" ::: ImageLayout)
   -> Word32
   -> ("pRegions" ::: Ptr ImageBlit)
   -> Filter
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> Buffer
   -> Image
   -> ("srcImageLayout" ::: ImageLayout)
   -> Word32
   -> ("pRegions" ::: Ptr BufferImageCopy)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> Image
   -> ("srcImageLayout" ::: ImageLayout)
   -> Buffer
   -> Word32
   -> ("pRegions" ::: Ptr BufferImageCopy)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> Buffer -> VisualID -> VisualID -> Display -> IO ())
forall a. FunPtr a
nullFunPtr
    FunPtr
  (Ptr CommandBuffer_T
   -> Buffer -> VisualID -> VisualID -> Word32 -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> Image
   -> ("srcImageLayout" ::: ImageLayout)
   -> ("pColor" ::: Ptr ClearColorValue)
   -> Word32
   -> ("pRanges" ::: Ptr ImageSubresourceRange)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> Image
   -> ("srcImageLayout" ::: ImageLayout)
   -> ("pDepthStencil" ::: Ptr ClearDepthStencilValue)
   -> Word32
   -> ("pRanges" ::: Ptr ImageSubresourceRange)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> Word32
   -> ("pAttachments" ::: Ptr ClearAttachment)
   -> Word32
   -> ("pRects" ::: Ptr ClearRect)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> Image
   -> ("srcImageLayout" ::: ImageLayout)
   -> Image
   -> ("srcImageLayout" ::: ImageLayout)
   -> Word32
   -> ("pRegions" ::: Ptr ImageResolve)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> Event -> ("stageMask" ::: PipelineStageFlags) -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> Event -> ("stageMask" ::: PipelineStageFlags) -> IO ())
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr CommandBuffer_T
   -> Word32
   -> ("pEvent" ::: Ptr Event)
   -> ("stageMask" ::: PipelineStageFlags)
   -> ("stageMask" ::: PipelineStageFlags)
   -> Word32
   -> ("pMemoryBarriers" ::: Ptr MemoryBarrier)
   -> Word32
   -> ("pBufferMemoryBarriers" ::: Ptr BufferMemoryBarrier)
   -> Word32
   -> ("pImageMemoryBarriers" ::: Ptr (ImageMemoryBarrier a))
   -> IO ())
forall a. FunPtr a
nullFunPtr
    forall (a :: [*]).
FunPtr
  (Ptr CommandBuffer_T
   -> ("stageMask" ::: PipelineStageFlags)
   -> ("stageMask" ::: PipelineStageFlags)
   -> DependencyFlags
   -> Word32
   -> ("pMemoryBarriers" ::: Ptr MemoryBarrier)
   -> Word32
   -> ("pBufferMemoryBarriers" ::: Ptr BufferMemoryBarrier)
   -> Word32
   -> ("pImageMemoryBarriers" ::: Ptr (ImageMemoryBarrier a))
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> QueryPool -> Word32 -> QueryControlFlags -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr (Ptr CommandBuffer_T -> QueryPool -> Word32 -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> ("pConditionalRenderingBegin"
       ::: Ptr ConditionalRenderingBeginInfoEXT)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr (Ptr CommandBuffer_T -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T -> QueryPool -> Word32 -> Word32 -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> ("stageMask" ::: PipelineStageFlags)
   -> QueryPool
   -> Word32
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> QueryPool
   -> Word32
   -> Word32
   -> Buffer
   -> VisualID
   -> VisualID
   -> QueryResultFlags
   -> IO ())
forall a. FunPtr a
nullFunPtr
    FunPtr
  (Ptr CommandBuffer_T
   -> PipelineLayout
   -> ShaderStageFlags
   -> Word32
   -> Word32
   -> Display
   -> IO ())
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr CommandBuffer_T
   -> ("pRenderPassBegin" ::: Ptr (RenderPassBeginInfo a))
   -> SubpassContents
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr (Ptr CommandBuffer_T -> SubpassContents -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr (Ptr CommandBuffer_T -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> Word32
   -> ("pCommandBuffers" ::: Ptr (Ptr CommandBuffer_T))
   -> IO ())
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr Device_T
   -> Word32
   -> ("pCreateInfos" ::: Ptr (SwapchainCreateInfoKHR a))
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pSwapchains" ::: Ptr SwapchainKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr Device_T
   -> ("pCreateInfo" ::: Ptr (SwapchainCreateInfoKHR a))
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pSwapchains" ::: Ptr SwapchainKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> SwapchainKHR
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> IO ())
forall a. FunPtr a
nullFunPtr
    FunPtr
  (Ptr Device_T
   -> SwapchainKHR
   -> ("pPhysicalDeviceCount" ::: Ptr Word32)
   -> ("pImage" ::: Ptr Image)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> SwapchainKHR
   -> VisualID
   -> Semaphore
   -> Fence
   -> ("pPhysicalDeviceCount" ::: Ptr Word32)
   -> IO Result)
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr Queue_T
   -> ("pPresentInfo" ::: Ptr (PresentInfoKHR a)) -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pNameInfo" ::: Ptr DebugMarkerObjectNameInfoEXT) -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pTagInfo" ::: Ptr DebugMarkerObjectTagInfoEXT) -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> ("pMarkerInfo" ::: Ptr DebugMarkerMarkerInfoEXT) -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr (Ptr CommandBuffer_T -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> ("pMarkerInfo" ::: Ptr DebugMarkerMarkerInfoEXT) -> IO ())
forall a. FunPtr a
nullFunPtr
    FunPtr
  (Ptr Device_T
   -> DeviceMemory
   -> ("externalHandleType" ::: ExternalMemoryHandleTypeFlagsNV)
   -> ("dpy" ::: Ptr Display)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> Bool32
   -> ("pGeneratedCommandsInfo" ::: Ptr GeneratedCommandsInfoNV)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> ("pGeneratedCommandsInfo" ::: Ptr GeneratedCommandsInfoNV)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> PipelineBindPoint -> Pipeline -> Word32 -> IO ())
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr Device_T
   -> ("pInfo" ::: Ptr GeneratedCommandsMemoryRequirementsInfoNV)
   -> ("pMemoryRequirements" ::: Ptr (MemoryRequirements2 a))
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pCreateInfo" ::: Ptr IndirectCommandsLayoutCreateInfoNV)
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pIndirectCommandsLayout" ::: Ptr IndirectCommandsLayoutNV)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> IndirectCommandsLayoutNV
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> IO ())
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr CommandBuffer_T
   -> PipelineBindPoint
   -> PipelineLayout
   -> Word32
   -> Word32
   -> ("pDescriptorWrites" ::: Ptr (WriteDescriptorSet a))
   -> IO ())
forall a. FunPtr a
nullFunPtr
    FunPtr
  (Ptr Device_T -> CommandPool -> CommandPoolTrimFlags -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pGetWin32HandleInfo" ::: Ptr MemoryGetWin32HandleInfoKHR)
   -> ("dpy" ::: Ptr Display)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ExternalMemoryHandleTypeFlagBits
   -> Display
   -> ("pMemoryWin32HandleProperties"
       ::: Ptr MemoryWin32HandlePropertiesKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pGetFdInfo" ::: Ptr MemoryGetFdInfoKHR)
   -> ("pFd" ::: Ptr CInt)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ExternalMemoryHandleTypeFlagBits
   -> CInt
   -> ("pMemoryFdProperties" ::: Ptr MemoryFdPropertiesKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pGetWin32HandleInfo" ::: Ptr SemaphoreGetWin32HandleInfoKHR)
   -> ("dpy" ::: Ptr Display)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pImportSemaphoreWin32HandleInfo"
       ::: Ptr ImportSemaphoreWin32HandleInfoKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pGetFdInfo" ::: Ptr SemaphoreGetFdInfoKHR)
   -> ("pFd" ::: Ptr CInt)
   -> IO Result)
forall a. FunPtr a
nullFunPtr
    FunPtr
  (Ptr Device_T
   -> ("pImportSemaphoreFdInfo" ::: Ptr ImportSemaphoreFdInfoKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pGetWin32HandleInfo" ::: Ptr FenceGetWin32HandleInfoKHR)
   -> ("dpy" ::: Ptr Display)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pImportFenceWin32HandleInfo"
       ::: Ptr ImportFenceWin32HandleInfoKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pGetFdInfo" ::: Ptr FenceGetFdInfoKHR)
   -> ("pFd" ::: Ptr CInt)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pImportFenceFdInfo" ::: Ptr ImportFenceFdInfoKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> DisplayKHR
   -> ("pDisplayPowerInfo" ::: Ptr DisplayPowerInfoEXT)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pDeviceEventInfo" ::: Ptr DeviceEventInfoEXT)
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pFence" ::: Ptr Fence)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> DisplayKHR
   -> ("pDisplayEventInfo" ::: Ptr DisplayEventInfoEXT)
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pFence" ::: Ptr Fence)
   -> IO Result)
forall a. FunPtr a
nullFunPtr
    FunPtr
  (Ptr Device_T
   -> SwapchainKHR
   -> SurfaceCounterFlagBitsEXT
   -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> Word32
   -> Word32
   -> Word32
   -> ("pPeerMemoryFeatures" ::: Ptr PeerMemoryFeatureFlags)
   -> IO ())
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr Device_T
   -> Word32
   -> ("pBindInfos" ::: Ptr (BindBufferMemoryInfo a))
   -> IO Result)
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr Device_T
   -> Word32
   -> ("pBindInfos" ::: Ptr (BindImageMemoryInfo a))
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr (Ptr CommandBuffer_T -> Word32 -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pDeviceGroupPresentCapabilities"
       ::: Ptr DeviceGroupPresentCapabilitiesKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> SurfaceKHR
   -> ("pModes" ::: Ptr DeviceGroupPresentModeFlagsKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pAcquireInfo" ::: Ptr AcquireNextImageInfoKHR)
   -> ("pPhysicalDeviceCount" ::: Ptr Word32)
   -> IO Result)
forall a. FunPtr a
nullFunPtr
    FunPtr
  (Ptr CommandBuffer_T
   -> Word32
   -> Word32
   -> Word32
   -> Word32
   -> Word32
   -> Word32
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pCreateInfo" ::: Ptr DescriptorUpdateTemplateCreateInfo)
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pDescriptorUpdateTemplate" ::: Ptr DescriptorUpdateTemplate)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> DescriptorUpdateTemplate
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> DescriptorSet -> DescriptorUpdateTemplate -> Display -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> DescriptorUpdateTemplate
   -> PipelineLayout
   -> Word32
   -> Display
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> Word32
   -> ("pSwapchains" ::: Ptr SwapchainKHR)
   -> ("pMetadata" ::: Ptr HdrMetadataEXT)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr (Ptr Device_T -> SwapchainKHR -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> SwapchainKHR
   -> ("pDisplayTimingProperties" ::: Ptr RefreshCycleDurationGOOGLE)
   -> IO Result)
forall a. FunPtr a
nullFunPtr
    FunPtr
  (Ptr Device_T
   -> SwapchainKHR
   -> ("pPhysicalDeviceCount" ::: Ptr Word32)
   -> ("pPresentationTimings" ::: Ptr PastPresentationTimingGOOGLE)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> Word32
   -> Word32
   -> ("pViewportWScalings" ::: Ptr ViewportWScalingNV)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> Word32 -> Word32 -> ("pRects" ::: Ptr Rect2D) -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> ("pSampleLocationsInfo" ::: Ptr SampleLocationsInfoEXT)
   -> IO ())
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr Device_T
   -> ("pInfo" ::: Ptr BufferMemoryRequirementsInfo2)
   -> ("pMemoryRequirements" ::: Ptr (MemoryRequirements2 a))
   -> IO ())
forall a. FunPtr a
nullFunPtr forall (a :: [*]) (b :: [*]).
FunPtr
  (Ptr Device_T
   -> ("pInfo" ::: Ptr (ImageMemoryRequirementsInfo2 a))
   -> ("pMemoryRequirements" ::: Ptr (MemoryRequirements2 b))
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pInfo" ::: Ptr ImageSparseMemoryRequirementsInfo2)
   -> ("pPhysicalDeviceCount" ::: Ptr Word32)
   -> ("pSparseMemoryRequirements"
       ::: Ptr SparseImageMemoryRequirements2)
   -> IO ())
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr Device_T
   -> ("pCreateInfo" ::: Ptr (SamplerYcbcrConversionCreateInfo a))
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pYcbcrConversion" ::: Ptr SamplerYcbcrConversion)
   -> IO Result)
forall a. FunPtr a
nullFunPtr
    FunPtr
  (Ptr Device_T
   -> SamplerYcbcrConversion
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pQueueInfo" ::: Ptr DeviceQueueInfo2)
   -> ("pQueue" ::: Ptr (Ptr Queue_T))
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pCreateInfo" ::: Ptr ValidationCacheCreateInfoEXT)
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pValidationCache" ::: Ptr ValidationCacheEXT)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ValidationCacheEXT
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ValidationCacheEXT
   -> ("pDataSize" ::: Ptr ("location" ::: CSize))
   -> Display
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ValidationCacheEXT
   -> Word32
   -> ("pValidationCache" ::: Ptr ValidationCacheEXT)
   -> IO Result)
forall a. FunPtr a
nullFunPtr forall (a :: [*]) (b :: [*]).
FunPtr
  (Ptr Device_T
   -> ("pCreateInfo" ::: Ptr (DescriptorSetLayoutCreateInfo a))
   -> ("pSupport" ::: Ptr (DescriptorSetLayoutSupport b))
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> Pipeline
   -> ShaderStageFlags
   -> ShaderInfoTypeAMD
   -> ("pDataSize" ::: Ptr ("location" ::: CSize))
   -> Display
   -> IO Result)
forall a. FunPtr a
nullFunPtr
    FunPtr (Ptr Device_T -> SwapchainKHR -> Bool32 -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> Word32
   -> ("pTimestampInfos" ::: Ptr CalibratedTimestampInfoEXT)
   -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
   -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pNameInfo" ::: Ptr DebugUtilsObjectNameInfoEXT) -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pTagInfo" ::: Ptr DebugUtilsObjectTagInfoEXT) -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Queue_T -> ("pLabelInfo" ::: Ptr DebugUtilsLabelEXT) -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr (Ptr Queue_T -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Queue_T -> ("pLabelInfo" ::: Ptr DebugUtilsLabelEXT) -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> ("pLabelInfo" ::: Ptr DebugUtilsLabelEXT) -> IO ())
forall a. FunPtr a
nullFunPtr
    FunPtr (Ptr CommandBuffer_T -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> ("pLabelInfo" ::: Ptr DebugUtilsLabelEXT) -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ExternalMemoryHandleTypeFlagBits
   -> Display
   -> ("pMemoryHostPointerProperties"
       ::: Ptr MemoryHostPointerPropertiesEXT)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> ("stageMask" ::: PipelineStageFlags)
   -> Buffer
   -> VisualID
   -> Word32
   -> IO ())
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr Device_T
   -> ("pCreateInfo" ::: Ptr (RenderPassCreateInfo2 a))
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pRenderPass" ::: Ptr RenderPass)
   -> IO Result)
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr CommandBuffer_T
   -> ("pRenderPassBegin" ::: Ptr (RenderPassBeginInfo a))
   -> ("pSubpassBeginInfo" ::: Ptr SubpassBeginInfo)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> ("pSubpassBeginInfo" ::: Ptr SubpassBeginInfo)
   -> ("pSubpassEndInfo" ::: Ptr SubpassEndInfo)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> ("pSubpassEndInfo" ::: Ptr SubpassEndInfo) -> IO ())
forall a. FunPtr a
nullFunPtr
    FunPtr
  (Ptr Device_T
   -> Semaphore
   -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pWaitInfo" ::: Ptr SemaphoreWaitInfo)
   -> VisualID
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pSignalInfo" ::: Ptr SemaphoreSignalInfo) -> IO Result)
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr Device_T
   -> Ptr AHardwareBuffer
   -> ("pProperties"
       ::: Ptr (AndroidHardwareBufferPropertiesANDROID a))
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pInfo" ::: Ptr MemoryGetAndroidHardwareBufferInfoANDROID)
   -> ("pBuffer" ::: Ptr (Ptr AHardwareBuffer))
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> Buffer
   -> VisualID
   -> Buffer
   -> VisualID
   -> Word32
   -> Word32
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> Buffer
   -> VisualID
   -> Buffer
   -> VisualID
   -> Word32
   -> Word32
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr (Ptr CommandBuffer_T -> Display -> IO ())
forall a. FunPtr a
nullFunPtr
    FunPtr
  (Ptr Queue_T
   -> ("pPhysicalDeviceCount" ::: Ptr Word32)
   -> ("pCheckpointData" ::: Ptr CheckpointDataNV)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> Word32
   -> Word32
   -> ("pBuffer" ::: Ptr Buffer)
   -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
   -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> Word32
   -> Word32
   -> ("pBuffer" ::: Ptr Buffer)
   -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> Word32
   -> Word32
   -> ("pBuffer" ::: Ptr Buffer)
   -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> QueryPool -> Word32 -> QueryControlFlags -> Word32 -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T -> QueryPool -> Word32 -> Word32 -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> Word32
   -> Word32
   -> Buffer
   -> VisualID
   -> Word32
   -> Word32
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> Word32 -> Word32 -> ("pRects" ::: Ptr Rect2D) -> IO ())
forall a. FunPtr a
nullFunPtr
    FunPtr
  (Ptr CommandBuffer_T
   -> ImageView -> ("srcImageLayout" ::: ImageLayout) -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> Word32
   -> Word32
   -> ("pShadingRatePalettes" ::: Ptr ShadingRatePaletteNV)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> CoarseSampleOrderTypeNV
   -> Word32
   -> ("pCustomSampleOrders" ::: Ptr CoarseSampleOrderCustomNV)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr (Ptr CommandBuffer_T -> Word32 -> Word32 -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> Buffer -> VisualID -> Word32 -> Word32 -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> Buffer
   -> VisualID
   -> Buffer
   -> VisualID
   -> Word32
   -> Word32
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr (Ptr Device_T -> Pipeline -> Word32 -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pCreateInfo" ::: Ptr AccelerationStructureCreateInfoNV)
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pAccelerationStructure" ::: Ptr AccelerationStructureNV)
   -> IO Result)
forall a. FunPtr a
nullFunPtr
    FunPtr
  (Ptr Device_T
   -> AccelerationStructureNV
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> IO ())
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr Device_T
   -> ("pInfo" ::: Ptr AccelerationStructureMemoryRequirementsInfoKHR)
   -> ("pMemoryRequirements" ::: Ptr (MemoryRequirements2 a))
   -> IO ())
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr Device_T
   -> ("pInfo" ::: Ptr AccelerationStructureMemoryRequirementsInfoNV)
   -> ("pMemoryRequirements" ::: Ptr (MemoryRequirements2KHR a))
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> Word32
   -> ("pBindInfos" ::: Ptr BindAccelerationStructureMemoryInfoKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> AccelerationStructureNV
   -> AccelerationStructureNV
   -> CopyAccelerationStructureModeKHR
   -> IO ())
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr CommandBuffer_T
   -> ("pInfo" ::: Ptr (CopyAccelerationStructureInfoKHR a)) -> IO ())
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr Device_T
   -> ("pInfo" ::: Ptr (CopyAccelerationStructureInfoKHR a))
   -> IO Result)
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr CommandBuffer_T
   -> ("pInfo" ::: Ptr (CopyAccelerationStructureToMemoryInfoKHR a))
   -> IO ())
forall a. FunPtr a
nullFunPtr
    forall (a :: [*]).
FunPtr
  (Ptr Device_T
   -> ("pInfo" ::: Ptr (CopyAccelerationStructureToMemoryInfoKHR a))
   -> IO Result)
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr CommandBuffer_T
   -> ("pInfo" ::: Ptr (CopyMemoryToAccelerationStructureInfoKHR a))
   -> IO ())
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr Device_T
   -> ("pInfo" ::: Ptr (CopyMemoryToAccelerationStructureInfoKHR a))
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> Word32
   -> ("pAccelerationStructure" ::: Ptr AccelerationStructureNV)
   -> QueryType
   -> QueryPool
   -> Word32
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> ("pInfo" ::: Ptr AccelerationStructureInfoNV)
   -> Buffer
   -> VisualID
   -> Bool32
   -> AccelerationStructureNV
   -> AccelerationStructureNV
   -> Buffer
   -> VisualID
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> Word32
   -> ("pAccelerationStructure" ::: Ptr AccelerationStructureNV)
   -> QueryType
   -> ("location" ::: CSize)
   -> Display
   -> ("location" ::: CSize)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR)
   -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR)
   -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR)
   -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR)
   -> Word32
   -> Word32
   -> Word32
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> Buffer
   -> VisualID
   -> Buffer
   -> VisualID
   -> VisualID
   -> Buffer
   -> VisualID
   -> VisualID
   -> Buffer
   -> VisualID
   -> VisualID
   -> Word32
   -> Word32
   -> Word32
   -> IO ())
forall a. FunPtr a
nullFunPtr
    FunPtr
  (Ptr Device_T
   -> Pipeline
   -> Word32
   -> Word32
   -> ("location" ::: CSize)
   -> Display
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> Pipeline
   -> Word32
   -> Word32
   -> ("location" ::: CSize)
   -> Display
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> AccelerationStructureNV
   -> ("location" ::: CSize)
   -> Display
   -> IO Result)
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr Device_T
   -> PipelineCache
   -> Word32
   -> ("pCreateInfos" ::: Ptr (RayTracingPipelineCreateInfoNV a))
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pPipelines" ::: Ptr Pipeline)
   -> IO Result)
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr Device_T
   -> PipelineCache
   -> Word32
   -> ("pCreateInfos" ::: Ptr (RayTracingPipelineCreateInfoKHR a))
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pPipelines" ::: Ptr Pipeline)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR)
   -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR)
   -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR)
   -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR)
   -> Buffer
   -> VisualID
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T -> Ptr AccelerationStructureVersionKHR -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pInfo" ::: Ptr ImageViewHandleInfoNVX) -> IO Word32)
forall a. FunPtr a
nullFunPtr
    FunPtr
  (Ptr Device_T
   -> ImageView
   -> ("pProperties" ::: Ptr ImageViewAddressPropertiesNVX)
   -> IO Result)
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr Device_T
   -> ("pSurfaceInfo" ::: Ptr (PhysicalDeviceSurfaceInfo2KHR a))
   -> ("pModes" ::: Ptr DeviceGroupPresentModeFlagsKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr (Ptr Device_T -> SwapchainKHR -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr (Ptr Device_T -> SwapchainKHR -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pInfo" ::: Ptr AcquireProfilingLockInfoKHR) -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr (Ptr Device_T -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> Image
   -> ("pProperties" ::: Ptr ImageDrmFormatModifierPropertiesEXT)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pInfo" ::: Ptr BufferDeviceAddressInfo) -> IO VisualID)
forall a. FunPtr a
nullFunPtr
    FunPtr
  (Ptr Device_T
   -> ("pInfo" ::: Ptr BufferDeviceAddressInfo) -> IO VisualID)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pInitializeInfo" ::: Ptr InitializePerformanceApiInfoINTEL)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr (Ptr Device_T -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> ("pMarkerInfo" ::: Ptr PerformanceMarkerInfoINTEL) -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> ("pMarkerInfo" ::: Ptr PerformanceStreamMarkerInfoINTEL)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> ("pOverrideInfo" ::: Ptr PerformanceOverrideInfoINTEL)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pAcquireInfo"
       ::: Ptr PerformanceConfigurationAcquireInfoINTEL)
   -> ("pConfiguration" ::: Ptr PerformanceConfigurationINTEL)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr (Ptr Device_T -> PerformanceConfigurationINTEL -> IO Result)
forall a. FunPtr a
nullFunPtr
    FunPtr (Ptr Queue_T -> PerformanceConfigurationINTEL -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> PerformanceParameterTypeINTEL
   -> ("pValue" ::: Ptr PerformanceValueINTEL)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pInfo" ::: Ptr DeviceMemoryOpaqueCaptureAddressInfo)
   -> IO VisualID)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pPipelineInfo" ::: Ptr PipelineInfoKHR)
   -> ("pPhysicalDeviceCount" ::: Ptr Word32)
   -> ("pProperties" ::: Ptr PipelineExecutablePropertiesKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pExecutableInfo" ::: Ptr PipelineExecutableInfoKHR)
   -> ("pPhysicalDeviceCount" ::: Ptr Word32)
   -> ("pStatistics" ::: Ptr PipelineExecutableStatisticKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pExecutableInfo" ::: Ptr PipelineExecutableInfoKHR)
   -> ("pPhysicalDeviceCount" ::: Ptr Word32)
   -> ("pInternalRepresentations"
       ::: Ptr PipelineExecutableInternalRepresentationKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr CommandBuffer_T
   -> Word32 -> ("lineStipplePattern" ::: Word16) -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pCreateInfo" ::: Ptr AccelerationStructureCreateInfoKHR)
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pAccelerationStructure" ::: Ptr AccelerationStructureNV)
   -> IO Result)
forall a. FunPtr a
nullFunPtr
    forall (a :: [*]).
FunPtr
  (Ptr CommandBuffer_T
   -> Word32
   -> ("pInfos" ::: Ptr (AccelerationStructureBuildGeometryInfoKHR a))
   -> ("ppOffsetInfos"
       ::: Ptr (Ptr AccelerationStructureBuildOffsetInfoKHR))
   -> IO ())
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr CommandBuffer_T
   -> ("pInfo" ::: Ptr (AccelerationStructureBuildGeometryInfoKHR a))
   -> Buffer
   -> VisualID
   -> Word32
   -> IO ())
forall a. FunPtr a
nullFunPtr forall (a :: [*]).
FunPtr
  (Ptr Device_T
   -> Word32
   -> ("pInfos" ::: Ptr (AccelerationStructureBuildGeometryInfoKHR a))
   -> ("ppOffsetInfos"
       ::: Ptr (Ptr AccelerationStructureBuildOffsetInfoKHR))
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pInfo" ::: Ptr AccelerationStructureDeviceAddressInfoKHR)
   -> IO VisualID)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pDeferredOperation" ::: Ptr DeferredOperationKHR)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> DeferredOperationKHR
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr (Ptr Device_T -> DeferredOperationKHR -> IO Word32)
forall a. FunPtr a
nullFunPtr FunPtr (Ptr Device_T -> DeferredOperationKHR -> IO Result)
forall a. FunPtr a
nullFunPtr
    FunPtr (Ptr Device_T -> DeferredOperationKHR -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ("pCreateInfo" ::: Ptr PrivateDataSlotCreateInfoEXT)
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> ("pPrivateDataSlot" ::: Ptr PrivateDataSlotEXT)
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> PrivateDataSlotEXT
   -> ("pAllocator" ::: Ptr AllocationCallbacks)
   -> IO ())
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ObjectType
   -> VisualID
   -> PrivateDataSlotEXT
   -> VisualID
   -> IO Result)
forall a. FunPtr a
nullFunPtr FunPtr
  (Ptr Device_T
   -> ObjectType
   -> VisualID
   -> PrivateDataSlotEXT
   -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
   -> IO ())
forall a. FunPtr a
nullFunPtr

foreign import ccall
#if !defined(SAFE_FOREIGN_CALLS)
  unsafe
#endif
  "dynamic" mkVkGetDeviceProcAddr
  :: FunPtr (Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction) -> Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction

initDeviceCmds :: InstanceCmds -> Ptr Device_T -> IO DeviceCmds
initDeviceCmds :: InstanceCmds -> Ptr Device_T -> IO DeviceCmds
initDeviceCmds instanceCmds :: InstanceCmds
instanceCmds handle :: Ptr Device_T
handle = do
  FunPtr
  (Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction)
pGetDeviceProcAddr <- PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction)
      (PFN_vkVoidFunction
 -> FunPtr
      (Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction))
-> IO PFN_vkVoidFunction
-> IO
     (FunPtr
        (Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction))
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getInstanceProcAddr' (InstanceCmds -> Ptr Instance_T
instanceCmdsHandle InstanceCmds
instanceCmds) (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
GHC.Ptr.Ptr "vkGetDeviceProcAddr"#)
  let getDeviceProcAddr' :: Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' = FunPtr
  (Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction)
-> Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
mkVkGetDeviceProcAddr FunPtr
  (Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction)
pGetDeviceProcAddr
  PFN_vkVoidFunction
vkGetDeviceProcAddr <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetDeviceProcAddr"#)
  PFN_vkVoidFunction
vkDestroyDevice <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkDestroyDevice"#)
  PFN_vkVoidFunction
vkGetDeviceQueue <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetDeviceQueue"#)
  PFN_vkVoidFunction
vkQueueSubmit <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkQueueSubmit"#)
  PFN_vkVoidFunction
vkQueueWaitIdle <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkQueueWaitIdle"#)
  PFN_vkVoidFunction
vkDeviceWaitIdle <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkDeviceWaitIdle"#)
  PFN_vkVoidFunction
vkAllocateMemory <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkAllocateMemory"#)
  PFN_vkVoidFunction
vkFreeMemory <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkFreeMemory"#)
  PFN_vkVoidFunction
vkMapMemory <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkMapMemory"#)
  PFN_vkVoidFunction
vkUnmapMemory <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkUnmapMemory"#)
  PFN_vkVoidFunction
vkFlushMappedMemoryRanges <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkFlushMappedMemoryRanges"#)
  PFN_vkVoidFunction
vkInvalidateMappedMemoryRanges <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkInvalidateMappedMemoryRanges"#)
  PFN_vkVoidFunction
vkGetDeviceMemoryCommitment <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetDeviceMemoryCommitment"#)
  PFN_vkVoidFunction
vkGetBufferMemoryRequirements <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetBufferMemoryRequirements"#)
  PFN_vkVoidFunction
vkBindBufferMemory <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkBindBufferMemory"#)
  PFN_vkVoidFunction
vkGetImageMemoryRequirements <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetImageMemoryRequirements"#)
  PFN_vkVoidFunction
vkBindImageMemory <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkBindImageMemory"#)
  PFN_vkVoidFunction
vkGetImageSparseMemoryRequirements <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetImageSparseMemoryRequirements"#)
  PFN_vkVoidFunction
vkQueueBindSparse <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkQueueBindSparse"#)
  PFN_vkVoidFunction
vkCreateFence <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateFence"#)
  PFN_vkVoidFunction
vkDestroyFence <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkDestroyFence"#)
  PFN_vkVoidFunction
vkResetFences <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkResetFences"#)
  PFN_vkVoidFunction
vkGetFenceStatus <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetFenceStatus"#)
  PFN_vkVoidFunction
vkWaitForFences <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkWaitForFences"#)
  PFN_vkVoidFunction
vkCreateSemaphore <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateSemaphore"#)
  PFN_vkVoidFunction
vkDestroySemaphore <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkDestroySemaphore"#)
  PFN_vkVoidFunction
vkCreateEvent <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateEvent"#)
  PFN_vkVoidFunction
vkDestroyEvent <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkDestroyEvent"#)
  PFN_vkVoidFunction
vkGetEventStatus <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetEventStatus"#)
  PFN_vkVoidFunction
vkSetEvent <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkSetEvent"#)
  PFN_vkVoidFunction
vkResetEvent <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkResetEvent"#)
  PFN_vkVoidFunction
vkCreateQueryPool <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateQueryPool"#)
  PFN_vkVoidFunction
vkDestroyQueryPool <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkDestroyQueryPool"#)
  PFN_vkVoidFunction
vkGetQueryPoolResults <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetQueryPoolResults"#)
  PFN_vkVoidFunction
vkResetQueryPool <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkResetQueryPool"#)
  PFN_vkVoidFunction
vkCreateBuffer <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateBuffer"#)
  PFN_vkVoidFunction
vkDestroyBuffer <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkDestroyBuffer"#)
  PFN_vkVoidFunction
vkCreateBufferView <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateBufferView"#)
  PFN_vkVoidFunction
vkDestroyBufferView <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkDestroyBufferView"#)
  PFN_vkVoidFunction
vkCreateImage <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateImage"#)
  PFN_vkVoidFunction
vkDestroyImage <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkDestroyImage"#)
  PFN_vkVoidFunction
vkGetImageSubresourceLayout <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetImageSubresourceLayout"#)
  PFN_vkVoidFunction
vkCreateImageView <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateImageView"#)
  PFN_vkVoidFunction
vkDestroyImageView <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkDestroyImageView"#)
  PFN_vkVoidFunction
vkCreateShaderModule <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateShaderModule"#)
  PFN_vkVoidFunction
vkDestroyShaderModule <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkDestroyShaderModule"#)
  PFN_vkVoidFunction
vkCreatePipelineCache <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreatePipelineCache"#)
  PFN_vkVoidFunction
vkDestroyPipelineCache <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkDestroyPipelineCache"#)
  PFN_vkVoidFunction
vkGetPipelineCacheData <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPipelineCacheData"#)
  PFN_vkVoidFunction
vkMergePipelineCaches <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkMergePipelineCaches"#)
  PFN_vkVoidFunction
vkCreateGraphicsPipelines <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateGraphicsPipelines"#)
  PFN_vkVoidFunction
vkCreateComputePipelines <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateComputePipelines"#)
  PFN_vkVoidFunction
vkDestroyPipeline <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkDestroyPipeline"#)
  PFN_vkVoidFunction
vkCreatePipelineLayout <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreatePipelineLayout"#)
  PFN_vkVoidFunction
vkDestroyPipelineLayout <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkDestroyPipelineLayout"#)
  PFN_vkVoidFunction
vkCreateSampler <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateSampler"#)
  PFN_vkVoidFunction
vkDestroySampler <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkDestroySampler"#)
  PFN_vkVoidFunction
vkCreateDescriptorSetLayout <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateDescriptorSetLayout"#)
  PFN_vkVoidFunction
vkDestroyDescriptorSetLayout <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkDestroyDescriptorSetLayout"#)
  PFN_vkVoidFunction
vkCreateDescriptorPool <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateDescriptorPool"#)
  PFN_vkVoidFunction
vkDestroyDescriptorPool <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkDestroyDescriptorPool"#)
  PFN_vkVoidFunction
vkResetDescriptorPool <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkResetDescriptorPool"#)
  PFN_vkVoidFunction
vkAllocateDescriptorSets <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkAllocateDescriptorSets"#)
  PFN_vkVoidFunction
vkFreeDescriptorSets <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkFreeDescriptorSets"#)
  PFN_vkVoidFunction
vkUpdateDescriptorSets <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkUpdateDescriptorSets"#)
  PFN_vkVoidFunction
vkCreateFramebuffer <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateFramebuffer"#)
  PFN_vkVoidFunction
vkDestroyFramebuffer <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkDestroyFramebuffer"#)
  PFN_vkVoidFunction
vkCreateRenderPass <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateRenderPass"#)
  PFN_vkVoidFunction
vkDestroyRenderPass <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkDestroyRenderPass"#)
  PFN_vkVoidFunction
vkGetRenderAreaGranularity <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetRenderAreaGranularity"#)
  PFN_vkVoidFunction
vkCreateCommandPool <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateCommandPool"#)
  PFN_vkVoidFunction
vkDestroyCommandPool <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkDestroyCommandPool"#)
  PFN_vkVoidFunction
vkResetCommandPool <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkResetCommandPool"#)
  PFN_vkVoidFunction
vkAllocateCommandBuffers <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkAllocateCommandBuffers"#)
  PFN_vkVoidFunction
vkFreeCommandBuffers <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkFreeCommandBuffers"#)
  PFN_vkVoidFunction
vkBeginCommandBuffer <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkBeginCommandBuffer"#)
  PFN_vkVoidFunction
vkEndCommandBuffer <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkEndCommandBuffer"#)
  PFN_vkVoidFunction
vkResetCommandBuffer <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkResetCommandBuffer"#)
  PFN_vkVoidFunction
vkCmdBindPipeline <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdBindPipeline"#)
  PFN_vkVoidFunction
vkCmdSetViewport <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdSetViewport"#)
  PFN_vkVoidFunction
vkCmdSetScissor <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdSetScissor"#)
  PFN_vkVoidFunction
vkCmdSetLineWidth <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdSetLineWidth"#)
  PFN_vkVoidFunction
vkCmdSetDepthBias <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdSetDepthBias"#)
  PFN_vkVoidFunction
vkCmdSetBlendConstants <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdSetBlendConstants"#)
  PFN_vkVoidFunction
vkCmdSetDepthBounds <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdSetDepthBounds"#)
  PFN_vkVoidFunction
vkCmdSetStencilCompareMask <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdSetStencilCompareMask"#)
  PFN_vkVoidFunction
vkCmdSetStencilWriteMask <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdSetStencilWriteMask"#)
  PFN_vkVoidFunction
vkCmdSetStencilReference <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdSetStencilReference"#)
  PFN_vkVoidFunction
vkCmdBindDescriptorSets <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdBindDescriptorSets"#)
  PFN_vkVoidFunction
vkCmdBindIndexBuffer <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdBindIndexBuffer"#)
  PFN_vkVoidFunction
vkCmdBindVertexBuffers <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdBindVertexBuffers"#)
  PFN_vkVoidFunction
vkCmdDraw <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdDraw"#)
  PFN_vkVoidFunction
vkCmdDrawIndexed <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdDrawIndexed"#)
  PFN_vkVoidFunction
vkCmdDrawIndirect <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdDrawIndirect"#)
  PFN_vkVoidFunction
vkCmdDrawIndexedIndirect <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdDrawIndexedIndirect"#)
  PFN_vkVoidFunction
vkCmdDispatch <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdDispatch"#)
  PFN_vkVoidFunction
vkCmdDispatchIndirect <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdDispatchIndirect"#)
  PFN_vkVoidFunction
vkCmdCopyBuffer <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdCopyBuffer"#)
  PFN_vkVoidFunction
vkCmdCopyImage <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdCopyImage"#)
  PFN_vkVoidFunction
vkCmdBlitImage <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdBlitImage"#)
  PFN_vkVoidFunction
vkCmdCopyBufferToImage <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdCopyBufferToImage"#)
  PFN_vkVoidFunction
vkCmdCopyImageToBuffer <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdCopyImageToBuffer"#)
  PFN_vkVoidFunction
vkCmdUpdateBuffer <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdUpdateBuffer"#)
  PFN_vkVoidFunction
vkCmdFillBuffer <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdFillBuffer"#)
  PFN_vkVoidFunction
vkCmdClearColorImage <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdClearColorImage"#)
  PFN_vkVoidFunction
vkCmdClearDepthStencilImage <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdClearDepthStencilImage"#)
  PFN_vkVoidFunction
vkCmdClearAttachments <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdClearAttachments"#)
  PFN_vkVoidFunction
vkCmdResolveImage <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdResolveImage"#)
  PFN_vkVoidFunction
vkCmdSetEvent <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdSetEvent"#)
  PFN_vkVoidFunction
vkCmdResetEvent <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdResetEvent"#)
  PFN_vkVoidFunction
vkCmdWaitEvents <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdWaitEvents"#)
  PFN_vkVoidFunction
vkCmdPipelineBarrier <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdPipelineBarrier"#)
  PFN_vkVoidFunction
vkCmdBeginQuery <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdBeginQuery"#)
  PFN_vkVoidFunction
vkCmdEndQuery <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdEndQuery"#)
  PFN_vkVoidFunction
vkCmdBeginConditionalRenderingEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdBeginConditionalRenderingEXT"#)
  PFN_vkVoidFunction
vkCmdEndConditionalRenderingEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdEndConditionalRenderingEXT"#)
  PFN_vkVoidFunction
vkCmdResetQueryPool <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdResetQueryPool"#)
  PFN_vkVoidFunction
vkCmdWriteTimestamp <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdWriteTimestamp"#)
  PFN_vkVoidFunction
vkCmdCopyQueryPoolResults <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdCopyQueryPoolResults"#)
  PFN_vkVoidFunction
vkCmdPushConstants <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdPushConstants"#)
  PFN_vkVoidFunction
vkCmdBeginRenderPass <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdBeginRenderPass"#)
  PFN_vkVoidFunction
vkCmdNextSubpass <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdNextSubpass"#)
  PFN_vkVoidFunction
vkCmdEndRenderPass <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdEndRenderPass"#)
  PFN_vkVoidFunction
vkCmdExecuteCommands <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdExecuteCommands"#)
  PFN_vkVoidFunction
vkCreateSharedSwapchainsKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateSharedSwapchainsKHR"#)
  PFN_vkVoidFunction
vkCreateSwapchainKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateSwapchainKHR"#)
  PFN_vkVoidFunction
vkDestroySwapchainKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkDestroySwapchainKHR"#)
  PFN_vkVoidFunction
vkGetSwapchainImagesKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetSwapchainImagesKHR"#)
  PFN_vkVoidFunction
vkAcquireNextImageKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkAcquireNextImageKHR"#)
  PFN_vkVoidFunction
vkQueuePresentKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkQueuePresentKHR"#)
  PFN_vkVoidFunction
vkDebugMarkerSetObjectNameEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkDebugMarkerSetObjectNameEXT"#)
  PFN_vkVoidFunction
vkDebugMarkerSetObjectTagEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkDebugMarkerSetObjectTagEXT"#)
  PFN_vkVoidFunction
vkCmdDebugMarkerBeginEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdDebugMarkerBeginEXT"#)
  PFN_vkVoidFunction
vkCmdDebugMarkerEndEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdDebugMarkerEndEXT"#)
  PFN_vkVoidFunction
vkCmdDebugMarkerInsertEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdDebugMarkerInsertEXT"#)
  PFN_vkVoidFunction
vkGetMemoryWin32HandleNV <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetMemoryWin32HandleNV"#)
  PFN_vkVoidFunction
vkCmdExecuteGeneratedCommandsNV <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdExecuteGeneratedCommandsNV"#)
  PFN_vkVoidFunction
vkCmdPreprocessGeneratedCommandsNV <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdPreprocessGeneratedCommandsNV"#)
  PFN_vkVoidFunction
vkCmdBindPipelineShaderGroupNV <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdBindPipelineShaderGroupNV"#)
  PFN_vkVoidFunction
vkGetGeneratedCommandsMemoryRequirementsNV <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetGeneratedCommandsMemoryRequirementsNV"#)
  PFN_vkVoidFunction
vkCreateIndirectCommandsLayoutNV <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateIndirectCommandsLayoutNV"#)
  PFN_vkVoidFunction
vkDestroyIndirectCommandsLayoutNV <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkDestroyIndirectCommandsLayoutNV"#)
  PFN_vkVoidFunction
vkCmdPushDescriptorSetKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdPushDescriptorSetKHR"#)
  PFN_vkVoidFunction
vkTrimCommandPool <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkTrimCommandPool"#)
  PFN_vkVoidFunction
vkGetMemoryWin32HandleKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetMemoryWin32HandleKHR"#)
  PFN_vkVoidFunction
vkGetMemoryWin32HandlePropertiesKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetMemoryWin32HandlePropertiesKHR"#)
  PFN_vkVoidFunction
vkGetMemoryFdKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetMemoryFdKHR"#)
  PFN_vkVoidFunction
vkGetMemoryFdPropertiesKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetMemoryFdPropertiesKHR"#)
  PFN_vkVoidFunction
vkGetSemaphoreWin32HandleKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetSemaphoreWin32HandleKHR"#)
  PFN_vkVoidFunction
vkImportSemaphoreWin32HandleKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkImportSemaphoreWin32HandleKHR"#)
  PFN_vkVoidFunction
vkGetSemaphoreFdKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetSemaphoreFdKHR"#)
  PFN_vkVoidFunction
vkImportSemaphoreFdKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkImportSemaphoreFdKHR"#)
  PFN_vkVoidFunction
vkGetFenceWin32HandleKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetFenceWin32HandleKHR"#)
  PFN_vkVoidFunction
vkImportFenceWin32HandleKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkImportFenceWin32HandleKHR"#)
  PFN_vkVoidFunction
vkGetFenceFdKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetFenceFdKHR"#)
  PFN_vkVoidFunction
vkImportFenceFdKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkImportFenceFdKHR"#)
  PFN_vkVoidFunction
vkDisplayPowerControlEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkDisplayPowerControlEXT"#)
  PFN_vkVoidFunction
vkRegisterDeviceEventEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkRegisterDeviceEventEXT"#)
  PFN_vkVoidFunction
vkRegisterDisplayEventEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkRegisterDisplayEventEXT"#)
  PFN_vkVoidFunction
vkGetSwapchainCounterEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetSwapchainCounterEXT"#)
  PFN_vkVoidFunction
vkGetDeviceGroupPeerMemoryFeatures <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetDeviceGroupPeerMemoryFeatures"#)
  PFN_vkVoidFunction
vkBindBufferMemory2 <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkBindBufferMemory2"#)
  PFN_vkVoidFunction
vkBindImageMemory2 <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkBindImageMemory2"#)
  PFN_vkVoidFunction
vkCmdSetDeviceMask <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdSetDeviceMask"#)
  PFN_vkVoidFunction
vkGetDeviceGroupPresentCapabilitiesKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetDeviceGroupPresentCapabilitiesKHR"#)
  PFN_vkVoidFunction
vkGetDeviceGroupSurfacePresentModesKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetDeviceGroupSurfacePresentModesKHR"#)
  PFN_vkVoidFunction
vkAcquireNextImage2KHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkAcquireNextImage2KHR"#)
  PFN_vkVoidFunction
vkCmdDispatchBase <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdDispatchBase"#)
  PFN_vkVoidFunction
vkCreateDescriptorUpdateTemplate <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateDescriptorUpdateTemplate"#)
  PFN_vkVoidFunction
vkDestroyDescriptorUpdateTemplate <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkDestroyDescriptorUpdateTemplate"#)
  PFN_vkVoidFunction
vkUpdateDescriptorSetWithTemplate <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkUpdateDescriptorSetWithTemplate"#)
  PFN_vkVoidFunction
vkCmdPushDescriptorSetWithTemplateKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdPushDescriptorSetWithTemplateKHR"#)
  PFN_vkVoidFunction
vkSetHdrMetadataEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkSetHdrMetadataEXT"#)
  PFN_vkVoidFunction
vkGetSwapchainStatusKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetSwapchainStatusKHR"#)
  PFN_vkVoidFunction
vkGetRefreshCycleDurationGOOGLE <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetRefreshCycleDurationGOOGLE"#)
  PFN_vkVoidFunction
vkGetPastPresentationTimingGOOGLE <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPastPresentationTimingGOOGLE"#)
  PFN_vkVoidFunction
vkCmdSetViewportWScalingNV <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdSetViewportWScalingNV"#)
  PFN_vkVoidFunction
vkCmdSetDiscardRectangleEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdSetDiscardRectangleEXT"#)
  PFN_vkVoidFunction
vkCmdSetSampleLocationsEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdSetSampleLocationsEXT"#)
  PFN_vkVoidFunction
vkGetBufferMemoryRequirements2 <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetBufferMemoryRequirements2"#)
  PFN_vkVoidFunction
vkGetImageMemoryRequirements2 <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetImageMemoryRequirements2"#)
  PFN_vkVoidFunction
vkGetImageSparseMemoryRequirements2 <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetImageSparseMemoryRequirements2"#)
  PFN_vkVoidFunction
vkCreateSamplerYcbcrConversion <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateSamplerYcbcrConversion"#)
  PFN_vkVoidFunction
vkDestroySamplerYcbcrConversion <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkDestroySamplerYcbcrConversion"#)
  PFN_vkVoidFunction
vkGetDeviceQueue2 <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetDeviceQueue2"#)
  PFN_vkVoidFunction
vkCreateValidationCacheEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateValidationCacheEXT"#)
  PFN_vkVoidFunction
vkDestroyValidationCacheEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkDestroyValidationCacheEXT"#)
  PFN_vkVoidFunction
vkGetValidationCacheDataEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetValidationCacheDataEXT"#)
  PFN_vkVoidFunction
vkMergeValidationCachesEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkMergeValidationCachesEXT"#)
  PFN_vkVoidFunction
vkGetDescriptorSetLayoutSupport <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetDescriptorSetLayoutSupport"#)
  PFN_vkVoidFunction
vkGetShaderInfoAMD <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetShaderInfoAMD"#)
  PFN_vkVoidFunction
vkSetLocalDimmingAMD <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkSetLocalDimmingAMD"#)
  PFN_vkVoidFunction
vkGetCalibratedTimestampsEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetCalibratedTimestampsEXT"#)
  PFN_vkVoidFunction
vkSetDebugUtilsObjectNameEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkSetDebugUtilsObjectNameEXT"#)
  PFN_vkVoidFunction
vkSetDebugUtilsObjectTagEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkSetDebugUtilsObjectTagEXT"#)
  PFN_vkVoidFunction
vkQueueBeginDebugUtilsLabelEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkQueueBeginDebugUtilsLabelEXT"#)
  PFN_vkVoidFunction
vkQueueEndDebugUtilsLabelEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkQueueEndDebugUtilsLabelEXT"#)
  PFN_vkVoidFunction
vkQueueInsertDebugUtilsLabelEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkQueueInsertDebugUtilsLabelEXT"#)
  PFN_vkVoidFunction
vkCmdBeginDebugUtilsLabelEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdBeginDebugUtilsLabelEXT"#)
  PFN_vkVoidFunction
vkCmdEndDebugUtilsLabelEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdEndDebugUtilsLabelEXT"#)
  PFN_vkVoidFunction
vkCmdInsertDebugUtilsLabelEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdInsertDebugUtilsLabelEXT"#)
  PFN_vkVoidFunction
vkGetMemoryHostPointerPropertiesEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetMemoryHostPointerPropertiesEXT"#)
  PFN_vkVoidFunction
vkCmdWriteBufferMarkerAMD <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdWriteBufferMarkerAMD"#)
  PFN_vkVoidFunction
vkCreateRenderPass2 <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateRenderPass2"#)
  PFN_vkVoidFunction
vkCmdBeginRenderPass2 <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdBeginRenderPass2"#)
  PFN_vkVoidFunction
vkCmdNextSubpass2 <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdNextSubpass2"#)
  PFN_vkVoidFunction
vkCmdEndRenderPass2 <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdEndRenderPass2"#)
  PFN_vkVoidFunction
vkGetSemaphoreCounterValue <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetSemaphoreCounterValue"#)
  PFN_vkVoidFunction
vkWaitSemaphores <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkWaitSemaphores"#)
  PFN_vkVoidFunction
vkSignalSemaphore <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkSignalSemaphore"#)
  PFN_vkVoidFunction
vkGetAndroidHardwareBufferPropertiesANDROID <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetAndroidHardwareBufferPropertiesANDROID"#)
  PFN_vkVoidFunction
vkGetMemoryAndroidHardwareBufferANDROID <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetMemoryAndroidHardwareBufferANDROID"#)
  PFN_vkVoidFunction
vkCmdDrawIndirectCount <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdDrawIndirectCount"#)
  PFN_vkVoidFunction
vkCmdDrawIndexedIndirectCount <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdDrawIndexedIndirectCount"#)
  PFN_vkVoidFunction
vkCmdSetCheckpointNV <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdSetCheckpointNV"#)
  PFN_vkVoidFunction
vkGetQueueCheckpointDataNV <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetQueueCheckpointDataNV"#)
  PFN_vkVoidFunction
vkCmdBindTransformFeedbackBuffersEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdBindTransformFeedbackBuffersEXT"#)
  PFN_vkVoidFunction
vkCmdBeginTransformFeedbackEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdBeginTransformFeedbackEXT"#)
  PFN_vkVoidFunction
vkCmdEndTransformFeedbackEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdEndTransformFeedbackEXT"#)
  PFN_vkVoidFunction
vkCmdBeginQueryIndexedEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdBeginQueryIndexedEXT"#)
  PFN_vkVoidFunction
vkCmdEndQueryIndexedEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdEndQueryIndexedEXT"#)
  PFN_vkVoidFunction
vkCmdDrawIndirectByteCountEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdDrawIndirectByteCountEXT"#)
  PFN_vkVoidFunction
vkCmdSetExclusiveScissorNV <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdSetExclusiveScissorNV"#)
  PFN_vkVoidFunction
vkCmdBindShadingRateImageNV <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdBindShadingRateImageNV"#)
  PFN_vkVoidFunction
vkCmdSetViewportShadingRatePaletteNV <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdSetViewportShadingRatePaletteNV"#)
  PFN_vkVoidFunction
vkCmdSetCoarseSampleOrderNV <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdSetCoarseSampleOrderNV"#)
  PFN_vkVoidFunction
vkCmdDrawMeshTasksNV <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdDrawMeshTasksNV"#)
  PFN_vkVoidFunction
vkCmdDrawMeshTasksIndirectNV <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdDrawMeshTasksIndirectNV"#)
  PFN_vkVoidFunction
vkCmdDrawMeshTasksIndirectCountNV <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdDrawMeshTasksIndirectCountNV"#)
  PFN_vkVoidFunction
vkCompileDeferredNV <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCompileDeferredNV"#)
  PFN_vkVoidFunction
vkCreateAccelerationStructureNV <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateAccelerationStructureNV"#)
  PFN_vkVoidFunction
vkDestroyAccelerationStructureKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkDestroyAccelerationStructureKHR"#)
  PFN_vkVoidFunction
vkGetAccelerationStructureMemoryRequirementsKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetAccelerationStructureMemoryRequirementsKHR"#)
  PFN_vkVoidFunction
vkGetAccelerationStructureMemoryRequirementsNV <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetAccelerationStructureMemoryRequirementsNV"#)
  PFN_vkVoidFunction
vkBindAccelerationStructureMemoryKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkBindAccelerationStructureMemoryKHR"#)
  PFN_vkVoidFunction
vkCmdCopyAccelerationStructureNV <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdCopyAccelerationStructureNV"#)
  PFN_vkVoidFunction
vkCmdCopyAccelerationStructureKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdCopyAccelerationStructureKHR"#)
  PFN_vkVoidFunction
vkCopyAccelerationStructureKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCopyAccelerationStructureKHR"#)
  PFN_vkVoidFunction
vkCmdCopyAccelerationStructureToMemoryKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdCopyAccelerationStructureToMemoryKHR"#)
  PFN_vkVoidFunction
vkCopyAccelerationStructureToMemoryKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCopyAccelerationStructureToMemoryKHR"#)
  PFN_vkVoidFunction
vkCmdCopyMemoryToAccelerationStructureKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdCopyMemoryToAccelerationStructureKHR"#)
  PFN_vkVoidFunction
vkCopyMemoryToAccelerationStructureKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCopyMemoryToAccelerationStructureKHR"#)
  PFN_vkVoidFunction
vkCmdWriteAccelerationStructuresPropertiesKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdWriteAccelerationStructuresPropertiesKHR"#)
  PFN_vkVoidFunction
vkCmdBuildAccelerationStructureNV <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdBuildAccelerationStructureNV"#)
  PFN_vkVoidFunction
vkWriteAccelerationStructuresPropertiesKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkWriteAccelerationStructuresPropertiesKHR"#)
  PFN_vkVoidFunction
vkCmdTraceRaysKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdTraceRaysKHR"#)
  PFN_vkVoidFunction
vkCmdTraceRaysNV <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdTraceRaysNV"#)
  PFN_vkVoidFunction
vkGetRayTracingShaderGroupHandlesKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetRayTracingShaderGroupHandlesKHR"#)
  PFN_vkVoidFunction
vkGetRayTracingCaptureReplayShaderGroupHandlesKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetRayTracingCaptureReplayShaderGroupHandlesKHR"#)
  PFN_vkVoidFunction
vkGetAccelerationStructureHandleNV <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetAccelerationStructureHandleNV"#)
  PFN_vkVoidFunction
vkCreateRayTracingPipelinesNV <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateRayTracingPipelinesNV"#)
  PFN_vkVoidFunction
vkCreateRayTracingPipelinesKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateRayTracingPipelinesKHR"#)
  PFN_vkVoidFunction
vkCmdTraceRaysIndirectKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdTraceRaysIndirectKHR"#)
  PFN_vkVoidFunction
vkGetDeviceAccelerationStructureCompatibilityKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetDeviceAccelerationStructureCompatibilityKHR"#)
  PFN_vkVoidFunction
vkGetImageViewHandleNVX <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetImageViewHandleNVX"#)
  PFN_vkVoidFunction
vkGetImageViewAddressNVX <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetImageViewAddressNVX"#)
  PFN_vkVoidFunction
vkGetDeviceGroupSurfacePresentModes2EXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetDeviceGroupSurfacePresentModes2EXT"#)
  PFN_vkVoidFunction
vkAcquireFullScreenExclusiveModeEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkAcquireFullScreenExclusiveModeEXT"#)
  PFN_vkVoidFunction
vkReleaseFullScreenExclusiveModeEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkReleaseFullScreenExclusiveModeEXT"#)
  PFN_vkVoidFunction
vkAcquireProfilingLockKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkAcquireProfilingLockKHR"#)
  PFN_vkVoidFunction
vkReleaseProfilingLockKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkReleaseProfilingLockKHR"#)
  PFN_vkVoidFunction
vkGetImageDrmFormatModifierPropertiesEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetImageDrmFormatModifierPropertiesEXT"#)
  PFN_vkVoidFunction
vkGetBufferOpaqueCaptureAddress <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetBufferOpaqueCaptureAddress"#)
  PFN_vkVoidFunction
vkGetBufferDeviceAddress <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetBufferDeviceAddress"#)
  PFN_vkVoidFunction
vkInitializePerformanceApiINTEL <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkInitializePerformanceApiINTEL"#)
  PFN_vkVoidFunction
vkUninitializePerformanceApiINTEL <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkUninitializePerformanceApiINTEL"#)
  PFN_vkVoidFunction
vkCmdSetPerformanceMarkerINTEL <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdSetPerformanceMarkerINTEL"#)
  PFN_vkVoidFunction
vkCmdSetPerformanceStreamMarkerINTEL <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdSetPerformanceStreamMarkerINTEL"#)
  PFN_vkVoidFunction
vkCmdSetPerformanceOverrideINTEL <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdSetPerformanceOverrideINTEL"#)
  PFN_vkVoidFunction
vkAcquirePerformanceConfigurationINTEL <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkAcquirePerformanceConfigurationINTEL"#)
  PFN_vkVoidFunction
vkReleasePerformanceConfigurationINTEL <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkReleasePerformanceConfigurationINTEL"#)
  PFN_vkVoidFunction
vkQueueSetPerformanceConfigurationINTEL <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkQueueSetPerformanceConfigurationINTEL"#)
  PFN_vkVoidFunction
vkGetPerformanceParameterINTEL <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPerformanceParameterINTEL"#)
  PFN_vkVoidFunction
vkGetDeviceMemoryOpaqueCaptureAddress <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetDeviceMemoryOpaqueCaptureAddress"#)
  PFN_vkVoidFunction
vkGetPipelineExecutablePropertiesKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPipelineExecutablePropertiesKHR"#)
  PFN_vkVoidFunction
vkGetPipelineExecutableStatisticsKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPipelineExecutableStatisticsKHR"#)
  PFN_vkVoidFunction
vkGetPipelineExecutableInternalRepresentationsKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPipelineExecutableInternalRepresentationsKHR"#)
  PFN_vkVoidFunction
vkCmdSetLineStippleEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdSetLineStippleEXT"#)
  PFN_vkVoidFunction
vkCreateAccelerationStructureKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateAccelerationStructureKHR"#)
  PFN_vkVoidFunction
vkCmdBuildAccelerationStructureKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdBuildAccelerationStructureKHR"#)
  PFN_vkVoidFunction
vkCmdBuildAccelerationStructureIndirectKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCmdBuildAccelerationStructureIndirectKHR"#)
  PFN_vkVoidFunction
vkBuildAccelerationStructureKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkBuildAccelerationStructureKHR"#)
  PFN_vkVoidFunction
vkGetAccelerationStructureDeviceAddressKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetAccelerationStructureDeviceAddressKHR"#)
  PFN_vkVoidFunction
vkCreateDeferredOperationKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreateDeferredOperationKHR"#)
  PFN_vkVoidFunction
vkDestroyDeferredOperationKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkDestroyDeferredOperationKHR"#)
  PFN_vkVoidFunction
vkGetDeferredOperationMaxConcurrencyKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetDeferredOperationMaxConcurrencyKHR"#)
  PFN_vkVoidFunction
vkGetDeferredOperationResultKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetDeferredOperationResultKHR"#)
  PFN_vkVoidFunction
vkDeferredOperationJoinKHR <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkDeferredOperationJoinKHR"#)
  PFN_vkVoidFunction
vkCreatePrivateDataSlotEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkCreatePrivateDataSlotEXT"#)
  PFN_vkVoidFunction
vkDestroyPrivateDataSlotEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkDestroyPrivateDataSlotEXT"#)
  PFN_vkVoidFunction
vkSetPrivateDataEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkSetPrivateDataEXT"#)
  PFN_vkVoidFunction
vkGetPrivateDataEXT <- Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
getDeviceProcAddr' Ptr Device_T
handle (Addr# -> "pName" ::: Ptr CChar
forall a. Addr# -> Ptr a
Ptr "vkGetPrivateDataEXT"#)
  DeviceCmds -> IO DeviceCmds
forall (f :: * -> *) a. Applicative f => a -> f a
pure (DeviceCmds -> IO DeviceCmds) -> DeviceCmds -> IO DeviceCmds
forall a b. (a -> b) -> a -> b
$ Ptr Device_T
-> FunPtr
     (Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction)
-> FunPtr
     (Ptr Device_T
      -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
-> FunPtr
     (Ptr Device_T
      -> Word32 -> Word32 -> ("pQueue" ::: Ptr (Ptr Queue_T)) -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr Queue_T
       -> Word32
       -> ("pSubmits" ::: Ptr (SubmitInfo a))
       -> Fence
       -> IO Result))
-> FunPtr (Ptr Queue_T -> IO Result)
-> FunPtr (Ptr Device_T -> IO Result)
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pAllocateInfo" ::: Ptr (MemoryAllocateInfo a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pMemory" ::: Ptr DeviceMemory)
       -> IO Result))
-> FunPtr
     (Ptr Device_T
      -> DeviceMemory
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> FunPtr
     (Ptr Device_T
      -> DeviceMemory
      -> VisualID
      -> VisualID
      -> MemoryMapFlags
      -> ("dpy" ::: Ptr Display)
      -> IO Result)
-> FunPtr (Ptr Device_T -> DeviceMemory -> IO ())
-> FunPtr
     (Ptr Device_T
      -> Word32
      -> ("pMemoryRanges" ::: Ptr MappedMemoryRange)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> Word32
      -> ("pMemoryRanges" ::: Ptr MappedMemoryRange)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> DeviceMemory
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> IO ())
-> FunPtr
     (Ptr Device_T
      -> Buffer
      -> ("pMemoryRequirements" ::: Ptr MemoryRequirements)
      -> IO ())
-> FunPtr
     (Ptr Device_T -> Buffer -> DeviceMemory -> VisualID -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> Image
      -> ("pMemoryRequirements" ::: Ptr MemoryRequirements)
      -> IO ())
-> FunPtr
     (Ptr Device_T -> Image -> DeviceMemory -> VisualID -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> Image
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pSparseMemoryRequirements"
          ::: Ptr SparseImageMemoryRequirements)
      -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr Queue_T
       -> Word32
       -> ("pBindInfo" ::: Ptr (BindSparseInfo a))
       -> Fence
       -> IO Result))
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pCreateInfo" ::: Ptr (FenceCreateInfo a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pFence" ::: Ptr Fence)
       -> IO Result))
-> FunPtr
     (Ptr Device_T
      -> Fence -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
-> FunPtr
     (Ptr Device_T -> Word32 -> ("pFence" ::: Ptr Fence) -> IO Result)
-> FunPtr (Ptr Device_T -> Fence -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> Word32
      -> ("pFence" ::: Ptr Fence)
      -> Bool32
      -> VisualID
      -> IO Result)
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pCreateInfo" ::: Ptr (SemaphoreCreateInfo a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pSemaphore" ::: Ptr Semaphore)
       -> IO Result))
-> FunPtr
     (Ptr Device_T
      -> Semaphore
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr EventCreateInfo)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pEvent" ::: Ptr Event)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> Event -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
-> FunPtr (Ptr Device_T -> Event -> IO Result)
-> FunPtr (Ptr Device_T -> Event -> IO Result)
-> FunPtr (Ptr Device_T -> Event -> IO Result)
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pCreateInfo" ::: Ptr (QueryPoolCreateInfo a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pQueryPool" ::: Ptr QueryPool)
       -> IO Result))
-> FunPtr
     (Ptr Device_T
      -> QueryPool
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> FunPtr
     (Ptr Device_T
      -> QueryPool
      -> Word32
      -> Word32
      -> ("location" ::: CSize)
      -> Display
      -> VisualID
      -> QueryResultFlags
      -> IO Result)
-> FunPtr (Ptr Device_T -> QueryPool -> Word32 -> Word32 -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pCreateInfo" ::: Ptr (BufferCreateInfo a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pBuffer" ::: Ptr Buffer)
       -> IO Result))
-> FunPtr
     (Ptr Device_T
      -> Buffer -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr BufferViewCreateInfo)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pView" ::: Ptr BufferView)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> BufferView
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pCreateInfo" ::: Ptr (ImageCreateInfo a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pImage" ::: Ptr Image)
       -> IO Result))
-> FunPtr
     (Ptr Device_T
      -> Image -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
-> FunPtr
     (Ptr Device_T
      -> Image
      -> ("pSubresource" ::: Ptr ImageSubresource)
      -> ("pLayout" ::: Ptr SubresourceLayout)
      -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pCreateInfo" ::: Ptr (ImageViewCreateInfo a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pView" ::: Ptr ImageView)
       -> IO Result))
-> FunPtr
     (Ptr Device_T
      -> ImageView
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pCreateInfo" ::: Ptr (ShaderModuleCreateInfo a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pShaderModule" ::: Ptr ShaderModule)
       -> IO Result))
-> FunPtr
     (Ptr Device_T
      -> ShaderModule
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr PipelineCacheCreateInfo)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pPipelineCache" ::: Ptr PipelineCache)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> PipelineCache
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> FunPtr
     (Ptr Device_T
      -> PipelineCache
      -> ("pDataSize" ::: Ptr ("location" ::: CSize))
      -> Display
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> PipelineCache
      -> Word32
      -> ("pPipelineCache" ::: Ptr PipelineCache)
      -> IO Result)
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> PipelineCache
       -> Word32
       -> ("pCreateInfos" ::: Ptr (GraphicsPipelineCreateInfo a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pPipelines" ::: Ptr Pipeline)
       -> IO Result))
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> PipelineCache
       -> Word32
       -> ("pCreateInfos" ::: Ptr (ComputePipelineCreateInfo a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pPipelines" ::: Ptr Pipeline)
       -> IO Result))
-> FunPtr
     (Ptr Device_T
      -> Pipeline -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr PipelineLayoutCreateInfo)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pPipelineLayout" ::: Ptr PipelineLayout)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> PipelineLayout
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pCreateInfo" ::: Ptr (SamplerCreateInfo a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pSampler" ::: Ptr Sampler)
       -> IO Result))
-> FunPtr
     (Ptr Device_T
      -> Sampler -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pCreateInfo" ::: Ptr (DescriptorSetLayoutCreateInfo a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pSetLayout" ::: Ptr DescriptorSetLayout)
       -> IO Result))
-> FunPtr
     (Ptr Device_T
      -> DescriptorSetLayout
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pCreateInfo" ::: Ptr (DescriptorPoolCreateInfo a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pDescriptorPool" ::: Ptr DescriptorPool)
       -> IO Result))
-> FunPtr
     (Ptr Device_T
      -> DescriptorPool
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> FunPtr
     (Ptr Device_T
      -> DescriptorPool -> DescriptorPoolResetFlags -> IO Result)
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pAllocateInfo" ::: Ptr (DescriptorSetAllocateInfo a))
       -> ("pDescriptorSets" ::: Ptr DescriptorSet)
       -> IO Result))
-> FunPtr
     (Ptr Device_T
      -> DescriptorPool
      -> Word32
      -> ("pDescriptorSets" ::: Ptr DescriptorSet)
      -> IO Result)
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> Word32
       -> ("pDescriptorWrites" ::: Ptr (WriteDescriptorSet a))
       -> Word32
       -> ("pDescriptorCopies" ::: Ptr CopyDescriptorSet)
       -> IO ()))
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pCreateInfo" ::: Ptr (FramebufferCreateInfo a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pFramebuffer" ::: Ptr Framebuffer)
       -> IO Result))
-> FunPtr
     (Ptr Device_T
      -> Framebuffer
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pCreateInfo" ::: Ptr (RenderPassCreateInfo a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pRenderPass" ::: Ptr RenderPass)
       -> IO Result))
-> FunPtr
     (Ptr Device_T
      -> RenderPass
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> FunPtr
     (Ptr Device_T
      -> RenderPass -> ("pGranularity" ::: Ptr Extent2D) -> IO ())
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr CommandPoolCreateInfo)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pCommandPool" ::: Ptr CommandPool)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> CommandPool
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> FunPtr
     (Ptr Device_T -> CommandPool -> CommandPoolResetFlags -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pAllocateInfo" ::: Ptr CommandBufferAllocateInfo)
      -> ("pCommandBuffers" ::: Ptr (Ptr CommandBuffer_T))
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> CommandPool
      -> Word32
      -> ("pCommandBuffers" ::: Ptr (Ptr CommandBuffer_T))
      -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr CommandBuffer_T
       -> ("pBeginInfo" ::: Ptr (CommandBufferBeginInfo a)) -> IO Result))
-> FunPtr (Ptr CommandBuffer_T -> IO Result)
-> FunPtr
     (Ptr CommandBuffer_T -> CommandBufferResetFlags -> IO Result)
-> FunPtr
     (Ptr CommandBuffer_T -> PipelineBindPoint -> Pipeline -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32 -> Word32 -> ("pViewports" ::: Ptr Viewport) -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32 -> Word32 -> ("pRects" ::: Ptr Rect2D) -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T -> ("lineWidth" ::: CFloat) -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("lineWidth" ::: CFloat)
      -> ("lineWidth" ::: CFloat)
      -> ("lineWidth" ::: CFloat)
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("blendConstants"
          ::: Ptr (FixedArray 4 ("lineWidth" ::: CFloat)))
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("lineWidth" ::: CFloat) -> ("lineWidth" ::: CFloat) -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("faceMask" ::: StencilFaceFlags) -> Word32 -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("faceMask" ::: StencilFaceFlags) -> Word32 -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("faceMask" ::: StencilFaceFlags) -> Word32 -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> PipelineBindPoint
      -> PipelineLayout
      -> Word32
      -> Word32
      -> ("pDescriptorSets" ::: Ptr DescriptorSet)
      -> Word32
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T -> Buffer -> VisualID -> IndexType -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> Word32
      -> ("pBuffer" ::: Ptr Buffer)
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32 -> Word32 -> Word32 -> Word32 -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> Word32
      -> Word32
      -> ("messageCode" ::: Int32)
      -> Word32
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer -> VisualID -> Word32 -> Word32 -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer -> VisualID -> Word32 -> Word32 -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T -> Word32 -> Word32 -> Word32 -> IO ())
-> FunPtr (Ptr CommandBuffer_T -> Buffer -> VisualID -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer
      -> Buffer
      -> Word32
      -> ("pRegions" ::: Ptr BufferCopy)
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Image
      -> ("srcImageLayout" ::: ImageLayout)
      -> Image
      -> ("srcImageLayout" ::: ImageLayout)
      -> Word32
      -> ("pRegions" ::: Ptr ImageCopy)
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Image
      -> ("srcImageLayout" ::: ImageLayout)
      -> Image
      -> ("srcImageLayout" ::: ImageLayout)
      -> Word32
      -> ("pRegions" ::: Ptr ImageBlit)
      -> Filter
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer
      -> Image
      -> ("srcImageLayout" ::: ImageLayout)
      -> Word32
      -> ("pRegions" ::: Ptr BufferImageCopy)
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Image
      -> ("srcImageLayout" ::: ImageLayout)
      -> Buffer
      -> Word32
      -> ("pRegions" ::: Ptr BufferImageCopy)
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer -> VisualID -> VisualID -> Display -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer -> VisualID -> VisualID -> Word32 -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Image
      -> ("srcImageLayout" ::: ImageLayout)
      -> ("pColor" ::: Ptr ClearColorValue)
      -> Word32
      -> ("pRanges" ::: Ptr ImageSubresourceRange)
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Image
      -> ("srcImageLayout" ::: ImageLayout)
      -> ("pDepthStencil" ::: Ptr ClearDepthStencilValue)
      -> Word32
      -> ("pRanges" ::: Ptr ImageSubresourceRange)
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> ("pAttachments" ::: Ptr ClearAttachment)
      -> Word32
      -> ("pRects" ::: Ptr ClearRect)
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Image
      -> ("srcImageLayout" ::: ImageLayout)
      -> Image
      -> ("srcImageLayout" ::: ImageLayout)
      -> Word32
      -> ("pRegions" ::: Ptr ImageResolve)
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Event -> ("stageMask" ::: PipelineStageFlags) -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Event -> ("stageMask" ::: PipelineStageFlags) -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr CommandBuffer_T
       -> Word32
       -> ("pEvent" ::: Ptr Event)
       -> ("stageMask" ::: PipelineStageFlags)
       -> ("stageMask" ::: PipelineStageFlags)
       -> Word32
       -> ("pMemoryBarriers" ::: Ptr MemoryBarrier)
       -> Word32
       -> ("pBufferMemoryBarriers" ::: Ptr BufferMemoryBarrier)
       -> Word32
       -> ("pImageMemoryBarriers" ::: Ptr (ImageMemoryBarrier a))
       -> IO ()))
-> (forall (a :: [*]).
    FunPtr
      (Ptr CommandBuffer_T
       -> ("stageMask" ::: PipelineStageFlags)
       -> ("stageMask" ::: PipelineStageFlags)
       -> DependencyFlags
       -> Word32
       -> ("pMemoryBarriers" ::: Ptr MemoryBarrier)
       -> Word32
       -> ("pBufferMemoryBarriers" ::: Ptr BufferMemoryBarrier)
       -> Word32
       -> ("pImageMemoryBarriers" ::: Ptr (ImageMemoryBarrier a))
       -> IO ()))
-> FunPtr
     (Ptr CommandBuffer_T
      -> QueryPool -> Word32 -> QueryControlFlags -> IO ())
-> FunPtr (Ptr CommandBuffer_T -> QueryPool -> Word32 -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pConditionalRenderingBegin"
          ::: Ptr ConditionalRenderingBeginInfoEXT)
      -> IO ())
-> FunPtr (Ptr CommandBuffer_T -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T -> QueryPool -> Word32 -> Word32 -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("stageMask" ::: PipelineStageFlags)
      -> QueryPool
      -> Word32
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> QueryPool
      -> Word32
      -> Word32
      -> Buffer
      -> VisualID
      -> VisualID
      -> QueryResultFlags
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> PipelineLayout
      -> ShaderStageFlags
      -> Word32
      -> Word32
      -> Display
      -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr CommandBuffer_T
       -> ("pRenderPassBegin" ::: Ptr (RenderPassBeginInfo a))
       -> SubpassContents
       -> IO ()))
-> FunPtr (Ptr CommandBuffer_T -> SubpassContents -> IO ())
-> FunPtr (Ptr CommandBuffer_T -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> ("pCommandBuffers" ::: Ptr (Ptr CommandBuffer_T))
      -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> Word32
       -> ("pCreateInfos" ::: Ptr (SwapchainCreateInfoKHR a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pSwapchains" ::: Ptr SwapchainKHR)
       -> IO Result))
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pCreateInfo" ::: Ptr (SwapchainCreateInfoKHR a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pSwapchains" ::: Ptr SwapchainKHR)
       -> IO Result))
-> FunPtr
     (Ptr Device_T
      -> SwapchainKHR
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> FunPtr
     (Ptr Device_T
      -> SwapchainKHR
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pImage" ::: Ptr Image)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> SwapchainKHR
      -> VisualID
      -> Semaphore
      -> Fence
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> IO Result)
-> (forall (a :: [*]).
    FunPtr
      (Ptr Queue_T
       -> ("pPresentInfo" ::: Ptr (PresentInfoKHR a)) -> IO Result))
-> FunPtr
     (Ptr Device_T
      -> ("pNameInfo" ::: Ptr DebugMarkerObjectNameInfoEXT) -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pTagInfo" ::: Ptr DebugMarkerObjectTagInfoEXT) -> IO Result)
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pMarkerInfo" ::: Ptr DebugMarkerMarkerInfoEXT) -> IO ())
-> FunPtr (Ptr CommandBuffer_T -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pMarkerInfo" ::: Ptr DebugMarkerMarkerInfoEXT) -> IO ())
-> FunPtr
     (Ptr Device_T
      -> DeviceMemory
      -> ("externalHandleType" ::: ExternalMemoryHandleTypeFlagsNV)
      -> ("dpy" ::: Ptr Display)
      -> IO Result)
-> FunPtr
     (Ptr CommandBuffer_T
      -> Bool32
      -> ("pGeneratedCommandsInfo" ::: Ptr GeneratedCommandsInfoNV)
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pGeneratedCommandsInfo" ::: Ptr GeneratedCommandsInfoNV)
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> PipelineBindPoint -> Pipeline -> Word32 -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pInfo" ::: Ptr GeneratedCommandsMemoryRequirementsInfoNV)
       -> ("pMemoryRequirements" ::: Ptr (MemoryRequirements2 a))
       -> IO ()))
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr IndirectCommandsLayoutCreateInfoNV)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pIndirectCommandsLayout" ::: Ptr IndirectCommandsLayoutNV)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> IndirectCommandsLayoutNV
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr CommandBuffer_T
       -> PipelineBindPoint
       -> PipelineLayout
       -> Word32
       -> Word32
       -> ("pDescriptorWrites" ::: Ptr (WriteDescriptorSet a))
       -> IO ()))
-> FunPtr
     (Ptr Device_T -> CommandPool -> CommandPoolTrimFlags -> IO ())
-> FunPtr
     (Ptr Device_T
      -> ("pGetWin32HandleInfo" ::: Ptr MemoryGetWin32HandleInfoKHR)
      -> ("dpy" ::: Ptr Display)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ExternalMemoryHandleTypeFlagBits
      -> Display
      -> ("pMemoryWin32HandleProperties"
          ::: Ptr MemoryWin32HandlePropertiesKHR)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pGetFdInfo" ::: Ptr MemoryGetFdInfoKHR)
      -> ("pFd" ::: Ptr CInt)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ExternalMemoryHandleTypeFlagBits
      -> CInt
      -> ("pMemoryFdProperties" ::: Ptr MemoryFdPropertiesKHR)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pGetWin32HandleInfo" ::: Ptr SemaphoreGetWin32HandleInfoKHR)
      -> ("dpy" ::: Ptr Display)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pImportSemaphoreWin32HandleInfo"
          ::: Ptr ImportSemaphoreWin32HandleInfoKHR)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pGetFdInfo" ::: Ptr SemaphoreGetFdInfoKHR)
      -> ("pFd" ::: Ptr CInt)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pImportSemaphoreFdInfo" ::: Ptr ImportSemaphoreFdInfoKHR)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pGetWin32HandleInfo" ::: Ptr FenceGetWin32HandleInfoKHR)
      -> ("dpy" ::: Ptr Display)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pImportFenceWin32HandleInfo"
          ::: Ptr ImportFenceWin32HandleInfoKHR)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pGetFdInfo" ::: Ptr FenceGetFdInfoKHR)
      -> ("pFd" ::: Ptr CInt)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pImportFenceFdInfo" ::: Ptr ImportFenceFdInfoKHR)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> DisplayKHR
      -> ("pDisplayPowerInfo" ::: Ptr DisplayPowerInfoEXT)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pDeviceEventInfo" ::: Ptr DeviceEventInfoEXT)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pFence" ::: Ptr Fence)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> DisplayKHR
      -> ("pDisplayEventInfo" ::: Ptr DisplayEventInfoEXT)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pFence" ::: Ptr Fence)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> SwapchainKHR
      -> SurfaceCounterFlagBitsEXT
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> Word32
      -> Word32
      -> Word32
      -> ("pPeerMemoryFeatures" ::: Ptr PeerMemoryFeatureFlags)
      -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> Word32
       -> ("pBindInfos" ::: Ptr (BindBufferMemoryInfo a))
       -> IO Result))
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> Word32
       -> ("pBindInfos" ::: Ptr (BindImageMemoryInfo a))
       -> IO Result))
-> FunPtr (Ptr CommandBuffer_T -> Word32 -> IO ())
-> FunPtr
     (Ptr Device_T
      -> ("pDeviceGroupPresentCapabilities"
          ::: Ptr DeviceGroupPresentCapabilitiesKHR)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> SurfaceKHR
      -> ("pModes" ::: Ptr DeviceGroupPresentModeFlagsKHR)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pAcquireInfo" ::: Ptr AcquireNextImageInfoKHR)
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> IO Result)
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> Word32
      -> Word32
      -> Word32
      -> Word32
      -> Word32
      -> IO ())
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr DescriptorUpdateTemplateCreateInfo)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pDescriptorUpdateTemplate" ::: Ptr DescriptorUpdateTemplate)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> DescriptorUpdateTemplate
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> FunPtr
     (Ptr Device_T
      -> DescriptorSet -> DescriptorUpdateTemplate -> Display -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> DescriptorUpdateTemplate
      -> PipelineLayout
      -> Word32
      -> Display
      -> IO ())
-> FunPtr
     (Ptr Device_T
      -> Word32
      -> ("pSwapchains" ::: Ptr SwapchainKHR)
      -> ("pMetadata" ::: Ptr HdrMetadataEXT)
      -> IO ())
-> FunPtr (Ptr Device_T -> SwapchainKHR -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> SwapchainKHR
      -> ("pDisplayTimingProperties" ::: Ptr RefreshCycleDurationGOOGLE)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> SwapchainKHR
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pPresentationTimings" ::: Ptr PastPresentationTimingGOOGLE)
      -> IO Result)
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> Word32
      -> ("pViewportWScalings" ::: Ptr ViewportWScalingNV)
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32 -> Word32 -> ("pRects" ::: Ptr Rect2D) -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pSampleLocationsInfo" ::: Ptr SampleLocationsInfoEXT)
      -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pInfo" ::: Ptr BufferMemoryRequirementsInfo2)
       -> ("pMemoryRequirements" ::: Ptr (MemoryRequirements2 a))
       -> IO ()))
-> (forall (a :: [*]) (b :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pInfo" ::: Ptr (ImageMemoryRequirementsInfo2 a))
       -> ("pMemoryRequirements" ::: Ptr (MemoryRequirements2 b))
       -> IO ()))
-> FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr ImageSparseMemoryRequirementsInfo2)
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pSparseMemoryRequirements"
          ::: Ptr SparseImageMemoryRequirements2)
      -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pCreateInfo" ::: Ptr (SamplerYcbcrConversionCreateInfo a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pYcbcrConversion" ::: Ptr SamplerYcbcrConversion)
       -> IO Result))
-> FunPtr
     (Ptr Device_T
      -> SamplerYcbcrConversion
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> FunPtr
     (Ptr Device_T
      -> ("pQueueInfo" ::: Ptr DeviceQueueInfo2)
      -> ("pQueue" ::: Ptr (Ptr Queue_T))
      -> IO ())
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr ValidationCacheCreateInfoEXT)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pValidationCache" ::: Ptr ValidationCacheEXT)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ValidationCacheEXT
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> FunPtr
     (Ptr Device_T
      -> ValidationCacheEXT
      -> ("pDataSize" ::: Ptr ("location" ::: CSize))
      -> Display
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ValidationCacheEXT
      -> Word32
      -> ("pValidationCache" ::: Ptr ValidationCacheEXT)
      -> IO Result)
-> (forall (a :: [*]) (b :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pCreateInfo" ::: Ptr (DescriptorSetLayoutCreateInfo a))
       -> ("pSupport" ::: Ptr (DescriptorSetLayoutSupport b))
       -> IO ()))
-> FunPtr
     (Ptr Device_T
      -> Pipeline
      -> ShaderStageFlags
      -> ShaderInfoTypeAMD
      -> ("pDataSize" ::: Ptr ("location" ::: CSize))
      -> Display
      -> IO Result)
-> FunPtr (Ptr Device_T -> SwapchainKHR -> Bool32 -> IO ())
-> FunPtr
     (Ptr Device_T
      -> Word32
      -> ("pTimestampInfos" ::: Ptr CalibratedTimestampInfoEXT)
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pNameInfo" ::: Ptr DebugUtilsObjectNameInfoEXT) -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pTagInfo" ::: Ptr DebugUtilsObjectTagInfoEXT) -> IO Result)
-> FunPtr
     (Ptr Queue_T -> ("pLabelInfo" ::: Ptr DebugUtilsLabelEXT) -> IO ())
-> FunPtr (Ptr Queue_T -> IO ())
-> FunPtr
     (Ptr Queue_T -> ("pLabelInfo" ::: Ptr DebugUtilsLabelEXT) -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pLabelInfo" ::: Ptr DebugUtilsLabelEXT) -> IO ())
-> FunPtr (Ptr CommandBuffer_T -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pLabelInfo" ::: Ptr DebugUtilsLabelEXT) -> IO ())
-> FunPtr
     (Ptr Device_T
      -> ExternalMemoryHandleTypeFlagBits
      -> Display
      -> ("pMemoryHostPointerProperties"
          ::: Ptr MemoryHostPointerPropertiesEXT)
      -> IO Result)
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("stageMask" ::: PipelineStageFlags)
      -> Buffer
      -> VisualID
      -> Word32
      -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pCreateInfo" ::: Ptr (RenderPassCreateInfo2 a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pRenderPass" ::: Ptr RenderPass)
       -> IO Result))
-> (forall (a :: [*]).
    FunPtr
      (Ptr CommandBuffer_T
       -> ("pRenderPassBegin" ::: Ptr (RenderPassBeginInfo a))
       -> ("pSubpassBeginInfo" ::: Ptr SubpassBeginInfo)
       -> IO ()))
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pSubpassBeginInfo" ::: Ptr SubpassBeginInfo)
      -> ("pSubpassEndInfo" ::: Ptr SubpassEndInfo)
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pSubpassEndInfo" ::: Ptr SubpassEndInfo) -> IO ())
-> FunPtr
     (Ptr Device_T
      -> Semaphore
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pWaitInfo" ::: Ptr SemaphoreWaitInfo)
      -> VisualID
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pSignalInfo" ::: Ptr SemaphoreSignalInfo) -> IO Result)
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> Ptr AHardwareBuffer
       -> ("pProperties"
           ::: Ptr (AndroidHardwareBufferPropertiesANDROID a))
       -> IO Result))
-> FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr MemoryGetAndroidHardwareBufferInfoANDROID)
      -> ("pBuffer" ::: Ptr (Ptr AHardwareBuffer))
      -> IO Result)
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer
      -> VisualID
      -> Buffer
      -> VisualID
      -> Word32
      -> Word32
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer
      -> VisualID
      -> Buffer
      -> VisualID
      -> Word32
      -> Word32
      -> IO ())
-> FunPtr (Ptr CommandBuffer_T -> Display -> IO ())
-> FunPtr
     (Ptr Queue_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pCheckpointData" ::: Ptr CheckpointDataNV)
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> Word32
      -> ("pBuffer" ::: Ptr Buffer)
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> Word32
      -> ("pBuffer" ::: Ptr Buffer)
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> Word32
      -> ("pBuffer" ::: Ptr Buffer)
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> QueryPool -> Word32 -> QueryControlFlags -> Word32 -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T -> QueryPool -> Word32 -> Word32 -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> Word32
      -> Buffer
      -> VisualID
      -> Word32
      -> Word32
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32 -> Word32 -> ("pRects" ::: Ptr Rect2D) -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> ImageView -> ("srcImageLayout" ::: ImageLayout) -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> Word32
      -> ("pShadingRatePalettes" ::: Ptr ShadingRatePaletteNV)
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> CoarseSampleOrderTypeNV
      -> Word32
      -> ("pCustomSampleOrders" ::: Ptr CoarseSampleOrderCustomNV)
      -> IO ())
-> FunPtr (Ptr CommandBuffer_T -> Word32 -> Word32 -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer -> VisualID -> Word32 -> Word32 -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer
      -> VisualID
      -> Buffer
      -> VisualID
      -> Word32
      -> Word32
      -> IO ())
-> FunPtr (Ptr Device_T -> Pipeline -> Word32 -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr AccelerationStructureCreateInfoNV)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pAccelerationStructure" ::: Ptr AccelerationStructureNV)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> AccelerationStructureNV
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pInfo" ::: Ptr AccelerationStructureMemoryRequirementsInfoKHR)
       -> ("pMemoryRequirements" ::: Ptr (MemoryRequirements2 a))
       -> IO ()))
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pInfo" ::: Ptr AccelerationStructureMemoryRequirementsInfoNV)
       -> ("pMemoryRequirements" ::: Ptr (MemoryRequirements2KHR a))
       -> IO ()))
-> FunPtr
     (Ptr Device_T
      -> Word32
      -> ("pBindInfos" ::: Ptr BindAccelerationStructureMemoryInfoKHR)
      -> IO Result)
-> FunPtr
     (Ptr CommandBuffer_T
      -> AccelerationStructureNV
      -> AccelerationStructureNV
      -> CopyAccelerationStructureModeKHR
      -> IO ())
-> (forall (a :: [*]).
    FunPtr
      (Ptr CommandBuffer_T
       -> ("pInfo" ::: Ptr (CopyAccelerationStructureInfoKHR a))
       -> IO ()))
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pInfo" ::: Ptr (CopyAccelerationStructureInfoKHR a))
       -> IO Result))
-> (forall (a :: [*]).
    FunPtr
      (Ptr CommandBuffer_T
       -> ("pInfo" ::: Ptr (CopyAccelerationStructureToMemoryInfoKHR a))
       -> IO ()))
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pInfo" ::: Ptr (CopyAccelerationStructureToMemoryInfoKHR a))
       -> IO Result))
-> (forall (a :: [*]).
    FunPtr
      (Ptr CommandBuffer_T
       -> ("pInfo" ::: Ptr (CopyMemoryToAccelerationStructureInfoKHR a))
       -> IO ()))
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pInfo" ::: Ptr (CopyMemoryToAccelerationStructureInfoKHR a))
       -> IO Result))
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> ("pAccelerationStructure" ::: Ptr AccelerationStructureNV)
      -> QueryType
      -> QueryPool
      -> Word32
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pInfo" ::: Ptr AccelerationStructureInfoNV)
      -> Buffer
      -> VisualID
      -> Bool32
      -> AccelerationStructureNV
      -> AccelerationStructureNV
      -> Buffer
      -> VisualID
      -> IO ())
-> FunPtr
     (Ptr Device_T
      -> Word32
      -> ("pAccelerationStructure" ::: Ptr AccelerationStructureNV)
      -> QueryType
      -> ("location" ::: CSize)
      -> Display
      -> ("location" ::: CSize)
      -> IO Result)
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR)
      -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR)
      -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR)
      -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR)
      -> Word32
      -> Word32
      -> Word32
      -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer
      -> VisualID
      -> Buffer
      -> VisualID
      -> VisualID
      -> Buffer
      -> VisualID
      -> VisualID
      -> Buffer
      -> VisualID
      -> VisualID
      -> Word32
      -> Word32
      -> Word32
      -> IO ())
-> FunPtr
     (Ptr Device_T
      -> Pipeline
      -> Word32
      -> Word32
      -> ("location" ::: CSize)
      -> Display
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> Pipeline
      -> Word32
      -> Word32
      -> ("location" ::: CSize)
      -> Display
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> AccelerationStructureNV
      -> ("location" ::: CSize)
      -> Display
      -> IO Result)
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> PipelineCache
       -> Word32
       -> ("pCreateInfos" ::: Ptr (RayTracingPipelineCreateInfoNV a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pPipelines" ::: Ptr Pipeline)
       -> IO Result))
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> PipelineCache
       -> Word32
       -> ("pCreateInfos" ::: Ptr (RayTracingPipelineCreateInfoKHR a))
       -> ("pAllocator" ::: Ptr AllocationCallbacks)
       -> ("pPipelines" ::: Ptr Pipeline)
       -> IO Result))
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR)
      -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR)
      -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR)
      -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR)
      -> Buffer
      -> VisualID
      -> IO ())
-> FunPtr
     (Ptr Device_T -> Ptr AccelerationStructureVersionKHR -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr ImageViewHandleInfoNVX) -> IO Word32)
-> FunPtr
     (Ptr Device_T
      -> ImageView
      -> ("pProperties" ::: Ptr ImageViewAddressPropertiesNVX)
      -> IO Result)
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> ("pSurfaceInfo" ::: Ptr (PhysicalDeviceSurfaceInfo2KHR a))
       -> ("pModes" ::: Ptr DeviceGroupPresentModeFlagsKHR)
       -> IO Result))
-> FunPtr (Ptr Device_T -> SwapchainKHR -> IO Result)
-> FunPtr (Ptr Device_T -> SwapchainKHR -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr AcquireProfilingLockInfoKHR) -> IO Result)
-> FunPtr (Ptr Device_T -> IO ())
-> FunPtr
     (Ptr Device_T
      -> Image
      -> ("pProperties" ::: Ptr ImageDrmFormatModifierPropertiesEXT)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr BufferDeviceAddressInfo) -> IO VisualID)
-> FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr BufferDeviceAddressInfo) -> IO VisualID)
-> FunPtr
     (Ptr Device_T
      -> ("pInitializeInfo" ::: Ptr InitializePerformanceApiInfoINTEL)
      -> IO Result)
-> FunPtr (Ptr Device_T -> IO ())
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pMarkerInfo" ::: Ptr PerformanceMarkerInfoINTEL) -> IO Result)
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pMarkerInfo" ::: Ptr PerformanceStreamMarkerInfoINTEL)
      -> IO Result)
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pOverrideInfo" ::: Ptr PerformanceOverrideInfoINTEL)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pAcquireInfo"
          ::: Ptr PerformanceConfigurationAcquireInfoINTEL)
      -> ("pConfiguration" ::: Ptr PerformanceConfigurationINTEL)
      -> IO Result)
-> FunPtr
     (Ptr Device_T -> PerformanceConfigurationINTEL -> IO Result)
-> FunPtr
     (Ptr Queue_T -> PerformanceConfigurationINTEL -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> PerformanceParameterTypeINTEL
      -> ("pValue" ::: Ptr PerformanceValueINTEL)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr DeviceMemoryOpaqueCaptureAddressInfo)
      -> IO VisualID)
-> FunPtr
     (Ptr Device_T
      -> ("pPipelineInfo" ::: Ptr PipelineInfoKHR)
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr PipelineExecutablePropertiesKHR)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pExecutableInfo" ::: Ptr PipelineExecutableInfoKHR)
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pStatistics" ::: Ptr PipelineExecutableStatisticKHR)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pExecutableInfo" ::: Ptr PipelineExecutableInfoKHR)
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pInternalRepresentations"
          ::: Ptr PipelineExecutableInternalRepresentationKHR)
      -> IO Result)
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32 -> ("lineStipplePattern" ::: Word16) -> IO ())
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr AccelerationStructureCreateInfoKHR)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pAccelerationStructure" ::: Ptr AccelerationStructureNV)
      -> IO Result)
-> (forall (a :: [*]).
    FunPtr
      (Ptr CommandBuffer_T
       -> Word32
       -> ("pInfos" ::: Ptr (AccelerationStructureBuildGeometryInfoKHR a))
       -> ("ppOffsetInfos"
           ::: Ptr (Ptr AccelerationStructureBuildOffsetInfoKHR))
       -> IO ()))
-> (forall (a :: [*]).
    FunPtr
      (Ptr CommandBuffer_T
       -> ("pInfo" ::: Ptr (AccelerationStructureBuildGeometryInfoKHR a))
       -> Buffer
       -> VisualID
       -> Word32
       -> IO ()))
-> (forall (a :: [*]).
    FunPtr
      (Ptr Device_T
       -> Word32
       -> ("pInfos" ::: Ptr (AccelerationStructureBuildGeometryInfoKHR a))
       -> ("ppOffsetInfos"
           ::: Ptr (Ptr AccelerationStructureBuildOffsetInfoKHR))
       -> IO Result))
-> FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr AccelerationStructureDeviceAddressInfoKHR)
      -> IO VisualID)
-> FunPtr
     (Ptr Device_T
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pDeferredOperation" ::: Ptr DeferredOperationKHR)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> DeferredOperationKHR
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> FunPtr (Ptr Device_T -> DeferredOperationKHR -> IO Word32)
-> FunPtr (Ptr Device_T -> DeferredOperationKHR -> IO Result)
-> FunPtr (Ptr Device_T -> DeferredOperationKHR -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr PrivateDataSlotCreateInfoEXT)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pPrivateDataSlot" ::: Ptr PrivateDataSlotEXT)
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> PrivateDataSlotEXT
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
-> FunPtr
     (Ptr Device_T
      -> ObjectType
      -> VisualID
      -> PrivateDataSlotEXT
      -> VisualID
      -> IO Result)
-> FunPtr
     (Ptr Device_T
      -> ObjectType
      -> VisualID
      -> PrivateDataSlotEXT
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> IO ())
-> DeviceCmds
DeviceCmds Ptr Device_T
handle
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction) PFN_vkVoidFunction
vkGetDeviceProcAddr)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) PFN_vkVoidFunction
vkDestroyDevice)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> Word32 -> Word32 -> ("pQueue" ::: Ptr (Ptr Queue_T)) -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("queueFamilyIndex" ::: Word32) -> ("queueIndex" ::: Word32) -> ("pQueue" ::: Ptr (Ptr Queue_T)) -> IO ()) PFN_vkVoidFunction
vkGetDeviceQueue)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Queue_T
      -> Word32
      -> ("pSubmits" ::: Ptr (SubmitInfo a))
      -> Fence
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Queue_T -> ("submitCount" ::: Word32) -> ("pSubmits" ::: Ptr (SubmitInfo _)) -> Fence -> IO Result) PFN_vkVoidFunction
vkQueueSubmit)
    (PFN_vkVoidFunction -> FunPtr (Ptr Queue_T -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Queue_T -> IO Result) PFN_vkVoidFunction
vkQueueWaitIdle)
    (PFN_vkVoidFunction -> FunPtr (Ptr Device_T -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> IO Result) PFN_vkVoidFunction
vkDeviceWaitIdle)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pAllocateInfo" ::: Ptr (MemoryAllocateInfo a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pMemory" ::: Ptr DeviceMemory)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pAllocateInfo" ::: Ptr (MemoryAllocateInfo _)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pMemory" ::: Ptr DeviceMemory) -> IO Result) PFN_vkVoidFunction
vkAllocateMemory)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> DeviceMemory
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> DeviceMemory -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) PFN_vkVoidFunction
vkFreeMemory)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> DeviceMemory
      -> VisualID
      -> VisualID
      -> MemoryMapFlags
      -> ("dpy" ::: Ptr Display)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> DeviceMemory -> ("offset" ::: DeviceSize) -> DeviceSize -> MemoryMapFlags -> ("ppData" ::: Ptr (Ptr ())) -> IO Result) PFN_vkVoidFunction
vkMapMemory)
    (PFN_vkVoidFunction
-> FunPtr (Ptr Device_T -> DeviceMemory -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> DeviceMemory -> IO ()) PFN_vkVoidFunction
vkUnmapMemory)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> Word32
      -> ("pMemoryRanges" ::: Ptr MappedMemoryRange)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("memoryRangeCount" ::: Word32) -> ("pMemoryRanges" ::: Ptr MappedMemoryRange) -> IO Result) PFN_vkVoidFunction
vkFlushMappedMemoryRanges)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> Word32
      -> ("pMemoryRanges" ::: Ptr MappedMemoryRange)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("memoryRangeCount" ::: Word32) -> ("pMemoryRanges" ::: Ptr MappedMemoryRange) -> IO Result) PFN_vkVoidFunction
vkInvalidateMappedMemoryRanges)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> DeviceMemory
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> DeviceMemory -> ("pCommittedMemoryInBytes" ::: Ptr DeviceSize) -> IO ()) PFN_vkVoidFunction
vkGetDeviceMemoryCommitment)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> Buffer
      -> ("pMemoryRequirements" ::: Ptr MemoryRequirements)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> Buffer -> ("pMemoryRequirements" ::: Ptr MemoryRequirements) -> IO ()) PFN_vkVoidFunction
vkGetBufferMemoryRequirements)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T -> Buffer -> DeviceMemory -> VisualID -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> Buffer -> DeviceMemory -> ("memoryOffset" ::: DeviceSize) -> IO Result) PFN_vkVoidFunction
vkBindBufferMemory)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> Image
      -> ("pMemoryRequirements" ::: Ptr MemoryRequirements)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> Image -> ("pMemoryRequirements" ::: Ptr MemoryRequirements) -> IO ()) PFN_vkVoidFunction
vkGetImageMemoryRequirements)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T -> Image -> DeviceMemory -> VisualID -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> Image -> DeviceMemory -> ("memoryOffset" ::: DeviceSize) -> IO Result) PFN_vkVoidFunction
vkBindImageMemory)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> Image
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pSparseMemoryRequirements"
          ::: Ptr SparseImageMemoryRequirements)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> Image -> ("pSparseMemoryRequirementCount" ::: Ptr Word32) -> ("pSparseMemoryRequirements" ::: Ptr SparseImageMemoryRequirements) -> IO ()) PFN_vkVoidFunction
vkGetImageSparseMemoryRequirements)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Queue_T
      -> Word32
      -> ("pBindInfo" ::: Ptr (BindSparseInfo a))
      -> Fence
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Queue_T -> ("bindInfoCount" ::: Word32) -> ("pBindInfo" ::: Ptr (BindSparseInfo _)) -> Fence -> IO Result) PFN_vkVoidFunction
vkQueueBindSparse)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr (FenceCreateInfo a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pFence" ::: Ptr Fence)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pCreateInfo" ::: Ptr (FenceCreateInfo _)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pFence" ::: Ptr Fence) -> IO Result) PFN_vkVoidFunction
vkCreateFence)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> Fence -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> Fence -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) PFN_vkVoidFunction
vkDestroyFence)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T -> Word32 -> ("pFence" ::: Ptr Fence) -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("fenceCount" ::: Word32) -> ("pFences" ::: Ptr Fence) -> IO Result) PFN_vkVoidFunction
vkResetFences)
    (PFN_vkVoidFunction -> FunPtr (Ptr Device_T -> Fence -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> Fence -> IO Result) PFN_vkVoidFunction
vkGetFenceStatus)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> Word32
      -> ("pFence" ::: Ptr Fence)
      -> Bool32
      -> VisualID
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("fenceCount" ::: Word32) -> ("pFences" ::: Ptr Fence) -> ("waitAll" ::: Bool32) -> ("timeout" ::: Word64) -> IO Result) PFN_vkVoidFunction
vkWaitForFences)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr (SemaphoreCreateInfo a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSemaphore" ::: Ptr Semaphore)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pCreateInfo" ::: Ptr (SemaphoreCreateInfo _)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSemaphore" ::: Ptr Semaphore) -> IO Result) PFN_vkVoidFunction
vkCreateSemaphore)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> Semaphore
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> Semaphore -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) PFN_vkVoidFunction
vkDestroySemaphore)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr EventCreateInfo)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pEvent" ::: Ptr Event)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pCreateInfo" ::: Ptr EventCreateInfo) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pEvent" ::: Ptr Event) -> IO Result) PFN_vkVoidFunction
vkCreateEvent)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> Event -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> Event -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) PFN_vkVoidFunction
vkDestroyEvent)
    (PFN_vkVoidFunction -> FunPtr (Ptr Device_T -> Event -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> Event -> IO Result) PFN_vkVoidFunction
vkGetEventStatus)
    (PFN_vkVoidFunction -> FunPtr (Ptr Device_T -> Event -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> Event -> IO Result) PFN_vkVoidFunction
vkSetEvent)
    (PFN_vkVoidFunction -> FunPtr (Ptr Device_T -> Event -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> Event -> IO Result) PFN_vkVoidFunction
vkResetEvent)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr (QueryPoolCreateInfo a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pQueryPool" ::: Ptr QueryPool)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pCreateInfo" ::: Ptr (QueryPoolCreateInfo _)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pQueryPool" ::: Ptr QueryPool) -> IO Result) PFN_vkVoidFunction
vkCreateQueryPool)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> QueryPool
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> QueryPool -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) PFN_vkVoidFunction
vkDestroyQueryPool)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> QueryPool
      -> Word32
      -> Word32
      -> ("location" ::: CSize)
      -> Display
      -> VisualID
      -> QueryResultFlags
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> QueryPool -> ("firstQuery" ::: Word32) -> ("queryCount" ::: Word32) -> ("dataSize" ::: CSize) -> ("pData" ::: Ptr ()) -> ("stride" ::: DeviceSize) -> QueryResultFlags -> IO Result) PFN_vkVoidFunction
vkGetQueryPoolResults)
    (PFN_vkVoidFunction
-> FunPtr (Ptr Device_T -> QueryPool -> Word32 -> Word32 -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> QueryPool -> ("firstQuery" ::: Word32) -> ("queryCount" ::: Word32) -> IO ()) PFN_vkVoidFunction
vkResetQueryPool)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr (BufferCreateInfo a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pBuffer" ::: Ptr Buffer)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pCreateInfo" ::: Ptr (BufferCreateInfo _)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pBuffer" ::: Ptr Buffer) -> IO Result) PFN_vkVoidFunction
vkCreateBuffer)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> Buffer -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> Buffer -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) PFN_vkVoidFunction
vkDestroyBuffer)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr BufferViewCreateInfo)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pView" ::: Ptr BufferView)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pCreateInfo" ::: Ptr BufferViewCreateInfo) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pView" ::: Ptr BufferView) -> IO Result) PFN_vkVoidFunction
vkCreateBufferView)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> BufferView
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> BufferView -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) PFN_vkVoidFunction
vkDestroyBufferView)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr (ImageCreateInfo a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pImage" ::: Ptr Image)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pCreateInfo" ::: Ptr (ImageCreateInfo _)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pImage" ::: Ptr Image) -> IO Result) PFN_vkVoidFunction
vkCreateImage)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> Image -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> Image -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) PFN_vkVoidFunction
vkDestroyImage)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> Image
      -> ("pSubresource" ::: Ptr ImageSubresource)
      -> ("pLayout" ::: Ptr SubresourceLayout)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> Image -> ("pSubresource" ::: Ptr ImageSubresource) -> ("pLayout" ::: Ptr SubresourceLayout) -> IO ()) PFN_vkVoidFunction
vkGetImageSubresourceLayout)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr (ImageViewCreateInfo a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pView" ::: Ptr ImageView)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pCreateInfo" ::: Ptr (ImageViewCreateInfo _)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pView" ::: Ptr ImageView) -> IO Result) PFN_vkVoidFunction
vkCreateImageView)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ImageView
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ImageView -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) PFN_vkVoidFunction
vkDestroyImageView)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr (ShaderModuleCreateInfo a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pShaderModule" ::: Ptr ShaderModule)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pCreateInfo" ::: Ptr (ShaderModuleCreateInfo _)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pShaderModule" ::: Ptr ShaderModule) -> IO Result) PFN_vkVoidFunction
vkCreateShaderModule)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ShaderModule
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ShaderModule -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) PFN_vkVoidFunction
vkDestroyShaderModule)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr PipelineCacheCreateInfo)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pPipelineCache" ::: Ptr PipelineCache)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pCreateInfo" ::: Ptr PipelineCacheCreateInfo) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pPipelineCache" ::: Ptr PipelineCache) -> IO Result) PFN_vkVoidFunction
vkCreatePipelineCache)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> PipelineCache
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> PipelineCache -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) PFN_vkVoidFunction
vkDestroyPipelineCache)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> PipelineCache
      -> ("pDataSize" ::: Ptr ("location" ::: CSize))
      -> Display
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> PipelineCache -> ("pDataSize" ::: Ptr CSize) -> ("pData" ::: Ptr ()) -> IO Result) PFN_vkVoidFunction
vkGetPipelineCacheData)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> PipelineCache
      -> Word32
      -> ("pPipelineCache" ::: Ptr PipelineCache)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("dstCache" ::: PipelineCache) -> ("srcCacheCount" ::: Word32) -> ("pSrcCaches" ::: Ptr PipelineCache) -> IO Result) PFN_vkVoidFunction
vkMergePipelineCaches)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> PipelineCache
      -> Word32
      -> ("pCreateInfos" ::: Ptr (GraphicsPipelineCreateInfo a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pPipelines" ::: Ptr Pipeline)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> PipelineCache -> ("createInfoCount" ::: Word32) -> ("pCreateInfos" ::: Ptr (GraphicsPipelineCreateInfo _)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pPipelines" ::: Ptr Pipeline) -> IO Result) PFN_vkVoidFunction
vkCreateGraphicsPipelines)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> PipelineCache
      -> Word32
      -> ("pCreateInfos" ::: Ptr (ComputePipelineCreateInfo a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pPipelines" ::: Ptr Pipeline)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> PipelineCache -> ("createInfoCount" ::: Word32) -> ("pCreateInfos" ::: Ptr (ComputePipelineCreateInfo _)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pPipelines" ::: Ptr Pipeline) -> IO Result) PFN_vkVoidFunction
vkCreateComputePipelines)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> Pipeline -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> Pipeline -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) PFN_vkVoidFunction
vkDestroyPipeline)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr PipelineLayoutCreateInfo)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pPipelineLayout" ::: Ptr PipelineLayout)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pCreateInfo" ::: Ptr PipelineLayoutCreateInfo) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pPipelineLayout" ::: Ptr PipelineLayout) -> IO Result) PFN_vkVoidFunction
vkCreatePipelineLayout)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> PipelineLayout
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> PipelineLayout -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) PFN_vkVoidFunction
vkDestroyPipelineLayout)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr (SamplerCreateInfo a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSampler" ::: Ptr Sampler)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pCreateInfo" ::: Ptr (SamplerCreateInfo _)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSampler" ::: Ptr Sampler) -> IO Result) PFN_vkVoidFunction
vkCreateSampler)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> Sampler -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> Sampler -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) PFN_vkVoidFunction
vkDestroySampler)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr (DescriptorSetLayoutCreateInfo a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSetLayout" ::: Ptr DescriptorSetLayout)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pCreateInfo" ::: Ptr (DescriptorSetLayoutCreateInfo _)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSetLayout" ::: Ptr DescriptorSetLayout) -> IO Result) PFN_vkVoidFunction
vkCreateDescriptorSetLayout)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> DescriptorSetLayout
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> DescriptorSetLayout -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) PFN_vkVoidFunction
vkDestroyDescriptorSetLayout)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr (DescriptorPoolCreateInfo a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pDescriptorPool" ::: Ptr DescriptorPool)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pCreateInfo" ::: Ptr (DescriptorPoolCreateInfo _)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pDescriptorPool" ::: Ptr DescriptorPool) -> IO Result) PFN_vkVoidFunction
vkCreateDescriptorPool)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> DescriptorPool
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> DescriptorPool -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) PFN_vkVoidFunction
vkDestroyDescriptorPool)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> DescriptorPool -> DescriptorPoolResetFlags -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> DescriptorPool -> DescriptorPoolResetFlags -> IO Result) PFN_vkVoidFunction
vkResetDescriptorPool)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pAllocateInfo" ::: Ptr (DescriptorSetAllocateInfo a))
      -> ("pDescriptorSets" ::: Ptr DescriptorSet)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pAllocateInfo" ::: Ptr (DescriptorSetAllocateInfo _)) -> ("pDescriptorSets" ::: Ptr DescriptorSet) -> IO Result) PFN_vkVoidFunction
vkAllocateDescriptorSets)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> DescriptorPool
      -> Word32
      -> ("pDescriptorSets" ::: Ptr DescriptorSet)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> DescriptorPool -> ("descriptorSetCount" ::: Word32) -> ("pDescriptorSets" ::: Ptr DescriptorSet) -> IO Result) PFN_vkVoidFunction
vkFreeDescriptorSets)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> Word32
      -> ("pDescriptorWrites" ::: Ptr (WriteDescriptorSet a))
      -> Word32
      -> ("pDescriptorCopies" ::: Ptr CopyDescriptorSet)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("descriptorWriteCount" ::: Word32) -> ("pDescriptorWrites" ::: Ptr (WriteDescriptorSet _)) -> ("descriptorCopyCount" ::: Word32) -> ("pDescriptorCopies" ::: Ptr CopyDescriptorSet) -> IO ()) PFN_vkVoidFunction
vkUpdateDescriptorSets)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr (FramebufferCreateInfo a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pFramebuffer" ::: Ptr Framebuffer)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pCreateInfo" ::: Ptr (FramebufferCreateInfo _)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pFramebuffer" ::: Ptr Framebuffer) -> IO Result) PFN_vkVoidFunction
vkCreateFramebuffer)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> Framebuffer
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> Framebuffer -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) PFN_vkVoidFunction
vkDestroyFramebuffer)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr (RenderPassCreateInfo a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pRenderPass" ::: Ptr RenderPass)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pCreateInfo" ::: Ptr (RenderPassCreateInfo _)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pRenderPass" ::: Ptr RenderPass) -> IO Result) PFN_vkVoidFunction
vkCreateRenderPass)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> RenderPass
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> RenderPass -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) PFN_vkVoidFunction
vkDestroyRenderPass)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> RenderPass -> ("pGranularity" ::: Ptr Extent2D) -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> RenderPass -> ("pGranularity" ::: Ptr Extent2D) -> IO ()) PFN_vkVoidFunction
vkGetRenderAreaGranularity)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr CommandPoolCreateInfo)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pCommandPool" ::: Ptr CommandPool)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pCreateInfo" ::: Ptr CommandPoolCreateInfo) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pCommandPool" ::: Ptr CommandPool) -> IO Result) PFN_vkVoidFunction
vkCreateCommandPool)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> CommandPool
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> CommandPool -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) PFN_vkVoidFunction
vkDestroyCommandPool)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T -> CommandPool -> CommandPoolResetFlags -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> CommandPool -> CommandPoolResetFlags -> IO Result) PFN_vkVoidFunction
vkResetCommandPool)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pAllocateInfo" ::: Ptr CommandBufferAllocateInfo)
      -> ("pCommandBuffers" ::: Ptr (Ptr CommandBuffer_T))
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pAllocateInfo" ::: Ptr CommandBufferAllocateInfo) -> ("pCommandBuffers" ::: Ptr (Ptr CommandBuffer_T)) -> IO Result) PFN_vkVoidFunction
vkAllocateCommandBuffers)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> CommandPool
      -> Word32
      -> ("pCommandBuffers" ::: Ptr (Ptr CommandBuffer_T))
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> CommandPool -> ("commandBufferCount" ::: Word32) -> ("pCommandBuffers" ::: Ptr (Ptr CommandBuffer_T)) -> IO ()) PFN_vkVoidFunction
vkFreeCommandBuffers)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pBeginInfo" ::: Ptr (CommandBufferBeginInfo a)) -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("pBeginInfo" ::: Ptr (CommandBufferBeginInfo _)) -> IO Result) PFN_vkVoidFunction
vkBeginCommandBuffer)
    (PFN_vkVoidFunction -> FunPtr (Ptr CommandBuffer_T -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> IO Result) PFN_vkVoidFunction
vkEndCommandBuffer)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T -> CommandBufferResetFlags -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> CommandBufferResetFlags -> IO Result) PFN_vkVoidFunction
vkResetCommandBuffer)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T -> PipelineBindPoint -> Pipeline -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> PipelineBindPoint -> Pipeline -> IO ()) PFN_vkVoidFunction
vkCmdBindPipeline)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32 -> Word32 -> ("pViewports" ::: Ptr Viewport) -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("firstViewport" ::: Word32) -> ("viewportCount" ::: Word32) -> ("pViewports" ::: Ptr Viewport) -> IO ()) PFN_vkVoidFunction
vkCmdSetViewport)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32 -> Word32 -> ("pRects" ::: Ptr Rect2D) -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("firstScissor" ::: Word32) -> ("scissorCount" ::: Word32) -> ("pScissors" ::: Ptr Rect2D) -> IO ()) PFN_vkVoidFunction
vkCmdSetScissor)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T -> ("lineWidth" ::: CFloat) -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("lineWidth" ::: CFloat) -> IO ()) PFN_vkVoidFunction
vkCmdSetLineWidth)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("lineWidth" ::: CFloat)
      -> ("lineWidth" ::: CFloat)
      -> ("lineWidth" ::: CFloat)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("depthBiasConstantFactor" ::: CFloat) -> ("depthBiasClamp" ::: CFloat) -> ("depthBiasSlopeFactor" ::: CFloat) -> IO ()) PFN_vkVoidFunction
vkCmdSetDepthBias)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("blendConstants"
          ::: Ptr (FixedArray 4 ("lineWidth" ::: CFloat)))
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("blendConstants" ::: Ptr (FixedArray 4 CFloat)) -> IO ()) PFN_vkVoidFunction
vkCmdSetBlendConstants)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("lineWidth" ::: CFloat) -> ("lineWidth" ::: CFloat) -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("minDepthBounds" ::: CFloat) -> ("maxDepthBounds" ::: CFloat) -> IO ()) PFN_vkVoidFunction
vkCmdSetDepthBounds)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("faceMask" ::: StencilFaceFlags) -> Word32 -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("faceMask" ::: StencilFaceFlags) -> ("compareMask" ::: Word32) -> IO ()) PFN_vkVoidFunction
vkCmdSetStencilCompareMask)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("faceMask" ::: StencilFaceFlags) -> Word32 -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("faceMask" ::: StencilFaceFlags) -> ("writeMask" ::: Word32) -> IO ()) PFN_vkVoidFunction
vkCmdSetStencilWriteMask)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("faceMask" ::: StencilFaceFlags) -> Word32 -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("faceMask" ::: StencilFaceFlags) -> ("reference" ::: Word32) -> IO ()) PFN_vkVoidFunction
vkCmdSetStencilReference)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> PipelineBindPoint
      -> PipelineLayout
      -> Word32
      -> Word32
      -> ("pDescriptorSets" ::: Ptr DescriptorSet)
      -> Word32
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> PipelineBindPoint -> PipelineLayout -> ("firstSet" ::: Word32) -> ("descriptorSetCount" ::: Word32) -> ("pDescriptorSets" ::: Ptr DescriptorSet) -> ("dynamicOffsetCount" ::: Word32) -> ("pDynamicOffsets" ::: Ptr Word32) -> IO ()) PFN_vkVoidFunction
vkCmdBindDescriptorSets)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T -> Buffer -> VisualID -> IndexType -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> Buffer -> ("offset" ::: DeviceSize) -> IndexType -> IO ()) PFN_vkVoidFunction
vkCmdBindIndexBuffer)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> Word32
      -> ("pBuffer" ::: Ptr Buffer)
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("firstBinding" ::: Word32) -> ("bindingCount" ::: Word32) -> ("pBuffers" ::: Ptr Buffer) -> ("pOffsets" ::: Ptr DeviceSize) -> IO ()) PFN_vkVoidFunction
vkCmdBindVertexBuffers)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32 -> Word32 -> Word32 -> Word32 -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("vertexCount" ::: Word32) -> ("instanceCount" ::: Word32) -> ("firstVertex" ::: Word32) -> ("firstInstance" ::: Word32) -> IO ()) PFN_vkVoidFunction
vkCmdDraw)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> Word32
      -> Word32
      -> ("messageCode" ::: Int32)
      -> Word32
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("indexCount" ::: Word32) -> ("instanceCount" ::: Word32) -> ("firstIndex" ::: Word32) -> ("vertexOffset" ::: Int32) -> ("firstInstance" ::: Word32) -> IO ()) PFN_vkVoidFunction
vkCmdDrawIndexed)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer -> VisualID -> Word32 -> Word32 -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> Buffer -> ("offset" ::: DeviceSize) -> ("drawCount" ::: Word32) -> ("stride" ::: Word32) -> IO ()) PFN_vkVoidFunction
vkCmdDrawIndirect)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer -> VisualID -> Word32 -> Word32 -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> Buffer -> ("offset" ::: DeviceSize) -> ("drawCount" ::: Word32) -> ("stride" ::: Word32) -> IO ()) PFN_vkVoidFunction
vkCmdDrawIndexedIndirect)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T -> Word32 -> Word32 -> Word32 -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("groupCountX" ::: Word32) -> ("groupCountY" ::: Word32) -> ("groupCountZ" ::: Word32) -> IO ()) PFN_vkVoidFunction
vkCmdDispatch)
    (PFN_vkVoidFunction
-> FunPtr (Ptr CommandBuffer_T -> Buffer -> VisualID -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> Buffer -> ("offset" ::: DeviceSize) -> IO ()) PFN_vkVoidFunction
vkCmdDispatchIndirect)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer
      -> Buffer
      -> Word32
      -> ("pRegions" ::: Ptr BufferCopy)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("srcBuffer" ::: Buffer) -> ("dstBuffer" ::: Buffer) -> ("regionCount" ::: Word32) -> ("pRegions" ::: Ptr BufferCopy) -> IO ()) PFN_vkVoidFunction
vkCmdCopyBuffer)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> Image
      -> ("srcImageLayout" ::: ImageLayout)
      -> Image
      -> ("srcImageLayout" ::: ImageLayout)
      -> Word32
      -> ("pRegions" ::: Ptr ImageCopy)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("srcImage" ::: Image) -> ("srcImageLayout" ::: ImageLayout) -> ("dstImage" ::: Image) -> ("dstImageLayout" ::: ImageLayout) -> ("regionCount" ::: Word32) -> ("pRegions" ::: Ptr ImageCopy) -> IO ()) PFN_vkVoidFunction
vkCmdCopyImage)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> Image
      -> ("srcImageLayout" ::: ImageLayout)
      -> Image
      -> ("srcImageLayout" ::: ImageLayout)
      -> Word32
      -> ("pRegions" ::: Ptr ImageBlit)
      -> Filter
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("srcImage" ::: Image) -> ("srcImageLayout" ::: ImageLayout) -> ("dstImage" ::: Image) -> ("dstImageLayout" ::: ImageLayout) -> ("regionCount" ::: Word32) -> ("pRegions" ::: Ptr ImageBlit) -> Filter -> IO ()) PFN_vkVoidFunction
vkCmdBlitImage)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer
      -> Image
      -> ("srcImageLayout" ::: ImageLayout)
      -> Word32
      -> ("pRegions" ::: Ptr BufferImageCopy)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("srcBuffer" ::: Buffer) -> ("dstImage" ::: Image) -> ("dstImageLayout" ::: ImageLayout) -> ("regionCount" ::: Word32) -> ("pRegions" ::: Ptr BufferImageCopy) -> IO ()) PFN_vkVoidFunction
vkCmdCopyBufferToImage)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> Image
      -> ("srcImageLayout" ::: ImageLayout)
      -> Buffer
      -> Word32
      -> ("pRegions" ::: Ptr BufferImageCopy)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("srcImage" ::: Image) -> ("srcImageLayout" ::: ImageLayout) -> ("dstBuffer" ::: Buffer) -> ("regionCount" ::: Word32) -> ("pRegions" ::: Ptr BufferImageCopy) -> IO ()) PFN_vkVoidFunction
vkCmdCopyImageToBuffer)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer -> VisualID -> VisualID -> Display -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("dstBuffer" ::: Buffer) -> ("dstOffset" ::: DeviceSize) -> ("dataSize" ::: DeviceSize) -> ("pData" ::: Ptr ()) -> IO ()) PFN_vkVoidFunction
vkCmdUpdateBuffer)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer -> VisualID -> VisualID -> Word32 -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("dstBuffer" ::: Buffer) -> ("dstOffset" ::: DeviceSize) -> DeviceSize -> ("data" ::: Word32) -> IO ()) PFN_vkVoidFunction
vkCmdFillBuffer)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> Image
      -> ("srcImageLayout" ::: ImageLayout)
      -> ("pColor" ::: Ptr ClearColorValue)
      -> Word32
      -> ("pRanges" ::: Ptr ImageSubresourceRange)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> Image -> ImageLayout -> ("pColor" ::: Ptr ClearColorValue) -> ("rangeCount" ::: Word32) -> ("pRanges" ::: Ptr ImageSubresourceRange) -> IO ()) PFN_vkVoidFunction
vkCmdClearColorImage)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> Image
      -> ("srcImageLayout" ::: ImageLayout)
      -> ("pDepthStencil" ::: Ptr ClearDepthStencilValue)
      -> Word32
      -> ("pRanges" ::: Ptr ImageSubresourceRange)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> Image -> ImageLayout -> ("pDepthStencil" ::: Ptr ClearDepthStencilValue) -> ("rangeCount" ::: Word32) -> ("pRanges" ::: Ptr ImageSubresourceRange) -> IO ()) PFN_vkVoidFunction
vkCmdClearDepthStencilImage)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> ("pAttachments" ::: Ptr ClearAttachment)
      -> Word32
      -> ("pRects" ::: Ptr ClearRect)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("attachmentCount" ::: Word32) -> ("pAttachments" ::: Ptr ClearAttachment) -> ("rectCount" ::: Word32) -> ("pRects" ::: Ptr ClearRect) -> IO ()) PFN_vkVoidFunction
vkCmdClearAttachments)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> Image
      -> ("srcImageLayout" ::: ImageLayout)
      -> Image
      -> ("srcImageLayout" ::: ImageLayout)
      -> Word32
      -> ("pRegions" ::: Ptr ImageResolve)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("srcImage" ::: Image) -> ("srcImageLayout" ::: ImageLayout) -> ("dstImage" ::: Image) -> ("dstImageLayout" ::: ImageLayout) -> ("regionCount" ::: Word32) -> ("pRegions" ::: Ptr ImageResolve) -> IO ()) PFN_vkVoidFunction
vkCmdResolveImage)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> Event -> ("stageMask" ::: PipelineStageFlags) -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> Event -> ("stageMask" ::: PipelineStageFlags) -> IO ()) PFN_vkVoidFunction
vkCmdSetEvent)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> Event -> ("stageMask" ::: PipelineStageFlags) -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> Event -> ("stageMask" ::: PipelineStageFlags) -> IO ()) PFN_vkVoidFunction
vkCmdResetEvent)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> ("pEvent" ::: Ptr Event)
      -> ("stageMask" ::: PipelineStageFlags)
      -> ("stageMask" ::: PipelineStageFlags)
      -> Word32
      -> ("pMemoryBarriers" ::: Ptr MemoryBarrier)
      -> Word32
      -> ("pBufferMemoryBarriers" ::: Ptr BufferMemoryBarrier)
      -> Word32
      -> ("pImageMemoryBarriers" ::: Ptr (ImageMemoryBarrier a))
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("eventCount" ::: Word32) -> ("pEvents" ::: Ptr Event) -> ("srcStageMask" ::: PipelineStageFlags) -> ("dstStageMask" ::: PipelineStageFlags) -> ("memoryBarrierCount" ::: Word32) -> ("pMemoryBarriers" ::: Ptr MemoryBarrier) -> ("bufferMemoryBarrierCount" ::: Word32) -> ("pBufferMemoryBarriers" ::: Ptr BufferMemoryBarrier) -> ("imageMemoryBarrierCount" ::: Word32) -> ("pImageMemoryBarriers" ::: Ptr (ImageMemoryBarrier _)) -> IO ()) PFN_vkVoidFunction
vkCmdWaitEvents)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("stageMask" ::: PipelineStageFlags)
      -> ("stageMask" ::: PipelineStageFlags)
      -> DependencyFlags
      -> Word32
      -> ("pMemoryBarriers" ::: Ptr MemoryBarrier)
      -> Word32
      -> ("pBufferMemoryBarriers" ::: Ptr BufferMemoryBarrier)
      -> Word32
      -> ("pImageMemoryBarriers" ::: Ptr (ImageMemoryBarrier a))
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("srcStageMask" ::: PipelineStageFlags) -> ("dstStageMask" ::: PipelineStageFlags) -> DependencyFlags -> ("memoryBarrierCount" ::: Word32) -> ("pMemoryBarriers" ::: Ptr MemoryBarrier) -> ("bufferMemoryBarrierCount" ::: Word32) -> ("pBufferMemoryBarriers" ::: Ptr BufferMemoryBarrier) -> ("imageMemoryBarrierCount" ::: Word32) -> ("pImageMemoryBarriers" ::: Ptr (ImageMemoryBarrier _)) -> IO ()) PFN_vkVoidFunction
vkCmdPipelineBarrier)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> QueryPool -> Word32 -> QueryControlFlags -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> QueryPool -> ("query" ::: Word32) -> QueryControlFlags -> IO ()) PFN_vkVoidFunction
vkCmdBeginQuery)
    (PFN_vkVoidFunction
-> FunPtr (Ptr CommandBuffer_T -> QueryPool -> Word32 -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> QueryPool -> ("query" ::: Word32) -> IO ()) PFN_vkVoidFunction
vkCmdEndQuery)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pConditionalRenderingBegin"
          ::: Ptr ConditionalRenderingBeginInfoEXT)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("pConditionalRenderingBegin" ::: Ptr ConditionalRenderingBeginInfoEXT) -> IO ()) PFN_vkVoidFunction
vkCmdBeginConditionalRenderingEXT)
    (PFN_vkVoidFunction -> FunPtr (Ptr CommandBuffer_T -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> IO ()) PFN_vkVoidFunction
vkCmdEndConditionalRenderingEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T -> QueryPool -> Word32 -> Word32 -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> QueryPool -> ("firstQuery" ::: Word32) -> ("queryCount" ::: Word32) -> IO ()) PFN_vkVoidFunction
vkCmdResetQueryPool)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("stageMask" ::: PipelineStageFlags)
      -> QueryPool
      -> Word32
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> PipelineStageFlagBits -> QueryPool -> ("query" ::: Word32) -> IO ()) PFN_vkVoidFunction
vkCmdWriteTimestamp)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> QueryPool
      -> Word32
      -> Word32
      -> Buffer
      -> VisualID
      -> VisualID
      -> QueryResultFlags
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> QueryPool -> ("firstQuery" ::: Word32) -> ("queryCount" ::: Word32) -> ("dstBuffer" ::: Buffer) -> ("dstOffset" ::: DeviceSize) -> ("stride" ::: DeviceSize) -> QueryResultFlags -> IO ()) PFN_vkVoidFunction
vkCmdCopyQueryPoolResults)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> PipelineLayout
      -> ShaderStageFlags
      -> Word32
      -> Word32
      -> Display
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> PipelineLayout -> ShaderStageFlags -> ("offset" ::: Word32) -> ("size" ::: Word32) -> ("pValues" ::: Ptr ()) -> IO ()) PFN_vkVoidFunction
vkCmdPushConstants)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pRenderPassBegin" ::: Ptr (RenderPassBeginInfo a))
      -> SubpassContents
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("pRenderPassBegin" ::: Ptr (RenderPassBeginInfo _)) -> SubpassContents -> IO ()) PFN_vkVoidFunction
vkCmdBeginRenderPass)
    (PFN_vkVoidFunction
-> FunPtr (Ptr CommandBuffer_T -> SubpassContents -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> SubpassContents -> IO ()) PFN_vkVoidFunction
vkCmdNextSubpass)
    (PFN_vkVoidFunction -> FunPtr (Ptr CommandBuffer_T -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> IO ()) PFN_vkVoidFunction
vkCmdEndRenderPass)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> ("pCommandBuffers" ::: Ptr (Ptr CommandBuffer_T))
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("commandBufferCount" ::: Word32) -> ("pCommandBuffers" ::: Ptr (Ptr CommandBuffer_T)) -> IO ()) PFN_vkVoidFunction
vkCmdExecuteCommands)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> Word32
      -> ("pCreateInfos" ::: Ptr (SwapchainCreateInfoKHR a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSwapchains" ::: Ptr SwapchainKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("swapchainCount" ::: Word32) -> ("pCreateInfos" ::: Ptr (SwapchainCreateInfoKHR _)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSwapchains" ::: Ptr SwapchainKHR) -> IO Result) PFN_vkVoidFunction
vkCreateSharedSwapchainsKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr (SwapchainCreateInfoKHR a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pSwapchains" ::: Ptr SwapchainKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pCreateInfo" ::: Ptr (SwapchainCreateInfoKHR _)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSwapchain" ::: Ptr SwapchainKHR) -> IO Result) PFN_vkVoidFunction
vkCreateSwapchainKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> SwapchainKHR
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> SwapchainKHR -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) PFN_vkVoidFunction
vkDestroySwapchainKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> SwapchainKHR
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pImage" ::: Ptr Image)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> SwapchainKHR -> ("pSwapchainImageCount" ::: Ptr Word32) -> ("pSwapchainImages" ::: Ptr Image) -> IO Result) PFN_vkVoidFunction
vkGetSwapchainImagesKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> SwapchainKHR
      -> VisualID
      -> Semaphore
      -> Fence
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> SwapchainKHR -> ("timeout" ::: Word64) -> Semaphore -> Fence -> ("pImageIndex" ::: Ptr Word32) -> IO Result) PFN_vkVoidFunction
vkAcquireNextImageKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Queue_T
      -> ("pPresentInfo" ::: Ptr (PresentInfoKHR a)) -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Queue_T -> ("pPresentInfo" ::: Ptr (PresentInfoKHR _)) -> IO Result) PFN_vkVoidFunction
vkQueuePresentKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pNameInfo" ::: Ptr DebugMarkerObjectNameInfoEXT) -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pNameInfo" ::: Ptr DebugMarkerObjectNameInfoEXT) -> IO Result) PFN_vkVoidFunction
vkDebugMarkerSetObjectNameEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pTagInfo" ::: Ptr DebugMarkerObjectTagInfoEXT) -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pTagInfo" ::: Ptr DebugMarkerObjectTagInfoEXT) -> IO Result) PFN_vkVoidFunction
vkDebugMarkerSetObjectTagEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pMarkerInfo" ::: Ptr DebugMarkerMarkerInfoEXT) -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("pMarkerInfo" ::: Ptr DebugMarkerMarkerInfoEXT) -> IO ()) PFN_vkVoidFunction
vkCmdDebugMarkerBeginEXT)
    (PFN_vkVoidFunction -> FunPtr (Ptr CommandBuffer_T -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> IO ()) PFN_vkVoidFunction
vkCmdDebugMarkerEndEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pMarkerInfo" ::: Ptr DebugMarkerMarkerInfoEXT) -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("pMarkerInfo" ::: Ptr DebugMarkerMarkerInfoEXT) -> IO ()) PFN_vkVoidFunction
vkCmdDebugMarkerInsertEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> DeviceMemory
      -> ("externalHandleType" ::: ExternalMemoryHandleTypeFlagsNV)
      -> ("dpy" ::: Ptr Display)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> DeviceMemory -> ExternalMemoryHandleTypeFlagsNV -> ("pHandle" ::: Ptr HANDLE) -> IO Result) PFN_vkVoidFunction
vkGetMemoryWin32HandleNV)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> Bool32
      -> ("pGeneratedCommandsInfo" ::: Ptr GeneratedCommandsInfoNV)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("isPreprocessed" ::: Bool32) -> ("pGeneratedCommandsInfo" ::: Ptr GeneratedCommandsInfoNV) -> IO ()) PFN_vkVoidFunction
vkCmdExecuteGeneratedCommandsNV)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pGeneratedCommandsInfo" ::: Ptr GeneratedCommandsInfoNV)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("pGeneratedCommandsInfo" ::: Ptr GeneratedCommandsInfoNV) -> IO ()) PFN_vkVoidFunction
vkCmdPreprocessGeneratedCommandsNV)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> PipelineBindPoint -> Pipeline -> Word32 -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> PipelineBindPoint -> Pipeline -> ("groupIndex" ::: Word32) -> IO ()) PFN_vkVoidFunction
vkCmdBindPipelineShaderGroupNV)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr GeneratedCommandsMemoryRequirementsInfoNV)
      -> ("pMemoryRequirements" ::: Ptr (MemoryRequirements2 a))
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pInfo" ::: Ptr GeneratedCommandsMemoryRequirementsInfoNV) -> ("pMemoryRequirements" ::: Ptr (MemoryRequirements2 _)) -> IO ()) PFN_vkVoidFunction
vkGetGeneratedCommandsMemoryRequirementsNV)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr IndirectCommandsLayoutCreateInfoNV)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pIndirectCommandsLayout" ::: Ptr IndirectCommandsLayoutNV)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pCreateInfo" ::: Ptr IndirectCommandsLayoutCreateInfoNV) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pIndirectCommandsLayout" ::: Ptr IndirectCommandsLayoutNV) -> IO Result) PFN_vkVoidFunction
vkCreateIndirectCommandsLayoutNV)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> IndirectCommandsLayoutNV
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> IndirectCommandsLayoutNV -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) PFN_vkVoidFunction
vkDestroyIndirectCommandsLayoutNV)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> PipelineBindPoint
      -> PipelineLayout
      -> Word32
      -> Word32
      -> ("pDescriptorWrites" ::: Ptr (WriteDescriptorSet a))
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> PipelineBindPoint -> PipelineLayout -> ("set" ::: Word32) -> ("descriptorWriteCount" ::: Word32) -> ("pDescriptorWrites" ::: Ptr (WriteDescriptorSet _)) -> IO ()) PFN_vkVoidFunction
vkCmdPushDescriptorSetKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T -> CommandPool -> CommandPoolTrimFlags -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> CommandPool -> CommandPoolTrimFlags -> IO ()) PFN_vkVoidFunction
vkTrimCommandPool)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pGetWin32HandleInfo" ::: Ptr MemoryGetWin32HandleInfoKHR)
      -> ("dpy" ::: Ptr Display)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pGetWin32HandleInfo" ::: Ptr MemoryGetWin32HandleInfoKHR) -> ("pHandle" ::: Ptr HANDLE) -> IO Result) PFN_vkVoidFunction
vkGetMemoryWin32HandleKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ExternalMemoryHandleTypeFlagBits
      -> Display
      -> ("pMemoryWin32HandleProperties"
          ::: Ptr MemoryWin32HandlePropertiesKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ExternalMemoryHandleTypeFlagBits -> HANDLE -> ("pMemoryWin32HandleProperties" ::: Ptr MemoryWin32HandlePropertiesKHR) -> IO Result) PFN_vkVoidFunction
vkGetMemoryWin32HandlePropertiesKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pGetFdInfo" ::: Ptr MemoryGetFdInfoKHR)
      -> ("pFd" ::: Ptr CInt)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pGetFdInfo" ::: Ptr MemoryGetFdInfoKHR) -> ("pFd" ::: Ptr CInt) -> IO Result) PFN_vkVoidFunction
vkGetMemoryFdKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ExternalMemoryHandleTypeFlagBits
      -> CInt
      -> ("pMemoryFdProperties" ::: Ptr MemoryFdPropertiesKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ExternalMemoryHandleTypeFlagBits -> ("fd" ::: CInt) -> ("pMemoryFdProperties" ::: Ptr MemoryFdPropertiesKHR) -> IO Result) PFN_vkVoidFunction
vkGetMemoryFdPropertiesKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pGetWin32HandleInfo" ::: Ptr SemaphoreGetWin32HandleInfoKHR)
      -> ("dpy" ::: Ptr Display)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pGetWin32HandleInfo" ::: Ptr SemaphoreGetWin32HandleInfoKHR) -> ("pHandle" ::: Ptr HANDLE) -> IO Result) PFN_vkVoidFunction
vkGetSemaphoreWin32HandleKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pImportSemaphoreWin32HandleInfo"
          ::: Ptr ImportSemaphoreWin32HandleInfoKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pImportSemaphoreWin32HandleInfo" ::: Ptr ImportSemaphoreWin32HandleInfoKHR) -> IO Result) PFN_vkVoidFunction
vkImportSemaphoreWin32HandleKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pGetFdInfo" ::: Ptr SemaphoreGetFdInfoKHR)
      -> ("pFd" ::: Ptr CInt)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pGetFdInfo" ::: Ptr SemaphoreGetFdInfoKHR) -> ("pFd" ::: Ptr CInt) -> IO Result) PFN_vkVoidFunction
vkGetSemaphoreFdKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pImportSemaphoreFdInfo" ::: Ptr ImportSemaphoreFdInfoKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pImportSemaphoreFdInfo" ::: Ptr ImportSemaphoreFdInfoKHR) -> IO Result) PFN_vkVoidFunction
vkImportSemaphoreFdKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pGetWin32HandleInfo" ::: Ptr FenceGetWin32HandleInfoKHR)
      -> ("dpy" ::: Ptr Display)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pGetWin32HandleInfo" ::: Ptr FenceGetWin32HandleInfoKHR) -> ("pHandle" ::: Ptr HANDLE) -> IO Result) PFN_vkVoidFunction
vkGetFenceWin32HandleKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pImportFenceWin32HandleInfo"
          ::: Ptr ImportFenceWin32HandleInfoKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pImportFenceWin32HandleInfo" ::: Ptr ImportFenceWin32HandleInfoKHR) -> IO Result) PFN_vkVoidFunction
vkImportFenceWin32HandleKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pGetFdInfo" ::: Ptr FenceGetFdInfoKHR)
      -> ("pFd" ::: Ptr CInt)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pGetFdInfo" ::: Ptr FenceGetFdInfoKHR) -> ("pFd" ::: Ptr CInt) -> IO Result) PFN_vkVoidFunction
vkGetFenceFdKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pImportFenceFdInfo" ::: Ptr ImportFenceFdInfoKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pImportFenceFdInfo" ::: Ptr ImportFenceFdInfoKHR) -> IO Result) PFN_vkVoidFunction
vkImportFenceFdKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> DisplayKHR
      -> ("pDisplayPowerInfo" ::: Ptr DisplayPowerInfoEXT)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> DisplayKHR -> ("pDisplayPowerInfo" ::: Ptr DisplayPowerInfoEXT) -> IO Result) PFN_vkVoidFunction
vkDisplayPowerControlEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pDeviceEventInfo" ::: Ptr DeviceEventInfoEXT)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pFence" ::: Ptr Fence)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pDeviceEventInfo" ::: Ptr DeviceEventInfoEXT) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pFence" ::: Ptr Fence) -> IO Result) PFN_vkVoidFunction
vkRegisterDeviceEventEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> DisplayKHR
      -> ("pDisplayEventInfo" ::: Ptr DisplayEventInfoEXT)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pFence" ::: Ptr Fence)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> DisplayKHR -> ("pDisplayEventInfo" ::: Ptr DisplayEventInfoEXT) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pFence" ::: Ptr Fence) -> IO Result) PFN_vkVoidFunction
vkRegisterDisplayEventEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> SwapchainKHR
      -> SurfaceCounterFlagBitsEXT
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> SwapchainKHR -> SurfaceCounterFlagBitsEXT -> ("pCounterValue" ::: Ptr Word64) -> IO Result) PFN_vkVoidFunction
vkGetSwapchainCounterEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> Word32
      -> Word32
      -> Word32
      -> ("pPeerMemoryFeatures" ::: Ptr PeerMemoryFeatureFlags)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("heapIndex" ::: Word32) -> ("localDeviceIndex" ::: Word32) -> ("remoteDeviceIndex" ::: Word32) -> ("pPeerMemoryFeatures" ::: Ptr PeerMemoryFeatureFlags) -> IO ()) PFN_vkVoidFunction
vkGetDeviceGroupPeerMemoryFeatures)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> Word32
      -> ("pBindInfos" ::: Ptr (BindBufferMemoryInfo a))
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("bindInfoCount" ::: Word32) -> ("pBindInfos" ::: Ptr (BindBufferMemoryInfo _)) -> IO Result) PFN_vkVoidFunction
vkBindBufferMemory2)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> Word32
      -> ("pBindInfos" ::: Ptr (BindImageMemoryInfo a))
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("bindInfoCount" ::: Word32) -> ("pBindInfos" ::: Ptr (BindImageMemoryInfo _)) -> IO Result) PFN_vkVoidFunction
vkBindImageMemory2)
    (PFN_vkVoidFunction
-> FunPtr (Ptr CommandBuffer_T -> Word32 -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("deviceMask" ::: Word32) -> IO ()) PFN_vkVoidFunction
vkCmdSetDeviceMask)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pDeviceGroupPresentCapabilities"
          ::: Ptr DeviceGroupPresentCapabilitiesKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pDeviceGroupPresentCapabilities" ::: Ptr DeviceGroupPresentCapabilitiesKHR) -> IO Result) PFN_vkVoidFunction
vkGetDeviceGroupPresentCapabilitiesKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> SurfaceKHR
      -> ("pModes" ::: Ptr DeviceGroupPresentModeFlagsKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> SurfaceKHR -> ("pModes" ::: Ptr DeviceGroupPresentModeFlagsKHR) -> IO Result) PFN_vkVoidFunction
vkGetDeviceGroupSurfacePresentModesKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pAcquireInfo" ::: Ptr AcquireNextImageInfoKHR)
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pAcquireInfo" ::: Ptr AcquireNextImageInfoKHR) -> ("pImageIndex" ::: Ptr Word32) -> IO Result) PFN_vkVoidFunction
vkAcquireNextImage2KHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> Word32
      -> Word32
      -> Word32
      -> Word32
      -> Word32
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("baseGroupX" ::: Word32) -> ("baseGroupY" ::: Word32) -> ("baseGroupZ" ::: Word32) -> ("groupCountX" ::: Word32) -> ("groupCountY" ::: Word32) -> ("groupCountZ" ::: Word32) -> IO ()) PFN_vkVoidFunction
vkCmdDispatchBase)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr DescriptorUpdateTemplateCreateInfo)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pDescriptorUpdateTemplate" ::: Ptr DescriptorUpdateTemplate)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pCreateInfo" ::: Ptr DescriptorUpdateTemplateCreateInfo) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pDescriptorUpdateTemplate" ::: Ptr DescriptorUpdateTemplate) -> IO Result) PFN_vkVoidFunction
vkCreateDescriptorUpdateTemplate)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> DescriptorUpdateTemplate
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> DescriptorUpdateTemplate -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) PFN_vkVoidFunction
vkDestroyDescriptorUpdateTemplate)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> DescriptorSet -> DescriptorUpdateTemplate -> Display -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> DescriptorSet -> DescriptorUpdateTemplate -> ("pData" ::: Ptr ()) -> IO ()) PFN_vkVoidFunction
vkUpdateDescriptorSetWithTemplate)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> DescriptorUpdateTemplate
      -> PipelineLayout
      -> Word32
      -> Display
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> DescriptorUpdateTemplate -> PipelineLayout -> ("set" ::: Word32) -> ("pData" ::: Ptr ()) -> IO ()) PFN_vkVoidFunction
vkCmdPushDescriptorSetWithTemplateKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> Word32
      -> ("pSwapchains" ::: Ptr SwapchainKHR)
      -> ("pMetadata" ::: Ptr HdrMetadataEXT)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("swapchainCount" ::: Word32) -> ("pSwapchains" ::: Ptr SwapchainKHR) -> ("pMetadata" ::: Ptr HdrMetadataEXT) -> IO ()) PFN_vkVoidFunction
vkSetHdrMetadataEXT)
    (PFN_vkVoidFunction
-> FunPtr (Ptr Device_T -> SwapchainKHR -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> SwapchainKHR -> IO Result) PFN_vkVoidFunction
vkGetSwapchainStatusKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> SwapchainKHR
      -> ("pDisplayTimingProperties" ::: Ptr RefreshCycleDurationGOOGLE)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> SwapchainKHR -> ("pDisplayTimingProperties" ::: Ptr RefreshCycleDurationGOOGLE) -> IO Result) PFN_vkVoidFunction
vkGetRefreshCycleDurationGOOGLE)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> SwapchainKHR
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pPresentationTimings" ::: Ptr PastPresentationTimingGOOGLE)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> SwapchainKHR -> ("pPresentationTimingCount" ::: Ptr Word32) -> ("pPresentationTimings" ::: Ptr PastPresentationTimingGOOGLE) -> IO Result) PFN_vkVoidFunction
vkGetPastPresentationTimingGOOGLE)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> Word32
      -> ("pViewportWScalings" ::: Ptr ViewportWScalingNV)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("firstViewport" ::: Word32) -> ("viewportCount" ::: Word32) -> ("pViewportWScalings" ::: Ptr ViewportWScalingNV) -> IO ()) PFN_vkVoidFunction
vkCmdSetViewportWScalingNV)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32 -> Word32 -> ("pRects" ::: Ptr Rect2D) -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("firstDiscardRectangle" ::: Word32) -> ("discardRectangleCount" ::: Word32) -> ("pDiscardRectangles" ::: Ptr Rect2D) -> IO ()) PFN_vkVoidFunction
vkCmdSetDiscardRectangleEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pSampleLocationsInfo" ::: Ptr SampleLocationsInfoEXT)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("pSampleLocationsInfo" ::: Ptr SampleLocationsInfoEXT) -> IO ()) PFN_vkVoidFunction
vkCmdSetSampleLocationsEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr BufferMemoryRequirementsInfo2)
      -> ("pMemoryRequirements" ::: Ptr (MemoryRequirements2 a))
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pInfo" ::: Ptr BufferMemoryRequirementsInfo2) -> ("pMemoryRequirements" ::: Ptr (MemoryRequirements2 _)) -> IO ()) PFN_vkVoidFunction
vkGetBufferMemoryRequirements2)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr (ImageMemoryRequirementsInfo2 a))
      -> ("pMemoryRequirements" ::: Ptr (MemoryRequirements2 b))
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pInfo" ::: Ptr (ImageMemoryRequirementsInfo2 _)) -> ("pMemoryRequirements" ::: Ptr (MemoryRequirements2 _)) -> IO ()) PFN_vkVoidFunction
vkGetImageMemoryRequirements2)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr ImageSparseMemoryRequirementsInfo2)
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pSparseMemoryRequirements"
          ::: Ptr SparseImageMemoryRequirements2)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pInfo" ::: Ptr ImageSparseMemoryRequirementsInfo2) -> ("pSparseMemoryRequirementCount" ::: Ptr Word32) -> ("pSparseMemoryRequirements" ::: Ptr SparseImageMemoryRequirements2) -> IO ()) PFN_vkVoidFunction
vkGetImageSparseMemoryRequirements2)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr (SamplerYcbcrConversionCreateInfo a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pYcbcrConversion" ::: Ptr SamplerYcbcrConversion)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pCreateInfo" ::: Ptr (SamplerYcbcrConversionCreateInfo _)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pYcbcrConversion" ::: Ptr SamplerYcbcrConversion) -> IO Result) PFN_vkVoidFunction
vkCreateSamplerYcbcrConversion)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> SamplerYcbcrConversion
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> SamplerYcbcrConversion -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) PFN_vkVoidFunction
vkDestroySamplerYcbcrConversion)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pQueueInfo" ::: Ptr DeviceQueueInfo2)
      -> ("pQueue" ::: Ptr (Ptr Queue_T))
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pQueueInfo" ::: Ptr DeviceQueueInfo2) -> ("pQueue" ::: Ptr (Ptr Queue_T)) -> IO ()) PFN_vkVoidFunction
vkGetDeviceQueue2)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr ValidationCacheCreateInfoEXT)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pValidationCache" ::: Ptr ValidationCacheEXT)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pCreateInfo" ::: Ptr ValidationCacheCreateInfoEXT) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pValidationCache" ::: Ptr ValidationCacheEXT) -> IO Result) PFN_vkVoidFunction
vkCreateValidationCacheEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ValidationCacheEXT
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ValidationCacheEXT -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) PFN_vkVoidFunction
vkDestroyValidationCacheEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ValidationCacheEXT
      -> ("pDataSize" ::: Ptr ("location" ::: CSize))
      -> Display
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ValidationCacheEXT -> ("pDataSize" ::: Ptr CSize) -> ("pData" ::: Ptr ()) -> IO Result) PFN_vkVoidFunction
vkGetValidationCacheDataEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ValidationCacheEXT
      -> Word32
      -> ("pValidationCache" ::: Ptr ValidationCacheEXT)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("dstCache" ::: ValidationCacheEXT) -> ("srcCacheCount" ::: Word32) -> ("pSrcCaches" ::: Ptr ValidationCacheEXT) -> IO Result) PFN_vkVoidFunction
vkMergeValidationCachesEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr (DescriptorSetLayoutCreateInfo a))
      -> ("pSupport" ::: Ptr (DescriptorSetLayoutSupport b))
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pCreateInfo" ::: Ptr (DescriptorSetLayoutCreateInfo _)) -> ("pSupport" ::: Ptr (DescriptorSetLayoutSupport _)) -> IO ()) PFN_vkVoidFunction
vkGetDescriptorSetLayoutSupport)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> Pipeline
      -> ShaderStageFlags
      -> ShaderInfoTypeAMD
      -> ("pDataSize" ::: Ptr ("location" ::: CSize))
      -> Display
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> Pipeline -> ShaderStageFlagBits -> ShaderInfoTypeAMD -> ("pInfoSize" ::: Ptr CSize) -> ("pInfo" ::: Ptr ()) -> IO Result) PFN_vkVoidFunction
vkGetShaderInfoAMD)
    (PFN_vkVoidFunction
-> FunPtr (Ptr Device_T -> SwapchainKHR -> Bool32 -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> SwapchainKHR -> ("localDimmingEnable" ::: Bool32) -> IO ()) PFN_vkVoidFunction
vkSetLocalDimmingAMD)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> Word32
      -> ("pTimestampInfos" ::: Ptr CalibratedTimestampInfoEXT)
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("timestampCount" ::: Word32) -> ("pTimestampInfos" ::: Ptr CalibratedTimestampInfoEXT) -> ("pTimestamps" ::: Ptr Word64) -> ("pMaxDeviation" ::: Ptr Word64) -> IO Result) PFN_vkVoidFunction
vkGetCalibratedTimestampsEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pNameInfo" ::: Ptr DebugUtilsObjectNameInfoEXT) -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pNameInfo" ::: Ptr DebugUtilsObjectNameInfoEXT) -> IO Result) PFN_vkVoidFunction
vkSetDebugUtilsObjectNameEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pTagInfo" ::: Ptr DebugUtilsObjectTagInfoEXT) -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pTagInfo" ::: Ptr DebugUtilsObjectTagInfoEXT) -> IO Result) PFN_vkVoidFunction
vkSetDebugUtilsObjectTagEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Queue_T -> ("pLabelInfo" ::: Ptr DebugUtilsLabelEXT) -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Queue_T -> ("pLabelInfo" ::: Ptr DebugUtilsLabelEXT) -> IO ()) PFN_vkVoidFunction
vkQueueBeginDebugUtilsLabelEXT)
    (PFN_vkVoidFunction -> FunPtr (Ptr Queue_T -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Queue_T -> IO ()) PFN_vkVoidFunction
vkQueueEndDebugUtilsLabelEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Queue_T -> ("pLabelInfo" ::: Ptr DebugUtilsLabelEXT) -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Queue_T -> ("pLabelInfo" ::: Ptr DebugUtilsLabelEXT) -> IO ()) PFN_vkVoidFunction
vkQueueInsertDebugUtilsLabelEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pLabelInfo" ::: Ptr DebugUtilsLabelEXT) -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("pLabelInfo" ::: Ptr DebugUtilsLabelEXT) -> IO ()) PFN_vkVoidFunction
vkCmdBeginDebugUtilsLabelEXT)
    (PFN_vkVoidFunction -> FunPtr (Ptr CommandBuffer_T -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> IO ()) PFN_vkVoidFunction
vkCmdEndDebugUtilsLabelEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pLabelInfo" ::: Ptr DebugUtilsLabelEXT) -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("pLabelInfo" ::: Ptr DebugUtilsLabelEXT) -> IO ()) PFN_vkVoidFunction
vkCmdInsertDebugUtilsLabelEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ExternalMemoryHandleTypeFlagBits
      -> Display
      -> ("pMemoryHostPointerProperties"
          ::: Ptr MemoryHostPointerPropertiesEXT)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ExternalMemoryHandleTypeFlagBits -> ("pHostPointer" ::: Ptr ()) -> ("pMemoryHostPointerProperties" ::: Ptr MemoryHostPointerPropertiesEXT) -> IO Result) PFN_vkVoidFunction
vkGetMemoryHostPointerPropertiesEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("stageMask" ::: PipelineStageFlags)
      -> Buffer
      -> VisualID
      -> Word32
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> PipelineStageFlagBits -> ("dstBuffer" ::: Buffer) -> ("dstOffset" ::: DeviceSize) -> ("marker" ::: Word32) -> IO ()) PFN_vkVoidFunction
vkCmdWriteBufferMarkerAMD)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr (RenderPassCreateInfo2 a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pRenderPass" ::: Ptr RenderPass)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pCreateInfo" ::: Ptr (RenderPassCreateInfo2 _)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pRenderPass" ::: Ptr RenderPass) -> IO Result) PFN_vkVoidFunction
vkCreateRenderPass2)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pRenderPassBegin" ::: Ptr (RenderPassBeginInfo a))
      -> ("pSubpassBeginInfo" ::: Ptr SubpassBeginInfo)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("pRenderPassBegin" ::: Ptr (RenderPassBeginInfo _)) -> ("pSubpassBeginInfo" ::: Ptr SubpassBeginInfo) -> IO ()) PFN_vkVoidFunction
vkCmdBeginRenderPass2)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pSubpassBeginInfo" ::: Ptr SubpassBeginInfo)
      -> ("pSubpassEndInfo" ::: Ptr SubpassEndInfo)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("pSubpassBeginInfo" ::: Ptr SubpassBeginInfo) -> ("pSubpassEndInfo" ::: Ptr SubpassEndInfo) -> IO ()) PFN_vkVoidFunction
vkCmdNextSubpass2)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pSubpassEndInfo" ::: Ptr SubpassEndInfo) -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("pSubpassEndInfo" ::: Ptr SubpassEndInfo) -> IO ()) PFN_vkVoidFunction
vkCmdEndRenderPass2)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> Semaphore
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> Semaphore -> ("pValue" ::: Ptr Word64) -> IO Result) PFN_vkVoidFunction
vkGetSemaphoreCounterValue)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pWaitInfo" ::: Ptr SemaphoreWaitInfo)
      -> VisualID
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pWaitInfo" ::: Ptr SemaphoreWaitInfo) -> ("timeout" ::: Word64) -> IO Result) PFN_vkVoidFunction
vkWaitSemaphores)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pSignalInfo" ::: Ptr SemaphoreSignalInfo) -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pSignalInfo" ::: Ptr SemaphoreSignalInfo) -> IO Result) PFN_vkVoidFunction
vkSignalSemaphore)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> Ptr AHardwareBuffer
      -> ("pProperties"
          ::: Ptr (AndroidHardwareBufferPropertiesANDROID a))
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> Ptr AHardwareBuffer -> ("pProperties" ::: Ptr (AndroidHardwareBufferPropertiesANDROID _)) -> IO Result) PFN_vkVoidFunction
vkGetAndroidHardwareBufferPropertiesANDROID)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr MemoryGetAndroidHardwareBufferInfoANDROID)
      -> ("pBuffer" ::: Ptr (Ptr AHardwareBuffer))
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pInfo" ::: Ptr MemoryGetAndroidHardwareBufferInfoANDROID) -> ("pBuffer" ::: Ptr (Ptr AHardwareBuffer)) -> IO Result) PFN_vkVoidFunction
vkGetMemoryAndroidHardwareBufferANDROID)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer
      -> VisualID
      -> Buffer
      -> VisualID
      -> Word32
      -> Word32
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> Buffer -> ("offset" ::: DeviceSize) -> ("countBuffer" ::: Buffer) -> ("countBufferOffset" ::: DeviceSize) -> ("maxDrawCount" ::: Word32) -> ("stride" ::: Word32) -> IO ()) PFN_vkVoidFunction
vkCmdDrawIndirectCount)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer
      -> VisualID
      -> Buffer
      -> VisualID
      -> Word32
      -> Word32
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> Buffer -> ("offset" ::: DeviceSize) -> ("countBuffer" ::: Buffer) -> ("countBufferOffset" ::: DeviceSize) -> ("maxDrawCount" ::: Word32) -> ("stride" ::: Word32) -> IO ()) PFN_vkVoidFunction
vkCmdDrawIndexedIndirectCount)
    (PFN_vkVoidFunction
-> FunPtr (Ptr CommandBuffer_T -> Display -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("pCheckpointMarker" ::: Ptr ()) -> IO ()) PFN_vkVoidFunction
vkCmdSetCheckpointNV)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Queue_T
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pCheckpointData" ::: Ptr CheckpointDataNV)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Queue_T -> ("pCheckpointDataCount" ::: Ptr Word32) -> ("pCheckpointData" ::: Ptr CheckpointDataNV) -> IO ()) PFN_vkVoidFunction
vkGetQueueCheckpointDataNV)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> Word32
      -> ("pBuffer" ::: Ptr Buffer)
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("firstBinding" ::: Word32) -> ("bindingCount" ::: Word32) -> ("pBuffers" ::: Ptr Buffer) -> ("pOffsets" ::: Ptr DeviceSize) -> ("pSizes" ::: Ptr DeviceSize) -> IO ()) PFN_vkVoidFunction
vkCmdBindTransformFeedbackBuffersEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> Word32
      -> ("pBuffer" ::: Ptr Buffer)
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("firstCounterBuffer" ::: Word32) -> ("counterBufferCount" ::: Word32) -> ("pCounterBuffers" ::: Ptr Buffer) -> ("pCounterBufferOffsets" ::: Ptr DeviceSize) -> IO ()) PFN_vkVoidFunction
vkCmdBeginTransformFeedbackEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> Word32
      -> ("pBuffer" ::: Ptr Buffer)
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("firstCounterBuffer" ::: Word32) -> ("counterBufferCount" ::: Word32) -> ("pCounterBuffers" ::: Ptr Buffer) -> ("pCounterBufferOffsets" ::: Ptr DeviceSize) -> IO ()) PFN_vkVoidFunction
vkCmdEndTransformFeedbackEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> QueryPool -> Word32 -> QueryControlFlags -> Word32 -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> QueryPool -> ("query" ::: Word32) -> QueryControlFlags -> ("index" ::: Word32) -> IO ()) PFN_vkVoidFunction
vkCmdBeginQueryIndexedEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T -> QueryPool -> Word32 -> Word32 -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> QueryPool -> ("query" ::: Word32) -> ("index" ::: Word32) -> IO ()) PFN_vkVoidFunction
vkCmdEndQueryIndexedEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> Word32
      -> Buffer
      -> VisualID
      -> Word32
      -> Word32
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("instanceCount" ::: Word32) -> ("firstInstance" ::: Word32) -> ("counterBuffer" ::: Buffer) -> ("counterBufferOffset" ::: DeviceSize) -> ("counterOffset" ::: Word32) -> ("vertexStride" ::: Word32) -> IO ()) PFN_vkVoidFunction
vkCmdDrawIndirectByteCountEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32 -> Word32 -> ("pRects" ::: Ptr Rect2D) -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("firstExclusiveScissor" ::: Word32) -> ("exclusiveScissorCount" ::: Word32) -> ("pExclusiveScissors" ::: Ptr Rect2D) -> IO ()) PFN_vkVoidFunction
vkCmdSetExclusiveScissorNV)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> ImageView -> ("srcImageLayout" ::: ImageLayout) -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ImageView -> ImageLayout -> IO ()) PFN_vkVoidFunction
vkCmdBindShadingRateImageNV)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> Word32
      -> ("pShadingRatePalettes" ::: Ptr ShadingRatePaletteNV)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("firstViewport" ::: Word32) -> ("viewportCount" ::: Word32) -> ("pShadingRatePalettes" ::: Ptr ShadingRatePaletteNV) -> IO ()) PFN_vkVoidFunction
vkCmdSetViewportShadingRatePaletteNV)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> CoarseSampleOrderTypeNV
      -> Word32
      -> ("pCustomSampleOrders" ::: Ptr CoarseSampleOrderCustomNV)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> CoarseSampleOrderTypeNV -> ("customSampleOrderCount" ::: Word32) -> ("pCustomSampleOrders" ::: Ptr CoarseSampleOrderCustomNV) -> IO ()) PFN_vkVoidFunction
vkCmdSetCoarseSampleOrderNV)
    (PFN_vkVoidFunction
-> FunPtr (Ptr CommandBuffer_T -> Word32 -> Word32 -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("taskCount" ::: Word32) -> ("firstTask" ::: Word32) -> IO ()) PFN_vkVoidFunction
vkCmdDrawMeshTasksNV)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer -> VisualID -> Word32 -> Word32 -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> Buffer -> ("offset" ::: DeviceSize) -> ("drawCount" ::: Word32) -> ("stride" ::: Word32) -> IO ()) PFN_vkVoidFunction
vkCmdDrawMeshTasksIndirectNV)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer
      -> VisualID
      -> Buffer
      -> VisualID
      -> Word32
      -> Word32
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> Buffer -> ("offset" ::: DeviceSize) -> ("countBuffer" ::: Buffer) -> ("countBufferOffset" ::: DeviceSize) -> ("maxDrawCount" ::: Word32) -> ("stride" ::: Word32) -> IO ()) PFN_vkVoidFunction
vkCmdDrawMeshTasksIndirectCountNV)
    (PFN_vkVoidFunction
-> FunPtr (Ptr Device_T -> Pipeline -> Word32 -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> Pipeline -> ("shader" ::: Word32) -> IO Result) PFN_vkVoidFunction
vkCompileDeferredNV)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr AccelerationStructureCreateInfoNV)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pAccelerationStructure" ::: Ptr AccelerationStructureNV)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pCreateInfo" ::: Ptr AccelerationStructureCreateInfoNV) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pAccelerationStructure" ::: Ptr AccelerationStructureNV) -> IO Result) PFN_vkVoidFunction
vkCreateAccelerationStructureNV)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> AccelerationStructureNV
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> AccelerationStructureKHR -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) PFN_vkVoidFunction
vkDestroyAccelerationStructureKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr AccelerationStructureMemoryRequirementsInfoKHR)
      -> ("pMemoryRequirements" ::: Ptr (MemoryRequirements2 a))
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pInfo" ::: Ptr AccelerationStructureMemoryRequirementsInfoKHR) -> ("pMemoryRequirements" ::: Ptr (MemoryRequirements2 _)) -> IO ()) PFN_vkVoidFunction
vkGetAccelerationStructureMemoryRequirementsKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr AccelerationStructureMemoryRequirementsInfoNV)
      -> ("pMemoryRequirements" ::: Ptr (MemoryRequirements2KHR a))
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pInfo" ::: Ptr AccelerationStructureMemoryRequirementsInfoNV) -> ("pMemoryRequirements" ::: Ptr (MemoryRequirements2KHR _)) -> IO ()) PFN_vkVoidFunction
vkGetAccelerationStructureMemoryRequirementsNV)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> Word32
      -> ("pBindInfos" ::: Ptr BindAccelerationStructureMemoryInfoKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("bindInfoCount" ::: Word32) -> ("pBindInfos" ::: Ptr BindAccelerationStructureMemoryInfoKHR) -> IO Result) PFN_vkVoidFunction
vkBindAccelerationStructureMemoryKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> AccelerationStructureNV
      -> AccelerationStructureNV
      -> CopyAccelerationStructureModeKHR
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("dst" ::: AccelerationStructureKHR) -> ("src" ::: AccelerationStructureKHR) -> CopyAccelerationStructureModeKHR -> IO ()) PFN_vkVoidFunction
vkCmdCopyAccelerationStructureNV)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pInfo" ::: Ptr (CopyAccelerationStructureInfoKHR a)) -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("pInfo" ::: Ptr (CopyAccelerationStructureInfoKHR _)) -> IO ()) PFN_vkVoidFunction
vkCmdCopyAccelerationStructureKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr (CopyAccelerationStructureInfoKHR a))
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pInfo" ::: Ptr (CopyAccelerationStructureInfoKHR _)) -> IO Result) PFN_vkVoidFunction
vkCopyAccelerationStructureKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pInfo" ::: Ptr (CopyAccelerationStructureToMemoryInfoKHR a))
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("pInfo" ::: Ptr (CopyAccelerationStructureToMemoryInfoKHR _)) -> IO ()) PFN_vkVoidFunction
vkCmdCopyAccelerationStructureToMemoryKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr (CopyAccelerationStructureToMemoryInfoKHR a))
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pInfo" ::: Ptr (CopyAccelerationStructureToMemoryInfoKHR _)) -> IO Result) PFN_vkVoidFunction
vkCopyAccelerationStructureToMemoryKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pInfo" ::: Ptr (CopyMemoryToAccelerationStructureInfoKHR a))
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("pInfo" ::: Ptr (CopyMemoryToAccelerationStructureInfoKHR _)) -> IO ()) PFN_vkVoidFunction
vkCmdCopyMemoryToAccelerationStructureKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr (CopyMemoryToAccelerationStructureInfoKHR a))
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pInfo" ::: Ptr (CopyMemoryToAccelerationStructureInfoKHR _)) -> IO Result) PFN_vkVoidFunction
vkCopyMemoryToAccelerationStructureKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> ("pAccelerationStructure" ::: Ptr AccelerationStructureNV)
      -> QueryType
      -> QueryPool
      -> Word32
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("accelerationStructureCount" ::: Word32) -> ("pAccelerationStructures" ::: Ptr AccelerationStructureKHR) -> QueryType -> QueryPool -> ("firstQuery" ::: Word32) -> IO ()) PFN_vkVoidFunction
vkCmdWriteAccelerationStructuresPropertiesKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pInfo" ::: Ptr AccelerationStructureInfoNV)
      -> Buffer
      -> VisualID
      -> Bool32
      -> AccelerationStructureNV
      -> AccelerationStructureNV
      -> Buffer
      -> VisualID
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("pInfo" ::: Ptr AccelerationStructureInfoNV) -> ("instanceData" ::: Buffer) -> ("instanceOffset" ::: DeviceSize) -> ("update" ::: Bool32) -> ("dst" ::: AccelerationStructureKHR) -> ("src" ::: AccelerationStructureKHR) -> ("scratch" ::: Buffer) -> ("scratchOffset" ::: DeviceSize) -> IO ()) PFN_vkVoidFunction
vkCmdBuildAccelerationStructureNV)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> Word32
      -> ("pAccelerationStructure" ::: Ptr AccelerationStructureNV)
      -> QueryType
      -> ("location" ::: CSize)
      -> Display
      -> ("location" ::: CSize)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("accelerationStructureCount" ::: Word32) -> ("pAccelerationStructures" ::: Ptr AccelerationStructureKHR) -> QueryType -> ("dataSize" ::: CSize) -> ("pData" ::: Ptr ()) -> ("stride" ::: CSize) -> IO Result) PFN_vkVoidFunction
vkWriteAccelerationStructuresPropertiesKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR)
      -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR)
      -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR)
      -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR)
      -> Word32
      -> Word32
      -> Word32
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR) -> ("pMissShaderBindingTable" ::: Ptr StridedBufferRegionKHR) -> ("pHitShaderBindingTable" ::: Ptr StridedBufferRegionKHR) -> ("pCallableShaderBindingTable" ::: Ptr StridedBufferRegionKHR) -> ("width" ::: Word32) -> ("height" ::: Word32) -> ("depth" ::: Word32) -> IO ()) PFN_vkVoidFunction
vkCmdTraceRaysKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> Buffer
      -> VisualID
      -> Buffer
      -> VisualID
      -> VisualID
      -> Buffer
      -> VisualID
      -> VisualID
      -> Buffer
      -> VisualID
      -> VisualID
      -> Word32
      -> Word32
      -> Word32
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("raygenShaderBindingTableBuffer" ::: Buffer) -> ("raygenShaderBindingOffset" ::: DeviceSize) -> ("missShaderBindingTableBuffer" ::: Buffer) -> ("missShaderBindingOffset" ::: DeviceSize) -> ("missShaderBindingStride" ::: DeviceSize) -> ("hitShaderBindingTableBuffer" ::: Buffer) -> ("hitShaderBindingOffset" ::: DeviceSize) -> ("hitShaderBindingStride" ::: DeviceSize) -> ("callableShaderBindingTableBuffer" ::: Buffer) -> ("callableShaderBindingOffset" ::: DeviceSize) -> ("callableShaderBindingStride" ::: DeviceSize) -> ("width" ::: Word32) -> ("height" ::: Word32) -> ("depth" ::: Word32) -> IO ()) PFN_vkVoidFunction
vkCmdTraceRaysNV)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> Pipeline
      -> Word32
      -> Word32
      -> ("location" ::: CSize)
      -> Display
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> Pipeline -> ("firstGroup" ::: Word32) -> ("groupCount" ::: Word32) -> ("dataSize" ::: CSize) -> ("pData" ::: Ptr ()) -> IO Result) PFN_vkVoidFunction
vkGetRayTracingShaderGroupHandlesKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> Pipeline
      -> Word32
      -> Word32
      -> ("location" ::: CSize)
      -> Display
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> Pipeline -> ("firstGroup" ::: Word32) -> ("groupCount" ::: Word32) -> ("dataSize" ::: CSize) -> ("pData" ::: Ptr ()) -> IO Result) PFN_vkVoidFunction
vkGetRayTracingCaptureReplayShaderGroupHandlesKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> AccelerationStructureNV
      -> ("location" ::: CSize)
      -> Display
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> AccelerationStructureKHR -> ("dataSize" ::: CSize) -> ("pData" ::: Ptr ()) -> IO Result) PFN_vkVoidFunction
vkGetAccelerationStructureHandleNV)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> PipelineCache
      -> Word32
      -> ("pCreateInfos" ::: Ptr (RayTracingPipelineCreateInfoNV a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pPipelines" ::: Ptr Pipeline)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> PipelineCache -> ("createInfoCount" ::: Word32) -> ("pCreateInfos" ::: Ptr (RayTracingPipelineCreateInfoNV _)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pPipelines" ::: Ptr Pipeline) -> IO Result) PFN_vkVoidFunction
vkCreateRayTracingPipelinesNV)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> PipelineCache
      -> Word32
      -> ("pCreateInfos" ::: Ptr (RayTracingPipelineCreateInfoKHR a))
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pPipelines" ::: Ptr Pipeline)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> PipelineCache -> ("createInfoCount" ::: Word32) -> ("pCreateInfos" ::: Ptr (RayTracingPipelineCreateInfoKHR _)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pPipelines" ::: Ptr Pipeline) -> IO Result) PFN_vkVoidFunction
vkCreateRayTracingPipelinesKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR)
      -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR)
      -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR)
      -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR)
      -> Buffer
      -> VisualID
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR) -> ("pMissShaderBindingTable" ::: Ptr StridedBufferRegionKHR) -> ("pHitShaderBindingTable" ::: Ptr StridedBufferRegionKHR) -> ("pCallableShaderBindingTable" ::: Ptr StridedBufferRegionKHR) -> Buffer -> ("offset" ::: DeviceSize) -> IO ()) PFN_vkVoidFunction
vkCmdTraceRaysIndirectKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T -> Ptr AccelerationStructureVersionKHR -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> Ptr AccelerationStructureVersionKHR -> IO Result) PFN_vkVoidFunction
vkGetDeviceAccelerationStructureCompatibilityKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr ImageViewHandleInfoNVX) -> IO Word32)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pInfo" ::: Ptr ImageViewHandleInfoNVX) -> IO Word32) PFN_vkVoidFunction
vkGetImageViewHandleNVX)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ImageView
      -> ("pProperties" ::: Ptr ImageViewAddressPropertiesNVX)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ImageView -> ("pProperties" ::: Ptr ImageViewAddressPropertiesNVX) -> IO Result) PFN_vkVoidFunction
vkGetImageViewAddressNVX)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pSurfaceInfo" ::: Ptr (PhysicalDeviceSurfaceInfo2KHR a))
      -> ("pModes" ::: Ptr DeviceGroupPresentModeFlagsKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pSurfaceInfo" ::: Ptr (PhysicalDeviceSurfaceInfo2KHR _)) -> ("pModes" ::: Ptr DeviceGroupPresentModeFlagsKHR) -> IO Result) PFN_vkVoidFunction
vkGetDeviceGroupSurfacePresentModes2EXT)
    (PFN_vkVoidFunction
-> FunPtr (Ptr Device_T -> SwapchainKHR -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> SwapchainKHR -> IO Result) PFN_vkVoidFunction
vkAcquireFullScreenExclusiveModeEXT)
    (PFN_vkVoidFunction
-> FunPtr (Ptr Device_T -> SwapchainKHR -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> SwapchainKHR -> IO Result) PFN_vkVoidFunction
vkReleaseFullScreenExclusiveModeEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr AcquireProfilingLockInfoKHR) -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pInfo" ::: Ptr AcquireProfilingLockInfoKHR) -> IO Result) PFN_vkVoidFunction
vkAcquireProfilingLockKHR)
    (PFN_vkVoidFunction -> FunPtr (Ptr Device_T -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> IO ()) PFN_vkVoidFunction
vkReleaseProfilingLockKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> Image
      -> ("pProperties" ::: Ptr ImageDrmFormatModifierPropertiesEXT)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> Image -> ("pProperties" ::: Ptr ImageDrmFormatModifierPropertiesEXT) -> IO Result) PFN_vkVoidFunction
vkGetImageDrmFormatModifierPropertiesEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr BufferDeviceAddressInfo) -> IO VisualID)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pInfo" ::: Ptr BufferDeviceAddressInfo) -> IO Word64) PFN_vkVoidFunction
vkGetBufferOpaqueCaptureAddress)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr BufferDeviceAddressInfo) -> IO VisualID)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pInfo" ::: Ptr BufferDeviceAddressInfo) -> IO DeviceAddress) PFN_vkVoidFunction
vkGetBufferDeviceAddress)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pInitializeInfo" ::: Ptr InitializePerformanceApiInfoINTEL)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pInitializeInfo" ::: Ptr InitializePerformanceApiInfoINTEL) -> IO Result) PFN_vkVoidFunction
vkInitializePerformanceApiINTEL)
    (PFN_vkVoidFunction -> FunPtr (Ptr Device_T -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> IO ()) PFN_vkVoidFunction
vkUninitializePerformanceApiINTEL)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pMarkerInfo" ::: Ptr PerformanceMarkerInfoINTEL) -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("pMarkerInfo" ::: Ptr PerformanceMarkerInfoINTEL) -> IO Result) PFN_vkVoidFunction
vkCmdSetPerformanceMarkerINTEL)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pMarkerInfo" ::: Ptr PerformanceStreamMarkerInfoINTEL)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("pMarkerInfo" ::: Ptr PerformanceStreamMarkerInfoINTEL) -> IO Result) PFN_vkVoidFunction
vkCmdSetPerformanceStreamMarkerINTEL)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pOverrideInfo" ::: Ptr PerformanceOverrideInfoINTEL)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("pOverrideInfo" ::: Ptr PerformanceOverrideInfoINTEL) -> IO Result) PFN_vkVoidFunction
vkCmdSetPerformanceOverrideINTEL)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pAcquireInfo"
          ::: Ptr PerformanceConfigurationAcquireInfoINTEL)
      -> ("pConfiguration" ::: Ptr PerformanceConfigurationINTEL)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pAcquireInfo" ::: Ptr PerformanceConfigurationAcquireInfoINTEL) -> ("pConfiguration" ::: Ptr PerformanceConfigurationINTEL) -> IO Result) PFN_vkVoidFunction
vkAcquirePerformanceConfigurationINTEL)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T -> PerformanceConfigurationINTEL -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> PerformanceConfigurationINTEL -> IO Result) PFN_vkVoidFunction
vkReleasePerformanceConfigurationINTEL)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Queue_T -> PerformanceConfigurationINTEL -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Queue_T -> PerformanceConfigurationINTEL -> IO Result) PFN_vkVoidFunction
vkQueueSetPerformanceConfigurationINTEL)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> PerformanceParameterTypeINTEL
      -> ("pValue" ::: Ptr PerformanceValueINTEL)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> PerformanceParameterTypeINTEL -> ("pValue" ::: Ptr PerformanceValueINTEL) -> IO Result) PFN_vkVoidFunction
vkGetPerformanceParameterINTEL)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr DeviceMemoryOpaqueCaptureAddressInfo)
      -> IO VisualID)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pInfo" ::: Ptr DeviceMemoryOpaqueCaptureAddressInfo) -> IO Word64) PFN_vkVoidFunction
vkGetDeviceMemoryOpaqueCaptureAddress)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pPipelineInfo" ::: Ptr PipelineInfoKHR)
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pProperties" ::: Ptr PipelineExecutablePropertiesKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pPipelineInfo" ::: Ptr PipelineInfoKHR) -> ("pExecutableCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr PipelineExecutablePropertiesKHR) -> IO Result) PFN_vkVoidFunction
vkGetPipelineExecutablePropertiesKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pExecutableInfo" ::: Ptr PipelineExecutableInfoKHR)
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pStatistics" ::: Ptr PipelineExecutableStatisticKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pExecutableInfo" ::: Ptr PipelineExecutableInfoKHR) -> ("pStatisticCount" ::: Ptr Word32) -> ("pStatistics" ::: Ptr PipelineExecutableStatisticKHR) -> IO Result) PFN_vkVoidFunction
vkGetPipelineExecutableStatisticsKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pExecutableInfo" ::: Ptr PipelineExecutableInfoKHR)
      -> ("pPhysicalDeviceCount" ::: Ptr Word32)
      -> ("pInternalRepresentations"
          ::: Ptr PipelineExecutableInternalRepresentationKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pExecutableInfo" ::: Ptr PipelineExecutableInfoKHR) -> ("pInternalRepresentationCount" ::: Ptr Word32) -> ("pInternalRepresentations" ::: Ptr PipelineExecutableInternalRepresentationKHR) -> IO Result) PFN_vkVoidFunction
vkGetPipelineExecutableInternalRepresentationsKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32 -> ("lineStipplePattern" ::: Word16) -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("lineStippleFactor" ::: Word32) -> ("lineStipplePattern" ::: Word16) -> IO ()) PFN_vkVoidFunction
vkCmdSetLineStippleEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr AccelerationStructureCreateInfoKHR)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pAccelerationStructure" ::: Ptr AccelerationStructureNV)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pCreateInfo" ::: Ptr AccelerationStructureCreateInfoKHR) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pAccelerationStructure" ::: Ptr AccelerationStructureKHR) -> IO Result) PFN_vkVoidFunction
vkCreateAccelerationStructureKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> Word32
      -> ("pInfos" ::: Ptr (AccelerationStructureBuildGeometryInfoKHR a))
      -> ("ppOffsetInfos"
          ::: Ptr (Ptr AccelerationStructureBuildOffsetInfoKHR))
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("infoCount" ::: Word32) -> ("pInfos" ::: Ptr (AccelerationStructureBuildGeometryInfoKHR _)) -> ("ppOffsetInfos" ::: Ptr (Ptr AccelerationStructureBuildOffsetInfoKHR)) -> IO ()) PFN_vkVoidFunction
vkCmdBuildAccelerationStructureKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr CommandBuffer_T
      -> ("pInfo" ::: Ptr (AccelerationStructureBuildGeometryInfoKHR a))
      -> Buffer
      -> VisualID
      -> Word32
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr CommandBuffer_T -> ("pInfo" ::: Ptr (AccelerationStructureBuildGeometryInfoKHR _)) -> ("indirectBuffer" ::: Buffer) -> ("indirectOffset" ::: DeviceSize) -> ("indirectStride" ::: Word32) -> IO ()) PFN_vkVoidFunction
vkCmdBuildAccelerationStructureIndirectKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> Word32
      -> ("pInfos" ::: Ptr (AccelerationStructureBuildGeometryInfoKHR a))
      -> ("ppOffsetInfos"
          ::: Ptr (Ptr AccelerationStructureBuildOffsetInfoKHR))
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("infoCount" ::: Word32) -> ("pInfos" ::: Ptr (AccelerationStructureBuildGeometryInfoKHR _)) -> ("ppOffsetInfos" ::: Ptr (Ptr AccelerationStructureBuildOffsetInfoKHR)) -> IO Result) PFN_vkVoidFunction
vkBuildAccelerationStructureKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pInfo" ::: Ptr AccelerationStructureDeviceAddressInfoKHR)
      -> IO VisualID)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pInfo" ::: Ptr AccelerationStructureDeviceAddressInfoKHR) -> IO DeviceAddress) PFN_vkVoidFunction
vkGetAccelerationStructureDeviceAddressKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pDeferredOperation" ::: Ptr DeferredOperationKHR)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pDeferredOperation" ::: Ptr DeferredOperationKHR) -> IO Result) PFN_vkVoidFunction
vkCreateDeferredOperationKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> DeferredOperationKHR
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> DeferredOperationKHR -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) PFN_vkVoidFunction
vkDestroyDeferredOperationKHR)
    (PFN_vkVoidFunction
-> FunPtr (Ptr Device_T -> DeferredOperationKHR -> IO Word32)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> DeferredOperationKHR -> IO Word32) PFN_vkVoidFunction
vkGetDeferredOperationMaxConcurrencyKHR)
    (PFN_vkVoidFunction
-> FunPtr (Ptr Device_T -> DeferredOperationKHR -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> DeferredOperationKHR -> IO Result) PFN_vkVoidFunction
vkGetDeferredOperationResultKHR)
    (PFN_vkVoidFunction
-> FunPtr (Ptr Device_T -> DeferredOperationKHR -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> DeferredOperationKHR -> IO Result) PFN_vkVoidFunction
vkDeferredOperationJoinKHR)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ("pCreateInfo" ::: Ptr PrivateDataSlotCreateInfoEXT)
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> ("pPrivateDataSlot" ::: Ptr PrivateDataSlotEXT)
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ("pCreateInfo" ::: Ptr PrivateDataSlotCreateInfoEXT) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pPrivateDataSlot" ::: Ptr PrivateDataSlotEXT) -> IO Result) PFN_vkVoidFunction
vkCreatePrivateDataSlotEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> PrivateDataSlotEXT
      -> ("pAllocator" ::: Ptr AllocationCallbacks)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> PrivateDataSlotEXT -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) PFN_vkVoidFunction
vkDestroyPrivateDataSlotEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ObjectType
      -> VisualID
      -> PrivateDataSlotEXT
      -> VisualID
      -> IO Result)
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ObjectType -> ("objectHandle" ::: Word64) -> PrivateDataSlotEXT -> ("data" ::: Word64) -> IO Result) PFN_vkVoidFunction
vkSetPrivateDataEXT)
    (PFN_vkVoidFunction
-> FunPtr
     (Ptr Device_T
      -> ObjectType
      -> VisualID
      -> PrivateDataSlotEXT
      -> ("pCommittedMemoryInBytes" ::: Ptr VisualID)
      -> IO ())
forall a b. FunPtr a -> FunPtr b
castFunPtr @_ @(Ptr Device_T -> ObjectType -> ("objectHandle" ::: Word64) -> PrivateDataSlotEXT -> ("pData" ::: Ptr Word64) -> IO ()) PFN_vkVoidFunction
vkGetPrivateDataEXT)