-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Bindings to the Vulkan graphics API. -- -- Please see readme.md @package vulkan @version 1.3.0.0 module Graphics.Vulkan.Version module Graphics.Vulkan.HeaderBoilerplate module Graphics.Vulkan.Core newtype VkDeviceSize VkDeviceSize :: Word64 -> VkDeviceSize -- | Vulkan format definitions newtype VkFormat VkFormat :: Int32 -> VkFormat type VkFlags = Word32 data VkExtent2D VkExtent2D :: Word32 -> Word32 -> VkExtent2D [$sel:vkWidth:VkExtent2D] :: VkExtent2D -> Word32 [$sel:vkHeight:VkExtent2D] :: VkExtent2D -> Word32 newtype VkSharingMode VkSharingMode :: Int32 -> VkSharingMode -- | Structure type enumerant newtype VkStructureType VkStructureType :: Int32 -> VkStructureType newtype VkBool32 VkBool32 :: Word32 -> VkBool32 data VkOffset2D VkOffset2D :: Int32 -> Int32 -> VkOffset2D [$sel:vkX:VkOffset2D] :: VkOffset2D -> Int32 [$sel:vkY:VkOffset2D] :: VkOffset2D -> Int32 data VkOffset3D VkOffset3D :: Int32 -> Int32 -> Int32 -> VkOffset3D [$sel:vkX:VkOffset3D] :: VkOffset3D -> Int32 [$sel:vkY:VkOffset3D] :: VkOffset3D -> Int32 [$sel:vkZ:VkOffset3D] :: VkOffset3D -> Int32 data VkExtent3D VkExtent3D :: Word32 -> Word32 -> Word32 -> VkExtent3D [$sel:vkWidth:VkExtent3D] :: VkExtent3D -> Word32 [$sel:vkHeight:VkExtent3D] :: VkExtent3D -> Word32 [$sel:vkDepth:VkExtent3D] :: VkExtent3D -> Word32 data VkRect3D VkRect3D :: VkOffset3D -> VkExtent3D -> VkRect3D [$sel:vkOffset:VkRect3D] :: VkRect3D -> VkOffset3D [$sel:vkExtent:VkRect3D] :: VkRect3D -> VkExtent3D -- | Error and return codes newtype VkResult VkResult :: Int32 -> VkResult -- | Command completed successfully -- | A fence or query has not yet completed -- | A wait operation has not completed in the specified time -- | An event is signaled -- | An event is unsignalled -- | A return array was too small for the resul -- | A host memory allocation has failed -- | A device memory allocation has failed -- | The logical device has been lost. See -- | Initialization of a object has failed -- | Mapping of a memory object has failed -- | Layer specified does not exist -- | Extension specified does not exist -- | Requested feature is not available on this device -- | Unable to find a Vulkan driver -- | Too many objects of the type have already been created -- | Requested format is not supported on this device data VkViewport VkViewport :: CFloat -> CFloat -> CFloat -> CFloat -> CFloat -> CFloat -> VkViewport [$sel:vkX:VkViewport] :: VkViewport -> CFloat [$sel:vkY:VkViewport] :: VkViewport -> CFloat [$sel:vkWidth:VkViewport] :: VkViewport -> CFloat [$sel:vkHeight:VkViewport] :: VkViewport -> CFloat [$sel:vkMinDepth:VkViewport] :: VkViewport -> CFloat [$sel:vkMaxDepth:VkViewport] :: VkViewport -> CFloat data VkRect2D VkRect2D :: VkOffset2D -> VkExtent2D -> VkRect2D [$sel:vkOffset:VkRect2D] :: VkRect2D -> VkOffset2D [$sel:vkExtent:VkRect2D] :: VkRect2D -> VkExtent2D instance GHC.Classes.Eq Graphics.Vulkan.Core.VkRect2D instance GHC.Classes.Eq Graphics.Vulkan.Core.VkViewport instance Foreign.Storable.Storable Graphics.Vulkan.Core.VkResult instance GHC.Classes.Eq Graphics.Vulkan.Core.VkResult instance GHC.Classes.Eq Graphics.Vulkan.Core.VkRect3D instance GHC.Classes.Eq Graphics.Vulkan.Core.VkExtent3D instance GHC.Classes.Eq Graphics.Vulkan.Core.VkOffset3D instance GHC.Classes.Eq Graphics.Vulkan.Core.VkOffset2D instance Foreign.Storable.Storable Graphics.Vulkan.Core.VkBool32 instance GHC.Classes.Eq Graphics.Vulkan.Core.VkBool32 instance Foreign.Storable.Storable Graphics.Vulkan.Core.VkStructureType instance GHC.Classes.Eq Graphics.Vulkan.Core.VkStructureType instance Foreign.Storable.Storable Graphics.Vulkan.Core.VkSharingMode instance GHC.Classes.Eq Graphics.Vulkan.Core.VkSharingMode instance GHC.Classes.Eq Graphics.Vulkan.Core.VkExtent2D instance Foreign.Storable.Storable Graphics.Vulkan.Core.VkFormat instance GHC.Classes.Eq Graphics.Vulkan.Core.VkFormat instance Foreign.Storable.Storable Graphics.Vulkan.Core.VkDeviceSize instance GHC.Classes.Eq Graphics.Vulkan.Core.VkDeviceSize instance GHC.Show.Show Graphics.Vulkan.Core.VkFormat instance GHC.Read.Read Graphics.Vulkan.Core.VkFormat instance Foreign.Storable.Storable Graphics.Vulkan.Core.VkExtent2D instance GHC.Show.Show Graphics.Vulkan.Core.VkSharingMode instance GHC.Read.Read Graphics.Vulkan.Core.VkSharingMode instance GHC.Show.Show Graphics.Vulkan.Core.VkStructureType instance GHC.Read.Read Graphics.Vulkan.Core.VkStructureType instance Foreign.Storable.Storable Graphics.Vulkan.Core.VkOffset2D instance Foreign.Storable.Storable Graphics.Vulkan.Core.VkOffset3D instance Foreign.Storable.Storable Graphics.Vulkan.Core.VkExtent3D instance Foreign.Storable.Storable Graphics.Vulkan.Core.VkRect3D instance GHC.Show.Show Graphics.Vulkan.Core.VkResult instance GHC.Read.Read Graphics.Vulkan.Core.VkResult instance Foreign.Storable.Storable Graphics.Vulkan.Core.VkViewport instance Foreign.Storable.Storable Graphics.Vulkan.Core.VkRect2D module Graphics.Vulkan.KHR.Surface -- | Opaque flag newtype VkCompositeAlphaFlagsKHR VkCompositeAlphaFlagsKHR :: VkFlags -> VkCompositeAlphaFlagsKHR newtype VkPresentModeKHR VkPresentModeKHR :: Int32 -> VkPresentModeKHR newtype VkSurfaceKHR VkSurfaceKHR :: Word64 -> VkSurfaceKHR newtype VkColorSpaceKHR VkColorSpaceKHR :: Int32 -> VkColorSpaceKHR -- | Opaque flag newtype VkSurfaceTransformFlagsKHR VkSurfaceTransformFlagsKHR :: VkFlags -> VkSurfaceTransformFlagsKHR instance Foreign.Storable.Storable Graphics.Vulkan.KHR.Surface.VkSurfaceTransformFlagsKHR instance GHC.Classes.Eq Graphics.Vulkan.KHR.Surface.VkSurfaceTransformFlagsKHR instance Foreign.Storable.Storable Graphics.Vulkan.KHR.Surface.VkColorSpaceKHR instance GHC.Classes.Eq Graphics.Vulkan.KHR.Surface.VkColorSpaceKHR instance Foreign.Storable.Storable Graphics.Vulkan.KHR.Surface.VkSurfaceKHR instance GHC.Classes.Eq Graphics.Vulkan.KHR.Surface.VkSurfaceKHR instance Foreign.Storable.Storable Graphics.Vulkan.KHR.Surface.VkPresentModeKHR instance GHC.Classes.Eq Graphics.Vulkan.KHR.Surface.VkPresentModeKHR instance Foreign.Storable.Storable Graphics.Vulkan.KHR.Surface.VkCompositeAlphaFlagsKHR instance GHC.Classes.Eq Graphics.Vulkan.KHR.Surface.VkCompositeAlphaFlagsKHR instance GHC.Show.Show Graphics.Vulkan.KHR.Surface.VkPresentModeKHR instance GHC.Read.Read Graphics.Vulkan.KHR.Surface.VkPresentModeKHR instance GHC.Show.Show Graphics.Vulkan.KHR.Surface.VkColorSpaceKHR instance GHC.Read.Read Graphics.Vulkan.KHR.Surface.VkColorSpaceKHR module Graphics.Vulkan.Memory newtype VkDeviceMemory VkDeviceMemory :: Word64 -> VkDeviceMemory vkMapMemory :: VkDevice -> VkDeviceMemory -> VkDeviceSize -> VkDeviceSize -> VkMemoryMapFlags -> Ptr (Ptr Void) -> IO VkResult type PFN_vkInternalFreeNotification = FunPtr (Ptr Void -> CSize -> VkInternalAllocationType -> VkSystemAllocationScope -> IO ()) data VkAllocationCallbacks VkAllocationCallbacks :: Ptr Void -> PFN_vkAllocationFunction -> PFN_vkReallocationFunction -> PFN_vkFreeFunction -> PFN_vkInternalAllocationNotification -> PFN_vkInternalFreeNotification -> VkAllocationCallbacks [$sel:vkPUserData:VkAllocationCallbacks] :: VkAllocationCallbacks -> Ptr Void [$sel:vkPfnAllocation:VkAllocationCallbacks] :: VkAllocationCallbacks -> PFN_vkAllocationFunction [$sel:vkPfnReallocation:VkAllocationCallbacks] :: VkAllocationCallbacks -> PFN_vkReallocationFunction [$sel:vkPfnFree:VkAllocationCallbacks] :: VkAllocationCallbacks -> PFN_vkFreeFunction [$sel:vkPfnInternalAllocation:VkAllocationCallbacks] :: VkAllocationCallbacks -> PFN_vkInternalAllocationNotification [$sel:vkPfnInternalFree:VkAllocationCallbacks] :: VkAllocationCallbacks -> PFN_vkInternalFreeNotification vkInvalidateMappedMemoryRanges :: VkDevice -> Word32 -> Ptr VkMappedMemoryRange -> IO VkResult newtype VkSystemAllocationScope VkSystemAllocationScope :: Int32 -> VkSystemAllocationScope vkFlushMappedMemoryRanges :: VkDevice -> Word32 -> Ptr VkMappedMemoryRange -> IO VkResult -- | Opaque flag newtype VkMemoryMapFlags VkMemoryMapFlags :: VkFlags -> VkMemoryMapFlags type PFN_vkInternalAllocationNotification = FunPtr (Ptr Void -> CSize -> VkInternalAllocationType -> VkSystemAllocationScope -> IO ()) vkFreeMemory :: VkDevice -> VkDeviceMemory -> Ptr VkAllocationCallbacks -> IO () type PFN_vkReallocationFunction = FunPtr (Ptr Void -> Ptr Void -> CSize -> CSize -> VkSystemAllocationScope -> IO (Ptr Void)) vkUnmapMemory :: VkDevice -> VkDeviceMemory -> IO () type PFN_vkAllocationFunction = FunPtr (Ptr Void -> CSize -> CSize -> VkSystemAllocationScope -> IO (Ptr Void)) newtype VkInternalAllocationType VkInternalAllocationType :: Int32 -> VkInternalAllocationType type PFN_vkFreeFunction = FunPtr (Ptr Void -> Ptr Void -> IO ()) vkGetDeviceMemoryCommitment :: VkDevice -> VkDeviceMemory -> Ptr VkDeviceSize -> IO () vkAllocateMemory :: VkDevice -> Ptr VkMemoryAllocateInfo -> Ptr VkAllocationCallbacks -> Ptr VkDeviceMemory -> IO VkResult data VkMappedMemoryRange VkMappedMemoryRange :: VkStructureType -> Ptr Void -> VkDeviceMemory -> VkDeviceSize -> VkDeviceSize -> VkMappedMemoryRange [$sel:vkSType:VkMappedMemoryRange] :: VkMappedMemoryRange -> VkStructureType [$sel:vkPNext:VkMappedMemoryRange] :: VkMappedMemoryRange -> Ptr Void [$sel:vkMemory:VkMappedMemoryRange] :: VkMappedMemoryRange -> VkDeviceMemory [$sel:vkOffset:VkMappedMemoryRange] :: VkMappedMemoryRange -> VkDeviceSize [$sel:vkSize:VkMappedMemoryRange] :: VkMappedMemoryRange -> VkDeviceSize data VkMemoryAllocateInfo VkMemoryAllocateInfo :: VkStructureType -> Ptr Void -> VkDeviceSize -> Word32 -> VkMemoryAllocateInfo [$sel:vkSType:VkMemoryAllocateInfo] :: VkMemoryAllocateInfo -> VkStructureType [$sel:vkPNext:VkMemoryAllocateInfo] :: VkMemoryAllocateInfo -> Ptr Void [$sel:vkAllocationSize:VkMemoryAllocateInfo] :: VkMemoryAllocateInfo -> VkDeviceSize [$sel:vkMemoryTypeIndex:VkMemoryAllocateInfo] :: VkMemoryAllocateInfo -> Word32 instance GHC.Classes.Eq Graphics.Vulkan.Memory.VkMemoryAllocateInfo instance GHC.Classes.Eq Graphics.Vulkan.Memory.VkMappedMemoryRange instance GHC.Classes.Eq Graphics.Vulkan.Memory.VkAllocationCallbacks instance Foreign.Storable.Storable Graphics.Vulkan.Memory.VkInternalAllocationType instance GHC.Classes.Eq Graphics.Vulkan.Memory.VkInternalAllocationType instance Foreign.Storable.Storable Graphics.Vulkan.Memory.VkMemoryMapFlags instance GHC.Classes.Eq Graphics.Vulkan.Memory.VkMemoryMapFlags instance Foreign.Storable.Storable Graphics.Vulkan.Memory.VkSystemAllocationScope instance GHC.Classes.Eq Graphics.Vulkan.Memory.VkSystemAllocationScope instance Foreign.Storable.Storable Graphics.Vulkan.Memory.VkDeviceMemory instance GHC.Classes.Eq Graphics.Vulkan.Memory.VkDeviceMemory instance Foreign.Storable.Storable Graphics.Vulkan.Memory.VkAllocationCallbacks instance GHC.Show.Show Graphics.Vulkan.Memory.VkSystemAllocationScope instance GHC.Read.Read Graphics.Vulkan.Memory.VkSystemAllocationScope instance GHC.Show.Show Graphics.Vulkan.Memory.VkInternalAllocationType instance GHC.Read.Read Graphics.Vulkan.Memory.VkInternalAllocationType instance Foreign.Storable.Storable Graphics.Vulkan.Memory.VkMappedMemoryRange instance Foreign.Storable.Storable Graphics.Vulkan.Memory.VkMemoryAllocateInfo module Graphics.Vulkan.Device vkCreateDevice :: VkPhysicalDevice -> Ptr VkDeviceCreateInfo -> Ptr VkAllocationCallbacks -> Ptr VkDevice -> IO VkResult data VkPhysicalDeviceFeatures VkPhysicalDeviceFeatures :: VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkPhysicalDeviceFeatures [$sel:vkRobustBufferAccess:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkFullDrawIndexUint:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkImageCubeArray:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkIndependentBlend:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkGeometryShader:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkTessellationShader:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkSampleRateShading:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkDualSrcBlend:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkLogicOp:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkMultiDrawIndirect:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkDrawIndirectFirstInstance:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkDepthClamp:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkDepthBiasClamp:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkFillModeNonSolid:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkDepthBounds:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkWideLines:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkLargePoints:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkAlphaToOne:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkMultiViewport:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkSamplerAnisotropy:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkTextureCompressionETC:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkTextureCompressionASTC_LDR:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkTextureCompressionBC:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkOcclusionQueryPrecise:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkPipelineStatisticsQuery:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkVertexPipelineStoresAndAtomics:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkFragmentStoresAndAtomics:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkShaderTessellationAndGeometryPointSize:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkShaderImageGatherExtended:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkShaderStorageImageExtendedFormats:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkShaderStorageImageMultisample:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkShaderStorageImageReadWithoutFormat:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkShaderStorageImageWriteWithoutFormat:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkShaderUniformBufferArrayDynamicIndexing:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkShaderSampledImageArrayDynamicIndexing:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkShaderStorageBufferArrayDynamicIndexing:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkShaderStorageImageArrayDynamicIndexing:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkShaderClipDistance:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkShaderCullDistance:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkShaderFloat:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkShaderInt:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkShaderInt:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkShaderResourceResidency:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkShaderResourceMinLod:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkSparseBinding:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkSparseResidencyBuffer:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkSparseResidencyImage:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkSparseResidencyImage:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkSparseResidency:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkSparseResidency:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkSparseResidency:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkSparseResidency:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkSparseResidencyAliased:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkVariableMultisampleRate:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 [$sel:vkInheritedQueries:VkPhysicalDeviceFeatures] :: VkPhysicalDeviceFeatures -> VkBool32 -- | Opaque flag newtype VkDeviceCreateFlags VkDeviceCreateFlags :: VkFlags -> VkDeviceCreateFlags data VkDeviceQueueCreateInfo VkDeviceQueueCreateInfo :: VkStructureType -> Ptr Void -> VkDeviceQueueCreateFlags -> Word32 -> Word32 -> Ptr CFloat -> VkDeviceQueueCreateInfo [$sel:vkSType:VkDeviceQueueCreateInfo] :: VkDeviceQueueCreateInfo -> VkStructureType [$sel:vkPNext:VkDeviceQueueCreateInfo] :: VkDeviceQueueCreateInfo -> Ptr Void [$sel:vkFlags:VkDeviceQueueCreateInfo] :: VkDeviceQueueCreateInfo -> VkDeviceQueueCreateFlags [$sel:vkQueueFamilyIndex:VkDeviceQueueCreateInfo] :: VkDeviceQueueCreateInfo -> Word32 [$sel:vkQueueCount:VkDeviceQueueCreateInfo] :: VkDeviceQueueCreateInfo -> Word32 [$sel:vkPQueuePriorities:VkDeviceQueueCreateInfo] :: VkDeviceQueueCreateInfo -> Ptr CFloat -- | Opaque flag newtype VkDeviceQueueCreateFlags VkDeviceQueueCreateFlags :: VkFlags -> VkDeviceQueueCreateFlags vkDestroyDevice :: VkDevice -> Ptr VkAllocationCallbacks -> IO () data VkPhysicalDevice_T type VkPhysicalDevice = Ptr VkPhysicalDevice_T data VkDevice_T type VkDevice = Ptr VkDevice_T data VkDeviceCreateInfo VkDeviceCreateInfo :: VkStructureType -> Ptr Void -> VkDeviceCreateFlags -> Word32 -> Ptr VkDeviceQueueCreateInfo -> Word32 -> Ptr (Ptr CChar) -> Word32 -> Ptr (Ptr CChar) -> Ptr VkPhysicalDeviceFeatures -> VkDeviceCreateInfo [$sel:vkSType:VkDeviceCreateInfo] :: VkDeviceCreateInfo -> VkStructureType [$sel:vkPNext:VkDeviceCreateInfo] :: VkDeviceCreateInfo -> Ptr Void [$sel:vkFlags:VkDeviceCreateInfo] :: VkDeviceCreateInfo -> VkDeviceCreateFlags [$sel:vkQueueCreateInfoCount:VkDeviceCreateInfo] :: VkDeviceCreateInfo -> Word32 [$sel:vkPQueueCreateInfos:VkDeviceCreateInfo] :: VkDeviceCreateInfo -> Ptr VkDeviceQueueCreateInfo [$sel:vkEnabledLayerCount:VkDeviceCreateInfo] :: VkDeviceCreateInfo -> Word32 [$sel:vkPpEnabledLayerNames:VkDeviceCreateInfo] :: VkDeviceCreateInfo -> Ptr (Ptr CChar) [$sel:vkEnabledExtensionCount:VkDeviceCreateInfo] :: VkDeviceCreateInfo -> Word32 [$sel:vkPpEnabledExtensionNames:VkDeviceCreateInfo] :: VkDeviceCreateInfo -> Ptr (Ptr CChar) [$sel:vkPEnabledFeatures:VkDeviceCreateInfo] :: VkDeviceCreateInfo -> Ptr VkPhysicalDeviceFeatures instance GHC.Classes.Eq Graphics.Vulkan.Device.VkDeviceCreateInfo instance GHC.Classes.Eq Graphics.Vulkan.Device.VkPhysicalDeviceFeatures instance Foreign.Storable.Storable Graphics.Vulkan.Device.VkDeviceCreateFlags instance GHC.Classes.Eq Graphics.Vulkan.Device.VkDeviceCreateFlags instance GHC.Classes.Eq Graphics.Vulkan.Device.VkDeviceQueueCreateInfo instance Foreign.Storable.Storable Graphics.Vulkan.Device.VkDeviceQueueCreateFlags instance GHC.Classes.Eq Graphics.Vulkan.Device.VkDeviceQueueCreateFlags instance Foreign.Storable.Storable Graphics.Vulkan.Device.VkPhysicalDeviceFeatures instance Foreign.Storable.Storable Graphics.Vulkan.Device.VkDeviceQueueCreateInfo instance Foreign.Storable.Storable Graphics.Vulkan.Device.VkDeviceCreateInfo module Graphics.Vulkan.Event vkDestroyEvent :: VkDevice -> VkEvent -> Ptr VkAllocationCallbacks -> IO () data VkEventCreateInfo VkEventCreateInfo :: VkStructureType -> Ptr Void -> VkEventCreateFlags -> VkEventCreateInfo [$sel:vkSType:VkEventCreateInfo] :: VkEventCreateInfo -> VkStructureType [$sel:vkPNext:VkEventCreateInfo] :: VkEventCreateInfo -> Ptr Void [$sel:vkFlags:VkEventCreateInfo] :: VkEventCreateInfo -> VkEventCreateFlags vkSetEvent :: VkDevice -> VkEvent -> IO VkResult vkGetEventStatus :: VkDevice -> VkEvent -> IO VkResult vkResetEvent :: VkDevice -> VkEvent -> IO VkResult vkCreateEvent :: VkDevice -> Ptr VkEventCreateInfo -> Ptr VkAllocationCallbacks -> Ptr VkEvent -> IO VkResult newtype VkEvent VkEvent :: Word64 -> VkEvent -- | Opaque flag newtype VkEventCreateFlags VkEventCreateFlags :: VkFlags -> VkEventCreateFlags instance GHC.Classes.Eq Graphics.Vulkan.Event.VkEventCreateInfo instance Foreign.Storable.Storable Graphics.Vulkan.Event.VkEventCreateFlags instance GHC.Classes.Eq Graphics.Vulkan.Event.VkEventCreateFlags instance Foreign.Storable.Storable Graphics.Vulkan.Event.VkEvent instance GHC.Classes.Eq Graphics.Vulkan.Event.VkEvent instance Foreign.Storable.Storable Graphics.Vulkan.Event.VkEventCreateInfo module Graphics.Vulkan.Fence data VkFenceCreateInfo VkFenceCreateInfo :: VkStructureType -> Ptr Void -> VkFenceCreateFlags -> VkFenceCreateInfo [$sel:vkSType:VkFenceCreateInfo] :: VkFenceCreateInfo -> VkStructureType [$sel:vkPNext:VkFenceCreateInfo] :: VkFenceCreateInfo -> Ptr Void [$sel:vkFlags:VkFenceCreateInfo] :: VkFenceCreateInfo -> VkFenceCreateFlags vkResetFences :: VkDevice -> Word32 -> Ptr VkFence -> IO VkResult vkDestroyFence :: VkDevice -> VkFence -> Ptr VkAllocationCallbacks -> IO () vkWaitForFences :: VkDevice -> Word32 -> Ptr VkFence -> VkBool32 -> Word64 -> IO VkResult vkGetFenceStatus :: VkDevice -> VkFence -> IO VkResult newtype VkFenceCreateFlagBits VkFenceCreateFlagBits :: VkFlags -> VkFenceCreateFlagBits -- | Alias for VkFenceCreateFlagBits type VkFenceCreateFlags = VkFenceCreateFlagBits vkCreateFence :: VkDevice -> Ptr VkFenceCreateInfo -> Ptr VkAllocationCallbacks -> Ptr VkFence -> IO VkResult newtype VkFence VkFence :: Word64 -> VkFence instance Foreign.Storable.Storable Graphics.Vulkan.Fence.VkFence instance GHC.Classes.Eq Graphics.Vulkan.Fence.VkFence instance GHC.Classes.Eq Graphics.Vulkan.Fence.VkFenceCreateInfo instance Data.Bits.FiniteBits Graphics.Vulkan.Fence.VkFenceCreateFlagBits instance Data.Bits.Bits Graphics.Vulkan.Fence.VkFenceCreateFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.Fence.VkFenceCreateFlagBits instance GHC.Classes.Eq Graphics.Vulkan.Fence.VkFenceCreateFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.Fence.VkFenceCreateInfo instance GHC.Show.Show Graphics.Vulkan.Fence.VkFenceCreateFlagBits instance GHC.Read.Read Graphics.Vulkan.Fence.VkFenceCreateFlagBits module Graphics.Vulkan.PipelineCache vkCreatePipelineCache :: VkDevice -> Ptr VkPipelineCacheCreateInfo -> Ptr VkAllocationCallbacks -> Ptr VkPipelineCache -> IO VkResult vkGetPipelineCacheData :: VkDevice -> VkPipelineCache -> Ptr CSize -> Ptr Void -> IO VkResult newtype VkPipelineCache VkPipelineCache :: Word64 -> VkPipelineCache data VkPipelineCacheCreateInfo VkPipelineCacheCreateInfo :: VkStructureType -> Ptr Void -> VkPipelineCacheCreateFlags -> CSize -> Ptr Void -> VkPipelineCacheCreateInfo [$sel:vkSType:VkPipelineCacheCreateInfo] :: VkPipelineCacheCreateInfo -> VkStructureType [$sel:vkPNext:VkPipelineCacheCreateInfo] :: VkPipelineCacheCreateInfo -> Ptr Void [$sel:vkFlags:VkPipelineCacheCreateInfo] :: VkPipelineCacheCreateInfo -> VkPipelineCacheCreateFlags [$sel:vkInitialDataSize:VkPipelineCacheCreateInfo] :: VkPipelineCacheCreateInfo -> CSize [$sel:vkPInitialData:VkPipelineCacheCreateInfo] :: VkPipelineCacheCreateInfo -> Ptr Void vkMergePipelineCaches :: VkDevice -> VkPipelineCache -> Word32 -> Ptr VkPipelineCache -> IO VkResult -- | Opaque flag newtype VkPipelineCacheCreateFlags VkPipelineCacheCreateFlags :: VkFlags -> VkPipelineCacheCreateFlags vkDestroyPipelineCache :: VkDevice -> VkPipelineCache -> Ptr VkAllocationCallbacks -> IO () instance GHC.Classes.Eq Graphics.Vulkan.PipelineCache.VkPipelineCacheCreateInfo instance Foreign.Storable.Storable Graphics.Vulkan.PipelineCache.VkPipelineCacheCreateFlags instance GHC.Classes.Eq Graphics.Vulkan.PipelineCache.VkPipelineCacheCreateFlags instance Foreign.Storable.Storable Graphics.Vulkan.PipelineCache.VkPipelineCache instance GHC.Classes.Eq Graphics.Vulkan.PipelineCache.VkPipelineCache instance Foreign.Storable.Storable Graphics.Vulkan.PipelineCache.VkPipelineCacheCreateInfo module Graphics.Vulkan.Query vkGetQueryPoolResults :: VkDevice -> VkQueryPool -> Word32 -> Word32 -> CSize -> Ptr Void -> VkDeviceSize -> VkQueryResultFlags -> IO VkResult vkDestroyQueryPool :: VkDevice -> VkQueryPool -> Ptr VkAllocationCallbacks -> IO () data VkQueryPoolCreateInfo VkQueryPoolCreateInfo :: VkStructureType -> Ptr Void -> VkQueryPoolCreateFlags -> VkQueryType -> Word32 -> VkQueryPipelineStatisticFlags -> VkQueryPoolCreateInfo [$sel:vkSType:VkQueryPoolCreateInfo] :: VkQueryPoolCreateInfo -> VkStructureType [$sel:vkPNext:VkQueryPoolCreateInfo] :: VkQueryPoolCreateInfo -> Ptr Void [$sel:vkFlags:VkQueryPoolCreateInfo] :: VkQueryPoolCreateInfo -> VkQueryPoolCreateFlags [$sel:vkQueryType:VkQueryPoolCreateInfo] :: VkQueryPoolCreateInfo -> VkQueryType [$sel:vkQueryCount:VkQueryPoolCreateInfo] :: VkQueryPoolCreateInfo -> Word32 [$sel:vkPipelineStatistics:VkQueryPoolCreateInfo] :: VkQueryPoolCreateInfo -> VkQueryPipelineStatisticFlags newtype VkQueryResultFlagBits VkQueryResultFlagBits :: VkFlags -> VkQueryResultFlagBits -- | Alias for VkQueryResultFlagBits type VkQueryResultFlags = VkQueryResultFlagBits -- | Results of the queries are written to the destination buffer as 64-bit -- values -- | Results of the queries are waited on before proceeding with the result -- copy -- | Besides the results of the query, the availability of the results is -- also written -- | Copy the partial results of the query even if the final results aren't -- available newtype VkQueryType VkQueryType :: Int32 -> VkQueryType -- | Optional newtype VkQueryPool VkQueryPool :: Word64 -> VkQueryPool vkCreateQueryPool :: VkDevice -> Ptr VkQueryPoolCreateInfo -> Ptr VkAllocationCallbacks -> Ptr VkQueryPool -> IO VkResult newtype VkQueryControlFlagBits VkQueryControlFlagBits :: VkFlags -> VkQueryControlFlagBits -- | Alias for VkQueryControlFlagBits type VkQueryControlFlags = VkQueryControlFlagBits -- | Require precise results to be collected by the query -- | Opaque flag newtype VkQueryPoolCreateFlags VkQueryPoolCreateFlags :: VkFlags -> VkQueryPoolCreateFlags newtype VkQueryPipelineStatisticFlagBits VkQueryPipelineStatisticFlagBits :: VkFlags -> VkQueryPipelineStatisticFlagBits -- | Alias for VkQueryPipelineStatisticFlagBits type VkQueryPipelineStatisticFlags = VkQueryPipelineStatisticFlagBits -- | Optional -- | Optional -- | Optional -- | Optional -- | Optional -- | Optional -- | Optional -- | Optional -- | Optional -- | Optional -- | Optional instance GHC.Classes.Eq Graphics.Vulkan.Query.VkQueryPoolCreateInfo instance Data.Bits.FiniteBits Graphics.Vulkan.Query.VkQueryPipelineStatisticFlagBits instance Data.Bits.Bits Graphics.Vulkan.Query.VkQueryPipelineStatisticFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.Query.VkQueryPipelineStatisticFlagBits instance GHC.Classes.Eq Graphics.Vulkan.Query.VkQueryPipelineStatisticFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.Query.VkQueryPoolCreateFlags instance GHC.Classes.Eq Graphics.Vulkan.Query.VkQueryPoolCreateFlags instance Data.Bits.FiniteBits Graphics.Vulkan.Query.VkQueryControlFlagBits instance Data.Bits.Bits Graphics.Vulkan.Query.VkQueryControlFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.Query.VkQueryControlFlagBits instance GHC.Classes.Eq Graphics.Vulkan.Query.VkQueryControlFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.Query.VkQueryPool instance GHC.Classes.Eq Graphics.Vulkan.Query.VkQueryPool instance Foreign.Storable.Storable Graphics.Vulkan.Query.VkQueryType instance GHC.Classes.Eq Graphics.Vulkan.Query.VkQueryType instance Data.Bits.FiniteBits Graphics.Vulkan.Query.VkQueryResultFlagBits instance Data.Bits.Bits Graphics.Vulkan.Query.VkQueryResultFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.Query.VkQueryResultFlagBits instance GHC.Classes.Eq Graphics.Vulkan.Query.VkQueryResultFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.Query.VkQueryPoolCreateInfo instance GHC.Show.Show Graphics.Vulkan.Query.VkQueryResultFlagBits instance GHC.Read.Read Graphics.Vulkan.Query.VkQueryResultFlagBits instance GHC.Show.Show Graphics.Vulkan.Query.VkQueryType instance GHC.Read.Read Graphics.Vulkan.Query.VkQueryType instance GHC.Show.Show Graphics.Vulkan.Query.VkQueryControlFlagBits instance GHC.Read.Read Graphics.Vulkan.Query.VkQueryControlFlagBits instance GHC.Show.Show Graphics.Vulkan.Query.VkQueryPipelineStatisticFlagBits instance GHC.Read.Read Graphics.Vulkan.Query.VkQueryPipelineStatisticFlagBits module Graphics.Vulkan.QueueSemaphore -- | Opaque flag newtype VkSemaphoreCreateFlags VkSemaphoreCreateFlags :: VkFlags -> VkSemaphoreCreateFlags vkDestroySemaphore :: VkDevice -> VkSemaphore -> Ptr VkAllocationCallbacks -> IO () newtype VkSemaphore VkSemaphore :: Word64 -> VkSemaphore data VkSemaphoreCreateInfo VkSemaphoreCreateInfo :: VkStructureType -> Ptr Void -> VkSemaphoreCreateFlags -> VkSemaphoreCreateInfo [$sel:vkSType:VkSemaphoreCreateInfo] :: VkSemaphoreCreateInfo -> VkStructureType [$sel:vkPNext:VkSemaphoreCreateInfo] :: VkSemaphoreCreateInfo -> Ptr Void [$sel:vkFlags:VkSemaphoreCreateInfo] :: VkSemaphoreCreateInfo -> VkSemaphoreCreateFlags vkCreateSemaphore :: VkDevice -> Ptr VkSemaphoreCreateInfo -> Ptr VkAllocationCallbacks -> Ptr VkSemaphore -> IO VkResult instance GHC.Classes.Eq Graphics.Vulkan.QueueSemaphore.VkSemaphoreCreateInfo instance Foreign.Storable.Storable Graphics.Vulkan.QueueSemaphore.VkSemaphore instance GHC.Classes.Eq Graphics.Vulkan.QueueSemaphore.VkSemaphore instance Foreign.Storable.Storable Graphics.Vulkan.QueueSemaphore.VkSemaphoreCreateFlags instance GHC.Classes.Eq Graphics.Vulkan.QueueSemaphore.VkSemaphoreCreateFlags instance Foreign.Storable.Storable Graphics.Vulkan.QueueSemaphore.VkSemaphoreCreateInfo module Graphics.Vulkan.Sampler newtype VkSamplerAddressMode VkSamplerAddressMode :: Int32 -> VkSamplerAddressMode newtype VkFilter VkFilter :: Int32 -> VkFilter newtype VkBorderColor VkBorderColor :: Int32 -> VkBorderColor newtype VkCompareOp VkCompareOp :: Int32 -> VkCompareOp newtype VkSampler VkSampler :: Word64 -> VkSampler data VkSamplerCreateInfo VkSamplerCreateInfo :: VkStructureType -> Ptr Void -> VkSamplerCreateFlags -> VkFilter -> VkFilter -> VkSamplerMipmapMode -> VkSamplerAddressMode -> VkSamplerAddressMode -> VkSamplerAddressMode -> CFloat -> VkBool32 -> CFloat -> VkBool32 -> VkCompareOp -> CFloat -> CFloat -> VkBorderColor -> VkBool32 -> VkSamplerCreateInfo [$sel:vkSType:VkSamplerCreateInfo] :: VkSamplerCreateInfo -> VkStructureType [$sel:vkPNext:VkSamplerCreateInfo] :: VkSamplerCreateInfo -> Ptr Void [$sel:vkFlags:VkSamplerCreateInfo] :: VkSamplerCreateInfo -> VkSamplerCreateFlags [$sel:vkMagFilter:VkSamplerCreateInfo] :: VkSamplerCreateInfo -> VkFilter [$sel:vkMinFilter:VkSamplerCreateInfo] :: VkSamplerCreateInfo -> VkFilter [$sel:vkMipmapMode:VkSamplerCreateInfo] :: VkSamplerCreateInfo -> VkSamplerMipmapMode [$sel:vkAddressModeU:VkSamplerCreateInfo] :: VkSamplerCreateInfo -> VkSamplerAddressMode [$sel:vkAddressModeV:VkSamplerCreateInfo] :: VkSamplerCreateInfo -> VkSamplerAddressMode [$sel:vkAddressModeW:VkSamplerCreateInfo] :: VkSamplerCreateInfo -> VkSamplerAddressMode [$sel:vkMipLodBias:VkSamplerCreateInfo] :: VkSamplerCreateInfo -> CFloat [$sel:vkAnisotropyEnable:VkSamplerCreateInfo] :: VkSamplerCreateInfo -> VkBool32 [$sel:vkMaxAnisotropy:VkSamplerCreateInfo] :: VkSamplerCreateInfo -> CFloat [$sel:vkCompareEnable:VkSamplerCreateInfo] :: VkSamplerCreateInfo -> VkBool32 [$sel:vkCompareOp:VkSamplerCreateInfo] :: VkSamplerCreateInfo -> VkCompareOp [$sel:vkMinLod:VkSamplerCreateInfo] :: VkSamplerCreateInfo -> CFloat [$sel:vkMaxLod:VkSamplerCreateInfo] :: VkSamplerCreateInfo -> CFloat [$sel:vkBorderColor:VkSamplerCreateInfo] :: VkSamplerCreateInfo -> VkBorderColor [$sel:vkUnnormalizedCoordinates:VkSamplerCreateInfo] :: VkSamplerCreateInfo -> VkBool32 -- | Opaque flag newtype VkSamplerCreateFlags VkSamplerCreateFlags :: VkFlags -> VkSamplerCreateFlags newtype VkSamplerMipmapMode VkSamplerMipmapMode :: Int32 -> VkSamplerMipmapMode -- | Choose nearest mip level -- | Linear filter between mip levels vkCreateSampler :: VkDevice -> Ptr VkSamplerCreateInfo -> Ptr VkAllocationCallbacks -> Ptr VkSampler -> IO VkResult newtype VkSampleCountFlagBits VkSampleCountFlagBits :: VkFlags -> VkSampleCountFlagBits -- | Alias for VkSampleCountFlagBits type VkSampleCountFlags = VkSampleCountFlagBits -- | Sample count 1 supported -- | Sample count 2 supported -- | Sample count 4 supported -- | Sample count 8 supported -- | Sample count 16 supported -- | Sample count 32 supported -- | Sample count 64 supported vkDestroySampler :: VkDevice -> VkSampler -> Ptr VkAllocationCallbacks -> IO () instance Data.Bits.FiniteBits Graphics.Vulkan.Sampler.VkSampleCountFlagBits instance Data.Bits.Bits Graphics.Vulkan.Sampler.VkSampleCountFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.Sampler.VkSampleCountFlagBits instance GHC.Classes.Eq Graphics.Vulkan.Sampler.VkSampleCountFlagBits instance GHC.Classes.Eq Graphics.Vulkan.Sampler.VkSamplerCreateInfo instance Foreign.Storable.Storable Graphics.Vulkan.Sampler.VkSamplerMipmapMode instance GHC.Classes.Eq Graphics.Vulkan.Sampler.VkSamplerMipmapMode instance Foreign.Storable.Storable Graphics.Vulkan.Sampler.VkSamplerCreateFlags instance GHC.Classes.Eq Graphics.Vulkan.Sampler.VkSamplerCreateFlags instance Foreign.Storable.Storable Graphics.Vulkan.Sampler.VkSampler instance GHC.Classes.Eq Graphics.Vulkan.Sampler.VkSampler instance Foreign.Storable.Storable Graphics.Vulkan.Sampler.VkCompareOp instance GHC.Classes.Eq Graphics.Vulkan.Sampler.VkCompareOp instance Foreign.Storable.Storable Graphics.Vulkan.Sampler.VkBorderColor instance GHC.Classes.Eq Graphics.Vulkan.Sampler.VkBorderColor instance Foreign.Storable.Storable Graphics.Vulkan.Sampler.VkFilter instance GHC.Classes.Eq Graphics.Vulkan.Sampler.VkFilter instance Foreign.Storable.Storable Graphics.Vulkan.Sampler.VkSamplerAddressMode instance GHC.Classes.Eq Graphics.Vulkan.Sampler.VkSamplerAddressMode instance GHC.Show.Show Graphics.Vulkan.Sampler.VkSamplerAddressMode instance GHC.Read.Read Graphics.Vulkan.Sampler.VkSamplerAddressMode instance GHC.Show.Show Graphics.Vulkan.Sampler.VkFilter instance GHC.Read.Read Graphics.Vulkan.Sampler.VkFilter instance GHC.Show.Show Graphics.Vulkan.Sampler.VkBorderColor instance GHC.Read.Read Graphics.Vulkan.Sampler.VkBorderColor instance GHC.Show.Show Graphics.Vulkan.Sampler.VkCompareOp instance GHC.Read.Read Graphics.Vulkan.Sampler.VkCompareOp instance Foreign.Storable.Storable Graphics.Vulkan.Sampler.VkSamplerCreateInfo instance GHC.Show.Show Graphics.Vulkan.Sampler.VkSamplerMipmapMode instance GHC.Read.Read Graphics.Vulkan.Sampler.VkSamplerMipmapMode instance GHC.Show.Show Graphics.Vulkan.Sampler.VkSampleCountFlagBits instance GHC.Read.Read Graphics.Vulkan.Sampler.VkSampleCountFlagBits module Graphics.Vulkan.Image vkCreateImage :: VkDevice -> Ptr VkImageCreateInfo -> Ptr VkAllocationCallbacks -> Ptr VkImage -> IO VkResult newtype VkImageCreateFlagBits VkImageCreateFlagBits :: VkFlags -> VkImageCreateFlagBits -- | Alias for VkImageCreateFlagBits type VkImageCreateFlags = VkImageCreateFlagBits -- | Image should support sparse backing -- | Image should support sparse backing with partial residency -- | Image should support constent data access to physical memory blocks -- mapped into multiple locations of sparse images -- | Allows image views to have different format than the base image -- | Allows creating image views with cube type from the created image newtype VkImageUsageFlagBits VkImageUsageFlagBits :: VkFlags -> VkImageUsageFlagBits -- | Alias for VkImageUsageFlagBits type VkImageUsageFlags = VkImageUsageFlagBits -- | Can be used as a source of transfer operations -- | Can be used as a destination of transfer operations -- | Can be sampled from (SAMPLED_IMAGE and COMBINED_IMAGE_SAMPLER -- descriptor types) -- | Can be used as storage image (STORAGE_IMAGE descriptor type) -- | Can be used as framebuffer color attachment -- | Can be used as framebuffer depth/stencil attachment -- | Image data not needed outside of rendering -- | Can be used as framebuffer input attachment newtype VkImage VkImage :: Word64 -> VkImage newtype VkImageAspectFlagBits VkImageAspectFlagBits :: VkFlags -> VkImageAspectFlagBits -- | Alias for VkImageAspectFlagBits type VkImageAspectFlags = VkImageAspectFlagBits data VkSubresourceLayout VkSubresourceLayout :: VkDeviceSize -> VkDeviceSize -> VkDeviceSize -> VkDeviceSize -> VkDeviceSize -> VkSubresourceLayout [$sel:vkOffset:VkSubresourceLayout] :: VkSubresourceLayout -> VkDeviceSize [$sel:vkSize:VkSubresourceLayout] :: VkSubresourceLayout -> VkDeviceSize [$sel:vkRowPitch:VkSubresourceLayout] :: VkSubresourceLayout -> VkDeviceSize [$sel:vkArrayPitch:VkSubresourceLayout] :: VkSubresourceLayout -> VkDeviceSize [$sel:vkDepthPitch:VkSubresourceLayout] :: VkSubresourceLayout -> VkDeviceSize newtype VkImageTiling VkImageTiling :: Int32 -> VkImageTiling newtype VkImageLayout VkImageLayout :: Int32 -> VkImageLayout -- | Implicit layout an image is when its contents are undefined due to -- various reasons (e.g. right after creation) -- | General layout when image can be used for any kind of access -- | Optimal layout when image is only used for color attachment read/write -- | Optimal layout when image is only used for depthstencil attachment -- readwrite -- | Optimal layout when image is used for read only depth/stencil -- attachment and shader access -- | Optimal layout when image is used for read only shader access -- | Optimal layout when image is used only as source of transfer -- operations -- | Optimal layout when image is used only as destination of transfer -- operations -- | Initial layout used when the data is populated by the CPU newtype VkImageType VkImageType :: Int32 -> VkImageType vkDestroyImage :: VkDevice -> VkImage -> Ptr VkAllocationCallbacks -> IO () data VkImageSubresource VkImageSubresource :: VkImageAspectFlags -> Word32 -> Word32 -> VkImageSubresource [$sel:vkAspectMask:VkImageSubresource] :: VkImageSubresource -> VkImageAspectFlags [$sel:vkMipLevel:VkImageSubresource] :: VkImageSubresource -> Word32 [$sel:vkArrayLayer:VkImageSubresource] :: VkImageSubresource -> Word32 data VkImageSubresourceRange VkImageSubresourceRange :: VkImageAspectFlags -> Word32 -> Word32 -> Word32 -> Word32 -> VkImageSubresourceRange [$sel:vkAspectMask:VkImageSubresourceRange] :: VkImageSubresourceRange -> VkImageAspectFlags [$sel:vkBaseMipLevel:VkImageSubresourceRange] :: VkImageSubresourceRange -> Word32 [$sel:vkLevelCount:VkImageSubresourceRange] :: VkImageSubresourceRange -> Word32 [$sel:vkBaseArrayLayer:VkImageSubresourceRange] :: VkImageSubresourceRange -> Word32 [$sel:vkLayerCount:VkImageSubresourceRange] :: VkImageSubresourceRange -> Word32 vkGetImageSubresourceLayout :: VkDevice -> VkImage -> Ptr VkImageSubresource -> Ptr VkSubresourceLayout -> IO () data VkImageCreateInfo VkImageCreateInfo :: VkStructureType -> Ptr Void -> VkImageCreateFlags -> VkImageType -> VkFormat -> VkExtent3D -> Word32 -> Word32 -> VkSampleCountFlagBits -> VkImageTiling -> VkImageUsageFlags -> VkSharingMode -> Word32 -> Ptr Word32 -> VkImageLayout -> VkImageCreateInfo [$sel:vkSType:VkImageCreateInfo] :: VkImageCreateInfo -> VkStructureType [$sel:vkPNext:VkImageCreateInfo] :: VkImageCreateInfo -> Ptr Void [$sel:vkFlags:VkImageCreateInfo] :: VkImageCreateInfo -> VkImageCreateFlags [$sel:vkImageType:VkImageCreateInfo] :: VkImageCreateInfo -> VkImageType [$sel:vkFormat:VkImageCreateInfo] :: VkImageCreateInfo -> VkFormat [$sel:vkExtent:VkImageCreateInfo] :: VkImageCreateInfo -> VkExtent3D [$sel:vkMipLevels:VkImageCreateInfo] :: VkImageCreateInfo -> Word32 [$sel:vkArrayLayers:VkImageCreateInfo] :: VkImageCreateInfo -> Word32 [$sel:vkSamples:VkImageCreateInfo] :: VkImageCreateInfo -> VkSampleCountFlagBits [$sel:vkTiling:VkImageCreateInfo] :: VkImageCreateInfo -> VkImageTiling [$sel:vkUsage:VkImageCreateInfo] :: VkImageCreateInfo -> VkImageUsageFlags [$sel:vkSharingMode:VkImageCreateInfo] :: VkImageCreateInfo -> VkSharingMode [$sel:vkQueueFamilyIndexCount:VkImageCreateInfo] :: VkImageCreateInfo -> Word32 [$sel:vkPQueueFamilyIndices:VkImageCreateInfo] :: VkImageCreateInfo -> Ptr Word32 [$sel:vkInitialLayout:VkImageCreateInfo] :: VkImageCreateInfo -> VkImageLayout instance GHC.Classes.Eq Graphics.Vulkan.Image.VkImageCreateInfo instance GHC.Classes.Eq Graphics.Vulkan.Image.VkImageSubresourceRange instance GHC.Classes.Eq Graphics.Vulkan.Image.VkImageSubresource instance Foreign.Storable.Storable Graphics.Vulkan.Image.VkImageType instance GHC.Classes.Eq Graphics.Vulkan.Image.VkImageType instance Foreign.Storable.Storable Graphics.Vulkan.Image.VkImageLayout instance GHC.Classes.Eq Graphics.Vulkan.Image.VkImageLayout instance Foreign.Storable.Storable Graphics.Vulkan.Image.VkImageTiling instance GHC.Classes.Eq Graphics.Vulkan.Image.VkImageTiling instance GHC.Classes.Eq Graphics.Vulkan.Image.VkSubresourceLayout instance Data.Bits.FiniteBits Graphics.Vulkan.Image.VkImageAspectFlagBits instance Data.Bits.Bits Graphics.Vulkan.Image.VkImageAspectFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.Image.VkImageAspectFlagBits instance GHC.Classes.Eq Graphics.Vulkan.Image.VkImageAspectFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.Image.VkImage instance GHC.Classes.Eq Graphics.Vulkan.Image.VkImage instance Data.Bits.FiniteBits Graphics.Vulkan.Image.VkImageUsageFlagBits instance Data.Bits.Bits Graphics.Vulkan.Image.VkImageUsageFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.Image.VkImageUsageFlagBits instance GHC.Classes.Eq Graphics.Vulkan.Image.VkImageUsageFlagBits instance Data.Bits.FiniteBits Graphics.Vulkan.Image.VkImageCreateFlagBits instance Data.Bits.Bits Graphics.Vulkan.Image.VkImageCreateFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.Image.VkImageCreateFlagBits instance GHC.Classes.Eq Graphics.Vulkan.Image.VkImageCreateFlagBits instance GHC.Show.Show Graphics.Vulkan.Image.VkImageCreateFlagBits instance GHC.Read.Read Graphics.Vulkan.Image.VkImageCreateFlagBits instance GHC.Show.Show Graphics.Vulkan.Image.VkImageUsageFlagBits instance GHC.Read.Read Graphics.Vulkan.Image.VkImageUsageFlagBits instance GHC.Show.Show Graphics.Vulkan.Image.VkImageAspectFlagBits instance GHC.Read.Read Graphics.Vulkan.Image.VkImageAspectFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.Image.VkSubresourceLayout instance GHC.Show.Show Graphics.Vulkan.Image.VkImageTiling instance GHC.Read.Read Graphics.Vulkan.Image.VkImageTiling instance GHC.Show.Show Graphics.Vulkan.Image.VkImageLayout instance GHC.Read.Read Graphics.Vulkan.Image.VkImageLayout instance GHC.Show.Show Graphics.Vulkan.Image.VkImageType instance GHC.Read.Read Graphics.Vulkan.Image.VkImageType instance Foreign.Storable.Storable Graphics.Vulkan.Image.VkImageSubresource instance Foreign.Storable.Storable Graphics.Vulkan.Image.VkImageSubresourceRange instance Foreign.Storable.Storable Graphics.Vulkan.Image.VkImageCreateInfo module Graphics.Vulkan.ImageView data VkImageViewCreateInfo VkImageViewCreateInfo :: VkStructureType -> Ptr Void -> VkImageViewCreateFlags -> VkImage -> VkImageViewType -> VkFormat -> VkComponentMapping -> VkImageSubresourceRange -> VkImageViewCreateInfo [$sel:vkSType:VkImageViewCreateInfo] :: VkImageViewCreateInfo -> VkStructureType [$sel:vkPNext:VkImageViewCreateInfo] :: VkImageViewCreateInfo -> Ptr Void [$sel:vkFlags:VkImageViewCreateInfo] :: VkImageViewCreateInfo -> VkImageViewCreateFlags [$sel:vkImage:VkImageViewCreateInfo] :: VkImageViewCreateInfo -> VkImage [$sel:vkViewType:VkImageViewCreateInfo] :: VkImageViewCreateInfo -> VkImageViewType [$sel:vkFormat:VkImageViewCreateInfo] :: VkImageViewCreateInfo -> VkFormat [$sel:vkComponents:VkImageViewCreateInfo] :: VkImageViewCreateInfo -> VkComponentMapping [$sel:vkSubresourceRange:VkImageViewCreateInfo] :: VkImageViewCreateInfo -> VkImageSubresourceRange vkCreateImageView :: VkDevice -> Ptr VkImageViewCreateInfo -> Ptr VkAllocationCallbacks -> Ptr VkImageView -> IO VkResult newtype VkImageView VkImageView :: Word64 -> VkImageView newtype VkImageViewType VkImageViewType :: Int32 -> VkImageViewType -- | Opaque flag newtype VkImageViewCreateFlags VkImageViewCreateFlags :: VkFlags -> VkImageViewCreateFlags data VkComponentMapping VkComponentMapping :: VkComponentSwizzle -> VkComponentSwizzle -> VkComponentSwizzle -> VkComponentSwizzle -> VkComponentMapping [$sel:vkR:VkComponentMapping] :: VkComponentMapping -> VkComponentSwizzle [$sel:vkG:VkComponentMapping] :: VkComponentMapping -> VkComponentSwizzle [$sel:vkB:VkComponentMapping] :: VkComponentMapping -> VkComponentSwizzle [$sel:vkA:VkComponentMapping] :: VkComponentMapping -> VkComponentSwizzle newtype VkComponentSwizzle VkComponentSwizzle :: Int32 -> VkComponentSwizzle vkDestroyImageView :: VkDevice -> VkImageView -> Ptr VkAllocationCallbacks -> IO () instance GHC.Classes.Eq Graphics.Vulkan.ImageView.VkImageViewCreateInfo instance GHC.Classes.Eq Graphics.Vulkan.ImageView.VkComponentMapping instance Foreign.Storable.Storable Graphics.Vulkan.ImageView.VkComponentSwizzle instance GHC.Classes.Eq Graphics.Vulkan.ImageView.VkComponentSwizzle instance Foreign.Storable.Storable Graphics.Vulkan.ImageView.VkImageViewCreateFlags instance GHC.Classes.Eq Graphics.Vulkan.ImageView.VkImageViewCreateFlags instance Foreign.Storable.Storable Graphics.Vulkan.ImageView.VkImageViewType instance GHC.Classes.Eq Graphics.Vulkan.ImageView.VkImageViewType instance Foreign.Storable.Storable Graphics.Vulkan.ImageView.VkImageView instance GHC.Classes.Eq Graphics.Vulkan.ImageView.VkImageView instance Foreign.Storable.Storable Graphics.Vulkan.ImageView.VkImageViewCreateInfo instance GHC.Show.Show Graphics.Vulkan.ImageView.VkImageViewType instance GHC.Read.Read Graphics.Vulkan.ImageView.VkImageViewType instance Foreign.Storable.Storable Graphics.Vulkan.ImageView.VkComponentMapping instance GHC.Show.Show Graphics.Vulkan.ImageView.VkComponentSwizzle instance GHC.Read.Read Graphics.Vulkan.ImageView.VkComponentSwizzle module Graphics.Vulkan.Shader data VkShaderModuleCreateInfo VkShaderModuleCreateInfo :: VkStructureType -> Ptr Void -> VkShaderModuleCreateFlags -> CSize -> Ptr Word32 -> VkShaderModuleCreateInfo [$sel:vkSType:VkShaderModuleCreateInfo] :: VkShaderModuleCreateInfo -> VkStructureType [$sel:vkPNext:VkShaderModuleCreateInfo] :: VkShaderModuleCreateInfo -> Ptr Void [$sel:vkFlags:VkShaderModuleCreateInfo] :: VkShaderModuleCreateInfo -> VkShaderModuleCreateFlags [$sel:vkCodeSize:VkShaderModuleCreateInfo] :: VkShaderModuleCreateInfo -> CSize [$sel:vkPCode:VkShaderModuleCreateInfo] :: VkShaderModuleCreateInfo -> Ptr Word32 vkDestroyShaderModule :: VkDevice -> VkShaderModule -> Ptr VkAllocationCallbacks -> IO () -- | Opaque flag newtype VkShaderModuleCreateFlags VkShaderModuleCreateFlags :: VkFlags -> VkShaderModuleCreateFlags newtype VkShaderStageFlagBits VkShaderStageFlagBits :: VkFlags -> VkShaderStageFlagBits -- | Alias for VkShaderStageFlagBits type VkShaderStageFlags = VkShaderStageFlagBits newtype VkShaderModule VkShaderModule :: Word64 -> VkShaderModule vkCreateShaderModule :: VkDevice -> Ptr VkShaderModuleCreateInfo -> Ptr VkAllocationCallbacks -> Ptr VkShaderModule -> IO VkResult instance Foreign.Storable.Storable Graphics.Vulkan.Shader.VkShaderModule instance GHC.Classes.Eq Graphics.Vulkan.Shader.VkShaderModule instance Data.Bits.FiniteBits Graphics.Vulkan.Shader.VkShaderStageFlagBits instance Data.Bits.Bits Graphics.Vulkan.Shader.VkShaderStageFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.Shader.VkShaderStageFlagBits instance GHC.Classes.Eq Graphics.Vulkan.Shader.VkShaderStageFlagBits instance GHC.Classes.Eq Graphics.Vulkan.Shader.VkShaderModuleCreateInfo instance Foreign.Storable.Storable Graphics.Vulkan.Shader.VkShaderModuleCreateFlags instance GHC.Classes.Eq Graphics.Vulkan.Shader.VkShaderModuleCreateFlags instance Foreign.Storable.Storable Graphics.Vulkan.Shader.VkShaderModuleCreateInfo instance GHC.Show.Show Graphics.Vulkan.Shader.VkShaderStageFlagBits instance GHC.Read.Read Graphics.Vulkan.Shader.VkShaderStageFlagBits module Graphics.Vulkan.Constants type VK_UUID_SIZE = 16 type VK_MAX_PHYSICAL_DEVICE_NAME_SIZE = 256 type VK_MAX_MEMORY_TYPES = 32 type VK_MAX_MEMORY_HEAPS = 16 type VK_FALSE = 0 newtype VkPipelineCacheHeaderVersion VkPipelineCacheHeaderVersion :: Int32 -> VkPipelineCacheHeaderVersion type VK_MAX_EXTENSION_NAME_SIZE = 256 type VK_MAX_DESCRIPTION_SIZE = 256 type VK_TRUE = 1 instance Foreign.Storable.Storable Graphics.Vulkan.Constants.VkPipelineCacheHeaderVersion instance GHC.Classes.Eq Graphics.Vulkan.Constants.VkPipelineCacheHeaderVersion instance GHC.Show.Show Graphics.Vulkan.Constants.VkPipelineCacheHeaderVersion instance GHC.Read.Read Graphics.Vulkan.Constants.VkPipelineCacheHeaderVersion module Graphics.Vulkan.DeviceInitialization newtype VkPhysicalDeviceType VkPhysicalDeviceType :: Int32 -> VkPhysicalDeviceType data VkInstanceCreateInfo VkInstanceCreateInfo :: VkStructureType -> Ptr Void -> VkInstanceCreateFlags -> Ptr VkApplicationInfo -> Word32 -> Ptr (Ptr CChar) -> Word32 -> Ptr (Ptr CChar) -> VkInstanceCreateInfo [$sel:vkSType:VkInstanceCreateInfo] :: VkInstanceCreateInfo -> VkStructureType [$sel:vkPNext:VkInstanceCreateInfo] :: VkInstanceCreateInfo -> Ptr Void [$sel:vkFlags:VkInstanceCreateInfo] :: VkInstanceCreateInfo -> VkInstanceCreateFlags [$sel:vkPApplicationInfo:VkInstanceCreateInfo] :: VkInstanceCreateInfo -> Ptr VkApplicationInfo [$sel:vkEnabledLayerCount:VkInstanceCreateInfo] :: VkInstanceCreateInfo -> Word32 [$sel:vkPpEnabledLayerNames:VkInstanceCreateInfo] :: VkInstanceCreateInfo -> Ptr (Ptr CChar) [$sel:vkEnabledExtensionCount:VkInstanceCreateInfo] :: VkInstanceCreateInfo -> Word32 [$sel:vkPpEnabledExtensionNames:VkInstanceCreateInfo] :: VkInstanceCreateInfo -> Ptr (Ptr CChar) vkGetPhysicalDeviceImageFormatProperties :: VkPhysicalDevice -> VkFormat -> VkImageType -> VkImageTiling -> VkImageUsageFlags -> VkImageCreateFlags -> Ptr VkImageFormatProperties -> IO VkResult type PFN_vkVoidFunction = FunPtr (IO ()) data VkApplicationInfo VkApplicationInfo :: VkStructureType -> Ptr Void -> Ptr CChar -> Word32 -> Ptr CChar -> Word32 -> Word32 -> VkApplicationInfo [$sel:vkSType:VkApplicationInfo] :: VkApplicationInfo -> VkStructureType [$sel:vkPNext:VkApplicationInfo] :: VkApplicationInfo -> Ptr Void [$sel:vkPApplicationName:VkApplicationInfo] :: VkApplicationInfo -> Ptr CChar [$sel:vkApplicationVersion:VkApplicationInfo] :: VkApplicationInfo -> Word32 [$sel:vkPEngineName:VkApplicationInfo] :: VkApplicationInfo -> Ptr CChar [$sel:vkEngineVersion:VkApplicationInfo] :: VkApplicationInfo -> Word32 [$sel:vkApiVersion:VkApplicationInfo] :: VkApplicationInfo -> Word32 data VkPhysicalDeviceLimits VkPhysicalDeviceLimits :: Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> VkDeviceSize -> VkDeviceSize -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Vector 3 Word32 -> Word32 -> Vector 3 Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> CFloat -> CFloat -> Word32 -> Vector 2 Word32 -> Vector 2 CFloat -> Word32 -> CSize -> VkDeviceSize -> VkDeviceSize -> VkDeviceSize -> Int32 -> Word32 -> Int32 -> Word32 -> CFloat -> CFloat -> Word32 -> Word32 -> Word32 -> Word32 -> VkSampleCountFlags -> VkSampleCountFlags -> VkSampleCountFlags -> VkSampleCountFlags -> Word32 -> VkSampleCountFlags -> VkSampleCountFlags -> VkSampleCountFlags -> VkSampleCountFlags -> VkSampleCountFlags -> Word32 -> VkBool32 -> CFloat -> Word32 -> Word32 -> Word32 -> Word32 -> Vector 2 CFloat -> Vector 2 CFloat -> CFloat -> CFloat -> VkBool32 -> VkBool32 -> VkDeviceSize -> VkDeviceSize -> VkDeviceSize -> VkPhysicalDeviceLimits [$sel:vkMaxImageDimension:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxImageDimension:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxImageDimension:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxImageDimensionCube:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxImageArrayLayers:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxTexelBufferElements:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxUniformBufferRange:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxStorageBufferRange:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxPushConstantsSize:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxMemoryAllocationCount:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxSamplerAllocationCount:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkBufferImageGranularity:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> VkDeviceSize [$sel:vkSparseAddressSpaceSize:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> VkDeviceSize [$sel:vkMaxBoundDescriptorSets:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxPerStageDescriptorSamplers:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxPerStageDescriptorUniformBuffers:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxPerStageDescriptorStorageBuffers:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxPerStageDescriptorSampledImages:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxPerStageDescriptorStorageImages:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxPerStageDescriptorInputAttachments:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxPerStageResources:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxDescriptorSetSamplers:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxDescriptorSetUniformBuffers:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxDescriptorSetUniformBuffersDynamic:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxDescriptorSetStorageBuffers:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxDescriptorSetStorageBuffersDynamic:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxDescriptorSetSampledImages:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxDescriptorSetStorageImages:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxDescriptorSetInputAttachments:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxVertexInputAttributes:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxVertexInputBindings:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxVertexInputAttributeOffset:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxVertexInputBindingStride:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxVertexOutputComponents:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxTessellationGenerationLevel:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxTessellationPatchSize:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxTessellationControlPerVertexInputComponents:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxTessellationControlPerVertexOutputComponents:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxTessellationControlPerPatchOutputComponents:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxTessellationControlTotalOutputComponents:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxTessellationEvaluationInputComponents:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxTessellationEvaluationOutputComponents:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxGeometryShaderInvocations:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxGeometryInputComponents:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxGeometryOutputComponents:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxGeometryOutputVertices:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxGeometryTotalOutputComponents:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxFragmentInputComponents:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxFragmentOutputAttachments:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxFragmentDualSrcAttachments:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxFragmentCombinedOutputResources:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxComputeSharedMemorySize:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxComputeWorkGroupCount:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Vector 3 Word32 [$sel:vkMaxComputeWorkGroupInvocations:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxComputeWorkGroupSize:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Vector 3 Word32 [$sel:vkSubPixelPrecisionBits:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkSubTexelPrecisionBits:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMipmapPrecisionBits:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxDrawIndexedIndexValue:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxDrawIndirectCount:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxSamplerLodBias:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> CFloat [$sel:vkMaxSamplerAnisotropy:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> CFloat [$sel:vkMaxViewports:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxViewportDimensions:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Vector 2 Word32 [$sel:vkViewportBoundsRange:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Vector 2 CFloat [$sel:vkViewportSubPixelBits:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMinMemoryMapAlignment:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> CSize [$sel:vkMinTexelBufferOffsetAlignment:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> VkDeviceSize [$sel:vkMinUniformBufferOffsetAlignment:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> VkDeviceSize [$sel:vkMinStorageBufferOffsetAlignment:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> VkDeviceSize [$sel:vkMinTexelOffset:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Int32 [$sel:vkMaxTexelOffset:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMinTexelGatherOffset:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Int32 [$sel:vkMaxTexelGatherOffset:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMinInterpolationOffset:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> CFloat [$sel:vkMaxInterpolationOffset:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> CFloat [$sel:vkSubPixelInterpolationOffsetBits:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxFramebufferWidth:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxFramebufferHeight:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxFramebufferLayers:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkFramebufferColorSampleCounts:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> VkSampleCountFlags [$sel:vkFramebufferDepthSampleCounts:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> VkSampleCountFlags [$sel:vkFramebufferStencilSampleCounts:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> VkSampleCountFlags [$sel:vkFramebufferNoAttachmentsSampleCounts:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> VkSampleCountFlags [$sel:vkMaxColorAttachments:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkSampledImageColorSampleCounts:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> VkSampleCountFlags [$sel:vkSampledImageIntegerSampleCounts:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> VkSampleCountFlags [$sel:vkSampledImageDepthSampleCounts:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> VkSampleCountFlags [$sel:vkSampledImageStencilSampleCounts:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> VkSampleCountFlags [$sel:vkStorageImageSampleCounts:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> VkSampleCountFlags [$sel:vkMaxSampleMaskWords:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkTimestampComputeAndGraphics:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> VkBool32 [$sel:vkTimestampPeriod:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> CFloat [$sel:vkMaxClipDistances:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxCullDistances:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkMaxCombinedClipAndCullDistances:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkDiscreteQueuePriorities:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Word32 [$sel:vkPointSizeRange:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Vector 2 CFloat [$sel:vkLineWidthRange:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> Vector 2 CFloat [$sel:vkPointSizeGranularity:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> CFloat [$sel:vkLineWidthGranularity:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> CFloat [$sel:vkStrictLines:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> VkBool32 [$sel:vkStandardSampleLocations:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> VkBool32 [$sel:vkOptimalBufferCopyOffsetAlignment:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> VkDeviceSize [$sel:vkOptimalBufferCopyRowPitchAlignment:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> VkDeviceSize [$sel:vkNonCoherentAtomSize:VkPhysicalDeviceLimits] :: VkPhysicalDeviceLimits -> VkDeviceSize data VkMemoryHeap VkMemoryHeap :: VkDeviceSize -> VkMemoryHeapFlags -> VkMemoryHeap [$sel:vkSize:VkMemoryHeap] :: VkMemoryHeap -> VkDeviceSize [$sel:vkFlags:VkMemoryHeap] :: VkMemoryHeap -> VkMemoryHeapFlags vkEnumeratePhysicalDevices :: VkInstance -> Ptr Word32 -> Ptr VkPhysicalDevice -> IO VkResult vkGetDeviceProcAddr :: VkDevice -> Ptr CChar -> IO PFN_vkVoidFunction vkCreateInstance :: Ptr VkInstanceCreateInfo -> Ptr VkAllocationCallbacks -> Ptr VkInstance -> IO VkResult newtype VkFormatFeatureFlagBits VkFormatFeatureFlagBits :: VkFlags -> VkFormatFeatureFlagBits -- | Alias for VkFormatFeatureFlagBits type VkFormatFeatureFlags = VkFormatFeatureFlagBits -- | Format can be used for sampled images (SAMPLED_IMAGE and -- COMBINED_IMAGE_SAMPLER descriptor types) -- | Format can be used for storage images (STORAGE_IMAGE descriptor type) -- | Format supports atomic operations in case it's used for storage images -- | Format can be used for uniform texel buffers (TBOs) -- | Format can be used for storage texel buffers (IBOs) -- | Format supports atomic operations in case it's used for storage texel -- buffers -- | Format can be used for vertex buffers (VBOs) -- | Format can be used for color attachment images -- | Format supports blending in case it's used for color attachment images -- | Format can be used for depth/stencil attachment images -- | Format can be used as the source image of blits with vkCmdBlitImage -- | Format can be used as the destination image of blits with -- vkCmdBlitImage -- | Format can be filtered with VK_FILTER_LINEAR when being sampled data VkPhysicalDeviceMemoryProperties VkPhysicalDeviceMemoryProperties :: Word32 -> Vector VK_MAX_MEMORY_TYPES VkMemoryType -> Word32 -> Vector VK_MAX_MEMORY_HEAPS VkMemoryHeap -> VkPhysicalDeviceMemoryProperties [$sel:vkMemoryTypeCount:VkPhysicalDeviceMemoryProperties] :: VkPhysicalDeviceMemoryProperties -> Word32 [$sel:vkMemoryTypes:VkPhysicalDeviceMemoryProperties] :: VkPhysicalDeviceMemoryProperties -> Vector VK_MAX_MEMORY_TYPES VkMemoryType [$sel:vkMemoryHeapCount:VkPhysicalDeviceMemoryProperties] :: VkPhysicalDeviceMemoryProperties -> Word32 [$sel:vkMemoryHeaps:VkPhysicalDeviceMemoryProperties] :: VkPhysicalDeviceMemoryProperties -> Vector VK_MAX_MEMORY_HEAPS VkMemoryHeap data VkInstance_T type VkInstance = Ptr VkInstance_T newtype VkMemoryHeapFlagBits VkMemoryHeapFlagBits :: VkFlags -> VkMemoryHeapFlagBits -- | Alias for VkMemoryHeapFlagBits type VkMemoryHeapFlags = VkMemoryHeapFlagBits -- | If set, heap represents device memory data VkQueueFamilyProperties VkQueueFamilyProperties :: VkQueueFlags -> Word32 -> Word32 -> VkExtent3D -> VkQueueFamilyProperties [$sel:vkQueueFlags:VkQueueFamilyProperties] :: VkQueueFamilyProperties -> VkQueueFlags [$sel:vkQueueCount:VkQueueFamilyProperties] :: VkQueueFamilyProperties -> Word32 [$sel:vkTimestampValidBits:VkQueueFamilyProperties] :: VkQueueFamilyProperties -> Word32 [$sel:vkMinImageTransferGranularity:VkQueueFamilyProperties] :: VkQueueFamilyProperties -> VkExtent3D data VkImageFormatProperties VkImageFormatProperties :: VkExtent3D -> Word32 -> Word32 -> VkSampleCountFlags -> VkDeviceSize -> VkImageFormatProperties [$sel:vkMaxExtent:VkImageFormatProperties] :: VkImageFormatProperties -> VkExtent3D [$sel:vkMaxMipLevels:VkImageFormatProperties] :: VkImageFormatProperties -> Word32 [$sel:vkMaxArrayLayers:VkImageFormatProperties] :: VkImageFormatProperties -> Word32 [$sel:vkSampleCounts:VkImageFormatProperties] :: VkImageFormatProperties -> VkSampleCountFlags [$sel:vkMaxResourceSize:VkImageFormatProperties] :: VkImageFormatProperties -> VkDeviceSize data VkPhysicalDeviceSparseProperties VkPhysicalDeviceSparseProperties :: VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkBool32 -> VkPhysicalDeviceSparseProperties [$sel:vkResidencyStandard:VkPhysicalDeviceSparseProperties] :: VkPhysicalDeviceSparseProperties -> VkBool32 [$sel:vkResidencyStandard:VkPhysicalDeviceSparseProperties] :: VkPhysicalDeviceSparseProperties -> VkBool32 [$sel:vkResidencyStandard:VkPhysicalDeviceSparseProperties] :: VkPhysicalDeviceSparseProperties -> VkBool32 [$sel:vkResidencyAlignedMipSize:VkPhysicalDeviceSparseProperties] :: VkPhysicalDeviceSparseProperties -> VkBool32 [$sel:vkResidencyNonResidentStrict:VkPhysicalDeviceSparseProperties] :: VkPhysicalDeviceSparseProperties -> VkBool32 vkGetPhysicalDeviceFeatures :: VkPhysicalDevice -> Ptr VkPhysicalDeviceFeatures -> IO () vkGetPhysicalDeviceMemoryProperties :: VkPhysicalDevice -> Ptr VkPhysicalDeviceMemoryProperties -> IO () data VkPhysicalDeviceProperties VkPhysicalDeviceProperties :: Word32 -> Word32 -> Word32 -> Word32 -> VkPhysicalDeviceType -> Vector VK_MAX_PHYSICAL_DEVICE_NAME_SIZE CChar -> Vector VK_UUID_SIZE Word8 -> VkPhysicalDeviceLimits -> VkPhysicalDeviceSparseProperties -> VkPhysicalDeviceProperties [$sel:vkApiVersion:VkPhysicalDeviceProperties] :: VkPhysicalDeviceProperties -> Word32 [$sel:vkDriverVersion:VkPhysicalDeviceProperties] :: VkPhysicalDeviceProperties -> Word32 [$sel:vkVendorID:VkPhysicalDeviceProperties] :: VkPhysicalDeviceProperties -> Word32 [$sel:vkDeviceID:VkPhysicalDeviceProperties] :: VkPhysicalDeviceProperties -> Word32 [$sel:vkDeviceType:VkPhysicalDeviceProperties] :: VkPhysicalDeviceProperties -> VkPhysicalDeviceType [$sel:vkDeviceName:VkPhysicalDeviceProperties] :: VkPhysicalDeviceProperties -> Vector VK_MAX_PHYSICAL_DEVICE_NAME_SIZE CChar [$sel:vkPipelineCacheUUID:VkPhysicalDeviceProperties] :: VkPhysicalDeviceProperties -> Vector VK_UUID_SIZE Word8 [$sel:vkLimits:VkPhysicalDeviceProperties] :: VkPhysicalDeviceProperties -> VkPhysicalDeviceLimits [$sel:vkSparseProperties:VkPhysicalDeviceProperties] :: VkPhysicalDeviceProperties -> VkPhysicalDeviceSparseProperties vkGetPhysicalDeviceQueueFamilyProperties :: VkPhysicalDevice -> Ptr Word32 -> Ptr VkQueueFamilyProperties -> IO () data VkMemoryType VkMemoryType :: VkMemoryPropertyFlags -> Word32 -> VkMemoryType [$sel:vkPropertyFlags:VkMemoryType] :: VkMemoryType -> VkMemoryPropertyFlags [$sel:vkHeapIndex:VkMemoryType] :: VkMemoryType -> Word32 vkGetInstanceProcAddr :: VkInstance -> Ptr CChar -> IO PFN_vkVoidFunction newtype VkMemoryPropertyFlagBits VkMemoryPropertyFlagBits :: VkFlags -> VkMemoryPropertyFlagBits -- | Alias for VkMemoryPropertyFlagBits type VkMemoryPropertyFlags = VkMemoryPropertyFlagBits -- | If otherwise stated, then allocate memory on device -- | Memory is mappable by host -- | Memory will have io coherency. If not set, application may need to -- use vkFlushMappedMemoryRanges and vkInvalidateMappedMemoryRanges to -- flushinvalidate host cache -- | Memory will be cached by the host -- | Memory may be allocated by the driver when it is required vkDestroyInstance :: VkInstance -> Ptr VkAllocationCallbacks -> IO () newtype VkQueueFlagBits VkQueueFlagBits :: VkFlags -> VkQueueFlagBits -- | Alias for VkQueueFlagBits type VkQueueFlags = VkQueueFlagBits -- | Queue supports graphics operations -- | Queue supports compute operations -- | Queue supports transfer operations -- | Queue supports sparse resource memory management operations vkGetPhysicalDeviceProperties :: VkPhysicalDevice -> Ptr VkPhysicalDeviceProperties -> IO () -- | Opaque flag newtype VkInstanceCreateFlags VkInstanceCreateFlags :: VkFlags -> VkInstanceCreateFlags vkGetPhysicalDeviceFormatProperties :: VkPhysicalDevice -> VkFormat -> Ptr VkFormatProperties -> IO () data VkFormatProperties VkFormatProperties :: VkFormatFeatureFlags -> VkFormatFeatureFlags -> VkFormatFeatureFlags -> VkFormatProperties [$sel:vkLinearTilingFeatures:VkFormatProperties] :: VkFormatProperties -> VkFormatFeatureFlags [$sel:vkOptimalTilingFeatures:VkFormatProperties] :: VkFormatProperties -> VkFormatFeatureFlags [$sel:vkBufferFeatures:VkFormatProperties] :: VkFormatProperties -> VkFormatFeatureFlags instance GHC.Classes.Eq Graphics.Vulkan.DeviceInitialization.VkFormatProperties instance GHC.Classes.Eq Graphics.Vulkan.DeviceInitialization.VkInstanceCreateInfo instance Foreign.Storable.Storable Graphics.Vulkan.DeviceInitialization.VkInstanceCreateFlags instance GHC.Classes.Eq Graphics.Vulkan.DeviceInitialization.VkInstanceCreateFlags instance GHC.Classes.Eq Graphics.Vulkan.DeviceInitialization.VkQueueFamilyProperties instance Data.Bits.FiniteBits Graphics.Vulkan.DeviceInitialization.VkQueueFlagBits instance Data.Bits.Bits Graphics.Vulkan.DeviceInitialization.VkQueueFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.DeviceInitialization.VkQueueFlagBits instance GHC.Classes.Eq Graphics.Vulkan.DeviceInitialization.VkQueueFlagBits instance GHC.Classes.Eq Graphics.Vulkan.DeviceInitialization.VkPhysicalDeviceMemoryProperties instance GHC.Classes.Eq Graphics.Vulkan.DeviceInitialization.VkMemoryType instance Data.Bits.FiniteBits Graphics.Vulkan.DeviceInitialization.VkMemoryPropertyFlagBits instance Data.Bits.Bits Graphics.Vulkan.DeviceInitialization.VkMemoryPropertyFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.DeviceInitialization.VkMemoryPropertyFlagBits instance GHC.Classes.Eq Graphics.Vulkan.DeviceInitialization.VkMemoryPropertyFlagBits instance GHC.Classes.Eq Graphics.Vulkan.DeviceInitialization.VkPhysicalDeviceProperties instance GHC.Classes.Eq Graphics.Vulkan.DeviceInitialization.VkPhysicalDeviceSparseProperties instance GHC.Classes.Eq Graphics.Vulkan.DeviceInitialization.VkImageFormatProperties instance GHC.Classes.Eq Graphics.Vulkan.DeviceInitialization.VkMemoryHeap instance Data.Bits.FiniteBits Graphics.Vulkan.DeviceInitialization.VkMemoryHeapFlagBits instance Data.Bits.Bits Graphics.Vulkan.DeviceInitialization.VkMemoryHeapFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.DeviceInitialization.VkMemoryHeapFlagBits instance GHC.Classes.Eq Graphics.Vulkan.DeviceInitialization.VkMemoryHeapFlagBits instance Data.Bits.FiniteBits Graphics.Vulkan.DeviceInitialization.VkFormatFeatureFlagBits instance Data.Bits.Bits Graphics.Vulkan.DeviceInitialization.VkFormatFeatureFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.DeviceInitialization.VkFormatFeatureFlagBits instance GHC.Classes.Eq Graphics.Vulkan.DeviceInitialization.VkFormatFeatureFlagBits instance GHC.Classes.Eq Graphics.Vulkan.DeviceInitialization.VkPhysicalDeviceLimits instance GHC.Classes.Eq Graphics.Vulkan.DeviceInitialization.VkApplicationInfo instance Foreign.Storable.Storable Graphics.Vulkan.DeviceInitialization.VkPhysicalDeviceType instance GHC.Classes.Eq Graphics.Vulkan.DeviceInitialization.VkPhysicalDeviceType instance GHC.Show.Show Graphics.Vulkan.DeviceInitialization.VkPhysicalDeviceType instance GHC.Read.Read Graphics.Vulkan.DeviceInitialization.VkPhysicalDeviceType instance Foreign.Storable.Storable Graphics.Vulkan.DeviceInitialization.VkInstanceCreateInfo instance Foreign.Storable.Storable Graphics.Vulkan.DeviceInitialization.VkApplicationInfo instance Foreign.Storable.Storable Graphics.Vulkan.DeviceInitialization.VkPhysicalDeviceLimits instance Foreign.Storable.Storable Graphics.Vulkan.DeviceInitialization.VkMemoryHeap instance GHC.Show.Show Graphics.Vulkan.DeviceInitialization.VkFormatFeatureFlagBits instance GHC.Read.Read Graphics.Vulkan.DeviceInitialization.VkFormatFeatureFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.DeviceInitialization.VkPhysicalDeviceMemoryProperties instance GHC.Show.Show Graphics.Vulkan.DeviceInitialization.VkMemoryHeapFlagBits instance GHC.Read.Read Graphics.Vulkan.DeviceInitialization.VkMemoryHeapFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.DeviceInitialization.VkQueueFamilyProperties instance Foreign.Storable.Storable Graphics.Vulkan.DeviceInitialization.VkImageFormatProperties instance Foreign.Storable.Storable Graphics.Vulkan.DeviceInitialization.VkPhysicalDeviceSparseProperties instance Foreign.Storable.Storable Graphics.Vulkan.DeviceInitialization.VkPhysicalDeviceProperties instance Foreign.Storable.Storable Graphics.Vulkan.DeviceInitialization.VkMemoryType instance GHC.Show.Show Graphics.Vulkan.DeviceInitialization.VkMemoryPropertyFlagBits instance GHC.Read.Read Graphics.Vulkan.DeviceInitialization.VkMemoryPropertyFlagBits instance GHC.Show.Show Graphics.Vulkan.DeviceInitialization.VkQueueFlagBits instance GHC.Read.Read Graphics.Vulkan.DeviceInitialization.VkQueueFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.DeviceInitialization.VkFormatProperties module Graphics.Vulkan.ExtensionDiscovery data VkExtensionProperties VkExtensionProperties :: Vector VK_MAX_EXTENSION_NAME_SIZE CChar -> Word32 -> VkExtensionProperties [$sel:vkExtensionName:VkExtensionProperties] :: VkExtensionProperties -> Vector VK_MAX_EXTENSION_NAME_SIZE CChar [$sel:vkSpecVersion:VkExtensionProperties] :: VkExtensionProperties -> Word32 vkEnumerateInstanceExtensionProperties :: Ptr CChar -> Ptr Word32 -> Ptr VkExtensionProperties -> IO VkResult vkEnumerateDeviceExtensionProperties :: VkPhysicalDevice -> Ptr CChar -> Ptr Word32 -> Ptr VkExtensionProperties -> IO VkResult instance GHC.Classes.Eq Graphics.Vulkan.ExtensionDiscovery.VkExtensionProperties instance Foreign.Storable.Storable Graphics.Vulkan.ExtensionDiscovery.VkExtensionProperties module Graphics.Vulkan.LayerDiscovery data VkLayerProperties VkLayerProperties :: Vector VK_MAX_EXTENSION_NAME_SIZE CChar -> Word32 -> Word32 -> Vector VK_MAX_DESCRIPTION_SIZE CChar -> VkLayerProperties [$sel:vkLayerName:VkLayerProperties] :: VkLayerProperties -> Vector VK_MAX_EXTENSION_NAME_SIZE CChar [$sel:vkSpecVersion:VkLayerProperties] :: VkLayerProperties -> Word32 [$sel:vkImplementationVersion:VkLayerProperties] :: VkLayerProperties -> Word32 [$sel:vkDescription:VkLayerProperties] :: VkLayerProperties -> Vector VK_MAX_DESCRIPTION_SIZE CChar vkEnumerateInstanceLayerProperties :: Ptr Word32 -> Ptr VkLayerProperties -> IO VkResult vkEnumerateDeviceLayerProperties :: VkPhysicalDevice -> Ptr Word32 -> Ptr VkLayerProperties -> IO VkResult instance GHC.Classes.Eq Graphics.Vulkan.LayerDiscovery.VkLayerProperties instance Foreign.Storable.Storable Graphics.Vulkan.LayerDiscovery.VkLayerProperties module Graphics.Vulkan.CommandPool data VkCommandPoolCreateInfo VkCommandPoolCreateInfo :: VkStructureType -> Ptr Void -> VkCommandPoolCreateFlags -> Word32 -> VkCommandPoolCreateInfo [$sel:vkSType:VkCommandPoolCreateInfo] :: VkCommandPoolCreateInfo -> VkStructureType [$sel:vkPNext:VkCommandPoolCreateInfo] :: VkCommandPoolCreateInfo -> Ptr Void [$sel:vkFlags:VkCommandPoolCreateInfo] :: VkCommandPoolCreateInfo -> VkCommandPoolCreateFlags [$sel:vkQueueFamilyIndex:VkCommandPoolCreateInfo] :: VkCommandPoolCreateInfo -> Word32 vkDestroyCommandPool :: VkDevice -> VkCommandPool -> Ptr VkAllocationCallbacks -> IO () vkResetCommandPool :: VkDevice -> VkCommandPool -> VkCommandPoolResetFlags -> IO VkResult newtype VkCommandPoolCreateFlagBits VkCommandPoolCreateFlagBits :: VkFlags -> VkCommandPoolCreateFlagBits -- | Alias for VkCommandPoolCreateFlagBits type VkCommandPoolCreateFlags = VkCommandPoolCreateFlagBits -- | Command buffers have a short lifetime -- | Command buffers may release their memory individually vkCreateCommandPool :: VkDevice -> Ptr VkCommandPoolCreateInfo -> Ptr VkAllocationCallbacks -> Ptr VkCommandPool -> IO VkResult newtype VkCommandPoolResetFlagBits VkCommandPoolResetFlagBits :: VkFlags -> VkCommandPoolResetFlagBits -- | Alias for VkCommandPoolResetFlagBits type VkCommandPoolResetFlags = VkCommandPoolResetFlagBits -- | Release resources owned by the pool newtype VkCommandPool VkCommandPool :: Word64 -> VkCommandPool instance Foreign.Storable.Storable Graphics.Vulkan.CommandPool.VkCommandPool instance GHC.Classes.Eq Graphics.Vulkan.CommandPool.VkCommandPool instance Data.Bits.FiniteBits Graphics.Vulkan.CommandPool.VkCommandPoolResetFlagBits instance Data.Bits.Bits Graphics.Vulkan.CommandPool.VkCommandPoolResetFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.CommandPool.VkCommandPoolResetFlagBits instance GHC.Classes.Eq Graphics.Vulkan.CommandPool.VkCommandPoolResetFlagBits instance GHC.Classes.Eq Graphics.Vulkan.CommandPool.VkCommandPoolCreateInfo instance Data.Bits.FiniteBits Graphics.Vulkan.CommandPool.VkCommandPoolCreateFlagBits instance Data.Bits.Bits Graphics.Vulkan.CommandPool.VkCommandPoolCreateFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.CommandPool.VkCommandPoolCreateFlagBits instance GHC.Classes.Eq Graphics.Vulkan.CommandPool.VkCommandPoolCreateFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.CommandPool.VkCommandPoolCreateInfo instance GHC.Show.Show Graphics.Vulkan.CommandPool.VkCommandPoolCreateFlagBits instance GHC.Read.Read Graphics.Vulkan.CommandPool.VkCommandPoolCreateFlagBits instance GHC.Show.Show Graphics.Vulkan.CommandPool.VkCommandPoolResetFlagBits instance GHC.Read.Read Graphics.Vulkan.CommandPool.VkCommandPoolResetFlagBits module Graphics.Vulkan.Buffer vkCreateBuffer :: VkDevice -> Ptr VkBufferCreateInfo -> Ptr VkAllocationCallbacks -> Ptr VkBuffer -> IO VkResult newtype VkBufferCreateFlagBits VkBufferCreateFlagBits :: VkFlags -> VkBufferCreateFlagBits -- | Alias for VkBufferCreateFlagBits type VkBufferCreateFlags = VkBufferCreateFlagBits -- | Buffer should support sparse backing -- | Buffer should support sparse backing with partial residency -- | Buffer should support constent data access to physical memory blocks -- mapped into multiple locations of sparse buffers newtype VkBufferUsageFlagBits VkBufferUsageFlagBits :: VkFlags -> VkBufferUsageFlagBits -- | Alias for VkBufferUsageFlagBits type VkBufferUsageFlags = VkBufferUsageFlagBits -- | Can be used as a source of transfer operations -- | Can be used as a destination of transfer operations -- | Can be used as TBO -- | Can be used as IBO -- | Can be used as UBO -- | Can be used as SSBO -- | Can be used as source of fixed-function index fetch (index buffer) -- | Can be used as source of fixed-function vertex fetch (VBO) -- | Can be the source of indirect parameters (e.g. indirect buffer, -- parameter buffer) vkDestroyBuffer :: VkDevice -> VkBuffer -> Ptr VkAllocationCallbacks -> IO () newtype VkBuffer VkBuffer :: Word64 -> VkBuffer data VkBufferCreateInfo VkBufferCreateInfo :: VkStructureType -> Ptr Void -> VkBufferCreateFlags -> VkDeviceSize -> VkBufferUsageFlags -> VkSharingMode -> Word32 -> Ptr Word32 -> VkBufferCreateInfo [$sel:vkSType:VkBufferCreateInfo] :: VkBufferCreateInfo -> VkStructureType [$sel:vkPNext:VkBufferCreateInfo] :: VkBufferCreateInfo -> Ptr Void [$sel:vkFlags:VkBufferCreateInfo] :: VkBufferCreateInfo -> VkBufferCreateFlags [$sel:vkSize:VkBufferCreateInfo] :: VkBufferCreateInfo -> VkDeviceSize [$sel:vkUsage:VkBufferCreateInfo] :: VkBufferCreateInfo -> VkBufferUsageFlags [$sel:vkSharingMode:VkBufferCreateInfo] :: VkBufferCreateInfo -> VkSharingMode [$sel:vkQueueFamilyIndexCount:VkBufferCreateInfo] :: VkBufferCreateInfo -> Word32 [$sel:vkPQueueFamilyIndices:VkBufferCreateInfo] :: VkBufferCreateInfo -> Ptr Word32 instance GHC.Classes.Eq Graphics.Vulkan.Buffer.VkBufferCreateInfo instance Foreign.Storable.Storable Graphics.Vulkan.Buffer.VkBuffer instance GHC.Classes.Eq Graphics.Vulkan.Buffer.VkBuffer instance Data.Bits.FiniteBits Graphics.Vulkan.Buffer.VkBufferUsageFlagBits instance Data.Bits.Bits Graphics.Vulkan.Buffer.VkBufferUsageFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.Buffer.VkBufferUsageFlagBits instance GHC.Classes.Eq Graphics.Vulkan.Buffer.VkBufferUsageFlagBits instance Data.Bits.FiniteBits Graphics.Vulkan.Buffer.VkBufferCreateFlagBits instance Data.Bits.Bits Graphics.Vulkan.Buffer.VkBufferCreateFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.Buffer.VkBufferCreateFlagBits instance GHC.Classes.Eq Graphics.Vulkan.Buffer.VkBufferCreateFlagBits instance GHC.Show.Show Graphics.Vulkan.Buffer.VkBufferCreateFlagBits instance GHC.Read.Read Graphics.Vulkan.Buffer.VkBufferCreateFlagBits instance GHC.Show.Show Graphics.Vulkan.Buffer.VkBufferUsageFlagBits instance GHC.Read.Read Graphics.Vulkan.Buffer.VkBufferUsageFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.Buffer.VkBufferCreateInfo module Graphics.Vulkan.BufferView vkCreateBufferView :: VkDevice -> Ptr VkBufferViewCreateInfo -> Ptr VkAllocationCallbacks -> Ptr VkBufferView -> IO VkResult newtype VkBufferView VkBufferView :: Word64 -> VkBufferView data VkBufferViewCreateInfo VkBufferViewCreateInfo :: VkStructureType -> Ptr Void -> VkBufferViewCreateFlags -> VkBuffer -> VkFormat -> VkDeviceSize -> VkDeviceSize -> VkBufferViewCreateInfo [$sel:vkSType:VkBufferViewCreateInfo] :: VkBufferViewCreateInfo -> VkStructureType [$sel:vkPNext:VkBufferViewCreateInfo] :: VkBufferViewCreateInfo -> Ptr Void [$sel:vkFlags:VkBufferViewCreateInfo] :: VkBufferViewCreateInfo -> VkBufferViewCreateFlags [$sel:vkBuffer:VkBufferViewCreateInfo] :: VkBufferViewCreateInfo -> VkBuffer [$sel:vkFormat:VkBufferViewCreateInfo] :: VkBufferViewCreateInfo -> VkFormat [$sel:vkOffset:VkBufferViewCreateInfo] :: VkBufferViewCreateInfo -> VkDeviceSize [$sel:vkRange:VkBufferViewCreateInfo] :: VkBufferViewCreateInfo -> VkDeviceSize -- | Opaque flag newtype VkBufferViewCreateFlags VkBufferViewCreateFlags :: VkFlags -> VkBufferViewCreateFlags vkDestroyBufferView :: VkDevice -> VkBufferView -> Ptr VkAllocationCallbacks -> IO () instance GHC.Classes.Eq Graphics.Vulkan.BufferView.VkBufferViewCreateInfo instance Foreign.Storable.Storable Graphics.Vulkan.BufferView.VkBufferViewCreateFlags instance GHC.Classes.Eq Graphics.Vulkan.BufferView.VkBufferViewCreateFlags instance Foreign.Storable.Storable Graphics.Vulkan.BufferView.VkBufferView instance GHC.Classes.Eq Graphics.Vulkan.BufferView.VkBufferView instance Foreign.Storable.Storable Graphics.Vulkan.BufferView.VkBufferViewCreateInfo module Graphics.Vulkan.DescriptorSet vkUpdateDescriptorSets :: VkDevice -> Word32 -> Ptr VkWriteDescriptorSet -> Word32 -> Ptr VkCopyDescriptorSet -> IO () -- | Opaque flag newtype VkDescriptorPoolResetFlags VkDescriptorPoolResetFlags :: VkFlags -> VkDescriptorPoolResetFlags vkAllocateDescriptorSets :: VkDevice -> Ptr VkDescriptorSetAllocateInfo -> Ptr VkDescriptorSet -> IO VkResult data VkDescriptorBufferInfo VkDescriptorBufferInfo :: VkBuffer -> VkDeviceSize -> VkDeviceSize -> VkDescriptorBufferInfo [$sel:vkBuffer:VkDescriptorBufferInfo] :: VkDescriptorBufferInfo -> VkBuffer [$sel:vkOffset:VkDescriptorBufferInfo] :: VkDescriptorBufferInfo -> VkDeviceSize [$sel:vkRange:VkDescriptorBufferInfo] :: VkDescriptorBufferInfo -> VkDeviceSize data VkDescriptorImageInfo VkDescriptorImageInfo :: VkSampler -> VkImageView -> VkImageLayout -> VkDescriptorImageInfo [$sel:vkSampler:VkDescriptorImageInfo] :: VkDescriptorImageInfo -> VkSampler [$sel:vkImageView:VkDescriptorImageInfo] :: VkDescriptorImageInfo -> VkImageView [$sel:vkImageLayout:VkDescriptorImageInfo] :: VkDescriptorImageInfo -> VkImageLayout data VkCopyDescriptorSet VkCopyDescriptorSet :: VkStructureType -> Ptr Void -> VkDescriptorSet -> Word32 -> Word32 -> VkDescriptorSet -> Word32 -> Word32 -> Word32 -> VkCopyDescriptorSet [$sel:vkSType:VkCopyDescriptorSet] :: VkCopyDescriptorSet -> VkStructureType [$sel:vkPNext:VkCopyDescriptorSet] :: VkCopyDescriptorSet -> Ptr Void [$sel:vkSrcSet:VkCopyDescriptorSet] :: VkCopyDescriptorSet -> VkDescriptorSet [$sel:vkSrcBinding:VkCopyDescriptorSet] :: VkCopyDescriptorSet -> Word32 [$sel:vkSrcArrayElement:VkCopyDescriptorSet] :: VkCopyDescriptorSet -> Word32 [$sel:vkDstSet:VkCopyDescriptorSet] :: VkCopyDescriptorSet -> VkDescriptorSet [$sel:vkDstBinding:VkCopyDescriptorSet] :: VkCopyDescriptorSet -> Word32 [$sel:vkDstArrayElement:VkCopyDescriptorSet] :: VkCopyDescriptorSet -> Word32 [$sel:vkDescriptorCount:VkCopyDescriptorSet] :: VkCopyDescriptorSet -> Word32 vkDestroyDescriptorPool :: VkDevice -> VkDescriptorPool -> Ptr VkAllocationCallbacks -> IO () vkCreateDescriptorSetLayout :: VkDevice -> Ptr VkDescriptorSetLayoutCreateInfo -> Ptr VkAllocationCallbacks -> Ptr VkDescriptorSetLayout -> IO VkResult newtype VkDescriptorPool VkDescriptorPool :: Word64 -> VkDescriptorPool vkResetDescriptorPool :: VkDevice -> VkDescriptorPool -> VkDescriptorPoolResetFlags -> IO VkResult newtype VkDescriptorSetLayout VkDescriptorSetLayout :: Word64 -> VkDescriptorSetLayout vkFreeDescriptorSets :: VkDevice -> VkDescriptorPool -> Word32 -> Ptr VkDescriptorSet -> IO VkResult data VkDescriptorPoolCreateInfo VkDescriptorPoolCreateInfo :: VkStructureType -> Ptr Void -> VkDescriptorPoolCreateFlags -> Word32 -> Word32 -> Ptr VkDescriptorPoolSize -> VkDescriptorPoolCreateInfo [$sel:vkSType:VkDescriptorPoolCreateInfo] :: VkDescriptorPoolCreateInfo -> VkStructureType [$sel:vkPNext:VkDescriptorPoolCreateInfo] :: VkDescriptorPoolCreateInfo -> Ptr Void [$sel:vkFlags:VkDescriptorPoolCreateInfo] :: VkDescriptorPoolCreateInfo -> VkDescriptorPoolCreateFlags [$sel:vkMaxSets:VkDescriptorPoolCreateInfo] :: VkDescriptorPoolCreateInfo -> Word32 [$sel:vkPoolSizeCount:VkDescriptorPoolCreateInfo] :: VkDescriptorPoolCreateInfo -> Word32 [$sel:vkPPoolSizes:VkDescriptorPoolCreateInfo] :: VkDescriptorPoolCreateInfo -> Ptr VkDescriptorPoolSize -- | Opaque flag newtype VkDescriptorSetLayoutCreateFlags VkDescriptorSetLayoutCreateFlags :: VkFlags -> VkDescriptorSetLayoutCreateFlags data VkDescriptorSetLayoutCreateInfo VkDescriptorSetLayoutCreateInfo :: VkStructureType -> Ptr Void -> VkDescriptorSetLayoutCreateFlags -> Word32 -> Ptr VkDescriptorSetLayoutBinding -> VkDescriptorSetLayoutCreateInfo [$sel:vkSType:VkDescriptorSetLayoutCreateInfo] :: VkDescriptorSetLayoutCreateInfo -> VkStructureType [$sel:vkPNext:VkDescriptorSetLayoutCreateInfo] :: VkDescriptorSetLayoutCreateInfo -> Ptr Void [$sel:vkFlags:VkDescriptorSetLayoutCreateInfo] :: VkDescriptorSetLayoutCreateInfo -> VkDescriptorSetLayoutCreateFlags [$sel:vkBindingCount:VkDescriptorSetLayoutCreateInfo] :: VkDescriptorSetLayoutCreateInfo -> Word32 [$sel:vkPBindings:VkDescriptorSetLayoutCreateInfo] :: VkDescriptorSetLayoutCreateInfo -> Ptr VkDescriptorSetLayoutBinding newtype VkDescriptorPoolCreateFlagBits VkDescriptorPoolCreateFlagBits :: VkFlags -> VkDescriptorPoolCreateFlagBits -- | Alias for VkDescriptorPoolCreateFlagBits type VkDescriptorPoolCreateFlags = VkDescriptorPoolCreateFlagBits -- | Descriptor sets may be freed individually data VkDescriptorPoolSize VkDescriptorPoolSize :: VkDescriptorType -> Word32 -> VkDescriptorPoolSize [$sel:vkType:VkDescriptorPoolSize] :: VkDescriptorPoolSize -> VkDescriptorType [$sel:vkDescriptorCount:VkDescriptorPoolSize] :: VkDescriptorPoolSize -> Word32 newtype VkDescriptorSet VkDescriptorSet :: Word64 -> VkDescriptorSet data VkWriteDescriptorSet VkWriteDescriptorSet :: VkStructureType -> Ptr Void -> VkDescriptorSet -> Word32 -> Word32 -> Word32 -> VkDescriptorType -> Ptr VkDescriptorImageInfo -> Ptr VkDescriptorBufferInfo -> Ptr VkBufferView -> VkWriteDescriptorSet [$sel:vkSType:VkWriteDescriptorSet] :: VkWriteDescriptorSet -> VkStructureType [$sel:vkPNext:VkWriteDescriptorSet] :: VkWriteDescriptorSet -> Ptr Void [$sel:vkDstSet:VkWriteDescriptorSet] :: VkWriteDescriptorSet -> VkDescriptorSet [$sel:vkDstBinding:VkWriteDescriptorSet] :: VkWriteDescriptorSet -> Word32 [$sel:vkDstArrayElement:VkWriteDescriptorSet] :: VkWriteDescriptorSet -> Word32 [$sel:vkDescriptorCount:VkWriteDescriptorSet] :: VkWriteDescriptorSet -> Word32 [$sel:vkDescriptorType:VkWriteDescriptorSet] :: VkWriteDescriptorSet -> VkDescriptorType [$sel:vkPImageInfo:VkWriteDescriptorSet] :: VkWriteDescriptorSet -> Ptr VkDescriptorImageInfo [$sel:vkPBufferInfo:VkWriteDescriptorSet] :: VkWriteDescriptorSet -> Ptr VkDescriptorBufferInfo [$sel:vkPTexelBufferView:VkWriteDescriptorSet] :: VkWriteDescriptorSet -> Ptr VkBufferView vkCreateDescriptorPool :: VkDevice -> Ptr VkDescriptorPoolCreateInfo -> Ptr VkAllocationCallbacks -> Ptr VkDescriptorPool -> IO VkResult vkDestroyDescriptorSetLayout :: VkDevice -> VkDescriptorSetLayout -> Ptr VkAllocationCallbacks -> IO () data VkDescriptorSetLayoutBinding VkDescriptorSetLayoutBinding :: Word32 -> VkDescriptorType -> Word32 -> VkShaderStageFlags -> Ptr VkSampler -> VkDescriptorSetLayoutBinding [$sel:vkBinding:VkDescriptorSetLayoutBinding] :: VkDescriptorSetLayoutBinding -> Word32 [$sel:vkDescriptorType:VkDescriptorSetLayoutBinding] :: VkDescriptorSetLayoutBinding -> VkDescriptorType [$sel:vkDescriptorCount:VkDescriptorSetLayoutBinding] :: VkDescriptorSetLayoutBinding -> Word32 [$sel:vkStageFlags:VkDescriptorSetLayoutBinding] :: VkDescriptorSetLayoutBinding -> VkShaderStageFlags [$sel:vkPImmutableSamplers:VkDescriptorSetLayoutBinding] :: VkDescriptorSetLayoutBinding -> Ptr VkSampler newtype VkDescriptorType VkDescriptorType :: Int32 -> VkDescriptorType data VkDescriptorSetAllocateInfo VkDescriptorSetAllocateInfo :: VkStructureType -> Ptr Void -> VkDescriptorPool -> Word32 -> Ptr VkDescriptorSetLayout -> VkDescriptorSetAllocateInfo [$sel:vkSType:VkDescriptorSetAllocateInfo] :: VkDescriptorSetAllocateInfo -> VkStructureType [$sel:vkPNext:VkDescriptorSetAllocateInfo] :: VkDescriptorSetAllocateInfo -> Ptr Void [$sel:vkDescriptorPool:VkDescriptorSetAllocateInfo] :: VkDescriptorSetAllocateInfo -> VkDescriptorPool [$sel:vkDescriptorSetCount:VkDescriptorSetAllocateInfo] :: VkDescriptorSetAllocateInfo -> Word32 [$sel:vkPSetLayouts:VkDescriptorSetAllocateInfo] :: VkDescriptorSetAllocateInfo -> Ptr VkDescriptorSetLayout instance GHC.Classes.Eq Graphics.Vulkan.DescriptorSet.VkDescriptorSetAllocateInfo instance GHC.Classes.Eq Graphics.Vulkan.DescriptorSet.VkDescriptorPoolCreateInfo instance GHC.Classes.Eq Graphics.Vulkan.DescriptorSet.VkDescriptorPoolSize instance GHC.Classes.Eq Graphics.Vulkan.DescriptorSet.VkWriteDescriptorSet instance GHC.Classes.Eq Graphics.Vulkan.DescriptorSet.VkDescriptorSetLayoutCreateInfo instance GHC.Classes.Eq Graphics.Vulkan.DescriptorSet.VkDescriptorSetLayoutBinding instance Foreign.Storable.Storable Graphics.Vulkan.DescriptorSet.VkDescriptorType instance GHC.Classes.Eq Graphics.Vulkan.DescriptorSet.VkDescriptorType instance GHC.Classes.Eq Graphics.Vulkan.DescriptorSet.VkCopyDescriptorSet instance Foreign.Storable.Storable Graphics.Vulkan.DescriptorSet.VkDescriptorSet instance GHC.Classes.Eq Graphics.Vulkan.DescriptorSet.VkDescriptorSet instance Data.Bits.FiniteBits Graphics.Vulkan.DescriptorSet.VkDescriptorPoolCreateFlagBits instance Data.Bits.Bits Graphics.Vulkan.DescriptorSet.VkDescriptorPoolCreateFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.DescriptorSet.VkDescriptorPoolCreateFlagBits instance GHC.Classes.Eq Graphics.Vulkan.DescriptorSet.VkDescriptorPoolCreateFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.DescriptorSet.VkDescriptorSetLayoutCreateFlags instance GHC.Classes.Eq Graphics.Vulkan.DescriptorSet.VkDescriptorSetLayoutCreateFlags instance Foreign.Storable.Storable Graphics.Vulkan.DescriptorSet.VkDescriptorSetLayout instance GHC.Classes.Eq Graphics.Vulkan.DescriptorSet.VkDescriptorSetLayout instance Foreign.Storable.Storable Graphics.Vulkan.DescriptorSet.VkDescriptorPool instance GHC.Classes.Eq Graphics.Vulkan.DescriptorSet.VkDescriptorPool instance GHC.Classes.Eq Graphics.Vulkan.DescriptorSet.VkDescriptorImageInfo instance GHC.Classes.Eq Graphics.Vulkan.DescriptorSet.VkDescriptorBufferInfo instance Foreign.Storable.Storable Graphics.Vulkan.DescriptorSet.VkDescriptorPoolResetFlags instance GHC.Classes.Eq Graphics.Vulkan.DescriptorSet.VkDescriptorPoolResetFlags instance Foreign.Storable.Storable Graphics.Vulkan.DescriptorSet.VkDescriptorBufferInfo instance Foreign.Storable.Storable Graphics.Vulkan.DescriptorSet.VkDescriptorImageInfo instance Foreign.Storable.Storable Graphics.Vulkan.DescriptorSet.VkCopyDescriptorSet instance Foreign.Storable.Storable Graphics.Vulkan.DescriptorSet.VkDescriptorPoolCreateInfo instance Foreign.Storable.Storable Graphics.Vulkan.DescriptorSet.VkDescriptorSetLayoutCreateInfo instance GHC.Show.Show Graphics.Vulkan.DescriptorSet.VkDescriptorPoolCreateFlagBits instance GHC.Read.Read Graphics.Vulkan.DescriptorSet.VkDescriptorPoolCreateFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.DescriptorSet.VkDescriptorPoolSize instance Foreign.Storable.Storable Graphics.Vulkan.DescriptorSet.VkWriteDescriptorSet instance Foreign.Storable.Storable Graphics.Vulkan.DescriptorSet.VkDescriptorSetLayoutBinding instance GHC.Show.Show Graphics.Vulkan.DescriptorSet.VkDescriptorType instance GHC.Read.Read Graphics.Vulkan.DescriptorSet.VkDescriptorType instance Foreign.Storable.Storable Graphics.Vulkan.DescriptorSet.VkDescriptorSetAllocateInfo module Graphics.Vulkan.PipelineLayout -- | Opaque flag newtype VkPipelineLayoutCreateFlags VkPipelineLayoutCreateFlags :: VkFlags -> VkPipelineLayoutCreateFlags newtype VkPipelineLayout VkPipelineLayout :: Word64 -> VkPipelineLayout vkDestroyPipelineLayout :: VkDevice -> VkPipelineLayout -> Ptr VkAllocationCallbacks -> IO () data VkPushConstantRange VkPushConstantRange :: VkShaderStageFlags -> Word32 -> Word32 -> VkPushConstantRange [$sel:vkStageFlags:VkPushConstantRange] :: VkPushConstantRange -> VkShaderStageFlags [$sel:vkOffset:VkPushConstantRange] :: VkPushConstantRange -> Word32 [$sel:vkSize:VkPushConstantRange] :: VkPushConstantRange -> Word32 data VkPipelineLayoutCreateInfo VkPipelineLayoutCreateInfo :: VkStructureType -> Ptr Void -> VkPipelineLayoutCreateFlags -> Word32 -> Ptr VkDescriptorSetLayout -> Word32 -> Ptr VkPushConstantRange -> VkPipelineLayoutCreateInfo [$sel:vkSType:VkPipelineLayoutCreateInfo] :: VkPipelineLayoutCreateInfo -> VkStructureType [$sel:vkPNext:VkPipelineLayoutCreateInfo] :: VkPipelineLayoutCreateInfo -> Ptr Void [$sel:vkFlags:VkPipelineLayoutCreateInfo] :: VkPipelineLayoutCreateInfo -> VkPipelineLayoutCreateFlags [$sel:vkSetLayoutCount:VkPipelineLayoutCreateInfo] :: VkPipelineLayoutCreateInfo -> Word32 [$sel:vkPSetLayouts:VkPipelineLayoutCreateInfo] :: VkPipelineLayoutCreateInfo -> Ptr VkDescriptorSetLayout [$sel:vkPushConstantRangeCount:VkPipelineLayoutCreateInfo] :: VkPipelineLayoutCreateInfo -> Word32 [$sel:vkPPushConstantRanges:VkPipelineLayoutCreateInfo] :: VkPipelineLayoutCreateInfo -> Ptr VkPushConstantRange vkCreatePipelineLayout :: VkDevice -> Ptr VkPipelineLayoutCreateInfo -> Ptr VkAllocationCallbacks -> Ptr VkPipelineLayout -> IO VkResult instance GHC.Classes.Eq Graphics.Vulkan.PipelineLayout.VkPipelineLayoutCreateInfo instance GHC.Classes.Eq Graphics.Vulkan.PipelineLayout.VkPushConstantRange instance Foreign.Storable.Storable Graphics.Vulkan.PipelineLayout.VkPipelineLayout instance GHC.Classes.Eq Graphics.Vulkan.PipelineLayout.VkPipelineLayout instance Foreign.Storable.Storable Graphics.Vulkan.PipelineLayout.VkPipelineLayoutCreateFlags instance GHC.Classes.Eq Graphics.Vulkan.PipelineLayout.VkPipelineLayoutCreateFlags instance Foreign.Storable.Storable Graphics.Vulkan.PipelineLayout.VkPushConstantRange instance Foreign.Storable.Storable Graphics.Vulkan.PipelineLayout.VkPipelineLayoutCreateInfo module Graphics.Vulkan.Pipeline data VkPipelineTessellationStateCreateInfo VkPipelineTessellationStateCreateInfo :: VkStructureType -> Ptr Void -> VkPipelineTessellationStateCreateFlags -> Word32 -> VkPipelineTessellationStateCreateInfo [$sel:vkSType:VkPipelineTessellationStateCreateInfo] :: VkPipelineTessellationStateCreateInfo -> VkStructureType [$sel:vkPNext:VkPipelineTessellationStateCreateInfo] :: VkPipelineTessellationStateCreateInfo -> Ptr Void [$sel:vkFlags:VkPipelineTessellationStateCreateInfo] :: VkPipelineTessellationStateCreateInfo -> VkPipelineTessellationStateCreateFlags [$sel:vkPatchControlPoints:VkPipelineTessellationStateCreateInfo] :: VkPipelineTessellationStateCreateInfo -> Word32 data VkVertexInputAttributeDescription VkVertexInputAttributeDescription :: Word32 -> Word32 -> VkFormat -> Word32 -> VkVertexInputAttributeDescription [$sel:vkLocation:VkVertexInputAttributeDescription] :: VkVertexInputAttributeDescription -> Word32 [$sel:vkBinding:VkVertexInputAttributeDescription] :: VkVertexInputAttributeDescription -> Word32 [$sel:vkFormat:VkVertexInputAttributeDescription] :: VkVertexInputAttributeDescription -> VkFormat [$sel:vkOffset:VkVertexInputAttributeDescription] :: VkVertexInputAttributeDescription -> Word32 data VkGraphicsPipelineCreateInfo VkGraphicsPipelineCreateInfo :: VkStructureType -> Ptr Void -> VkPipelineCreateFlags -> Word32 -> Ptr VkPipelineShaderStageCreateInfo -> Ptr VkPipelineVertexInputStateCreateInfo -> Ptr VkPipelineInputAssemblyStateCreateInfo -> Ptr VkPipelineTessellationStateCreateInfo -> Ptr VkPipelineViewportStateCreateInfo -> Ptr VkPipelineRasterizationStateCreateInfo -> Ptr VkPipelineMultisampleStateCreateInfo -> Ptr VkPipelineDepthStencilStateCreateInfo -> Ptr VkPipelineColorBlendStateCreateInfo -> Ptr VkPipelineDynamicStateCreateInfo -> VkPipelineLayout -> VkRenderPass -> Word32 -> VkPipeline -> Int32 -> VkGraphicsPipelineCreateInfo [$sel:vkSType:VkGraphicsPipelineCreateInfo] :: VkGraphicsPipelineCreateInfo -> VkStructureType [$sel:vkPNext:VkGraphicsPipelineCreateInfo] :: VkGraphicsPipelineCreateInfo -> Ptr Void [$sel:vkFlags:VkGraphicsPipelineCreateInfo] :: VkGraphicsPipelineCreateInfo -> VkPipelineCreateFlags [$sel:vkStageCount:VkGraphicsPipelineCreateInfo] :: VkGraphicsPipelineCreateInfo -> Word32 [$sel:vkPStages:VkGraphicsPipelineCreateInfo] :: VkGraphicsPipelineCreateInfo -> Ptr VkPipelineShaderStageCreateInfo [$sel:vkPVertexInputState:VkGraphicsPipelineCreateInfo] :: VkGraphicsPipelineCreateInfo -> Ptr VkPipelineVertexInputStateCreateInfo [$sel:vkPInputAssemblyState:VkGraphicsPipelineCreateInfo] :: VkGraphicsPipelineCreateInfo -> Ptr VkPipelineInputAssemblyStateCreateInfo [$sel:vkPTessellationState:VkGraphicsPipelineCreateInfo] :: VkGraphicsPipelineCreateInfo -> Ptr VkPipelineTessellationStateCreateInfo [$sel:vkPViewportState:VkGraphicsPipelineCreateInfo] :: VkGraphicsPipelineCreateInfo -> Ptr VkPipelineViewportStateCreateInfo [$sel:vkPRasterizationState:VkGraphicsPipelineCreateInfo] :: VkGraphicsPipelineCreateInfo -> Ptr VkPipelineRasterizationStateCreateInfo [$sel:vkPMultisampleState:VkGraphicsPipelineCreateInfo] :: VkGraphicsPipelineCreateInfo -> Ptr VkPipelineMultisampleStateCreateInfo [$sel:vkPDepthStencilState:VkGraphicsPipelineCreateInfo] :: VkGraphicsPipelineCreateInfo -> Ptr VkPipelineDepthStencilStateCreateInfo [$sel:vkPColorBlendState:VkGraphicsPipelineCreateInfo] :: VkGraphicsPipelineCreateInfo -> Ptr VkPipelineColorBlendStateCreateInfo [$sel:vkPDynamicState:VkGraphicsPipelineCreateInfo] :: VkGraphicsPipelineCreateInfo -> Ptr VkPipelineDynamicStateCreateInfo [$sel:vkLayout:VkGraphicsPipelineCreateInfo] :: VkGraphicsPipelineCreateInfo -> VkPipelineLayout [$sel:vkRenderPass:VkGraphicsPipelineCreateInfo] :: VkGraphicsPipelineCreateInfo -> VkRenderPass [$sel:vkSubpass:VkGraphicsPipelineCreateInfo] :: VkGraphicsPipelineCreateInfo -> Word32 [$sel:vkBasePipelineHandle:VkGraphicsPipelineCreateInfo] :: VkGraphicsPipelineCreateInfo -> VkPipeline [$sel:vkBasePipelineIndex:VkGraphicsPipelineCreateInfo] :: VkGraphicsPipelineCreateInfo -> Int32 newtype VkCullModeFlagBits VkCullModeFlagBits :: VkFlags -> VkCullModeFlagBits -- | Alias for VkCullModeFlagBits type VkCullModeFlags = VkCullModeFlagBits -- | Opaque flag newtype VkPipelineDepthStencilStateCreateFlags VkPipelineDepthStencilStateCreateFlags :: VkFlags -> VkPipelineDepthStencilStateCreateFlags data VkPipelineShaderStageCreateInfo VkPipelineShaderStageCreateInfo :: VkStructureType -> Ptr Void -> VkPipelineShaderStageCreateFlags -> VkShaderStageFlagBits -> VkShaderModule -> Ptr CChar -> Ptr VkSpecializationInfo -> VkPipelineShaderStageCreateInfo [$sel:vkSType:VkPipelineShaderStageCreateInfo] :: VkPipelineShaderStageCreateInfo -> VkStructureType [$sel:vkPNext:VkPipelineShaderStageCreateInfo] :: VkPipelineShaderStageCreateInfo -> Ptr Void [$sel:vkFlags:VkPipelineShaderStageCreateInfo] :: VkPipelineShaderStageCreateInfo -> VkPipelineShaderStageCreateFlags [$sel:vkStage:VkPipelineShaderStageCreateInfo] :: VkPipelineShaderStageCreateInfo -> VkShaderStageFlagBits [$sel:vkModule:VkPipelineShaderStageCreateInfo] :: VkPipelineShaderStageCreateInfo -> VkShaderModule [$sel:vkPName:VkPipelineShaderStageCreateInfo] :: VkPipelineShaderStageCreateInfo -> Ptr CChar [$sel:vkPSpecializationInfo:VkPipelineShaderStageCreateInfo] :: VkPipelineShaderStageCreateInfo -> Ptr VkSpecializationInfo newtype VkColorComponentFlagBits VkColorComponentFlagBits :: VkFlags -> VkColorComponentFlagBits -- | Alias for VkColorComponentFlagBits type VkColorComponentFlags = VkColorComponentFlagBits data VkComputePipelineCreateInfo VkComputePipelineCreateInfo :: VkStructureType -> Ptr Void -> VkPipelineCreateFlags -> VkPipelineShaderStageCreateInfo -> VkPipelineLayout -> VkPipeline -> Int32 -> VkComputePipelineCreateInfo [$sel:vkSType:VkComputePipelineCreateInfo] :: VkComputePipelineCreateInfo -> VkStructureType [$sel:vkPNext:VkComputePipelineCreateInfo] :: VkComputePipelineCreateInfo -> Ptr Void [$sel:vkFlags:VkComputePipelineCreateInfo] :: VkComputePipelineCreateInfo -> VkPipelineCreateFlags [$sel:vkStage:VkComputePipelineCreateInfo] :: VkComputePipelineCreateInfo -> VkPipelineShaderStageCreateInfo [$sel:vkLayout:VkComputePipelineCreateInfo] :: VkComputePipelineCreateInfo -> VkPipelineLayout [$sel:vkBasePipelineHandle:VkComputePipelineCreateInfo] :: VkComputePipelineCreateInfo -> VkPipeline [$sel:vkBasePipelineIndex:VkComputePipelineCreateInfo] :: VkComputePipelineCreateInfo -> Int32 newtype VkStencilOp VkStencilOp :: Int32 -> VkStencilOp data VkSpecializationInfo VkSpecializationInfo :: Word32 -> Ptr VkSpecializationMapEntry -> CSize -> Ptr Void -> VkSpecializationInfo [$sel:vkMapEntryCount:VkSpecializationInfo] :: VkSpecializationInfo -> Word32 [$sel:vkPMapEntries:VkSpecializationInfo] :: VkSpecializationInfo -> Ptr VkSpecializationMapEntry [$sel:vkDataSize:VkSpecializationInfo] :: VkSpecializationInfo -> CSize [$sel:vkPData:VkSpecializationInfo] :: VkSpecializationInfo -> Ptr Void -- | Opaque flag newtype VkPipelineColorBlendStateCreateFlags VkPipelineColorBlendStateCreateFlags :: VkFlags -> VkPipelineColorBlendStateCreateFlags newtype VkPipeline VkPipeline :: Word64 -> VkPipeline -- | Opaque flag newtype VkPipelineInputAssemblyStateCreateFlags VkPipelineInputAssemblyStateCreateFlags :: VkFlags -> VkPipelineInputAssemblyStateCreateFlags vkCreateGraphicsPipelines :: VkDevice -> VkPipelineCache -> Word32 -> Ptr VkGraphicsPipelineCreateInfo -> Ptr VkAllocationCallbacks -> Ptr VkPipeline -> IO VkResult newtype VkFrontFace VkFrontFace :: Int32 -> VkFrontFace newtype VkPolygonMode VkPolygonMode :: Int32 -> VkPolygonMode -- | Opaque flag newtype VkPipelineViewportStateCreateFlags VkPipelineViewportStateCreateFlags :: VkFlags -> VkPipelineViewportStateCreateFlags newtype VkLogicOp VkLogicOp :: Int32 -> VkLogicOp newtype VkPipelineCreateFlagBits VkPipelineCreateFlagBits :: VkFlags -> VkPipelineCreateFlagBits -- | Alias for VkPipelineCreateFlagBits type VkPipelineCreateFlags = VkPipelineCreateFlagBits -- | Opaque flag newtype VkPipelineRasterizationStateCreateFlags VkPipelineRasterizationStateCreateFlags :: VkFlags -> VkPipelineRasterizationStateCreateFlags newtype VkDynamicState VkDynamicState :: Int32 -> VkDynamicState newtype VkPipelineBindPoint VkPipelineBindPoint :: Int32 -> VkPipelineBindPoint -- | Opaque flag newtype VkPipelineDynamicStateCreateFlags VkPipelineDynamicStateCreateFlags :: VkFlags -> VkPipelineDynamicStateCreateFlags data VkPipelineRasterizationStateCreateInfo VkPipelineRasterizationStateCreateInfo :: VkStructureType -> Ptr Void -> VkPipelineRasterizationStateCreateFlags -> VkBool32 -> VkBool32 -> VkPolygonMode -> VkCullModeFlags -> VkFrontFace -> VkBool32 -> CFloat -> CFloat -> CFloat -> CFloat -> VkPipelineRasterizationStateCreateInfo [$sel:vkSType:VkPipelineRasterizationStateCreateInfo] :: VkPipelineRasterizationStateCreateInfo -> VkStructureType [$sel:vkPNext:VkPipelineRasterizationStateCreateInfo] :: VkPipelineRasterizationStateCreateInfo -> Ptr Void [$sel:vkFlags:VkPipelineRasterizationStateCreateInfo] :: VkPipelineRasterizationStateCreateInfo -> VkPipelineRasterizationStateCreateFlags [$sel:vkDepthClampEnable:VkPipelineRasterizationStateCreateInfo] :: VkPipelineRasterizationStateCreateInfo -> VkBool32 [$sel:vkRasterizerDiscardEnable:VkPipelineRasterizationStateCreateInfo] :: VkPipelineRasterizationStateCreateInfo -> VkBool32 [$sel:vkPolygonMode:VkPipelineRasterizationStateCreateInfo] :: VkPipelineRasterizationStateCreateInfo -> VkPolygonMode [$sel:vkCullMode:VkPipelineRasterizationStateCreateInfo] :: VkPipelineRasterizationStateCreateInfo -> VkCullModeFlags [$sel:vkFrontFace:VkPipelineRasterizationStateCreateInfo] :: VkPipelineRasterizationStateCreateInfo -> VkFrontFace [$sel:vkDepthBiasEnable:VkPipelineRasterizationStateCreateInfo] :: VkPipelineRasterizationStateCreateInfo -> VkBool32 [$sel:vkDepthBiasConstantFactor:VkPipelineRasterizationStateCreateInfo] :: VkPipelineRasterizationStateCreateInfo -> CFloat [$sel:vkDepthBiasClamp:VkPipelineRasterizationStateCreateInfo] :: VkPipelineRasterizationStateCreateInfo -> CFloat [$sel:vkDepthBiasSlopeFactor:VkPipelineRasterizationStateCreateInfo] :: VkPipelineRasterizationStateCreateInfo -> CFloat [$sel:vkLineWidth:VkPipelineRasterizationStateCreateInfo] :: VkPipelineRasterizationStateCreateInfo -> CFloat newtype VkBlendOp VkBlendOp :: Int32 -> VkBlendOp vkDestroyPipeline :: VkDevice -> VkPipeline -> Ptr VkAllocationCallbacks -> IO () -- | Opaque flag newtype VkPipelineShaderStageCreateFlags VkPipelineShaderStageCreateFlags :: VkFlags -> VkPipelineShaderStageCreateFlags data VkPipelineViewportStateCreateInfo VkPipelineViewportStateCreateInfo :: VkStructureType -> Ptr Void -> VkPipelineViewportStateCreateFlags -> Word32 -> Ptr VkViewport -> Word32 -> Ptr VkRect2D -> VkPipelineViewportStateCreateInfo [$sel:vkSType:VkPipelineViewportStateCreateInfo] :: VkPipelineViewportStateCreateInfo -> VkStructureType [$sel:vkPNext:VkPipelineViewportStateCreateInfo] :: VkPipelineViewportStateCreateInfo -> Ptr Void [$sel:vkFlags:VkPipelineViewportStateCreateInfo] :: VkPipelineViewportStateCreateInfo -> VkPipelineViewportStateCreateFlags [$sel:vkViewportCount:VkPipelineViewportStateCreateInfo] :: VkPipelineViewportStateCreateInfo -> Word32 [$sel:vkPViewports:VkPipelineViewportStateCreateInfo] :: VkPipelineViewportStateCreateInfo -> Ptr VkViewport [$sel:vkScissorCount:VkPipelineViewportStateCreateInfo] :: VkPipelineViewportStateCreateInfo -> Word32 [$sel:vkPScissors:VkPipelineViewportStateCreateInfo] :: VkPipelineViewportStateCreateInfo -> Ptr VkRect2D -- | Opaque flag newtype VkPipelineTessellationStateCreateFlags VkPipelineTessellationStateCreateFlags :: VkFlags -> VkPipelineTessellationStateCreateFlags data VkPipelineVertexInputStateCreateInfo VkPipelineVertexInputStateCreateInfo :: VkStructureType -> Ptr Void -> VkPipelineVertexInputStateCreateFlags -> Word32 -> Ptr VkVertexInputBindingDescription -> Word32 -> Ptr VkVertexInputAttributeDescription -> VkPipelineVertexInputStateCreateInfo [$sel:vkSType:VkPipelineVertexInputStateCreateInfo] :: VkPipelineVertexInputStateCreateInfo -> VkStructureType [$sel:vkPNext:VkPipelineVertexInputStateCreateInfo] :: VkPipelineVertexInputStateCreateInfo -> Ptr Void [$sel:vkFlags:VkPipelineVertexInputStateCreateInfo] :: VkPipelineVertexInputStateCreateInfo -> VkPipelineVertexInputStateCreateFlags [$sel:vkVertexBindingDescriptionCount:VkPipelineVertexInputStateCreateInfo] :: VkPipelineVertexInputStateCreateInfo -> Word32 [$sel:vkPVertexBindingDescriptions:VkPipelineVertexInputStateCreateInfo] :: VkPipelineVertexInputStateCreateInfo -> Ptr VkVertexInputBindingDescription [$sel:vkVertexAttributeDescriptionCount:VkPipelineVertexInputStateCreateInfo] :: VkPipelineVertexInputStateCreateInfo -> Word32 [$sel:vkPVertexAttributeDescriptions:VkPipelineVertexInputStateCreateInfo] :: VkPipelineVertexInputStateCreateInfo -> Ptr VkVertexInputAttributeDescription newtype VkPrimitiveTopology VkPrimitiveTopology :: Int32 -> VkPrimitiveTopology data VkPipelineInputAssemblyStateCreateInfo VkPipelineInputAssemblyStateCreateInfo :: VkStructureType -> Ptr Void -> VkPipelineInputAssemblyStateCreateFlags -> VkPrimitiveTopology -> VkBool32 -> VkPipelineInputAssemblyStateCreateInfo [$sel:vkSType:VkPipelineInputAssemblyStateCreateInfo] :: VkPipelineInputAssemblyStateCreateInfo -> VkStructureType [$sel:vkPNext:VkPipelineInputAssemblyStateCreateInfo] :: VkPipelineInputAssemblyStateCreateInfo -> Ptr Void [$sel:vkFlags:VkPipelineInputAssemblyStateCreateInfo] :: VkPipelineInputAssemblyStateCreateInfo -> VkPipelineInputAssemblyStateCreateFlags [$sel:vkTopology:VkPipelineInputAssemblyStateCreateInfo] :: VkPipelineInputAssemblyStateCreateInfo -> VkPrimitiveTopology [$sel:vkPrimitiveRestartEnable:VkPipelineInputAssemblyStateCreateInfo] :: VkPipelineInputAssemblyStateCreateInfo -> VkBool32 data VkPipelineColorBlendStateCreateInfo VkPipelineColorBlendStateCreateInfo :: VkStructureType -> Ptr Void -> VkPipelineColorBlendStateCreateFlags -> VkBool32 -> VkLogicOp -> Word32 -> Ptr VkPipelineColorBlendAttachmentState -> Vector 4 CFloat -> VkPipelineColorBlendStateCreateInfo [$sel:vkSType:VkPipelineColorBlendStateCreateInfo] :: VkPipelineColorBlendStateCreateInfo -> VkStructureType [$sel:vkPNext:VkPipelineColorBlendStateCreateInfo] :: VkPipelineColorBlendStateCreateInfo -> Ptr Void [$sel:vkFlags:VkPipelineColorBlendStateCreateInfo] :: VkPipelineColorBlendStateCreateInfo -> VkPipelineColorBlendStateCreateFlags [$sel:vkLogicOpEnable:VkPipelineColorBlendStateCreateInfo] :: VkPipelineColorBlendStateCreateInfo -> VkBool32 [$sel:vkLogicOp:VkPipelineColorBlendStateCreateInfo] :: VkPipelineColorBlendStateCreateInfo -> VkLogicOp [$sel:vkAttachmentCount:VkPipelineColorBlendStateCreateInfo] :: VkPipelineColorBlendStateCreateInfo -> Word32 [$sel:vkPAttachments:VkPipelineColorBlendStateCreateInfo] :: VkPipelineColorBlendStateCreateInfo -> Ptr VkPipelineColorBlendAttachmentState [$sel:vkBlendConstants:VkPipelineColorBlendStateCreateInfo] :: VkPipelineColorBlendStateCreateInfo -> Vector 4 CFloat data VkPipelineDynamicStateCreateInfo VkPipelineDynamicStateCreateInfo :: VkStructureType -> Ptr Void -> VkPipelineDynamicStateCreateFlags -> Word32 -> Ptr VkDynamicState -> VkPipelineDynamicStateCreateInfo [$sel:vkSType:VkPipelineDynamicStateCreateInfo] :: VkPipelineDynamicStateCreateInfo -> VkStructureType [$sel:vkPNext:VkPipelineDynamicStateCreateInfo] :: VkPipelineDynamicStateCreateInfo -> Ptr Void [$sel:vkFlags:VkPipelineDynamicStateCreateInfo] :: VkPipelineDynamicStateCreateInfo -> VkPipelineDynamicStateCreateFlags [$sel:vkDynamicStateCount:VkPipelineDynamicStateCreateInfo] :: VkPipelineDynamicStateCreateInfo -> Word32 [$sel:vkPDynamicStates:VkPipelineDynamicStateCreateInfo] :: VkPipelineDynamicStateCreateInfo -> Ptr VkDynamicState data VkSpecializationMapEntry VkSpecializationMapEntry :: Word32 -> Word32 -> CSize -> VkSpecializationMapEntry [$sel:vkConstantID:VkSpecializationMapEntry] :: VkSpecializationMapEntry -> Word32 [$sel:vkOffset:VkSpecializationMapEntry] :: VkSpecializationMapEntry -> Word32 [$sel:vkSize:VkSpecializationMapEntry] :: VkSpecializationMapEntry -> CSize -- | Opaque flag newtype VkPipelineVertexInputStateCreateFlags VkPipelineVertexInputStateCreateFlags :: VkFlags -> VkPipelineVertexInputStateCreateFlags newtype VkVertexInputRate VkVertexInputRate :: Int32 -> VkVertexInputRate newtype VkPipelineStageFlagBits VkPipelineStageFlagBits :: VkFlags -> VkPipelineStageFlagBits -- | Alias for VkPipelineStageFlagBits type VkPipelineStageFlags = VkPipelineStageFlagBits -- | Before subsequent commands are processed -- | Draw/DispatchIndirect command fetch -- | Vertex/index fetch -- | Vertex shading -- | Tessellation control shading -- | Tessellation evaluation shading -- | Geometry shading -- | Fragment shading -- | Early fragment (depth and stencil) tests -- | Late fragment (depth and stencil) tests -- | Color attachment writes -- | Compute shading -- | Transfer/copy operations -- | After previous commands have completed -- | Indicates host (CPU) is a source/sink of the dependency -- | All stages of the graphics pipeline -- | All stages supported on the queue data VkPipelineColorBlendAttachmentState VkPipelineColorBlendAttachmentState :: VkBool32 -> VkBlendFactor -> VkBlendFactor -> VkBlendOp -> VkBlendFactor -> VkBlendFactor -> VkBlendOp -> VkColorComponentFlags -> VkPipelineColorBlendAttachmentState [$sel:vkBlendEnable:VkPipelineColorBlendAttachmentState] :: VkPipelineColorBlendAttachmentState -> VkBool32 [$sel:vkSrcColorBlendFactor:VkPipelineColorBlendAttachmentState] :: VkPipelineColorBlendAttachmentState -> VkBlendFactor [$sel:vkDstColorBlendFactor:VkPipelineColorBlendAttachmentState] :: VkPipelineColorBlendAttachmentState -> VkBlendFactor [$sel:vkColorBlendOp:VkPipelineColorBlendAttachmentState] :: VkPipelineColorBlendAttachmentState -> VkBlendOp [$sel:vkSrcAlphaBlendFactor:VkPipelineColorBlendAttachmentState] :: VkPipelineColorBlendAttachmentState -> VkBlendFactor [$sel:vkDstAlphaBlendFactor:VkPipelineColorBlendAttachmentState] :: VkPipelineColorBlendAttachmentState -> VkBlendFactor [$sel:vkAlphaBlendOp:VkPipelineColorBlendAttachmentState] :: VkPipelineColorBlendAttachmentState -> VkBlendOp [$sel:vkColorWriteMask:VkPipelineColorBlendAttachmentState] :: VkPipelineColorBlendAttachmentState -> VkColorComponentFlags newtype VkBlendFactor VkBlendFactor :: Int32 -> VkBlendFactor newtype VkSampleMask VkSampleMask :: Word32 -> VkSampleMask -- | Opaque flag newtype VkPipelineMultisampleStateCreateFlags VkPipelineMultisampleStateCreateFlags :: VkFlags -> VkPipelineMultisampleStateCreateFlags data VkPipelineMultisampleStateCreateInfo VkPipelineMultisampleStateCreateInfo :: VkStructureType -> Ptr Void -> VkPipelineMultisampleStateCreateFlags -> VkSampleCountFlagBits -> VkBool32 -> CFloat -> Ptr VkSampleMask -> VkBool32 -> VkBool32 -> VkPipelineMultisampleStateCreateInfo [$sel:vkSType:VkPipelineMultisampleStateCreateInfo] :: VkPipelineMultisampleStateCreateInfo -> VkStructureType [$sel:vkPNext:VkPipelineMultisampleStateCreateInfo] :: VkPipelineMultisampleStateCreateInfo -> Ptr Void [$sel:vkFlags:VkPipelineMultisampleStateCreateInfo] :: VkPipelineMultisampleStateCreateInfo -> VkPipelineMultisampleStateCreateFlags [$sel:vkRasterizationSamples:VkPipelineMultisampleStateCreateInfo] :: VkPipelineMultisampleStateCreateInfo -> VkSampleCountFlagBits [$sel:vkSampleShadingEnable:VkPipelineMultisampleStateCreateInfo] :: VkPipelineMultisampleStateCreateInfo -> VkBool32 [$sel:vkMinSampleShading:VkPipelineMultisampleStateCreateInfo] :: VkPipelineMultisampleStateCreateInfo -> CFloat [$sel:vkPSampleMask:VkPipelineMultisampleStateCreateInfo] :: VkPipelineMultisampleStateCreateInfo -> Ptr VkSampleMask [$sel:vkAlphaToCoverageEnable:VkPipelineMultisampleStateCreateInfo] :: VkPipelineMultisampleStateCreateInfo -> VkBool32 [$sel:vkAlphaToOneEnable:VkPipelineMultisampleStateCreateInfo] :: VkPipelineMultisampleStateCreateInfo -> VkBool32 data VkVertexInputBindingDescription VkVertexInputBindingDescription :: Word32 -> Word32 -> VkVertexInputRate -> VkVertexInputBindingDescription [$sel:vkBinding:VkVertexInputBindingDescription] :: VkVertexInputBindingDescription -> Word32 [$sel:vkStride:VkVertexInputBindingDescription] :: VkVertexInputBindingDescription -> Word32 [$sel:vkInputRate:VkVertexInputBindingDescription] :: VkVertexInputBindingDescription -> VkVertexInputRate data VkPipelineDepthStencilStateCreateInfo VkPipelineDepthStencilStateCreateInfo :: VkStructureType -> Ptr Void -> VkPipelineDepthStencilStateCreateFlags -> VkBool32 -> VkBool32 -> VkCompareOp -> VkBool32 -> VkBool32 -> VkStencilOpState -> VkStencilOpState -> CFloat -> CFloat -> VkPipelineDepthStencilStateCreateInfo [$sel:vkSType:VkPipelineDepthStencilStateCreateInfo] :: VkPipelineDepthStencilStateCreateInfo -> VkStructureType [$sel:vkPNext:VkPipelineDepthStencilStateCreateInfo] :: VkPipelineDepthStencilStateCreateInfo -> Ptr Void [$sel:vkFlags:VkPipelineDepthStencilStateCreateInfo] :: VkPipelineDepthStencilStateCreateInfo -> VkPipelineDepthStencilStateCreateFlags [$sel:vkDepthTestEnable:VkPipelineDepthStencilStateCreateInfo] :: VkPipelineDepthStencilStateCreateInfo -> VkBool32 [$sel:vkDepthWriteEnable:VkPipelineDepthStencilStateCreateInfo] :: VkPipelineDepthStencilStateCreateInfo -> VkBool32 [$sel:vkDepthCompareOp:VkPipelineDepthStencilStateCreateInfo] :: VkPipelineDepthStencilStateCreateInfo -> VkCompareOp [$sel:vkDepthBoundsTestEnable:VkPipelineDepthStencilStateCreateInfo] :: VkPipelineDepthStencilStateCreateInfo -> VkBool32 [$sel:vkStencilTestEnable:VkPipelineDepthStencilStateCreateInfo] :: VkPipelineDepthStencilStateCreateInfo -> VkBool32 [$sel:vkFront:VkPipelineDepthStencilStateCreateInfo] :: VkPipelineDepthStencilStateCreateInfo -> VkStencilOpState [$sel:vkBack:VkPipelineDepthStencilStateCreateInfo] :: VkPipelineDepthStencilStateCreateInfo -> VkStencilOpState [$sel:vkMinDepthBounds:VkPipelineDepthStencilStateCreateInfo] :: VkPipelineDepthStencilStateCreateInfo -> CFloat [$sel:vkMaxDepthBounds:VkPipelineDepthStencilStateCreateInfo] :: VkPipelineDepthStencilStateCreateInfo -> CFloat vkCreateComputePipelines :: VkDevice -> VkPipelineCache -> Word32 -> Ptr VkComputePipelineCreateInfo -> Ptr VkAllocationCallbacks -> Ptr VkPipeline -> IO VkResult data VkStencilOpState VkStencilOpState :: VkStencilOp -> VkStencilOp -> VkStencilOp -> VkCompareOp -> Word32 -> Word32 -> Word32 -> VkStencilOpState [$sel:vkFailOp:VkStencilOpState] :: VkStencilOpState -> VkStencilOp [$sel:vkPassOp:VkStencilOpState] :: VkStencilOpState -> VkStencilOp [$sel:vkDepthFailOp:VkStencilOpState] :: VkStencilOpState -> VkStencilOp [$sel:vkCompareOp:VkStencilOpState] :: VkStencilOpState -> VkCompareOp [$sel:vkCompareMask:VkStencilOpState] :: VkStencilOpState -> Word32 [$sel:vkWriteMask:VkStencilOpState] :: VkStencilOpState -> Word32 [$sel:vkReference:VkStencilOpState] :: VkStencilOpState -> Word32 instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkGraphicsPipelineCreateInfo instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkPipelineDepthStencilStateCreateInfo instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkStencilOpState instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkPipelineVertexInputStateCreateInfo instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkVertexInputBindingDescription instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkPipelineMultisampleStateCreateInfo instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkPipelineMultisampleStateCreateFlags instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkPipelineMultisampleStateCreateFlags instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkSampleMask instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkSampleMask instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkPipelineColorBlendStateCreateInfo instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkPipelineColorBlendAttachmentState instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkBlendFactor instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkBlendFactor instance Data.Bits.FiniteBits Graphics.Vulkan.Pipeline.VkPipelineStageFlagBits instance Data.Bits.Bits Graphics.Vulkan.Pipeline.VkPipelineStageFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkPipelineStageFlagBits instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkPipelineStageFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkVertexInputRate instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkVertexInputRate instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkPipelineVertexInputStateCreateFlags instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkPipelineVertexInputStateCreateFlags instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkComputePipelineCreateInfo instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkPipelineShaderStageCreateInfo instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkSpecializationInfo instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkSpecializationMapEntry instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkPipelineDynamicStateCreateInfo instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkPipelineInputAssemblyStateCreateInfo instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkPrimitiveTopology instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkPrimitiveTopology instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkPipelineTessellationStateCreateInfo instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkPipelineTessellationStateCreateFlags instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkPipelineTessellationStateCreateFlags instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkPipelineViewportStateCreateInfo instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkPipelineShaderStageCreateFlags instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkPipelineShaderStageCreateFlags instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkBlendOp instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkBlendOp instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkPipelineRasterizationStateCreateInfo instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkPipelineDynamicStateCreateFlags instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkPipelineDynamicStateCreateFlags instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkPipelineBindPoint instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkPipelineBindPoint instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkDynamicState instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkDynamicState instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkPipelineRasterizationStateCreateFlags instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkPipelineRasterizationStateCreateFlags instance Data.Bits.FiniteBits Graphics.Vulkan.Pipeline.VkPipelineCreateFlagBits instance Data.Bits.Bits Graphics.Vulkan.Pipeline.VkPipelineCreateFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkPipelineCreateFlagBits instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkPipelineCreateFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkLogicOp instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkLogicOp instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkPipelineViewportStateCreateFlags instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkPipelineViewportStateCreateFlags instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkPolygonMode instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkPolygonMode instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkFrontFace instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkFrontFace instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkPipelineInputAssemblyStateCreateFlags instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkPipelineInputAssemblyStateCreateFlags instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkPipeline instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkPipeline instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkPipelineColorBlendStateCreateFlags instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkPipelineColorBlendStateCreateFlags instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkStencilOp instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkStencilOp instance Data.Bits.FiniteBits Graphics.Vulkan.Pipeline.VkColorComponentFlagBits instance Data.Bits.Bits Graphics.Vulkan.Pipeline.VkColorComponentFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkColorComponentFlagBits instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkColorComponentFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkPipelineDepthStencilStateCreateFlags instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkPipelineDepthStencilStateCreateFlags instance Data.Bits.FiniteBits Graphics.Vulkan.Pipeline.VkCullModeFlagBits instance Data.Bits.Bits Graphics.Vulkan.Pipeline.VkCullModeFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkCullModeFlagBits instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkCullModeFlagBits instance GHC.Classes.Eq Graphics.Vulkan.Pipeline.VkVertexInputAttributeDescription instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkPipelineTessellationStateCreateInfo instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkVertexInputAttributeDescription instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkGraphicsPipelineCreateInfo instance GHC.Show.Show Graphics.Vulkan.Pipeline.VkCullModeFlagBits instance GHC.Read.Read Graphics.Vulkan.Pipeline.VkCullModeFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkPipelineShaderStageCreateInfo instance GHC.Show.Show Graphics.Vulkan.Pipeline.VkColorComponentFlagBits instance GHC.Read.Read Graphics.Vulkan.Pipeline.VkColorComponentFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkComputePipelineCreateInfo instance GHC.Show.Show Graphics.Vulkan.Pipeline.VkStencilOp instance GHC.Read.Read Graphics.Vulkan.Pipeline.VkStencilOp instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkSpecializationInfo instance GHC.Show.Show Graphics.Vulkan.Pipeline.VkFrontFace instance GHC.Read.Read Graphics.Vulkan.Pipeline.VkFrontFace instance GHC.Show.Show Graphics.Vulkan.Pipeline.VkPolygonMode instance GHC.Read.Read Graphics.Vulkan.Pipeline.VkPolygonMode instance GHC.Show.Show Graphics.Vulkan.Pipeline.VkLogicOp instance GHC.Read.Read Graphics.Vulkan.Pipeline.VkLogicOp instance GHC.Show.Show Graphics.Vulkan.Pipeline.VkPipelineCreateFlagBits instance GHC.Read.Read Graphics.Vulkan.Pipeline.VkPipelineCreateFlagBits instance GHC.Show.Show Graphics.Vulkan.Pipeline.VkDynamicState instance GHC.Read.Read Graphics.Vulkan.Pipeline.VkDynamicState instance GHC.Show.Show Graphics.Vulkan.Pipeline.VkPipelineBindPoint instance GHC.Read.Read Graphics.Vulkan.Pipeline.VkPipelineBindPoint instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkPipelineRasterizationStateCreateInfo instance GHC.Show.Show Graphics.Vulkan.Pipeline.VkBlendOp instance GHC.Read.Read Graphics.Vulkan.Pipeline.VkBlendOp instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkPipelineViewportStateCreateInfo instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkPipelineVertexInputStateCreateInfo instance GHC.Show.Show Graphics.Vulkan.Pipeline.VkPrimitiveTopology instance GHC.Read.Read Graphics.Vulkan.Pipeline.VkPrimitiveTopology instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkPipelineInputAssemblyStateCreateInfo instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkPipelineColorBlendStateCreateInfo instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkPipelineDynamicStateCreateInfo instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkSpecializationMapEntry instance GHC.Show.Show Graphics.Vulkan.Pipeline.VkVertexInputRate instance GHC.Read.Read Graphics.Vulkan.Pipeline.VkVertexInputRate instance GHC.Show.Show Graphics.Vulkan.Pipeline.VkPipelineStageFlagBits instance GHC.Read.Read Graphics.Vulkan.Pipeline.VkPipelineStageFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkPipelineColorBlendAttachmentState instance GHC.Show.Show Graphics.Vulkan.Pipeline.VkBlendFactor instance GHC.Read.Read Graphics.Vulkan.Pipeline.VkBlendFactor instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkPipelineMultisampleStateCreateInfo instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkVertexInputBindingDescription instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkPipelineDepthStencilStateCreateInfo instance Foreign.Storable.Storable Graphics.Vulkan.Pipeline.VkStencilOpState module Graphics.Vulkan.Pass data VkSubpassDependency VkSubpassDependency :: Word32 -> Word32 -> VkPipelineStageFlags -> VkPipelineStageFlags -> VkAccessFlags -> VkAccessFlags -> VkDependencyFlags -> VkSubpassDependency [$sel:vkSrcSubpass:VkSubpassDependency] :: VkSubpassDependency -> Word32 [$sel:vkDstSubpass:VkSubpassDependency] :: VkSubpassDependency -> Word32 [$sel:vkSrcStageMask:VkSubpassDependency] :: VkSubpassDependency -> VkPipelineStageFlags [$sel:vkDstStageMask:VkSubpassDependency] :: VkSubpassDependency -> VkPipelineStageFlags [$sel:vkSrcAccessMask:VkSubpassDependency] :: VkSubpassDependency -> VkAccessFlags [$sel:vkDstAccessMask:VkSubpassDependency] :: VkSubpassDependency -> VkAccessFlags [$sel:vkDependencyFlags:VkSubpassDependency] :: VkSubpassDependency -> VkDependencyFlags -- | Opaque flag newtype VkSubpassDescriptionFlags VkSubpassDescriptionFlags :: VkFlags -> VkSubpassDescriptionFlags newtype VkFramebuffer VkFramebuffer :: Word64 -> VkFramebuffer newtype VkAttachmentDescriptionFlagBits VkAttachmentDescriptionFlagBits :: VkFlags -> VkAttachmentDescriptionFlagBits -- | Alias for VkAttachmentDescriptionFlagBits type VkAttachmentDescriptionFlags = VkAttachmentDescriptionFlagBits -- | The attachment may alias physical memory of another attachment in the -- same render pass newtype VkDependencyFlagBits VkDependencyFlagBits :: VkFlags -> VkDependencyFlagBits -- | Alias for VkDependencyFlagBits type VkDependencyFlags = VkDependencyFlagBits -- | Dependency is per pixel region vkDestroyRenderPass :: VkDevice -> VkRenderPass -> Ptr VkAllocationCallbacks -> IO () vkCreateFramebuffer :: VkDevice -> Ptr VkFramebufferCreateInfo -> Ptr VkAllocationCallbacks -> Ptr VkFramebuffer -> IO VkResult data VkFramebufferCreateInfo VkFramebufferCreateInfo :: VkStructureType -> Ptr Void -> VkFramebufferCreateFlags -> VkRenderPass -> Word32 -> Ptr VkImageView -> Word32 -> Word32 -> Word32 -> VkFramebufferCreateInfo [$sel:vkSType:VkFramebufferCreateInfo] :: VkFramebufferCreateInfo -> VkStructureType [$sel:vkPNext:VkFramebufferCreateInfo] :: VkFramebufferCreateInfo -> Ptr Void [$sel:vkFlags:VkFramebufferCreateInfo] :: VkFramebufferCreateInfo -> VkFramebufferCreateFlags [$sel:vkRenderPass:VkFramebufferCreateInfo] :: VkFramebufferCreateInfo -> VkRenderPass [$sel:vkAttachmentCount:VkFramebufferCreateInfo] :: VkFramebufferCreateInfo -> Word32 [$sel:vkPAttachments:VkFramebufferCreateInfo] :: VkFramebufferCreateInfo -> Ptr VkImageView [$sel:vkWidth:VkFramebufferCreateInfo] :: VkFramebufferCreateInfo -> Word32 [$sel:vkHeight:VkFramebufferCreateInfo] :: VkFramebufferCreateInfo -> Word32 [$sel:vkLayers:VkFramebufferCreateInfo] :: VkFramebufferCreateInfo -> Word32 vkGetRenderAreaGranularity :: VkDevice -> VkRenderPass -> Ptr VkExtent2D -> IO () newtype VkAttachmentLoadOp VkAttachmentLoadOp :: Int32 -> VkAttachmentLoadOp newtype VkAttachmentStoreOp VkAttachmentStoreOp :: Int32 -> VkAttachmentStoreOp newtype VkAccessFlagBits VkAccessFlagBits :: VkFlags -> VkAccessFlagBits -- | Alias for VkAccessFlagBits type VkAccessFlags = VkAccessFlagBits -- | Controls coherency of indirect command reads -- | Controls coherency of index reads -- | Controls coherency of vertex attribute reads -- | Controls coherency of uniform buffer reads -- | Controls coherency of input attachment reads -- | Controls coherency of shader reads -- | Controls coherency of shader writes -- | Controls coherency of color attachment reads -- | Controls coherency of color attachment writes -- | Controls coherency of depth/stencil attachment reads -- | Controls coherency of depth/stencil attachment writes -- | Controls coherency of transfer reads -- | Controls coherency of transfer writes -- | Controls coherency of host reads -- | Controls coherency of host writes -- | Controls coherency of memory reads -- | Controls coherency of memory writes newtype VkRenderPass VkRenderPass :: Word64 -> VkRenderPass vkDestroyFramebuffer :: VkDevice -> VkFramebuffer -> Ptr VkAllocationCallbacks -> IO () data VkAttachmentReference VkAttachmentReference :: Word32 -> VkImageLayout -> VkAttachmentReference [$sel:vkAttachment:VkAttachmentReference] :: VkAttachmentReference -> Word32 [$sel:vkLayout:VkAttachmentReference] :: VkAttachmentReference -> VkImageLayout -- | Opaque flag newtype VkRenderPassCreateFlags VkRenderPassCreateFlags :: VkFlags -> VkRenderPassCreateFlags data VkAttachmentDescription VkAttachmentDescription :: VkAttachmentDescriptionFlags -> VkFormat -> VkSampleCountFlagBits -> VkAttachmentLoadOp -> VkAttachmentStoreOp -> VkAttachmentLoadOp -> VkAttachmentStoreOp -> VkImageLayout -> VkImageLayout -> VkAttachmentDescription [$sel:vkFlags:VkAttachmentDescription] :: VkAttachmentDescription -> VkAttachmentDescriptionFlags [$sel:vkFormat:VkAttachmentDescription] :: VkAttachmentDescription -> VkFormat [$sel:vkSamples:VkAttachmentDescription] :: VkAttachmentDescription -> VkSampleCountFlagBits [$sel:vkLoadOp:VkAttachmentDescription] :: VkAttachmentDescription -> VkAttachmentLoadOp [$sel:vkStoreOp:VkAttachmentDescription] :: VkAttachmentDescription -> VkAttachmentStoreOp [$sel:vkStencilLoadOp:VkAttachmentDescription] :: VkAttachmentDescription -> VkAttachmentLoadOp [$sel:vkStencilStoreOp:VkAttachmentDescription] :: VkAttachmentDescription -> VkAttachmentStoreOp [$sel:vkInitialLayout:VkAttachmentDescription] :: VkAttachmentDescription -> VkImageLayout [$sel:vkFinalLayout:VkAttachmentDescription] :: VkAttachmentDescription -> VkImageLayout data VkSubpassDescription VkSubpassDescription :: VkSubpassDescriptionFlags -> VkPipelineBindPoint -> Word32 -> Ptr VkAttachmentReference -> Word32 -> Ptr VkAttachmentReference -> Ptr VkAttachmentReference -> Ptr VkAttachmentReference -> Word32 -> Ptr Word32 -> VkSubpassDescription [$sel:vkFlags:VkSubpassDescription] :: VkSubpassDescription -> VkSubpassDescriptionFlags [$sel:vkPipelineBindPoint:VkSubpassDescription] :: VkSubpassDescription -> VkPipelineBindPoint [$sel:vkInputAttachmentCount:VkSubpassDescription] :: VkSubpassDescription -> Word32 [$sel:vkPInputAttachments:VkSubpassDescription] :: VkSubpassDescription -> Ptr VkAttachmentReference [$sel:vkColorAttachmentCount:VkSubpassDescription] :: VkSubpassDescription -> Word32 [$sel:vkPColorAttachments:VkSubpassDescription] :: VkSubpassDescription -> Ptr VkAttachmentReference [$sel:vkPResolveAttachments:VkSubpassDescription] :: VkSubpassDescription -> Ptr VkAttachmentReference [$sel:vkPDepthStencilAttachment:VkSubpassDescription] :: VkSubpassDescription -> Ptr VkAttachmentReference [$sel:vkPreserveAttachmentCount:VkSubpassDescription] :: VkSubpassDescription -> Word32 [$sel:vkPPreserveAttachments:VkSubpassDescription] :: VkSubpassDescription -> Ptr Word32 vkCreateRenderPass :: VkDevice -> Ptr VkRenderPassCreateInfo -> Ptr VkAllocationCallbacks -> Ptr VkRenderPass -> IO VkResult data VkRenderPassCreateInfo VkRenderPassCreateInfo :: VkStructureType -> Ptr Void -> VkRenderPassCreateFlags -> Word32 -> Ptr VkAttachmentDescription -> Word32 -> Ptr VkSubpassDescription -> Word32 -> Ptr VkSubpassDependency -> VkRenderPassCreateInfo [$sel:vkSType:VkRenderPassCreateInfo] :: VkRenderPassCreateInfo -> VkStructureType [$sel:vkPNext:VkRenderPassCreateInfo] :: VkRenderPassCreateInfo -> Ptr Void [$sel:vkFlags:VkRenderPassCreateInfo] :: VkRenderPassCreateInfo -> VkRenderPassCreateFlags [$sel:vkAttachmentCount:VkRenderPassCreateInfo] :: VkRenderPassCreateInfo -> Word32 [$sel:vkPAttachments:VkRenderPassCreateInfo] :: VkRenderPassCreateInfo -> Ptr VkAttachmentDescription [$sel:vkSubpassCount:VkRenderPassCreateInfo] :: VkRenderPassCreateInfo -> Word32 [$sel:vkPSubpasses:VkRenderPassCreateInfo] :: VkRenderPassCreateInfo -> Ptr VkSubpassDescription [$sel:vkDependencyCount:VkRenderPassCreateInfo] :: VkRenderPassCreateInfo -> Word32 [$sel:vkPDependencies:VkRenderPassCreateInfo] :: VkRenderPassCreateInfo -> Ptr VkSubpassDependency -- | Opaque flag newtype VkFramebufferCreateFlags VkFramebufferCreateFlags :: VkFlags -> VkFramebufferCreateFlags instance GHC.Classes.Eq Graphics.Vulkan.Pass.VkFramebufferCreateInfo instance Foreign.Storable.Storable Graphics.Vulkan.Pass.VkFramebufferCreateFlags instance GHC.Classes.Eq Graphics.Vulkan.Pass.VkFramebufferCreateFlags instance GHC.Classes.Eq Graphics.Vulkan.Pass.VkRenderPassCreateInfo instance GHC.Classes.Eq Graphics.Vulkan.Pass.VkSubpassDescription instance GHC.Classes.Eq Graphics.Vulkan.Pass.VkAttachmentDescription instance Foreign.Storable.Storable Graphics.Vulkan.Pass.VkRenderPassCreateFlags instance GHC.Classes.Eq Graphics.Vulkan.Pass.VkRenderPassCreateFlags instance GHC.Classes.Eq Graphics.Vulkan.Pass.VkAttachmentReference instance GHC.Classes.Eq Graphics.Vulkan.Pass.VkSubpassDependency instance Foreign.Storable.Storable Graphics.Vulkan.Pass.VkSubpassDescriptionFlags instance GHC.Classes.Eq Graphics.Vulkan.Pass.VkSubpassDescriptionFlags instance Data.Bits.FiniteBits Graphics.Vulkan.Pass.VkAttachmentDescriptionFlagBits instance Data.Bits.Bits Graphics.Vulkan.Pass.VkAttachmentDescriptionFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.Pass.VkAttachmentDescriptionFlagBits instance GHC.Classes.Eq Graphics.Vulkan.Pass.VkAttachmentDescriptionFlagBits instance Data.Bits.FiniteBits Graphics.Vulkan.Pass.VkDependencyFlagBits instance Data.Bits.Bits Graphics.Vulkan.Pass.VkDependencyFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.Pass.VkDependencyFlagBits instance GHC.Classes.Eq Graphics.Vulkan.Pass.VkDependencyFlagBits instance Data.Bits.FiniteBits Graphics.Vulkan.Pass.VkAccessFlagBits instance Data.Bits.Bits Graphics.Vulkan.Pass.VkAccessFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.Pass.VkAccessFlagBits instance GHC.Classes.Eq Graphics.Vulkan.Pass.VkAccessFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.Pass.VkRenderPass instance GHC.Classes.Eq Graphics.Vulkan.Pass.VkRenderPass instance Foreign.Storable.Storable Graphics.Vulkan.Pass.VkAttachmentStoreOp instance GHC.Classes.Eq Graphics.Vulkan.Pass.VkAttachmentStoreOp instance Foreign.Storable.Storable Graphics.Vulkan.Pass.VkAttachmentLoadOp instance GHC.Classes.Eq Graphics.Vulkan.Pass.VkAttachmentLoadOp instance Foreign.Storable.Storable Graphics.Vulkan.Pass.VkFramebuffer instance GHC.Classes.Eq Graphics.Vulkan.Pass.VkFramebuffer instance Foreign.Storable.Storable Graphics.Vulkan.Pass.VkSubpassDependency instance GHC.Show.Show Graphics.Vulkan.Pass.VkAttachmentDescriptionFlagBits instance GHC.Read.Read Graphics.Vulkan.Pass.VkAttachmentDescriptionFlagBits instance GHC.Show.Show Graphics.Vulkan.Pass.VkDependencyFlagBits instance GHC.Read.Read Graphics.Vulkan.Pass.VkDependencyFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.Pass.VkFramebufferCreateInfo instance GHC.Show.Show Graphics.Vulkan.Pass.VkAttachmentLoadOp instance GHC.Read.Read Graphics.Vulkan.Pass.VkAttachmentLoadOp instance GHC.Show.Show Graphics.Vulkan.Pass.VkAttachmentStoreOp instance GHC.Read.Read Graphics.Vulkan.Pass.VkAttachmentStoreOp instance GHC.Show.Show Graphics.Vulkan.Pass.VkAccessFlagBits instance GHC.Read.Read Graphics.Vulkan.Pass.VkAccessFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.Pass.VkAttachmentReference instance Foreign.Storable.Storable Graphics.Vulkan.Pass.VkAttachmentDescription instance Foreign.Storable.Storable Graphics.Vulkan.Pass.VkSubpassDescription instance Foreign.Storable.Storable Graphics.Vulkan.Pass.VkRenderPassCreateInfo module Graphics.Vulkan.CommandBuffer newtype VkCommandBufferLevel VkCommandBufferLevel :: Int32 -> VkCommandBufferLevel vkAllocateCommandBuffers :: VkDevice -> Ptr VkCommandBufferAllocateInfo -> Ptr VkCommandBuffer -> IO VkResult vkResetCommandBuffer :: VkCommandBuffer -> VkCommandBufferResetFlags -> IO VkResult vkFreeCommandBuffers :: VkDevice -> VkCommandPool -> Word32 -> Ptr VkCommandBuffer -> IO () newtype VkCommandBufferUsageFlagBits VkCommandBufferUsageFlagBits :: VkFlags -> VkCommandBufferUsageFlagBits -- | Alias for VkCommandBufferUsageFlagBits type VkCommandBufferUsageFlags = VkCommandBufferUsageFlagBits -- | Command buffer may be submitted/executed more than once simultaneously data VkCommandBufferBeginInfo VkCommandBufferBeginInfo :: VkStructureType -> Ptr Void -> VkCommandBufferUsageFlags -> Ptr VkCommandBufferInheritanceInfo -> VkCommandBufferBeginInfo [$sel:vkSType:VkCommandBufferBeginInfo] :: VkCommandBufferBeginInfo -> VkStructureType [$sel:vkPNext:VkCommandBufferBeginInfo] :: VkCommandBufferBeginInfo -> Ptr Void [$sel:vkFlags:VkCommandBufferBeginInfo] :: VkCommandBufferBeginInfo -> VkCommandBufferUsageFlags [$sel:vkPInheritanceInfo:VkCommandBufferBeginInfo] :: VkCommandBufferBeginInfo -> Ptr VkCommandBufferInheritanceInfo data VkCommandBufferInheritanceInfo VkCommandBufferInheritanceInfo :: VkStructureType -> Ptr Void -> VkRenderPass -> Word32 -> VkFramebuffer -> VkBool32 -> VkQueryControlFlags -> VkQueryPipelineStatisticFlags -> VkCommandBufferInheritanceInfo [$sel:vkSType:VkCommandBufferInheritanceInfo] :: VkCommandBufferInheritanceInfo -> VkStructureType [$sel:vkPNext:VkCommandBufferInheritanceInfo] :: VkCommandBufferInheritanceInfo -> Ptr Void [$sel:vkRenderPass:VkCommandBufferInheritanceInfo] :: VkCommandBufferInheritanceInfo -> VkRenderPass [$sel:vkSubpass:VkCommandBufferInheritanceInfo] :: VkCommandBufferInheritanceInfo -> Word32 [$sel:vkFramebuffer:VkCommandBufferInheritanceInfo] :: VkCommandBufferInheritanceInfo -> VkFramebuffer [$sel:vkOcclusionQueryEnable:VkCommandBufferInheritanceInfo] :: VkCommandBufferInheritanceInfo -> VkBool32 [$sel:vkQueryFlags:VkCommandBufferInheritanceInfo] :: VkCommandBufferInheritanceInfo -> VkQueryControlFlags [$sel:vkPipelineStatistics:VkCommandBufferInheritanceInfo] :: VkCommandBufferInheritanceInfo -> VkQueryPipelineStatisticFlags data VkCommandBuffer_T type VkCommandBuffer = Ptr VkCommandBuffer_T newtype VkCommandBufferResetFlagBits VkCommandBufferResetFlagBits :: VkFlags -> VkCommandBufferResetFlagBits -- | Alias for VkCommandBufferResetFlagBits type VkCommandBufferResetFlags = VkCommandBufferResetFlagBits -- | Release resources owned by the buffer vkEndCommandBuffer :: VkCommandBuffer -> IO VkResult vkBeginCommandBuffer :: VkCommandBuffer -> Ptr VkCommandBufferBeginInfo -> IO VkResult data VkCommandBufferAllocateInfo VkCommandBufferAllocateInfo :: VkStructureType -> Ptr Void -> VkCommandPool -> VkCommandBufferLevel -> Word32 -> VkCommandBufferAllocateInfo [$sel:vkSType:VkCommandBufferAllocateInfo] :: VkCommandBufferAllocateInfo -> VkStructureType [$sel:vkPNext:VkCommandBufferAllocateInfo] :: VkCommandBufferAllocateInfo -> Ptr Void [$sel:vkCommandPool:VkCommandBufferAllocateInfo] :: VkCommandBufferAllocateInfo -> VkCommandPool [$sel:vkLevel:VkCommandBufferAllocateInfo] :: VkCommandBufferAllocateInfo -> VkCommandBufferLevel [$sel:vkCommandBufferCount:VkCommandBufferAllocateInfo] :: VkCommandBufferAllocateInfo -> Word32 instance GHC.Classes.Eq Graphics.Vulkan.CommandBuffer.VkCommandBufferAllocateInfo instance Data.Bits.FiniteBits Graphics.Vulkan.CommandBuffer.VkCommandBufferResetFlagBits instance Data.Bits.Bits Graphics.Vulkan.CommandBuffer.VkCommandBufferResetFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.CommandBuffer.VkCommandBufferResetFlagBits instance GHC.Classes.Eq Graphics.Vulkan.CommandBuffer.VkCommandBufferResetFlagBits instance GHC.Classes.Eq Graphics.Vulkan.CommandBuffer.VkCommandBufferBeginInfo instance GHC.Classes.Eq Graphics.Vulkan.CommandBuffer.VkCommandBufferInheritanceInfo instance Data.Bits.FiniteBits Graphics.Vulkan.CommandBuffer.VkCommandBufferUsageFlagBits instance Data.Bits.Bits Graphics.Vulkan.CommandBuffer.VkCommandBufferUsageFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.CommandBuffer.VkCommandBufferUsageFlagBits instance GHC.Classes.Eq Graphics.Vulkan.CommandBuffer.VkCommandBufferUsageFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.CommandBuffer.VkCommandBufferLevel instance GHC.Classes.Eq Graphics.Vulkan.CommandBuffer.VkCommandBufferLevel instance GHC.Show.Show Graphics.Vulkan.CommandBuffer.VkCommandBufferLevel instance GHC.Read.Read Graphics.Vulkan.CommandBuffer.VkCommandBufferLevel instance GHC.Show.Show Graphics.Vulkan.CommandBuffer.VkCommandBufferUsageFlagBits instance GHC.Read.Read Graphics.Vulkan.CommandBuffer.VkCommandBufferUsageFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.CommandBuffer.VkCommandBufferBeginInfo instance Foreign.Storable.Storable Graphics.Vulkan.CommandBuffer.VkCommandBufferInheritanceInfo instance GHC.Show.Show Graphics.Vulkan.CommandBuffer.VkCommandBufferResetFlagBits instance GHC.Read.Read Graphics.Vulkan.CommandBuffer.VkCommandBufferResetFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.CommandBuffer.VkCommandBufferAllocateInfo module Graphics.Vulkan.Queue data VkQueue_T type VkQueue = Ptr VkQueue_T vkDeviceWaitIdle :: VkDevice -> IO VkResult vkQueueSubmit :: VkQueue -> Word32 -> Ptr VkSubmitInfo -> VkFence -> IO VkResult vkQueueWaitIdle :: VkQueue -> IO VkResult vkGetDeviceQueue :: VkDevice -> Word32 -> Word32 -> Ptr VkQueue -> IO () data VkSubmitInfo VkSubmitInfo :: VkStructureType -> Ptr Void -> Word32 -> Ptr VkSemaphore -> Ptr VkPipelineStageFlags -> Word32 -> Ptr VkCommandBuffer -> Word32 -> Ptr VkSemaphore -> VkSubmitInfo [$sel:vkSType:VkSubmitInfo] :: VkSubmitInfo -> VkStructureType [$sel:vkPNext:VkSubmitInfo] :: VkSubmitInfo -> Ptr Void [$sel:vkWaitSemaphoreCount:VkSubmitInfo] :: VkSubmitInfo -> Word32 [$sel:vkPWaitSemaphores:VkSubmitInfo] :: VkSubmitInfo -> Ptr VkSemaphore [$sel:vkPWaitDstStageMask:VkSubmitInfo] :: VkSubmitInfo -> Ptr VkPipelineStageFlags [$sel:vkCommandBufferCount:VkSubmitInfo] :: VkSubmitInfo -> Word32 [$sel:vkPCommandBuffers:VkSubmitInfo] :: VkSubmitInfo -> Ptr VkCommandBuffer [$sel:vkSignalSemaphoreCount:VkSubmitInfo] :: VkSubmitInfo -> Word32 [$sel:vkPSignalSemaphores:VkSubmitInfo] :: VkSubmitInfo -> Ptr VkSemaphore instance GHC.Classes.Eq Graphics.Vulkan.Queue.VkSubmitInfo instance Foreign.Storable.Storable Graphics.Vulkan.Queue.VkSubmitInfo module Graphics.Vulkan.MemoryManagement vkGetImageMemoryRequirements :: VkDevice -> VkImage -> Ptr VkMemoryRequirements -> IO () data VkMemoryRequirements VkMemoryRequirements :: VkDeviceSize -> VkDeviceSize -> Word32 -> VkMemoryRequirements [$sel:vkSize:VkMemoryRequirements] :: VkMemoryRequirements -> VkDeviceSize [$sel:vkAlignment:VkMemoryRequirements] :: VkMemoryRequirements -> VkDeviceSize [$sel:vkMemoryTypeBits:VkMemoryRequirements] :: VkMemoryRequirements -> Word32 vkGetBufferMemoryRequirements :: VkDevice -> VkBuffer -> Ptr VkMemoryRequirements -> IO () vkBindBufferMemory :: VkDevice -> VkBuffer -> VkDeviceMemory -> VkDeviceSize -> IO VkResult vkBindImageMemory :: VkDevice -> VkImage -> VkDeviceMemory -> VkDeviceSize -> IO VkResult instance GHC.Classes.Eq Graphics.Vulkan.MemoryManagement.VkMemoryRequirements instance Foreign.Storable.Storable Graphics.Vulkan.MemoryManagement.VkMemoryRequirements module Graphics.Vulkan.OtherTypes data VkBufferMemoryBarrier VkBufferMemoryBarrier :: VkStructureType -> Ptr Void -> VkAccessFlags -> VkAccessFlags -> Word32 -> Word32 -> VkBuffer -> VkDeviceSize -> VkDeviceSize -> VkBufferMemoryBarrier [$sel:vkSType:VkBufferMemoryBarrier] :: VkBufferMemoryBarrier -> VkStructureType [$sel:vkPNext:VkBufferMemoryBarrier] :: VkBufferMemoryBarrier -> Ptr Void [$sel:vkSrcAccessMask:VkBufferMemoryBarrier] :: VkBufferMemoryBarrier -> VkAccessFlags [$sel:vkDstAccessMask:VkBufferMemoryBarrier] :: VkBufferMemoryBarrier -> VkAccessFlags [$sel:vkSrcQueueFamilyIndex:VkBufferMemoryBarrier] :: VkBufferMemoryBarrier -> Word32 [$sel:vkDstQueueFamilyIndex:VkBufferMemoryBarrier] :: VkBufferMemoryBarrier -> Word32 [$sel:vkBuffer:VkBufferMemoryBarrier] :: VkBufferMemoryBarrier -> VkBuffer [$sel:vkOffset:VkBufferMemoryBarrier] :: VkBufferMemoryBarrier -> VkDeviceSize [$sel:vkSize:VkBufferMemoryBarrier] :: VkBufferMemoryBarrier -> VkDeviceSize data VkDrawIndexedIndirectCommand VkDrawIndexedIndirectCommand :: Word32 -> Word32 -> Word32 -> Int32 -> Word32 -> VkDrawIndexedIndirectCommand [$sel:vkIndexCount:VkDrawIndexedIndirectCommand] :: VkDrawIndexedIndirectCommand -> Word32 [$sel:vkInstanceCount:VkDrawIndexedIndirectCommand] :: VkDrawIndexedIndirectCommand -> Word32 [$sel:vkFirstIndex:VkDrawIndexedIndirectCommand] :: VkDrawIndexedIndirectCommand -> Word32 [$sel:vkVertexOffset:VkDrawIndexedIndirectCommand] :: VkDrawIndexedIndirectCommand -> Int32 [$sel:vkFirstInstance:VkDrawIndexedIndirectCommand] :: VkDrawIndexedIndirectCommand -> Word32 data VkImageMemoryBarrier VkImageMemoryBarrier :: VkStructureType -> Ptr Void -> VkAccessFlags -> VkAccessFlags -> VkImageLayout -> VkImageLayout -> Word32 -> Word32 -> VkImage -> VkImageSubresourceRange -> VkImageMemoryBarrier [$sel:vkSType:VkImageMemoryBarrier] :: VkImageMemoryBarrier -> VkStructureType [$sel:vkPNext:VkImageMemoryBarrier] :: VkImageMemoryBarrier -> Ptr Void [$sel:vkSrcAccessMask:VkImageMemoryBarrier] :: VkImageMemoryBarrier -> VkAccessFlags [$sel:vkDstAccessMask:VkImageMemoryBarrier] :: VkImageMemoryBarrier -> VkAccessFlags [$sel:vkOldLayout:VkImageMemoryBarrier] :: VkImageMemoryBarrier -> VkImageLayout [$sel:vkNewLayout:VkImageMemoryBarrier] :: VkImageMemoryBarrier -> VkImageLayout [$sel:vkSrcQueueFamilyIndex:VkImageMemoryBarrier] :: VkImageMemoryBarrier -> Word32 [$sel:vkDstQueueFamilyIndex:VkImageMemoryBarrier] :: VkImageMemoryBarrier -> Word32 [$sel:vkImage:VkImageMemoryBarrier] :: VkImageMemoryBarrier -> VkImage [$sel:vkSubresourceRange:VkImageMemoryBarrier] :: VkImageMemoryBarrier -> VkImageSubresourceRange data VkMemoryBarrier VkMemoryBarrier :: VkStructureType -> Ptr Void -> VkAccessFlags -> VkAccessFlags -> VkMemoryBarrier [$sel:vkSType:VkMemoryBarrier] :: VkMemoryBarrier -> VkStructureType [$sel:vkPNext:VkMemoryBarrier] :: VkMemoryBarrier -> Ptr Void [$sel:vkSrcAccessMask:VkMemoryBarrier] :: VkMemoryBarrier -> VkAccessFlags [$sel:vkDstAccessMask:VkMemoryBarrier] :: VkMemoryBarrier -> VkAccessFlags data VkDrawIndirectCommand VkDrawIndirectCommand :: Word32 -> Word32 -> Word32 -> Word32 -> VkDrawIndirectCommand [$sel:vkVertexCount:VkDrawIndirectCommand] :: VkDrawIndirectCommand -> Word32 [$sel:vkInstanceCount:VkDrawIndirectCommand] :: VkDrawIndirectCommand -> Word32 [$sel:vkFirstVertex:VkDrawIndirectCommand] :: VkDrawIndirectCommand -> Word32 [$sel:vkFirstInstance:VkDrawIndirectCommand] :: VkDrawIndirectCommand -> Word32 data VkDispatchIndirectCommand VkDispatchIndirectCommand :: Word32 -> Word32 -> Word32 -> VkDispatchIndirectCommand [$sel:vkX:VkDispatchIndirectCommand] :: VkDispatchIndirectCommand -> Word32 [$sel:vkY:VkDispatchIndirectCommand] :: VkDispatchIndirectCommand -> Word32 [$sel:vkZ:VkDispatchIndirectCommand] :: VkDispatchIndirectCommand -> Word32 instance GHC.Classes.Eq Graphics.Vulkan.OtherTypes.VkDispatchIndirectCommand instance GHC.Classes.Eq Graphics.Vulkan.OtherTypes.VkDrawIndirectCommand instance GHC.Classes.Eq Graphics.Vulkan.OtherTypes.VkMemoryBarrier instance GHC.Classes.Eq Graphics.Vulkan.OtherTypes.VkImageMemoryBarrier instance GHC.Classes.Eq Graphics.Vulkan.OtherTypes.VkDrawIndexedIndirectCommand instance GHC.Classes.Eq Graphics.Vulkan.OtherTypes.VkBufferMemoryBarrier instance Foreign.Storable.Storable Graphics.Vulkan.OtherTypes.VkBufferMemoryBarrier instance Foreign.Storable.Storable Graphics.Vulkan.OtherTypes.VkDrawIndexedIndirectCommand instance Foreign.Storable.Storable Graphics.Vulkan.OtherTypes.VkImageMemoryBarrier instance Foreign.Storable.Storable Graphics.Vulkan.OtherTypes.VkMemoryBarrier instance Foreign.Storable.Storable Graphics.Vulkan.OtherTypes.VkDrawIndirectCommand instance Foreign.Storable.Storable Graphics.Vulkan.OtherTypes.VkDispatchIndirectCommand module Graphics.Vulkan.CommandBufferBuilding vkCmdPushConstants :: VkCommandBuffer -> VkPipelineLayout -> VkShaderStageFlags -> Word32 -> Word32 -> Ptr Void -> IO () vkCmdSetStencilWriteMask :: VkCommandBuffer -> VkStencilFaceFlags -> Word32 -> IO () vkCmdBindIndexBuffer :: VkCommandBuffer -> VkBuffer -> VkDeviceSize -> VkIndexType -> IO () vkCmdResetQueryPool :: VkCommandBuffer -> VkQueryPool -> Word32 -> Word32 -> IO () vkCmdResolveImage :: VkCommandBuffer -> VkImage -> VkImageLayout -> VkImage -> VkImageLayout -> Word32 -> Ptr VkImageResolve -> IO () vkCmdBindPipeline :: VkCommandBuffer -> VkPipelineBindPoint -> VkPipeline -> IO () vkCmdBindVertexBuffers :: VkCommandBuffer -> Word32 -> Word32 -> Ptr VkBuffer -> Ptr VkDeviceSize -> IO () vkCmdDraw :: VkCommandBuffer -> Word32 -> Word32 -> Word32 -> Word32 -> IO () data VkImageCopy VkImageCopy :: VkImageSubresourceLayers -> VkOffset3D -> VkImageSubresourceLayers -> VkOffset3D -> VkExtent3D -> VkImageCopy [$sel:vkSrcSubresource:VkImageCopy] :: VkImageCopy -> VkImageSubresourceLayers [$sel:vkSrcOffset:VkImageCopy] :: VkImageCopy -> VkOffset3D [$sel:vkDstSubresource:VkImageCopy] :: VkImageCopy -> VkImageSubresourceLayers [$sel:vkDstOffset:VkImageCopy] :: VkImageCopy -> VkOffset3D [$sel:vkExtent:VkImageCopy] :: VkImageCopy -> VkExtent3D vkCmdNextSubpass :: VkCommandBuffer -> VkSubpassContents -> IO () vkCmdEndQuery :: VkCommandBuffer -> VkQueryPool -> Word32 -> IO () vkCmdSetScissor :: VkCommandBuffer -> Word32 -> Word32 -> Ptr VkRect2D -> IO () vkCmdSetEvent :: VkCommandBuffer -> VkEvent -> VkPipelineStageFlags -> IO () vkCmdCopyImageToBuffer :: VkCommandBuffer -> VkImage -> VkImageLayout -> VkBuffer -> Word32 -> Ptr VkBufferImageCopy -> IO () vkCmdDispatchIndirect :: VkCommandBuffer -> VkBuffer -> VkDeviceSize -> IO () vkCmdBeginQuery :: VkCommandBuffer -> VkQueryPool -> Word32 -> VkQueryControlFlags -> IO () vkCmdEndRenderPass :: VkCommandBuffer -> IO () vkCmdFillBuffer :: VkCommandBuffer -> VkBuffer -> VkDeviceSize -> VkDeviceSize -> Word32 -> IO () data VkClearRect VkClearRect :: VkRect2D -> Word32 -> Word32 -> VkClearRect [$sel:vkRect:VkClearRect] :: VkClearRect -> VkRect2D [$sel:vkBaseArrayLayer:VkClearRect] :: VkClearRect -> Word32 [$sel:vkLayerCount:VkClearRect] :: VkClearRect -> Word32 vkCmdWaitEvents :: VkCommandBuffer -> Word32 -> Ptr VkEvent -> VkPipelineStageFlags -> VkPipelineStageFlags -> Word32 -> Ptr VkMemoryBarrier -> Word32 -> Ptr VkBufferMemoryBarrier -> Word32 -> Ptr VkImageMemoryBarrier -> IO () vkCmdClearColorImage :: VkCommandBuffer -> VkImage -> VkImageLayout -> Ptr VkClearColorValue -> Word32 -> Ptr VkImageSubresourceRange -> IO () newtype VkIndexType VkIndexType :: Int32 -> VkIndexType data VkBufferImageCopy VkBufferImageCopy :: VkDeviceSize -> Word32 -> Word32 -> VkImageSubresourceLayers -> VkOffset3D -> VkExtent3D -> VkBufferImageCopy [$sel:vkBufferOffset:VkBufferImageCopy] :: VkBufferImageCopy -> VkDeviceSize [$sel:vkBufferRowLength:VkBufferImageCopy] :: VkBufferImageCopy -> Word32 [$sel:vkBufferImageHeight:VkBufferImageCopy] :: VkBufferImageCopy -> Word32 [$sel:vkImageSubresource:VkBufferImageCopy] :: VkBufferImageCopy -> VkImageSubresourceLayers [$sel:vkImageOffset:VkBufferImageCopy] :: VkBufferImageCopy -> VkOffset3D [$sel:vkImageExtent:VkBufferImageCopy] :: VkBufferImageCopy -> VkExtent3D vkCmdSetDepthBounds :: VkCommandBuffer -> CFloat -> CFloat -> IO () vkCmdCopyBufferToImage :: VkCommandBuffer -> VkBuffer -> VkImage -> VkImageLayout -> Word32 -> Ptr VkBufferImageCopy -> IO () vkCmdDrawIndexedIndirect :: VkCommandBuffer -> VkBuffer -> VkDeviceSize -> Word32 -> Word32 -> IO () vkCmdUpdateBuffer :: VkCommandBuffer -> VkBuffer -> VkDeviceSize -> VkDeviceSize -> Ptr Word32 -> IO () vkCmdCopyImage :: VkCommandBuffer -> VkImage -> VkImageLayout -> VkImage -> VkImageLayout -> Word32 -> Ptr VkImageCopy -> IO () vkCmdWriteTimestamp :: VkCommandBuffer -> VkPipelineStageFlagBits -> VkQueryPool -> Word32 -> IO () data VkImageSubresourceLayers VkImageSubresourceLayers :: VkImageAspectFlags -> Word32 -> Word32 -> Word32 -> VkImageSubresourceLayers [$sel:vkAspectMask:VkImageSubresourceLayers] :: VkImageSubresourceLayers -> VkImageAspectFlags [$sel:vkMipLevel:VkImageSubresourceLayers] :: VkImageSubresourceLayers -> Word32 [$sel:vkBaseArrayLayer:VkImageSubresourceLayers] :: VkImageSubresourceLayers -> Word32 [$sel:vkLayerCount:VkImageSubresourceLayers] :: VkImageSubresourceLayers -> Word32 vkCmdDrawIndexed :: VkCommandBuffer -> Word32 -> Word32 -> Word32 -> Int32 -> Word32 -> IO () vkCmdSetDepthBias :: VkCommandBuffer -> CFloat -> CFloat -> CFloat -> IO () vkCmdDrawIndirect :: VkCommandBuffer -> VkBuffer -> VkDeviceSize -> Word32 -> Word32 -> IO () data VkClearDepthStencilValue VkClearDepthStencilValue :: CFloat -> Word32 -> VkClearDepthStencilValue [$sel:vkDepth:VkClearDepthStencilValue] :: VkClearDepthStencilValue -> CFloat [$sel:vkStencil:VkClearDepthStencilValue] :: VkClearDepthStencilValue -> Word32 data VkBufferCopy VkBufferCopy :: VkDeviceSize -> VkDeviceSize -> VkDeviceSize -> VkBufferCopy [$sel:vkSrcOffset:VkBufferCopy] :: VkBufferCopy -> VkDeviceSize [$sel:vkDstOffset:VkBufferCopy] :: VkBufferCopy -> VkDeviceSize [$sel:vkSize:VkBufferCopy] :: VkBufferCopy -> VkDeviceSize vkCmdClearAttachments :: VkCommandBuffer -> Word32 -> Ptr VkClearAttachment -> Word32 -> Ptr VkClearRect -> IO () vkCmdSetViewport :: VkCommandBuffer -> Word32 -> Word32 -> Ptr VkViewport -> IO () vkCmdCopyBuffer :: VkCommandBuffer -> VkBuffer -> VkBuffer -> Word32 -> Ptr VkBufferCopy -> IO () vkCmdBindDescriptorSets :: VkCommandBuffer -> VkPipelineBindPoint -> VkPipelineLayout -> Word32 -> Word32 -> Ptr VkDescriptorSet -> Word32 -> Ptr Word32 -> IO () vkCmdSetLineWidth :: VkCommandBuffer -> CFloat -> IO () vkCmdExecuteCommands :: VkCommandBuffer -> Word32 -> Ptr VkCommandBuffer -> IO () data VkRenderPassBeginInfo VkRenderPassBeginInfo :: VkStructureType -> Ptr Void -> VkRenderPass -> VkFramebuffer -> VkRect2D -> Word32 -> Ptr VkClearValue -> VkRenderPassBeginInfo [$sel:vkSType:VkRenderPassBeginInfo] :: VkRenderPassBeginInfo -> VkStructureType [$sel:vkPNext:VkRenderPassBeginInfo] :: VkRenderPassBeginInfo -> Ptr Void [$sel:vkRenderPass:VkRenderPassBeginInfo] :: VkRenderPassBeginInfo -> VkRenderPass [$sel:vkFramebuffer:VkRenderPassBeginInfo] :: VkRenderPassBeginInfo -> VkFramebuffer [$sel:vkRenderArea:VkRenderPassBeginInfo] :: VkRenderPassBeginInfo -> VkRect2D [$sel:vkClearValueCount:VkRenderPassBeginInfo] :: VkRenderPassBeginInfo -> Word32 [$sel:vkPClearValues:VkRenderPassBeginInfo] :: VkRenderPassBeginInfo -> Ptr VkClearValue vkCmdSetStencilCompareMask :: VkCommandBuffer -> VkStencilFaceFlags -> Word32 -> IO () data VkImageBlit VkImageBlit :: VkImageSubresourceLayers -> Vector 2 VkOffset3D -> VkImageSubresourceLayers -> Vector 2 VkOffset3D -> VkImageBlit [$sel:vkSrcSubresource:VkImageBlit] :: VkImageBlit -> VkImageSubresourceLayers [$sel:vkSrcOffsets:VkImageBlit] :: VkImageBlit -> Vector 2 VkOffset3D [$sel:vkDstSubresource:VkImageBlit] :: VkImageBlit -> VkImageSubresourceLayers [$sel:vkDstOffsets:VkImageBlit] :: VkImageBlit -> Vector 2 VkOffset3D data VkClearAttachment VkClearAttachment :: VkImageAspectFlags -> Word32 -> VkClearValue -> VkClearAttachment [$sel:vkAspectMask:VkClearAttachment] :: VkClearAttachment -> VkImageAspectFlags [$sel:vkColorAttachment:VkClearAttachment] :: VkClearAttachment -> Word32 [$sel:vkClearValue:VkClearAttachment] :: VkClearAttachment -> VkClearValue -- | // Union allowing specification of color or depth and stencil values. -- Actual value selected is based on attachment being cleared. data VkClearValue VkColor :: VkClearColorValue -> VkClearValue VkDepthStencil :: VkClearDepthStencilValue -> VkClearValue -- | _Note_: peek is undefined as we wouldn't know which constructor to use newtype VkStencilFaceFlagBits VkStencilFaceFlagBits :: VkFlags -> VkStencilFaceFlagBits -- | Alias for VkStencilFaceFlagBits type VkStencilFaceFlags = VkStencilFaceFlagBits -- | Front face -- | Back face -- | Front and back faces -- | / Union allowing specification of floating point, integer, or -- unsigned integer color data. Actual value selected is based on -- imageattachment being cleared. data VkClearColorValue VkFloat :: (Vector 4 CFloat) -> VkClearColorValue VkInt :: (Vector 4 Int32) -> VkClearColorValue VkUint :: (Vector 4 Word32) -> VkClearColorValue -- | _Note_: peek is undefined as we wouldn't know which constructor to use newtype VkSubpassContents VkSubpassContents :: Int32 -> VkSubpassContents vkCmdCopyQueryPoolResults :: VkCommandBuffer -> VkQueryPool -> Word32 -> Word32 -> VkBuffer -> VkDeviceSize -> VkDeviceSize -> VkQueryResultFlags -> IO () vkCmdBlitImage :: VkCommandBuffer -> VkImage -> VkImageLayout -> VkImage -> VkImageLayout -> Word32 -> Ptr VkImageBlit -> VkFilter -> IO () vkCmdSetBlendConstants :: VkCommandBuffer -> Ptr CFloat -> IO () vkCmdClearDepthStencilImage :: VkCommandBuffer -> VkImage -> VkImageLayout -> Ptr VkClearDepthStencilValue -> Word32 -> Ptr VkImageSubresourceRange -> IO () data VkImageResolve VkImageResolve :: VkImageSubresourceLayers -> VkOffset3D -> VkImageSubresourceLayers -> VkOffset3D -> VkExtent3D -> VkImageResolve [$sel:vkSrcSubresource:VkImageResolve] :: VkImageResolve -> VkImageSubresourceLayers [$sel:vkSrcOffset:VkImageResolve] :: VkImageResolve -> VkOffset3D [$sel:vkDstSubresource:VkImageResolve] :: VkImageResolve -> VkImageSubresourceLayers [$sel:vkDstOffset:VkImageResolve] :: VkImageResolve -> VkOffset3D [$sel:vkExtent:VkImageResolve] :: VkImageResolve -> VkExtent3D vkCmdDispatch :: VkCommandBuffer -> Word32 -> Word32 -> Word32 -> IO () vkCmdSetStencilReference :: VkCommandBuffer -> VkStencilFaceFlags -> Word32 -> IO () vkCmdPipelineBarrier :: VkCommandBuffer -> VkPipelineStageFlags -> VkPipelineStageFlags -> VkDependencyFlags -> Word32 -> Ptr VkMemoryBarrier -> Word32 -> Ptr VkBufferMemoryBarrier -> Word32 -> Ptr VkImageMemoryBarrier -> IO () vkCmdBeginRenderPass :: VkCommandBuffer -> Ptr VkRenderPassBeginInfo -> VkSubpassContents -> IO () vkCmdResetEvent :: VkCommandBuffer -> VkEvent -> VkPipelineStageFlags -> IO () instance GHC.Classes.Eq Graphics.Vulkan.CommandBufferBuilding.VkImageResolve instance Foreign.Storable.Storable Graphics.Vulkan.CommandBufferBuilding.VkSubpassContents instance GHC.Classes.Eq Graphics.Vulkan.CommandBufferBuilding.VkSubpassContents instance GHC.Classes.Eq Graphics.Vulkan.CommandBufferBuilding.VkRenderPassBeginInfo instance GHC.Classes.Eq Graphics.Vulkan.CommandBufferBuilding.VkClearAttachment instance GHC.Classes.Eq Graphics.Vulkan.CommandBufferBuilding.VkClearValue instance GHC.Classes.Eq Graphics.Vulkan.CommandBufferBuilding.VkClearColorValue instance Data.Bits.FiniteBits Graphics.Vulkan.CommandBufferBuilding.VkStencilFaceFlagBits instance Data.Bits.Bits Graphics.Vulkan.CommandBufferBuilding.VkStencilFaceFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.CommandBufferBuilding.VkStencilFaceFlagBits instance GHC.Classes.Eq Graphics.Vulkan.CommandBufferBuilding.VkStencilFaceFlagBits instance GHC.Classes.Eq Graphics.Vulkan.CommandBufferBuilding.VkImageBlit instance GHC.Classes.Eq Graphics.Vulkan.CommandBufferBuilding.VkBufferCopy instance GHC.Classes.Eq Graphics.Vulkan.CommandBufferBuilding.VkClearDepthStencilValue instance GHC.Classes.Eq Graphics.Vulkan.CommandBufferBuilding.VkImageCopy instance GHC.Classes.Eq Graphics.Vulkan.CommandBufferBuilding.VkBufferImageCopy instance GHC.Classes.Eq Graphics.Vulkan.CommandBufferBuilding.VkImageSubresourceLayers instance Foreign.Storable.Storable Graphics.Vulkan.CommandBufferBuilding.VkIndexType instance GHC.Classes.Eq Graphics.Vulkan.CommandBufferBuilding.VkIndexType instance GHC.Classes.Eq Graphics.Vulkan.CommandBufferBuilding.VkClearRect instance Foreign.Storable.Storable Graphics.Vulkan.CommandBufferBuilding.VkImageCopy instance Foreign.Storable.Storable Graphics.Vulkan.CommandBufferBuilding.VkClearRect instance GHC.Show.Show Graphics.Vulkan.CommandBufferBuilding.VkIndexType instance GHC.Read.Read Graphics.Vulkan.CommandBufferBuilding.VkIndexType instance Foreign.Storable.Storable Graphics.Vulkan.CommandBufferBuilding.VkBufferImageCopy instance Foreign.Storable.Storable Graphics.Vulkan.CommandBufferBuilding.VkImageSubresourceLayers instance Foreign.Storable.Storable Graphics.Vulkan.CommandBufferBuilding.VkClearDepthStencilValue instance Foreign.Storable.Storable Graphics.Vulkan.CommandBufferBuilding.VkBufferCopy instance Foreign.Storable.Storable Graphics.Vulkan.CommandBufferBuilding.VkRenderPassBeginInfo instance Foreign.Storable.Storable Graphics.Vulkan.CommandBufferBuilding.VkImageBlit instance Foreign.Storable.Storable Graphics.Vulkan.CommandBufferBuilding.VkClearAttachment instance Foreign.Storable.Storable Graphics.Vulkan.CommandBufferBuilding.VkClearValue instance GHC.Show.Show Graphics.Vulkan.CommandBufferBuilding.VkStencilFaceFlagBits instance GHC.Read.Read Graphics.Vulkan.CommandBufferBuilding.VkStencilFaceFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.CommandBufferBuilding.VkClearColorValue instance GHC.Show.Show Graphics.Vulkan.CommandBufferBuilding.VkSubpassContents instance GHC.Read.Read Graphics.Vulkan.CommandBufferBuilding.VkSubpassContents instance Foreign.Storable.Storable Graphics.Vulkan.CommandBufferBuilding.VkImageResolve module Graphics.Vulkan.SparseResourceMemoryManagement data VkSparseImageMemoryRequirements VkSparseImageMemoryRequirements :: VkSparseImageFormatProperties -> Word32 -> VkDeviceSize -> VkDeviceSize -> VkDeviceSize -> VkSparseImageMemoryRequirements [$sel:vkFormatProperties:VkSparseImageMemoryRequirements] :: VkSparseImageMemoryRequirements -> VkSparseImageFormatProperties [$sel:vkImageMipTailFirstLod:VkSparseImageMemoryRequirements] :: VkSparseImageMemoryRequirements -> Word32 [$sel:vkImageMipTailSize:VkSparseImageMemoryRequirements] :: VkSparseImageMemoryRequirements -> VkDeviceSize [$sel:vkImageMipTailOffset:VkSparseImageMemoryRequirements] :: VkSparseImageMemoryRequirements -> VkDeviceSize [$sel:vkImageMipTailStride:VkSparseImageMemoryRequirements] :: VkSparseImageMemoryRequirements -> VkDeviceSize data VkSparseMemoryBind VkSparseMemoryBind :: VkDeviceSize -> VkDeviceSize -> VkDeviceMemory -> VkDeviceSize -> VkSparseMemoryBindFlags -> VkSparseMemoryBind [$sel:vkResourceOffset:VkSparseMemoryBind] :: VkSparseMemoryBind -> VkDeviceSize [$sel:vkSize:VkSparseMemoryBind] :: VkSparseMemoryBind -> VkDeviceSize [$sel:vkMemory:VkSparseMemoryBind] :: VkSparseMemoryBind -> VkDeviceMemory [$sel:vkMemoryOffset:VkSparseMemoryBind] :: VkSparseMemoryBind -> VkDeviceSize [$sel:vkFlags:VkSparseMemoryBind] :: VkSparseMemoryBind -> VkSparseMemoryBindFlags data VkSparseImageMemoryBind VkSparseImageMemoryBind :: VkImageSubresource -> VkOffset3D -> VkExtent3D -> VkDeviceMemory -> VkDeviceSize -> VkSparseMemoryBindFlags -> VkSparseImageMemoryBind [$sel:vkSubresource:VkSparseImageMemoryBind] :: VkSparseImageMemoryBind -> VkImageSubresource [$sel:vkOffset:VkSparseImageMemoryBind] :: VkSparseImageMemoryBind -> VkOffset3D [$sel:vkExtent:VkSparseImageMemoryBind] :: VkSparseImageMemoryBind -> VkExtent3D [$sel:vkMemory:VkSparseImageMemoryBind] :: VkSparseImageMemoryBind -> VkDeviceMemory [$sel:vkMemoryOffset:VkSparseImageMemoryBind] :: VkSparseImageMemoryBind -> VkDeviceSize [$sel:vkFlags:VkSparseImageMemoryBind] :: VkSparseImageMemoryBind -> VkSparseMemoryBindFlags data VkSparseImageMemoryBindInfo VkSparseImageMemoryBindInfo :: VkImage -> Word32 -> Ptr VkSparseImageMemoryBind -> VkSparseImageMemoryBindInfo [$sel:vkImage:VkSparseImageMemoryBindInfo] :: VkSparseImageMemoryBindInfo -> VkImage [$sel:vkBindCount:VkSparseImageMemoryBindInfo] :: VkSparseImageMemoryBindInfo -> Word32 [$sel:vkPBinds:VkSparseImageMemoryBindInfo] :: VkSparseImageMemoryBindInfo -> Ptr VkSparseImageMemoryBind vkGetImageSparseMemoryRequirements :: VkDevice -> VkImage -> Ptr Word32 -> Ptr VkSparseImageMemoryRequirements -> IO () vkQueueBindSparse :: VkQueue -> Word32 -> Ptr VkBindSparseInfo -> VkFence -> IO VkResult data VkBindSparseInfo VkBindSparseInfo :: VkStructureType -> Ptr Void -> Word32 -> Ptr VkSemaphore -> Word32 -> Ptr VkSparseBufferMemoryBindInfo -> Word32 -> Ptr VkSparseImageOpaqueMemoryBindInfo -> Word32 -> Ptr VkSparseImageMemoryBindInfo -> Word32 -> Ptr VkSemaphore -> VkBindSparseInfo [$sel:vkSType:VkBindSparseInfo] :: VkBindSparseInfo -> VkStructureType [$sel:vkPNext:VkBindSparseInfo] :: VkBindSparseInfo -> Ptr Void [$sel:vkWaitSemaphoreCount:VkBindSparseInfo] :: VkBindSparseInfo -> Word32 [$sel:vkPWaitSemaphores:VkBindSparseInfo] :: VkBindSparseInfo -> Ptr VkSemaphore [$sel:vkBufferBindCount:VkBindSparseInfo] :: VkBindSparseInfo -> Word32 [$sel:vkPBufferBinds:VkBindSparseInfo] :: VkBindSparseInfo -> Ptr VkSparseBufferMemoryBindInfo [$sel:vkImageOpaqueBindCount:VkBindSparseInfo] :: VkBindSparseInfo -> Word32 [$sel:vkPImageOpaqueBinds:VkBindSparseInfo] :: VkBindSparseInfo -> Ptr VkSparseImageOpaqueMemoryBindInfo [$sel:vkImageBindCount:VkBindSparseInfo] :: VkBindSparseInfo -> Word32 [$sel:vkPImageBinds:VkBindSparseInfo] :: VkBindSparseInfo -> Ptr VkSparseImageMemoryBindInfo [$sel:vkSignalSemaphoreCount:VkBindSparseInfo] :: VkBindSparseInfo -> Word32 [$sel:vkPSignalSemaphores:VkBindSparseInfo] :: VkBindSparseInfo -> Ptr VkSemaphore data VkSparseBufferMemoryBindInfo VkSparseBufferMemoryBindInfo :: VkBuffer -> Word32 -> Ptr VkSparseMemoryBind -> VkSparseBufferMemoryBindInfo [$sel:vkBuffer:VkSparseBufferMemoryBindInfo] :: VkSparseBufferMemoryBindInfo -> VkBuffer [$sel:vkBindCount:VkSparseBufferMemoryBindInfo] :: VkSparseBufferMemoryBindInfo -> Word32 [$sel:vkPBinds:VkSparseBufferMemoryBindInfo] :: VkSparseBufferMemoryBindInfo -> Ptr VkSparseMemoryBind newtype VkSparseImageFormatFlagBits VkSparseImageFormatFlagBits :: VkFlags -> VkSparseImageFormatFlagBits -- | Alias for VkSparseImageFormatFlagBits type VkSparseImageFormatFlags = VkSparseImageFormatFlagBits -- | Image uses a single miptail region for all array layers -- | Image requires mip levels to be an exact multiple of the sparse image -- block size for non-miptail levels. -- | Image uses a non-standard sparse block size vkGetPhysicalDeviceSparseImageFormatProperties :: VkPhysicalDevice -> VkFormat -> VkImageType -> VkSampleCountFlagBits -> VkImageUsageFlags -> VkImageTiling -> Ptr Word32 -> Ptr VkSparseImageFormatProperties -> IO () newtype VkSparseMemoryBindFlagBits VkSparseMemoryBindFlagBits :: VkFlags -> VkSparseMemoryBindFlagBits -- | Alias for VkSparseMemoryBindFlagBits type VkSparseMemoryBindFlags = VkSparseMemoryBindFlagBits -- | Operation binds resource metadata to memory data VkSparseImageOpaqueMemoryBindInfo VkSparseImageOpaqueMemoryBindInfo :: VkImage -> Word32 -> Ptr VkSparseMemoryBind -> VkSparseImageOpaqueMemoryBindInfo [$sel:vkImage:VkSparseImageOpaqueMemoryBindInfo] :: VkSparseImageOpaqueMemoryBindInfo -> VkImage [$sel:vkBindCount:VkSparseImageOpaqueMemoryBindInfo] :: VkSparseImageOpaqueMemoryBindInfo -> Word32 [$sel:vkPBinds:VkSparseImageOpaqueMemoryBindInfo] :: VkSparseImageOpaqueMemoryBindInfo -> Ptr VkSparseMemoryBind data VkSparseImageFormatProperties VkSparseImageFormatProperties :: VkImageAspectFlags -> VkExtent3D -> VkSparseImageFormatFlags -> VkSparseImageFormatProperties [$sel:vkAspectMask:VkSparseImageFormatProperties] :: VkSparseImageFormatProperties -> VkImageAspectFlags [$sel:vkImageGranularity:VkSparseImageFormatProperties] :: VkSparseImageFormatProperties -> VkExtent3D [$sel:vkFlags:VkSparseImageFormatProperties] :: VkSparseImageFormatProperties -> VkSparseImageFormatFlags instance GHC.Classes.Eq Graphics.Vulkan.SparseResourceMemoryManagement.VkSparseImageMemoryRequirements instance GHC.Classes.Eq Graphics.Vulkan.SparseResourceMemoryManagement.VkSparseImageFormatProperties instance GHC.Classes.Eq Graphics.Vulkan.SparseResourceMemoryManagement.VkBindSparseInfo instance GHC.Classes.Eq Graphics.Vulkan.SparseResourceMemoryManagement.VkSparseImageOpaqueMemoryBindInfo instance GHC.Classes.Eq Graphics.Vulkan.SparseResourceMemoryManagement.VkSparseBufferMemoryBindInfo instance GHC.Classes.Eq Graphics.Vulkan.SparseResourceMemoryManagement.VkSparseMemoryBind instance GHC.Classes.Eq Graphics.Vulkan.SparseResourceMemoryManagement.VkSparseImageMemoryBindInfo instance GHC.Classes.Eq Graphics.Vulkan.SparseResourceMemoryManagement.VkSparseImageMemoryBind instance Data.Bits.FiniteBits Graphics.Vulkan.SparseResourceMemoryManagement.VkSparseMemoryBindFlagBits instance Data.Bits.Bits Graphics.Vulkan.SparseResourceMemoryManagement.VkSparseMemoryBindFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.SparseResourceMemoryManagement.VkSparseMemoryBindFlagBits instance GHC.Classes.Eq Graphics.Vulkan.SparseResourceMemoryManagement.VkSparseMemoryBindFlagBits instance Data.Bits.FiniteBits Graphics.Vulkan.SparseResourceMemoryManagement.VkSparseImageFormatFlagBits instance Data.Bits.Bits Graphics.Vulkan.SparseResourceMemoryManagement.VkSparseImageFormatFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.SparseResourceMemoryManagement.VkSparseImageFormatFlagBits instance GHC.Classes.Eq Graphics.Vulkan.SparseResourceMemoryManagement.VkSparseImageFormatFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.SparseResourceMemoryManagement.VkSparseImageMemoryRequirements instance Foreign.Storable.Storable Graphics.Vulkan.SparseResourceMemoryManagement.VkSparseMemoryBind instance Foreign.Storable.Storable Graphics.Vulkan.SparseResourceMemoryManagement.VkSparseImageMemoryBind instance Foreign.Storable.Storable Graphics.Vulkan.SparseResourceMemoryManagement.VkSparseImageMemoryBindInfo instance Foreign.Storable.Storable Graphics.Vulkan.SparseResourceMemoryManagement.VkBindSparseInfo instance Foreign.Storable.Storable Graphics.Vulkan.SparseResourceMemoryManagement.VkSparseBufferMemoryBindInfo instance GHC.Show.Show Graphics.Vulkan.SparseResourceMemoryManagement.VkSparseImageFormatFlagBits instance GHC.Read.Read Graphics.Vulkan.SparseResourceMemoryManagement.VkSparseImageFormatFlagBits instance GHC.Show.Show Graphics.Vulkan.SparseResourceMemoryManagement.VkSparseMemoryBindFlagBits instance GHC.Read.Read Graphics.Vulkan.SparseResourceMemoryManagement.VkSparseMemoryBindFlagBits instance Foreign.Storable.Storable Graphics.Vulkan.SparseResourceMemoryManagement.VkSparseImageOpaqueMemoryBindInfo instance Foreign.Storable.Storable Graphics.Vulkan.SparseResourceMemoryManagement.VkSparseImageFormatProperties module Graphics.Vulkan