{-# OPTIONS_GHC -fno-warn-orphans#-}
{-# OPTIONS_HADDOCK not-home#-}
{-# LANGUAGE DataKinds #-}
{-# LANGUAGE FlexibleInstances #-}
{-# LANGUAGE ForeignFunctionInterface #-}
{-# LANGUAGE MagicHash #-}
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE Strict #-}
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE ViewPatterns #-}
module Graphics.Vulkan.Ext.VK_AMD_draw_indirect_count
(
VkCmdDrawIndirectCountAMD, pattern VkCmdDrawIndirectCountAMD,
HS_vkCmdDrawIndirectCountAMD, PFN_vkCmdDrawIndirectCountAMD,
VkCmdDrawIndexedIndirectCountAMD,
pattern VkCmdDrawIndexedIndirectCountAMD,
HS_vkCmdDrawIndexedIndirectCountAMD,
PFN_vkCmdDrawIndexedIndirectCountAMD,
module Graphics.Vulkan.Marshal,
module Graphics.Vulkan.Types.BaseTypes,
module Graphics.Vulkan.Types.Handles,
VK_AMD_DRAW_INDIRECT_COUNT_SPEC_VERSION,
pattern VK_AMD_DRAW_INDIRECT_COUNT_SPEC_VERSION,
VK_AMD_DRAW_INDIRECT_COUNT_EXTENSION_NAME,
pattern VK_AMD_DRAW_INDIRECT_COUNT_EXTENSION_NAME)
where
import GHC.Ptr (Ptr (..))
import Graphics.Vulkan.Marshal
import Graphics.Vulkan.Marshal.Proc (VulkanProc (..))
import Graphics.Vulkan.Types.BaseTypes
import Graphics.Vulkan.Types.Handles
pattern VkCmdDrawIndirectCountAMD :: CString
pattern $bVkCmdDrawIndirectCountAMD :: CString
$mVkCmdDrawIndirectCountAMD :: forall r. CString -> (Void# -> r) -> (Void# -> r) -> r
VkCmdDrawIndirectCountAMD <-
(is_VkCmdDrawIndirectCountAMD -> True)
where VkCmdDrawIndirectCountAMD = CString
_VkCmdDrawIndirectCountAMD
{-# INLINE _VkCmdDrawIndirectCountAMD #-}
_VkCmdDrawIndirectCountAMD :: CString
_VkCmdDrawIndirectCountAMD :: CString
_VkCmdDrawIndirectCountAMD = Addr# -> CString
forall a. Addr# -> Ptr a
Ptr Addr#
"vkCmdDrawIndirectCountAMD\NUL"#
{-# INLINE is_VkCmdDrawIndirectCountAMD #-}
is_VkCmdDrawIndirectCountAMD :: CString -> Bool
is_VkCmdDrawIndirectCountAMD :: CString -> Bool
is_VkCmdDrawIndirectCountAMD
= (Ordering
EQ Ordering -> Ordering -> Bool
forall a. Eq a => a -> a -> Bool
==) (Ordering -> Bool) -> (CString -> Ordering) -> CString -> Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. CString -> CString -> Ordering
cmpCStrings CString
_VkCmdDrawIndirectCountAMD
type VkCmdDrawIndirectCountAMD = "vkCmdDrawIndirectCountAMD"
type HS_vkCmdDrawIndirectCountAMD =
VkCommandBuffer
->
VkBuffer
->
VkDeviceSize
->
VkBuffer
-> VkDeviceSize
-> Word32
-> Word32
-> IO ()
type PFN_vkCmdDrawIndirectCountAMD =
FunPtr HS_vkCmdDrawIndirectCountAMD
foreign import ccall "dynamic" unwrapVkCmdDrawIndirectCountAMD ::
PFN_vkCmdDrawIndirectCountAMD -> HS_vkCmdDrawIndirectCountAMD
instance VulkanProc "vkCmdDrawIndirectCountAMD" where
type VkProcType "vkCmdDrawIndirectCountAMD" =
HS_vkCmdDrawIndirectCountAMD
vkProcSymbol :: CString
vkProcSymbol = CString
_VkCmdDrawIndirectCountAMD
{-# INLINE vkProcSymbol #-}
unwrapVkProcPtr :: FunPtr (VkProcType "vkCmdDrawIndirectCountAMD")
-> VkProcType "vkCmdDrawIndirectCountAMD"
unwrapVkProcPtr = FunPtr (VkProcType "vkCmdDrawIndirectCountAMD")
-> VkProcType "vkCmdDrawIndirectCountAMD"
PFN_vkCmdDrawIndirectCountAMD -> HS_vkCmdDrawIndirectCountAMD
unwrapVkCmdDrawIndirectCountAMD
{-# INLINE unwrapVkProcPtr #-}
pattern VkCmdDrawIndexedIndirectCountAMD :: CString
pattern $bVkCmdDrawIndexedIndirectCountAMD :: CString
$mVkCmdDrawIndexedIndirectCountAMD :: forall r. CString -> (Void# -> r) -> (Void# -> r) -> r
VkCmdDrawIndexedIndirectCountAMD <-
(is_VkCmdDrawIndexedIndirectCountAMD -> True)
where VkCmdDrawIndexedIndirectCountAMD
= CString
_VkCmdDrawIndexedIndirectCountAMD
{-# INLINE _VkCmdDrawIndexedIndirectCountAMD #-}
_VkCmdDrawIndexedIndirectCountAMD :: CString
_VkCmdDrawIndexedIndirectCountAMD :: CString
_VkCmdDrawIndexedIndirectCountAMD
= Addr# -> CString
forall a. Addr# -> Ptr a
Ptr Addr#
"vkCmdDrawIndexedIndirectCountAMD\NUL"#
{-# INLINE is_VkCmdDrawIndexedIndirectCountAMD #-}
is_VkCmdDrawIndexedIndirectCountAMD :: CString -> Bool
is_VkCmdDrawIndexedIndirectCountAMD :: CString -> Bool
is_VkCmdDrawIndexedIndirectCountAMD
= (Ordering
EQ Ordering -> Ordering -> Bool
forall a. Eq a => a -> a -> Bool
==) (Ordering -> Bool) -> (CString -> Ordering) -> CString -> Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. CString -> CString -> Ordering
cmpCStrings CString
_VkCmdDrawIndexedIndirectCountAMD
type VkCmdDrawIndexedIndirectCountAMD =
"vkCmdDrawIndexedIndirectCountAMD"
type HS_vkCmdDrawIndexedIndirectCountAMD =
VkCommandBuffer
->
VkBuffer
->
VkDeviceSize
->
VkBuffer
-> VkDeviceSize
-> Word32
-> Word32
-> IO ()
type PFN_vkCmdDrawIndexedIndirectCountAMD =
FunPtr HS_vkCmdDrawIndexedIndirectCountAMD
foreign import ccall "dynamic"
unwrapVkCmdDrawIndexedIndirectCountAMD ::
PFN_vkCmdDrawIndexedIndirectCountAMD ->
HS_vkCmdDrawIndexedIndirectCountAMD
instance VulkanProc "vkCmdDrawIndexedIndirectCountAMD" where
type VkProcType "vkCmdDrawIndexedIndirectCountAMD" =
HS_vkCmdDrawIndexedIndirectCountAMD
vkProcSymbol :: CString
vkProcSymbol = CString
_VkCmdDrawIndexedIndirectCountAMD
{-# INLINE vkProcSymbol #-}
unwrapVkProcPtr :: FunPtr (VkProcType "vkCmdDrawIndexedIndirectCountAMD")
-> VkProcType "vkCmdDrawIndexedIndirectCountAMD"
unwrapVkProcPtr = FunPtr (VkProcType "vkCmdDrawIndexedIndirectCountAMD")
-> VkProcType "vkCmdDrawIndexedIndirectCountAMD"
PFN_vkCmdDrawIndirectCountAMD -> HS_vkCmdDrawIndirectCountAMD
unwrapVkCmdDrawIndexedIndirectCountAMD
{-# INLINE unwrapVkProcPtr #-}
pattern VK_AMD_DRAW_INDIRECT_COUNT_SPEC_VERSION :: (Num a, Eq a) =>
a
pattern $bVK_AMD_DRAW_INDIRECT_COUNT_SPEC_VERSION :: a
$mVK_AMD_DRAW_INDIRECT_COUNT_SPEC_VERSION :: forall r a. (Num a, Eq a) => a -> (Void# -> r) -> (Void# -> r) -> r
VK_AMD_DRAW_INDIRECT_COUNT_SPEC_VERSION = 1
type VK_AMD_DRAW_INDIRECT_COUNT_SPEC_VERSION = 1
pattern VK_AMD_DRAW_INDIRECT_COUNT_EXTENSION_NAME :: CString
pattern $bVK_AMD_DRAW_INDIRECT_COUNT_EXTENSION_NAME :: CString
$mVK_AMD_DRAW_INDIRECT_COUNT_EXTENSION_NAME :: forall r. CString -> (Void# -> r) -> (Void# -> r) -> r
VK_AMD_DRAW_INDIRECT_COUNT_EXTENSION_NAME <-
(is_VK_AMD_DRAW_INDIRECT_COUNT_EXTENSION_NAME -> True)
where VK_AMD_DRAW_INDIRECT_COUNT_EXTENSION_NAME
= CString
_VK_AMD_DRAW_INDIRECT_COUNT_EXTENSION_NAME
{-# INLINE _VK_AMD_DRAW_INDIRECT_COUNT_EXTENSION_NAME #-}
_VK_AMD_DRAW_INDIRECT_COUNT_EXTENSION_NAME :: CString
_VK_AMD_DRAW_INDIRECT_COUNT_EXTENSION_NAME :: CString
_VK_AMD_DRAW_INDIRECT_COUNT_EXTENSION_NAME
= Addr# -> CString
forall a. Addr# -> Ptr a
Ptr Addr#
"VK_AMD_draw_indirect_count\NUL"#
{-# INLINE is_VK_AMD_DRAW_INDIRECT_COUNT_EXTENSION_NAME #-}
is_VK_AMD_DRAW_INDIRECT_COUNT_EXTENSION_NAME :: CString -> Bool
is_VK_AMD_DRAW_INDIRECT_COUNT_EXTENSION_NAME :: CString -> Bool
is_VK_AMD_DRAW_INDIRECT_COUNT_EXTENSION_NAME
= (Ordering
EQ Ordering -> Ordering -> Bool
forall a. Eq a => a -> a -> Bool
==) (Ordering -> Bool) -> (CString -> Ordering) -> CString -> Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. CString -> CString -> Ordering
cmpCStrings CString
_VK_AMD_DRAW_INDIRECT_COUNT_EXTENSION_NAME
type VK_AMD_DRAW_INDIRECT_COUNT_EXTENSION_NAME =
"VK_AMD_draw_indirect_count"