{-# language CPP #-}
module Vulkan.Core10.APIConstants ( pattern LOD_CLAMP_NONE
, LUID_SIZE_KHR
, QUEUE_FAMILY_EXTERNAL_KHR
, MAX_DEVICE_GROUP_SIZE_KHR
, MAX_DRIVER_NAME_SIZE_KHR
, MAX_DRIVER_INFO_SIZE_KHR
, SHADER_UNUSED_NV
, MAX_GLOBAL_PRIORITY_SIZE_EXT
, MAX_PHYSICAL_DEVICE_NAME_SIZE
, pattern MAX_PHYSICAL_DEVICE_NAME_SIZE
, UUID_SIZE
, pattern UUID_SIZE
, LUID_SIZE
, pattern LUID_SIZE
, MAX_EXTENSION_NAME_SIZE
, pattern MAX_EXTENSION_NAME_SIZE
, MAX_DESCRIPTION_SIZE
, pattern MAX_DESCRIPTION_SIZE
, MAX_MEMORY_TYPES
, pattern MAX_MEMORY_TYPES
, MAX_MEMORY_HEAPS
, pattern MAX_MEMORY_HEAPS
, REMAINING_MIP_LEVELS
, pattern REMAINING_MIP_LEVELS
, REMAINING_ARRAY_LAYERS
, pattern REMAINING_ARRAY_LAYERS
, REMAINING_3D_SLICES_EXT
, pattern REMAINING_3D_SLICES_EXT
, WHOLE_SIZE
, pattern WHOLE_SIZE
, ATTACHMENT_UNUSED
, pattern ATTACHMENT_UNUSED
, QUEUE_FAMILY_IGNORED
, pattern QUEUE_FAMILY_IGNORED
, QUEUE_FAMILY_EXTERNAL
, pattern QUEUE_FAMILY_EXTERNAL
, QUEUE_FAMILY_FOREIGN_EXT
, pattern QUEUE_FAMILY_FOREIGN_EXT
, SUBPASS_EXTERNAL
, pattern SUBPASS_EXTERNAL
, MAX_DEVICE_GROUP_SIZE
, pattern MAX_DEVICE_GROUP_SIZE
, MAX_DRIVER_NAME_SIZE
, pattern MAX_DRIVER_NAME_SIZE
, MAX_DRIVER_INFO_SIZE
, pattern MAX_DRIVER_INFO_SIZE
, SHADER_UNUSED_KHR
, pattern SHADER_UNUSED_KHR
, MAX_GLOBAL_PRIORITY_SIZE_KHR
, pattern MAX_GLOBAL_PRIORITY_SIZE_KHR
, MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT
, pattern MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT
, SHADER_INDEX_UNUSED_AMDX
, pattern SHADER_INDEX_UNUSED_AMDX
, pattern NULL_HANDLE
, IsHandle
, HasObjectType(..)
, Bool32(..)
, PipelineCacheHeaderVersion(..)
) where
import Vulkan.Zero (Zero(..))
import Data.Word (Word32)
import Data.Word (Word64)
import Vulkan.Core10.Enums.ObjectType (ObjectType)
import Vulkan.Core10.FundamentalTypes (Bool32(..))
import Vulkan.Core10.Enums.PipelineCacheHeaderVersion (PipelineCacheHeaderVersion(..))
pattern LOD_CLAMP_NONE :: Float
pattern $bLOD_CLAMP_NONE :: Float
$mLOD_CLAMP_NONE :: forall {r}. Float -> ((# #) -> r) -> ((# #) -> r) -> r
LOD_CLAMP_NONE = 1000.0
type LUID_SIZE_KHR = LUID_SIZE
type QUEUE_FAMILY_EXTERNAL_KHR = QUEUE_FAMILY_EXTERNAL
type MAX_DEVICE_GROUP_SIZE_KHR = MAX_DEVICE_GROUP_SIZE
type MAX_DRIVER_NAME_SIZE_KHR = MAX_DRIVER_NAME_SIZE
type MAX_DRIVER_INFO_SIZE_KHR = MAX_DRIVER_INFO_SIZE
type SHADER_UNUSED_NV = SHADER_UNUSED_KHR
type MAX_GLOBAL_PRIORITY_SIZE_EXT = MAX_GLOBAL_PRIORITY_SIZE_KHR
type MAX_PHYSICAL_DEVICE_NAME_SIZE = 256
pattern MAX_PHYSICAL_DEVICE_NAME_SIZE :: forall a . Integral a => a
pattern $bMAX_PHYSICAL_DEVICE_NAME_SIZE :: forall a. Integral a => a
$mMAX_PHYSICAL_DEVICE_NAME_SIZE :: forall {r} {a}.
Integral a =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
MAX_PHYSICAL_DEVICE_NAME_SIZE = 256
type UUID_SIZE = 16
pattern UUID_SIZE :: forall a . Integral a => a
pattern $bUUID_SIZE :: forall a. Integral a => a
$mUUID_SIZE :: forall {r} {a}.
Integral a =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
UUID_SIZE = 16
type LUID_SIZE = 8
pattern LUID_SIZE :: forall a . Integral a => a
pattern $bLUID_SIZE :: forall a. Integral a => a
$mLUID_SIZE :: forall {r} {a}.
Integral a =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
LUID_SIZE = 8
type MAX_EXTENSION_NAME_SIZE = 256
pattern MAX_EXTENSION_NAME_SIZE :: forall a . Integral a => a
pattern $bMAX_EXTENSION_NAME_SIZE :: forall a. Integral a => a
$mMAX_EXTENSION_NAME_SIZE :: forall {r} {a}.
Integral a =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
MAX_EXTENSION_NAME_SIZE = 256
type MAX_DESCRIPTION_SIZE = 256
pattern MAX_DESCRIPTION_SIZE :: forall a . Integral a => a
pattern $bMAX_DESCRIPTION_SIZE :: forall a. Integral a => a
$mMAX_DESCRIPTION_SIZE :: forall {r} {a}.
Integral a =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
MAX_DESCRIPTION_SIZE = 256
type MAX_MEMORY_TYPES = 32
pattern MAX_MEMORY_TYPES :: forall a . Integral a => a
pattern $bMAX_MEMORY_TYPES :: forall a. Integral a => a
$mMAX_MEMORY_TYPES :: forall {r} {a}.
Integral a =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
MAX_MEMORY_TYPES = 32
type MAX_MEMORY_HEAPS = 16
pattern MAX_MEMORY_HEAPS :: forall a . Integral a => a
pattern $bMAX_MEMORY_HEAPS :: forall a. Integral a => a
$mMAX_MEMORY_HEAPS :: forall {r} {a}.
Integral a =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
MAX_MEMORY_HEAPS = 16
type REMAINING_MIP_LEVELS = 0xffffffff
pattern REMAINING_MIP_LEVELS :: Word32
pattern $bREMAINING_MIP_LEVELS :: Word32
$mREMAINING_MIP_LEVELS :: forall {r}. Word32 -> ((# #) -> r) -> ((# #) -> r) -> r
REMAINING_MIP_LEVELS = 0xffffffff
type REMAINING_ARRAY_LAYERS = 0xffffffff
pattern REMAINING_ARRAY_LAYERS :: Word32
pattern $bREMAINING_ARRAY_LAYERS :: Word32
$mREMAINING_ARRAY_LAYERS :: forall {r}. Word32 -> ((# #) -> r) -> ((# #) -> r) -> r
REMAINING_ARRAY_LAYERS = 0xffffffff
type REMAINING_3D_SLICES_EXT = 0xffffffff
pattern REMAINING_3D_SLICES_EXT :: Word32
pattern $bREMAINING_3D_SLICES_EXT :: Word32
$mREMAINING_3D_SLICES_EXT :: forall {r}. Word32 -> ((# #) -> r) -> ((# #) -> r) -> r
REMAINING_3D_SLICES_EXT = 0xffffffff
type WHOLE_SIZE = 0xffffffffffffffff
pattern WHOLE_SIZE :: Word64
pattern $bWHOLE_SIZE :: Word64
$mWHOLE_SIZE :: forall {r}. Word64 -> ((# #) -> r) -> ((# #) -> r) -> r
WHOLE_SIZE = 0xffffffffffffffff
type ATTACHMENT_UNUSED = 0xffffffff
pattern ATTACHMENT_UNUSED :: Word32
pattern $bATTACHMENT_UNUSED :: Word32
$mATTACHMENT_UNUSED :: forall {r}. Word32 -> ((# #) -> r) -> ((# #) -> r) -> r
ATTACHMENT_UNUSED = 0xffffffff
type QUEUE_FAMILY_IGNORED = 0xffffffff
pattern QUEUE_FAMILY_IGNORED :: Word32
pattern $bQUEUE_FAMILY_IGNORED :: Word32
$mQUEUE_FAMILY_IGNORED :: forall {r}. Word32 -> ((# #) -> r) -> ((# #) -> r) -> r
QUEUE_FAMILY_IGNORED = 0xffffffff
type QUEUE_FAMILY_EXTERNAL = 0xfffffffe
pattern QUEUE_FAMILY_EXTERNAL :: Word32
pattern $bQUEUE_FAMILY_EXTERNAL :: Word32
$mQUEUE_FAMILY_EXTERNAL :: forall {r}. Word32 -> ((# #) -> r) -> ((# #) -> r) -> r
QUEUE_FAMILY_EXTERNAL = 0xfffffffe
type QUEUE_FAMILY_FOREIGN_EXT = 0xfffffffd
pattern QUEUE_FAMILY_FOREIGN_EXT :: Word32
pattern $bQUEUE_FAMILY_FOREIGN_EXT :: Word32
$mQUEUE_FAMILY_FOREIGN_EXT :: forall {r}. Word32 -> ((# #) -> r) -> ((# #) -> r) -> r
QUEUE_FAMILY_FOREIGN_EXT = 0xfffffffd
type SUBPASS_EXTERNAL = 0xffffffff
pattern SUBPASS_EXTERNAL :: Word32
pattern $bSUBPASS_EXTERNAL :: Word32
$mSUBPASS_EXTERNAL :: forall {r}. Word32 -> ((# #) -> r) -> ((# #) -> r) -> r
SUBPASS_EXTERNAL = 0xffffffff
type MAX_DEVICE_GROUP_SIZE = 32
pattern MAX_DEVICE_GROUP_SIZE :: forall a . Integral a => a
pattern $bMAX_DEVICE_GROUP_SIZE :: forall a. Integral a => a
$mMAX_DEVICE_GROUP_SIZE :: forall {r} {a}.
Integral a =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
MAX_DEVICE_GROUP_SIZE = 32
type MAX_DRIVER_NAME_SIZE = 256
pattern MAX_DRIVER_NAME_SIZE :: forall a . Integral a => a
pattern $bMAX_DRIVER_NAME_SIZE :: forall a. Integral a => a
$mMAX_DRIVER_NAME_SIZE :: forall {r} {a}.
Integral a =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
MAX_DRIVER_NAME_SIZE = 256
type MAX_DRIVER_INFO_SIZE = 256
pattern MAX_DRIVER_INFO_SIZE :: forall a . Integral a => a
pattern $bMAX_DRIVER_INFO_SIZE :: forall a. Integral a => a
$mMAX_DRIVER_INFO_SIZE :: forall {r} {a}.
Integral a =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
MAX_DRIVER_INFO_SIZE = 256
type SHADER_UNUSED_KHR = 0xffffffff
pattern SHADER_UNUSED_KHR :: Word32
pattern $bSHADER_UNUSED_KHR :: Word32
$mSHADER_UNUSED_KHR :: forall {r}. Word32 -> ((# #) -> r) -> ((# #) -> r) -> r
SHADER_UNUSED_KHR = 0xffffffff
type MAX_GLOBAL_PRIORITY_SIZE_KHR = 16
pattern MAX_GLOBAL_PRIORITY_SIZE_KHR :: forall a . Integral a => a
pattern $bMAX_GLOBAL_PRIORITY_SIZE_KHR :: forall a. Integral a => a
$mMAX_GLOBAL_PRIORITY_SIZE_KHR :: forall {r} {a}.
Integral a =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
MAX_GLOBAL_PRIORITY_SIZE_KHR = 16
type MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT = 32
pattern MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT :: forall a . Integral a => a
pattern $bMAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT :: forall a. Integral a => a
$mMAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT :: forall {r} {a}.
Integral a =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT = 32
type SHADER_INDEX_UNUSED_AMDX = 0xffffffff
pattern SHADER_INDEX_UNUSED_AMDX :: Word32
pattern $bSHADER_INDEX_UNUSED_AMDX :: Word32
$mSHADER_INDEX_UNUSED_AMDX :: forall {r}. Word32 -> ((# #) -> r) -> ((# #) -> r) -> r
SHADER_INDEX_UNUSED_AMDX = 0xffffffff
pattern NULL_HANDLE :: IsHandle a => a
pattern $bNULL_HANDLE :: forall a. IsHandle a => a
$mNULL_HANDLE :: forall {r} {a}.
IsHandle a =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
NULL_HANDLE <- ((== zero) -> True)
where NULL_HANDLE = forall a. Zero a => a
zero
class (Eq a, Zero a) => IsHandle a where
class HasObjectType a where
objectTypeAndHandle :: a -> (ObjectType, Word64)