{-# OPTIONS_HADDOCK not-home#-} {-# LANGUAGE DataKinds #-} {-# LANGUAGE ForeignFunctionInterface #-} {-# LANGUAGE MagicHash #-} {-# LANGUAGE PatternSynonyms #-} {-# LANGUAGE Strict #-} {-# LANGUAGE ViewPatterns #-} module Graphics.Vulkan.Ext.VK_KHR_external_semaphore_fd (-- * Vulkan extension: @VK_KHR_external_semaphore_fd@ -- | -- -- supported: @vulkan@ -- -- contact: @James Jones @cubanismo@ -- -- author: @KHR@ -- -- type: @device@ -- -- Extension number: @80@ -- -- Required extensions: 'VK_KHR_external_semaphore'. -- -- ** Required extensions: 'VK_KHR_external_semaphore'. module Graphics.Vulkan.Marshal, module Graphics.Vulkan.Types.Enum.VkExternalSemaphoreHandleTypeFlagsKHR, module Graphics.Vulkan.Types.BaseTypes, module Graphics.Vulkan.Types.Struct.VkImportSemaphoreFdInfoKHR, module Graphics.Vulkan.Types.Struct.VkSemaphoreGetFdInfoKHR, module Graphics.Vulkan.Types.Enum.VkSemaphoreImportFlagsKHR, module Graphics.Vulkan.Types.Enum.VkStructureType, -- > #include "vk_platform.h" vkImportSemaphoreFdKHR, vkGetSemaphoreFdKHR, module Graphics.Vulkan.Types.Enum.VkResult, module Graphics.Vulkan.Types.Handles, VK_KHR_EXTERNAL_SEMAPHORE_FD_SPEC_VERSION, pattern VK_KHR_EXTERNAL_SEMAPHORE_FD_SPEC_VERSION, VK_KHR_EXTERNAL_SEMAPHORE_FD_EXTENSION_NAME, pattern VK_KHR_EXTERNAL_SEMAPHORE_FD_EXTENSION_NAME, pattern VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR, pattern VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR) where import GHC.Ptr (Ptr (..)) import Graphics.Vulkan.Marshal import Graphics.Vulkan.Types.BaseTypes import Graphics.Vulkan.Types.Enum.VkExternalSemaphoreHandleTypeFlagsKHR import Graphics.Vulkan.Types.Enum.VkResult import Graphics.Vulkan.Types.Enum.VkSemaphoreImportFlagsKHR import Graphics.Vulkan.Types.Enum.VkStructureType import Graphics.Vulkan.Types.Handles import Graphics.Vulkan.Types.Struct.VkImportSemaphoreFdInfoKHR import Graphics.Vulkan.Types.Struct.VkSemaphoreGetFdInfoKHR -- | Success codes: 'VK_SUCCESS'. -- -- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR'. -- -- > VkResult vkImportSemaphoreFdKHR -- > ( VkDevice device -- > , const VkImportSemaphoreFdInfoKHR* pImportSemaphoreFdInfo -- > ) -- -- foreign import ccall unsafe "vkImportSemaphoreFdKHR" vkImportSemaphoreFdKHR :: VkDevice -- ^ device -> Ptr VkImportSemaphoreFdInfoKHR -- ^ pImportSemaphoreFdInfo -> IO VkResult -- | Success codes: 'VK_SUCCESS'. -- -- Error codes: 'VK_ERROR_TOO_MANY_OBJECTS', 'VK_ERROR_OUT_OF_HOST_MEMORY'. -- -- > VkResult vkGetSemaphoreFdKHR -- > ( VkDevice device -- > , const VkSemaphoreGetFdInfoKHR* pGetFdInfo -- > , int* pFd -- > ) -- -- foreign import ccall unsafe "vkGetSemaphoreFdKHR" vkGetSemaphoreFdKHR :: VkDevice -- ^ device -> Ptr VkSemaphoreGetFdInfoKHR -- ^ pGetFdInfo -> Ptr CInt -- ^ pFd -> IO VkResult pattern VK_KHR_EXTERNAL_SEMAPHORE_FD_SPEC_VERSION :: (Num a, Eq a) => a pattern VK_KHR_EXTERNAL_SEMAPHORE_FD_SPEC_VERSION = 1 type VK_KHR_EXTERNAL_SEMAPHORE_FD_SPEC_VERSION = 1 pattern VK_KHR_EXTERNAL_SEMAPHORE_FD_EXTENSION_NAME :: CString pattern VK_KHR_EXTERNAL_SEMAPHORE_FD_EXTENSION_NAME <- (is_VK_KHR_EXTERNAL_SEMAPHORE_FD_EXTENSION_NAME -> True) where VK_KHR_EXTERNAL_SEMAPHORE_FD_EXTENSION_NAME = _VK_KHR_EXTERNAL_SEMAPHORE_FD_EXTENSION_NAME {-# INLINE _VK_KHR_EXTERNAL_SEMAPHORE_FD_EXTENSION_NAME #-} _VK_KHR_EXTERNAL_SEMAPHORE_FD_EXTENSION_NAME :: CString _VK_KHR_EXTERNAL_SEMAPHORE_FD_EXTENSION_NAME = Ptr "VK_KHR_external_semaphore_fd\NUL"# {-# INLINE is_VK_KHR_EXTERNAL_SEMAPHORE_FD_EXTENSION_NAME #-} is_VK_KHR_EXTERNAL_SEMAPHORE_FD_EXTENSION_NAME :: CString -> Bool is_VK_KHR_EXTERNAL_SEMAPHORE_FD_EXTENSION_NAME = eqCStrings _VK_KHR_EXTERNAL_SEMAPHORE_FD_EXTENSION_NAME type VK_KHR_EXTERNAL_SEMAPHORE_FD_EXTENSION_NAME = "VK_KHR_external_semaphore_fd" pattern VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: VkStructureType pattern VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR = VkStructureType 1000079000 pattern VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: VkStructureType pattern VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR = VkStructureType 1000079001