{-# OPTIONS_GHC -fno-warn-missing-pattern-synonym-signatures#-} {-# OPTIONS_HADDOCK not-home#-} {-# LANGUAGE DataKinds #-} {-# LANGUAGE ForeignFunctionInterface #-} {-# LANGUAGE MagicHash #-} {-# LANGUAGE PatternSynonyms #-} {-# LANGUAGE Strict #-} {-# LANGUAGE ViewPatterns #-} module Graphics.Vulkan.Ext.VK_KHR_descriptor_update_template (-- * Vulkan extension: @VK_KHR_descriptor_update_template@ -- | -- -- supported: @vulkan@ -- -- contact: @Markus Tavenrath @mtavenrath@ -- -- author: @KHR@ -- -- type: @device@ -- -- Extension number: @86@ module Graphics.Vulkan.Types.Bitmasks, module Graphics.Vulkan.Types.Struct.VkDescriptorUpdateTemplateCreateInfoKHR, module Graphics.Vulkan.Types.Struct.VkDescriptorUpdateTemplateEntryKHR, module Graphics.Vulkan.Types.Enum.VkDescriptorUpdateTemplateTypeKHR, vkCreateDescriptorUpdateTemplateKHR, vkCreateDescriptorUpdateTemplateKHRSafe, vkDestroyDescriptorUpdateTemplateKHR, vkDestroyDescriptorUpdateTemplateKHRSafe, vkUpdateDescriptorSetWithTemplateKHR, vkUpdateDescriptorSetWithTemplateKHRSafe, module Graphics.Vulkan.Marshal, module Graphics.Vulkan.Types.BaseTypes, module Graphics.Vulkan.Types.Enum.VkDescriptorType, module Graphics.Vulkan.Types.Enum.VkDescriptorUpdateTemplateType, module Graphics.Vulkan.Types.Enum.VkInternalAllocationType, module Graphics.Vulkan.Types.Enum.VkPipelineBindPoint, module Graphics.Vulkan.Types.Enum.VkResult, module Graphics.Vulkan.Types.Enum.VkStructureType, module Graphics.Vulkan.Types.Enum.VkSystemAllocationScope, module Graphics.Vulkan.Types.Funcpointers, module Graphics.Vulkan.Types.Handles, module Graphics.Vulkan.Types.Struct.VkAllocationCallbacks, module Graphics.Vulkan.Types.Struct.VkDescriptorUpdateTemplateCreateInfo, module Graphics.Vulkan.Types.Struct.VkDescriptorUpdateTemplateEntry, VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_SPEC_VERSION, pattern VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_SPEC_VERSION, VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME, pattern VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME, pattern VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO_KHR, pattern VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR, pattern VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR, -- ** Required extensions: 'VK_KHR_push_descriptor'. vkCmdPushDescriptorSetWithTemplateKHR, vkCmdPushDescriptorSetWithTemplateKHRSafe, pattern VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR, -- ** Required extensions: 'VK_EXT_debug_report'. pattern VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT) where import GHC.Ptr (Ptr (..)) import Graphics.Vulkan.Core_1_1 (pattern VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE, pattern VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO) import Graphics.Vulkan.Ext.VK_EXT_debug_report (pattern VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT) import Graphics.Vulkan.Ext.VK_KHR_push_descriptor (pattern VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR, vkCmdPushDescriptorSetWithTemplateKHR, vkCmdPushDescriptorSetWithTemplateKHRSafe) import Graphics.Vulkan.Marshal import Graphics.Vulkan.Types.BaseTypes import Graphics.Vulkan.Types.Bitmasks import Graphics.Vulkan.Types.Enum.VkDescriptorType import Graphics.Vulkan.Types.Enum.VkDescriptorUpdateTemplateType import Graphics.Vulkan.Types.Enum.VkDescriptorUpdateTemplateTypeKHR import Graphics.Vulkan.Types.Enum.VkInternalAllocationType import Graphics.Vulkan.Types.Enum.VkPipelineBindPoint import Graphics.Vulkan.Types.Enum.VkResult import Graphics.Vulkan.Types.Enum.VkStructureType import Graphics.Vulkan.Types.Enum.VkSystemAllocationScope import Graphics.Vulkan.Types.Funcpointers import Graphics.Vulkan.Types.Handles import Graphics.Vulkan.Types.Struct.VkAllocationCallbacks import Graphics.Vulkan.Types.Struct.VkDescriptorUpdateTemplateCreateInfo import Graphics.Vulkan.Types.Struct.VkDescriptorUpdateTemplateCreateInfoKHR import Graphics.Vulkan.Types.Struct.VkDescriptorUpdateTemplateEntry import Graphics.Vulkan.Types.Struct.VkDescriptorUpdateTemplateEntryKHR -- | This is an alias for `vkCreateDescriptorUpdateTemplate`. -- -- Success codes: 'VK_SUCCESS'. -- -- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'. -- -- > VkResult vkCreateDescriptorUpdateTemplateKHR -- > ( VkDevice device -- > , const VkDescriptorUpdateTemplateCreateInfo* pCreateInfo -- > , const VkAllocationCallbacks* pAllocator -- > , VkDescriptorUpdateTemplate* pDescriptorUpdateTemplate -- > ) -- -- foreign import ccall unsafe "vkCreateDescriptorUpdateTemplate" vkCreateDescriptorUpdateTemplateKHR :: VkDevice -- ^ device -> Ptr VkDescriptorUpdateTemplateCreateInfo -- ^ pCreateInfo -> Ptr VkAllocationCallbacks -- ^ pAllocator -> Ptr VkDescriptorUpdateTemplate -- ^ pDescriptorUpdateTemplate -> IO VkResult -- | This is an alias for `vkCreateDescriptorUpdateTemplate`. -- -- Success codes: 'VK_SUCCESS'. -- -- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY'. -- -- > VkResult vkCreateDescriptorUpdateTemplateKHR -- > ( VkDevice device -- > , const VkDescriptorUpdateTemplateCreateInfo* pCreateInfo -- > , const VkAllocationCallbacks* pAllocator -- > , VkDescriptorUpdateTemplate* pDescriptorUpdateTemplate -- > ) -- -- foreign import ccall safe "vkCreateDescriptorUpdateTemplate" vkCreateDescriptorUpdateTemplateKHRSafe :: VkDevice -- ^ device -> Ptr VkDescriptorUpdateTemplateCreateInfo -- ^ pCreateInfo -> Ptr VkAllocationCallbacks -- ^ pAllocator -> Ptr VkDescriptorUpdateTemplate -- ^ pDescriptorUpdateTemplate -> IO VkResult -- | This is an alias for `vkDestroyDescriptorUpdateTemplate`. -- -- > () vkDestroyDescriptorUpdateTemplateKHR -- > ( VkDevice device -- > , VkDescriptorUpdateTemplate descriptorUpdateTemplate -- > , const VkAllocationCallbacks* pAllocator -- > ) -- -- foreign import ccall unsafe "vkDestroyDescriptorUpdateTemplate" vkDestroyDescriptorUpdateTemplateKHR :: VkDevice -- ^ device -> VkDescriptorUpdateTemplate -- ^ descriptorUpdateTemplate -> Ptr VkAllocationCallbacks -- ^ pAllocator -> IO () -- | This is an alias for `vkDestroyDescriptorUpdateTemplate`. -- -- > () vkDestroyDescriptorUpdateTemplateKHR -- > ( VkDevice device -- > , VkDescriptorUpdateTemplate descriptorUpdateTemplate -- > , const VkAllocationCallbacks* pAllocator -- > ) -- -- foreign import ccall safe "vkDestroyDescriptorUpdateTemplate" vkDestroyDescriptorUpdateTemplateKHRSafe :: VkDevice -- ^ device -> VkDescriptorUpdateTemplate -- ^ descriptorUpdateTemplate -> Ptr VkAllocationCallbacks -- ^ pAllocator -> IO () -- | This is an alias for `vkUpdateDescriptorSetWithTemplate`. -- -- > () vkUpdateDescriptorSetWithTemplateKHR -- > ( VkDevice device -- > , VkDescriptorSet descriptorSet -- > , VkDescriptorUpdateTemplate descriptorUpdateTemplate -- > , const void* pData -- > ) -- -- foreign import ccall unsafe "vkUpdateDescriptorSetWithTemplate" vkUpdateDescriptorSetWithTemplateKHR :: VkDevice -- ^ device -> VkDescriptorSet -- ^ descriptorSet -> VkDescriptorUpdateTemplate -- ^ descriptorUpdateTemplate -> Ptr Void -- ^ pData -> IO () -- | This is an alias for `vkUpdateDescriptorSetWithTemplate`. -- -- > () vkUpdateDescriptorSetWithTemplateKHR -- > ( VkDevice device -- > , VkDescriptorSet descriptorSet -- > , VkDescriptorUpdateTemplate descriptorUpdateTemplate -- > , const void* pData -- > ) -- -- foreign import ccall safe "vkUpdateDescriptorSetWithTemplate" vkUpdateDescriptorSetWithTemplateKHRSafe :: VkDevice -- ^ device -> VkDescriptorSet -- ^ descriptorSet -> VkDescriptorUpdateTemplate -- ^ descriptorUpdateTemplate -> Ptr Void -- ^ pData -> IO () pattern VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_SPEC_VERSION :: (Num a, Eq a) => a pattern VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_SPEC_VERSION = 1 type VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_SPEC_VERSION = 1 pattern VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME :: CString pattern VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME <- (is_VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME -> True) where VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME = _VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME {-# INLINE _VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME #-} _VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME :: CString _VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME = Ptr "VK_KHR_descriptor_update_template\NUL"# {-# INLINE is_VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME #-} is_VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME :: CString -> Bool is_VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME = (EQ ==) . cmpCStrings _VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME type VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME = "VK_KHR_descriptor_update_template" pattern VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO pattern VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR = VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE pattern VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR = VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET pattern VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT