{-# OPTIONS_GHC -fno-warn-orphans#-} {-# OPTIONS_HADDOCK not-home#-} {-# LANGUAGE CPP #-} {-# LANGUAGE DataKinds #-} {-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE ForeignFunctionInterface #-} {-# LANGUAGE MagicHash #-} {-# LANGUAGE PatternSynonyms #-} {-# LANGUAGE Strict #-} {-# LANGUAGE TypeFamilies #-} {-# LANGUAGE ViewPatterns #-} module Graphics.Vulkan.Ext.VK_KHR_performance_query (-- * Vulkan extension: @VK_KHR_performance_query@ -- | -- -- supported: @vulkan@ -- -- contact: @Alon Or-bach @alonorbach@ -- -- author: @KHR@ -- -- type: @device@ -- -- Extension number: @117@ -- -- Required extensions: 'VK_KHR_get_physical_device_properties2'. -- -- ** Required extensions: 'VK_KHR_get_physical_device_properties2'. module Graphics.Vulkan.Marshal, VkAcquireProfilingLockBitmaskKHR(..), VkAcquireProfilingLockFlagBitsKHR(), VkAcquireProfilingLockFlagsKHR(), VkAcquireProfilingLockInfoKHR, AHardwareBuffer(), ANativeWindow(), CAMetalLayer(), VkBool32(..), VkDeviceAddress(..), VkDeviceSize(..), VkFlags(..), VkSampleMask(..), VkAndroidSurfaceCreateFlagsKHR(..), VkBufferViewCreateFlags(..), VkBuildAccelerationStructureFlagsNV(..), VkCommandPoolTrimFlags(..), VkCommandPoolTrimFlagsKHR(..), VkDebugUtilsMessengerCallbackDataFlagsEXT(..), VkDebugUtilsMessengerCreateFlagsEXT(..), VkDescriptorBindingFlagsEXT(..), VkDescriptorPoolResetFlags(..), VkDescriptorUpdateTemplateCreateFlags(..), VkDescriptorUpdateTemplateCreateFlagsKHR(..), VkDeviceCreateFlags(..), VkDirectFBSurfaceCreateFlagsEXT(..), VkDisplayModeCreateFlagsKHR(..), VkDisplaySurfaceCreateFlagsKHR(..), VkEventCreateFlags(..), VkExternalFenceFeatureFlagsKHR(..), VkExternalFenceHandleTypeFlagsKHR(..), VkExternalMemoryFeatureFlagsKHR(..), VkExternalMemoryHandleTypeFlagsKHR(..), VkExternalSemaphoreFeatureFlagsKHR(..), VkExternalSemaphoreHandleTypeFlagsKHR(..), VkFenceImportFlagsKHR(..), VkGeometryFlagsNV(..), VkGeometryInstanceFlagsNV(..), VkHeadlessSurfaceCreateFlagsEXT(..), VkIOSSurfaceCreateFlagsMVK(..), VkImagePipeSurfaceCreateFlagsFUCHSIA(..), VkInstanceCreateFlags(..), VkMacOSSurfaceCreateFlagsMVK(..), VkMemoryAllocateFlagsKHR(..), VkMemoryMapFlags(..), VkMetalSurfaceCreateFlagsEXT(..), VkPeerMemoryFeatureFlagsKHR(..), VkPipelineColorBlendStateCreateFlags(..), VkPipelineCoverageModulationStateCreateFlagsNV(..), VkPipelineCoverageReductionStateCreateFlagsNV(..), VkPipelineCoverageToColorStateCreateFlagsNV(..), VkPipelineDepthStencilStateCreateFlags(..), VkPipelineDiscardRectangleStateCreateFlagsEXT(..), VkPipelineDynamicStateCreateFlags(..), VkPipelineInputAssemblyStateCreateFlags(..), VkPipelineLayoutCreateFlags(..), VkPipelineMultisampleStateCreateFlags(..), VkPipelineRasterizationConservativeStateCreateFlagsEXT(..), VkPipelineRasterizationDepthClipStateCreateFlagsEXT(..), VkPipelineRasterizationStateCreateFlags(..), VkPipelineRasterizationStateStreamCreateFlagsEXT(..), VkPipelineTessellationStateCreateFlags(..), VkPipelineVertexInputStateCreateFlags(..), VkPipelineViewportStateCreateFlags(..), VkPipelineViewportSwizzleStateCreateFlagsNV(..), VkQueryPoolCreateFlags(..), VkResolveModeFlagsKHR(..), VkSemaphoreCreateFlags(..), VkSemaphoreImportFlagsKHR(..), VkSemaphoreWaitFlagsKHR(..), VkStreamDescriptorSurfaceCreateFlagsGGP(..), VkValidationCacheCreateFlagsEXT(..), VkViSurfaceCreateFlagsNN(..), VkWaylandSurfaceCreateFlagsKHR(..), VkWin32SurfaceCreateFlagsKHR(..), VkXcbSurfaceCreateFlagsKHR(..), VkXlibSurfaceCreateFlagsKHR(..), VkDeviceCreateInfo, VkDeviceDiagnosticsConfigBitmaskNV(..), VkDeviceEventTypeEXT(..), VkDeviceGroupPresentModeBitmaskKHR(..), VkDeviceCreateFlagBits(..), VkDeviceDiagnosticsConfigFlagBitsNV(), VkDeviceDiagnosticsConfigFlagsNV(), VkDeviceGroupPresentModeFlagBitsKHR(), VkDeviceGroupPresentModeFlagsKHR(), VkDeviceQueueCreateBitmask(..), VkDeviceQueueCreateFlagBits(), VkDeviceQueueCreateFlags(), VkDeviceQueueCreateInfo, VkPerformanceConfigurationTypeINTEL(..), VkPerformanceCounterDescriptionBitmaskKHR(..), VkPerformanceCounterScopeKHR(..), VkPerformanceCounterStorageKHR(..), VkPerformanceCounterUnitKHR(..), VkPerformanceOverrideTypeINTEL(..), VkPerformanceParameterTypeINTEL(..), VkPerformanceValueTypeINTEL(..), pattern VK_QUERY_SCOPE_COMMAND_BUFFER_KHR, pattern VK_QUERY_SCOPE_COMMAND_KHR, pattern VK_QUERY_SCOPE_RENDER_PASS_KHR, VkPerformanceCounterDescriptionFlagBitsKHR(), VkPerformanceCounterDescriptionFlagsKHR(), VkPerformanceCounterDescriptionKHR, VkPerformanceCounterKHR, VkPerformanceCounterResultKHR, VkPerformanceQuerySubmitInfoKHR, VkPhysicalDeviceFeatures, VkPhysicalDeviceFeatures2, VkPhysicalDeviceLimits, VkPhysicalDevicePerformanceQueryFeaturesKHR, VkPhysicalDevicePerformanceQueryPropertiesKHR, VkPhysicalDeviceProperties, VkPhysicalDeviceProperties2, VkPhysicalDeviceSparseProperties, VkPhysicalDeviceType(..), VkPipelineBindPoint(..), VkPipelineCacheHeaderVersion(..), VkPipelineCreateBitmask(..), VkPipelineCreationFeedbackBitmaskEXT(..), VkPipelineExecutableStatisticFormatKHR(..), VkPipelineStageBitmask(..), VkPipelineCacheCreateBitmask(..), VkPipelineCacheCreateFlagBits(), VkPipelineCacheCreateFlags(), VkPipelineCompilerControlBitmaskAMD(..), VkPipelineCompilerControlFlagBitsAMD(), VkPipelineCompilerControlFlagsAMD(), VkPipelineCreateFlagBits(), VkPipelineCreateFlags(), VkPipelineCreationFeedbackFlagBitsEXT(), VkPipelineCreationFeedbackFlagsEXT(), VkPipelineShaderStageCreateBitmask(..), VkPipelineShaderStageCreateFlagBits(), VkPipelineShaderStageCreateFlags(), VkPipelineStageFlagBits(), VkPipelineStageFlags(), VkQueryControlBitmask(..), VkQueryPipelineStatisticBitmask(..), VkQueryPoolSamplingModeINTEL(..), VkQueryResultBitmask(..), VkQueryType(..), VkQueryControlFlagBits(), VkQueryControlFlags(), VkQueryPipelineStatisticFlagBits(), VkQueryPipelineStatisticFlags(), VkQueryPoolCreateFlagBits(..), VkQueryResultFlagBits(), VkQueryResultFlags(), VkQueryPoolCreateInfo, VkQueryPoolPerformanceCreateInfoKHR, VkSampleCountBitmask(..), VkSampleCountFlagBits(), VkSampleCountFlags(), VkStructureType(..), VkSubmitInfo, -- > #include "vk_platform.h" VkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR, pattern VkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR, HS_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR, PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR, VkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR, pattern VkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR, HS_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR, PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR, VkAcquireProfilingLockKHR, pattern VkAcquireProfilingLockKHR, HS_vkAcquireProfilingLockKHR, PFN_vkAcquireProfilingLockKHR, VkReleaseProfilingLockKHR, pattern VkReleaseProfilingLockKHR, HS_vkReleaseProfilingLockKHR, PFN_vkReleaseProfilingLockKHR, VkResult(..), VkAccelerationStructureKHR, VkAccelerationStructureKHR_T(), VkAccelerationStructureNV, VkAccelerationStructureNV_T(), VkBuffer, VkBufferView, VkBufferView_T(), VkBuffer_T(), VkCommandBuffer, VkCommandBuffer_T(), VkCommandPool, VkCommandPool_T(), VkDebugReportCallbackEXT, VkDebugReportCallbackEXT_T(), VkDebugUtilsMessengerEXT, VkDebugUtilsMessengerEXT_T(), VkDeferredOperationKHR, VkDeferredOperationKHR_T(), VkDescriptorPool, VkDescriptorPool_T(), VkDescriptorSet, VkDescriptorSetLayout, VkDescriptorSetLayout_T(), VkDescriptorSet_T(), VkDescriptorUpdateTemplate, VkDescriptorUpdateTemplateKHR, VkDescriptorUpdateTemplateKHR_T(), VkDescriptorUpdateTemplate_T(), VkDevice, VkDeviceMemory, VkDeviceMemory_T(), VkDevice_T(), VkDisplayKHR, VkDisplayKHR_T(), VkDisplayModeKHR, VkDisplayModeKHR_T(), VkEvent, VkEvent_T(), VkFence, VkFence_T(), VkFramebuffer, VkFramebuffer_T(), VkImage, VkImageView, VkImageView_T(), VkImage_T(), VkIndirectCommandsLayoutNV, VkIndirectCommandsLayoutNV_T(), VkInstance, VkInstance_T(), VkPerformanceConfigurationINTEL, VkPerformanceConfigurationINTEL_T(), VkPhysicalDevice, VkPhysicalDevice_T(), VkPipeline, VkPipelineCache, VkPipelineCache_T(), VkPipelineLayout, VkPipelineLayout_T(), VkPipeline_T(), VkPrivateDataSlotEXT, VkPrivateDataSlotEXT_T(), VkQueryPool, VkQueryPool_T(), VkQueue, VkQueue_T(), VkRenderPass, VkRenderPass_T(), VkSampler, VkSamplerYcbcrConversion, VkSamplerYcbcrConversionKHR, VkSamplerYcbcrConversionKHR_T(), VkSamplerYcbcrConversion_T(), VkSampler_T(), VkSemaphore, VkSemaphore_T(), VkShaderModule, VkShaderModule_T(), VkSurfaceKHR, VkSurfaceKHR_T(), VkSwapchainKHR, VkSwapchainKHR_T(), VkValidationCacheEXT, VkValidationCacheEXT_T(), VkAcquireNextImageInfoKHR, VkPerformanceConfigurationAcquireInfoINTEL, VkPerformanceMarkerInfoINTEL, VkPerformanceOverrideInfoINTEL, VkPerformanceStreamMarkerInfoINTEL, VkPerformanceValueDataINTEL, VkPerformanceValueINTEL, VkQueryPoolCreateInfoINTEL, VkQueryPoolPerformanceQueryCreateInfoINTEL, VK_KHR_PERFORMANCE_QUERY_SPEC_VERSION, pattern VK_KHR_PERFORMANCE_QUERY_SPEC_VERSION, VK_KHR_PERFORMANCE_QUERY_EXTENSION_NAME, pattern VK_KHR_PERFORMANCE_QUERY_EXTENSION_NAME, pattern VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR, pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR, pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR, pattern VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR, pattern VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR, pattern VK_STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR, pattern VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR, pattern VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR) where import GHC.Ptr (Ptr (..)) import Graphics.Vulkan.Marshal import Graphics.Vulkan.Marshal.Proc (VulkanProc (..)) import Graphics.Vulkan.Types.BaseTypes import Graphics.Vulkan.Types.Bitmasks import Graphics.Vulkan.Types.Enum.AcquireProfilingLockFlagsKHR import Graphics.Vulkan.Types.Enum.Device import Graphics.Vulkan.Types.Enum.Performance import Graphics.Vulkan.Types.Enum.PhysicalDeviceType import Graphics.Vulkan.Types.Enum.Pipeline import Graphics.Vulkan.Types.Enum.Query import Graphics.Vulkan.Types.Enum.Result import Graphics.Vulkan.Types.Enum.SampleCountFlags import Graphics.Vulkan.Types.Enum.StructureType import Graphics.Vulkan.Types.Handles import Graphics.Vulkan.Types.Struct.Acquire import Graphics.Vulkan.Types.Struct.Device (VkDeviceCreateInfo, VkDeviceQueueCreateInfo) import Graphics.Vulkan.Types.Struct.Performance import Graphics.Vulkan.Types.Struct.PhysicalDevice (VkPhysicalDeviceFeatures2, VkPhysicalDeviceLimits, VkPhysicalDevicePerformanceQueryFeaturesKHR, VkPhysicalDevicePerformanceQueryPropertiesKHR, VkPhysicalDeviceProperties, VkPhysicalDeviceProperties2, VkPhysicalDeviceSparseProperties) import Graphics.Vulkan.Types.Struct.PhysicalDeviceFeatures (VkPhysicalDeviceFeatures) import Graphics.Vulkan.Types.Struct.QueryPool import Graphics.Vulkan.Types.Struct.SubmitInfo (VkSubmitInfo) pattern VkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR :: CString pattern VkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR <- (is_VkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR -> True) where VkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR = _VkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR {-# INLINE _VkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR #-} _VkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR :: CString _VkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR = Ptr "vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR\NUL"# {-# INLINE is_VkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR #-} is_VkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR :: CString -> Bool is_VkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR = (EQ ==) . cmpCStrings _VkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR type VkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR = "vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR" -- | Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'. -- -- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_INITIALIZATION_FAILED'. -- -- > VkResult vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR -- > ( VkPhysicalDevice physicalDevice -- > , uint32_t queueFamilyIndex -- > , uint32_t* pCounterCount -- > , VkPerformanceCounterKHR* pCounters -- > , VkPerformanceCounterDescriptionKHR* pCounterDescriptions -- > ) -- -- type HS_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR = VkPhysicalDevice -- ^ physicalDevice -> Word32 -- ^ queueFamilyIndex -> Ptr Word32 -- ^ pCounterCount -> Ptr VkPerformanceCounterKHR -- ^ pCounters -> Ptr VkPerformanceCounterDescriptionKHR -- ^ pCounterDescriptions -> IO VkResult type PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR = FunPtr HS_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR foreign import ccall unsafe "dynamic" unwrapVkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHRUnsafe :: PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR -> HS_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR foreign import ccall safe "dynamic" unwrapVkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHRSafe :: PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR -> HS_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR instance VulkanProc "vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR" where type VkProcType "vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR" = HS_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR vkProcSymbol = _VkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR {-# INLINE vkProcSymbol #-} unwrapVkProcPtrUnsafe = unwrapVkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHRUnsafe {-# INLINE unwrapVkProcPtrUnsafe #-} unwrapVkProcPtrSafe = unwrapVkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHRSafe {-# INLINE unwrapVkProcPtrSafe #-} pattern VkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR :: CString pattern VkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR <- (is_VkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR -> True) where VkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR = _VkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR {-# INLINE _VkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR #-} _VkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR :: CString _VkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR = Ptr "vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR\NUL"# {-# INLINE is_VkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR #-} is_VkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR :: CString -> Bool is_VkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR = (EQ ==) . cmpCStrings _VkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR type VkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR = "vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR" -- | > void vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR -- > ( VkPhysicalDevice physicalDevice -- > , const VkQueryPoolPerformanceCreateInfoKHR* pPerformanceQueryCreateInfo -- > , uint32_t* pNumPasses -- > ) -- -- type HS_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR = VkPhysicalDevice -- ^ physicalDevice -> Ptr VkQueryPoolPerformanceCreateInfoKHR -- ^ pPerformanceQueryCreateInfo -> Ptr Word32 -- ^ pNumPasses -> IO () type PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR = FunPtr HS_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR foreign import ccall unsafe "dynamic" unwrapVkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHRUnsafe :: PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR -> HS_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR foreign import ccall safe "dynamic" unwrapVkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHRSafe :: PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR -> HS_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR instance VulkanProc "vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR" where type VkProcType "vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR" = HS_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR vkProcSymbol = _VkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR {-# INLINE vkProcSymbol #-} unwrapVkProcPtrUnsafe = unwrapVkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHRUnsafe {-# INLINE unwrapVkProcPtrUnsafe #-} unwrapVkProcPtrSafe = unwrapVkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHRSafe {-# INLINE unwrapVkProcPtrSafe #-} pattern VkAcquireProfilingLockKHR :: CString pattern VkAcquireProfilingLockKHR <- (is_VkAcquireProfilingLockKHR -> True) where VkAcquireProfilingLockKHR = _VkAcquireProfilingLockKHR {-# INLINE _VkAcquireProfilingLockKHR #-} _VkAcquireProfilingLockKHR :: CString _VkAcquireProfilingLockKHR = Ptr "vkAcquireProfilingLockKHR\NUL"# {-# INLINE is_VkAcquireProfilingLockKHR #-} is_VkAcquireProfilingLockKHR :: CString -> Bool is_VkAcquireProfilingLockKHR = (EQ ==) . cmpCStrings _VkAcquireProfilingLockKHR type VkAcquireProfilingLockKHR = "vkAcquireProfilingLockKHR" -- | Success codes: 'VK_SUCCESS'. -- -- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_TIMEOUT'. -- -- > VkResult vkAcquireProfilingLockKHR -- > ( VkDevice device -- > , const VkAcquireProfilingLockInfoKHR* pInfo -- > ) -- -- type HS_vkAcquireProfilingLockKHR = VkDevice -- ^ device -> Ptr VkAcquireProfilingLockInfoKHR -- ^ pInfo -> IO VkResult type PFN_vkAcquireProfilingLockKHR = FunPtr HS_vkAcquireProfilingLockKHR foreign import ccall unsafe "dynamic" unwrapVkAcquireProfilingLockKHRUnsafe :: PFN_vkAcquireProfilingLockKHR -> HS_vkAcquireProfilingLockKHR foreign import ccall safe "dynamic" unwrapVkAcquireProfilingLockKHRSafe :: PFN_vkAcquireProfilingLockKHR -> HS_vkAcquireProfilingLockKHR instance VulkanProc "vkAcquireProfilingLockKHR" where type VkProcType "vkAcquireProfilingLockKHR" = HS_vkAcquireProfilingLockKHR vkProcSymbol = _VkAcquireProfilingLockKHR {-# INLINE vkProcSymbol #-} unwrapVkProcPtrUnsafe = unwrapVkAcquireProfilingLockKHRUnsafe {-# INLINE unwrapVkProcPtrUnsafe #-} unwrapVkProcPtrSafe = unwrapVkAcquireProfilingLockKHRSafe {-# INLINE unwrapVkProcPtrSafe #-} pattern VkReleaseProfilingLockKHR :: CString pattern VkReleaseProfilingLockKHR <- (is_VkReleaseProfilingLockKHR -> True) where VkReleaseProfilingLockKHR = _VkReleaseProfilingLockKHR {-# INLINE _VkReleaseProfilingLockKHR #-} _VkReleaseProfilingLockKHR :: CString _VkReleaseProfilingLockKHR = Ptr "vkReleaseProfilingLockKHR\NUL"# {-# INLINE is_VkReleaseProfilingLockKHR #-} is_VkReleaseProfilingLockKHR :: CString -> Bool is_VkReleaseProfilingLockKHR = (EQ ==) . cmpCStrings _VkReleaseProfilingLockKHR type VkReleaseProfilingLockKHR = "vkReleaseProfilingLockKHR" -- | > void vkReleaseProfilingLockKHR -- > ( VkDevice device -- > ) -- -- type HS_vkReleaseProfilingLockKHR = VkDevice -- ^ device -> IO () type PFN_vkReleaseProfilingLockKHR = FunPtr HS_vkReleaseProfilingLockKHR foreign import ccall unsafe "dynamic" unwrapVkReleaseProfilingLockKHRUnsafe :: PFN_vkReleaseProfilingLockKHR -> HS_vkReleaseProfilingLockKHR foreign import ccall safe "dynamic" unwrapVkReleaseProfilingLockKHRSafe :: PFN_vkReleaseProfilingLockKHR -> HS_vkReleaseProfilingLockKHR instance VulkanProc "vkReleaseProfilingLockKHR" where type VkProcType "vkReleaseProfilingLockKHR" = HS_vkReleaseProfilingLockKHR vkProcSymbol = _VkReleaseProfilingLockKHR {-# INLINE vkProcSymbol #-} unwrapVkProcPtrUnsafe = unwrapVkReleaseProfilingLockKHRUnsafe {-# INLINE unwrapVkProcPtrUnsafe #-} unwrapVkProcPtrSafe = unwrapVkReleaseProfilingLockKHRSafe {-# INLINE unwrapVkProcPtrSafe #-} pattern VK_KHR_PERFORMANCE_QUERY_SPEC_VERSION :: (Num a, Eq a) => a pattern VK_KHR_PERFORMANCE_QUERY_SPEC_VERSION = 1 type VK_KHR_PERFORMANCE_QUERY_SPEC_VERSION = 1 pattern VK_KHR_PERFORMANCE_QUERY_EXTENSION_NAME :: CString pattern VK_KHR_PERFORMANCE_QUERY_EXTENSION_NAME <- (is_VK_KHR_PERFORMANCE_QUERY_EXTENSION_NAME -> True) where VK_KHR_PERFORMANCE_QUERY_EXTENSION_NAME = _VK_KHR_PERFORMANCE_QUERY_EXTENSION_NAME {-# INLINE _VK_KHR_PERFORMANCE_QUERY_EXTENSION_NAME #-} _VK_KHR_PERFORMANCE_QUERY_EXTENSION_NAME :: CString _VK_KHR_PERFORMANCE_QUERY_EXTENSION_NAME = Ptr "VK_KHR_performance_query\NUL"# {-# INLINE is_VK_KHR_PERFORMANCE_QUERY_EXTENSION_NAME #-} is_VK_KHR_PERFORMANCE_QUERY_EXTENSION_NAME :: CString -> Bool is_VK_KHR_PERFORMANCE_QUERY_EXTENSION_NAME = (EQ ==) . cmpCStrings _VK_KHR_PERFORMANCE_QUERY_EXTENSION_NAME type VK_KHR_PERFORMANCE_QUERY_EXTENSION_NAME = "VK_KHR_performance_query" pattern VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR :: VkQueryType pattern VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR = VkQueryType 1000116000 pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: VkStructureType pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR = VkStructureType 1000116000 pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: VkStructureType pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR = VkStructureType 1000116001 pattern VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: VkStructureType pattern VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR = VkStructureType 1000116002 pattern VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: VkStructureType pattern VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR = VkStructureType 1000116003 pattern VK_STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: VkStructureType pattern VK_STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR = VkStructureType 1000116004 pattern VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: VkStructureType pattern VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR = VkStructureType 1000116005 pattern VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: VkStructureType pattern VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR = VkStructureType 1000116006