{-# LINE 1 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
{-# LINE 2 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
{-# LANGUAGE DataKinds #-}
{-# LANGUAGE FlexibleInstances #-}
{-# LANGUAGE MagicHash #-}
{-# LANGUAGE MultiParamTypeClasses #-}
{-# LANGUAGE Strict #-}
{-# LANGUAGE TypeApplications #-}
{-# LANGUAGE TypeFamilies #-}
module Graphics.Vulkan.Types.Struct.WriteDescriptorSet
(VkWriteDescriptorSet(..)) where
import Foreign.Storable (Storable (..))
import GHC.Base (Addr#, ByteArray#,
byteArrayContents#,
plusAddr#)
import Graphics.Vulkan.Marshal
import Graphics.Vulkan.Marshal.Internal
import Graphics.Vulkan.Types.Enum.Descriptor (VkDescriptorType)
import Graphics.Vulkan.Types.Enum.StructureType (VkStructureType)
import Graphics.Vulkan.Types.Handles (VkBufferView,
VkDescriptorSet)
import Graphics.Vulkan.Types.Struct.Descriptor (VkDescriptorBufferInfo,
VkDescriptorImageInfo)
import System.IO.Unsafe (unsafeDupablePerformIO)
data VkWriteDescriptorSet = VkWriteDescriptorSet# Addr# ByteArray#
instance Eq VkWriteDescriptorSet where
(VkWriteDescriptorSet# a _) == x@(VkWriteDescriptorSet# b _)
= EQ == cmpBytes# (sizeOf x) a b
{-# INLINE (==) #-}
instance Ord VkWriteDescriptorSet where
(VkWriteDescriptorSet# a _) `compare` x@(VkWriteDescriptorSet# b _)
= cmpBytes# (sizeOf x) a b
{-# INLINE compare #-}
instance Storable VkWriteDescriptorSet where
sizeOf ~_ = (64)
{-# LINE 56 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
{-# INLINE sizeOf #-}
alignment ~_ = (8)
{-# LINE 59 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
{-# INLINE alignment #-}
peek = peekVkData#
{-# INLINE peek #-}
poke = pokeVkData#
{-# INLINE poke #-}
instance VulkanMarshalPrim VkWriteDescriptorSet where
unsafeAddr (VkWriteDescriptorSet# a _) = a
{-# INLINE unsafeAddr #-}
unsafeByteArray (VkWriteDescriptorSet# _ b) = b
{-# INLINE unsafeByteArray #-}
unsafeFromByteArrayOffset off b
= VkWriteDescriptorSet# (plusAddr# (byteArrayContents# b) off) b
{-# INLINE unsafeFromByteArrayOffset #-}
instance VulkanMarshal VkWriteDescriptorSet where
type StructFields VkWriteDescriptorSet =
'["sType", "pNext", "dstSet", "dstBinding", "dstArrayElement", -- ' closing tick for hsc2hs
"descriptorCount", "descriptorType", "pImageInfo", "pBufferInfo",
"pTexelBufferView"]
type CUnionType VkWriteDescriptorSet = 'False -- ' closing tick for hsc2hs
type ReturnedOnly VkWriteDescriptorSet = 'False -- ' closing tick for hsc2hs
type StructExtends VkWriteDescriptorSet = '[] -- ' closing tick for hsc2hs
instance {-# OVERLAPPING #-} HasField "sType" VkWriteDescriptorSet
where
type FieldType "sType" VkWriteDescriptorSet = VkStructureType
type FieldOptional "sType" VkWriteDescriptorSet = 'False -- ' closing tick for hsc2hs
type FieldOffset "sType" VkWriteDescriptorSet =
(0)
{-# LINE 95 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
type FieldIsArray "sType" VkWriteDescriptorSet = 'False -- ' closing tick for hsc2hs
{-# INLINE fieldOptional #-}
fieldOptional = False
{-# INLINE fieldOffset #-}
fieldOffset = (0)
{-# LINE 102 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
instance {-# OVERLAPPING #-}
CanReadField "sType" VkWriteDescriptorSet where
{-# NOINLINE getField #-}
getField x
= unsafeDupablePerformIO
(peekByteOff (unsafePtr x) (0))
{-# LINE 109 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
{-# INLINE readField #-}
readField p
= peekByteOff p (0)
{-# LINE 113 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
instance {-# OVERLAPPING #-}
CanWriteField "sType" VkWriteDescriptorSet where
{-# INLINE writeField #-}
writeField p
= pokeByteOff p (0)
{-# LINE 119 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
instance {-# OVERLAPPING #-} HasField "pNext" VkWriteDescriptorSet
where
type FieldType "pNext" VkWriteDescriptorSet = Ptr Void
type FieldOptional "pNext" VkWriteDescriptorSet = 'False -- ' closing tick for hsc2hs
type FieldOffset "pNext" VkWriteDescriptorSet =
(8)
{-# LINE 126 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
type FieldIsArray "pNext" VkWriteDescriptorSet = 'False -- ' closing tick for hsc2hs
{-# INLINE fieldOptional #-}
fieldOptional = False
{-# INLINE fieldOffset #-}
fieldOffset = (8)
{-# LINE 133 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
instance {-# OVERLAPPING #-}
CanReadField "pNext" VkWriteDescriptorSet where
{-# NOINLINE getField #-}
getField x
= unsafeDupablePerformIO
(peekByteOff (unsafePtr x) (8))
{-# LINE 140 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
{-# INLINE readField #-}
readField p
= peekByteOff p (8)
{-# LINE 144 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
instance {-# OVERLAPPING #-}
CanWriteField "pNext" VkWriteDescriptorSet where
{-# INLINE writeField #-}
writeField p
= pokeByteOff p (8)
{-# LINE 150 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
instance {-# OVERLAPPING #-} HasField "dstSet" VkWriteDescriptorSet
where
type FieldType "dstSet" VkWriteDescriptorSet = VkDescriptorSet
type FieldOptional "dstSet" VkWriteDescriptorSet = 'False -- ' closing tick for hsc2hs
type FieldOffset "dstSet" VkWriteDescriptorSet =
(16)
{-# LINE 157 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
type FieldIsArray "dstSet" VkWriteDescriptorSet = 'False -- ' closing tick for hsc2hs
{-# INLINE fieldOptional #-}
fieldOptional = False
{-# INLINE fieldOffset #-}
fieldOffset = (16)
{-# LINE 164 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
instance {-# OVERLAPPING #-}
CanReadField "dstSet" VkWriteDescriptorSet where
{-# NOINLINE getField #-}
getField x
= unsafeDupablePerformIO
(peekByteOff (unsafePtr x) (16))
{-# LINE 171 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
{-# INLINE readField #-}
readField p
= peekByteOff p (16)
{-# LINE 175 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
instance {-# OVERLAPPING #-}
CanWriteField "dstSet" VkWriteDescriptorSet where
{-# INLINE writeField #-}
writeField p
= pokeByteOff p (16)
{-# LINE 181 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
instance {-# OVERLAPPING #-}
HasField "dstBinding" VkWriteDescriptorSet where
type FieldType "dstBinding" VkWriteDescriptorSet = Word32
type FieldOptional "dstBinding" VkWriteDescriptorSet = 'False -- ' closing tick for hsc2hs
type FieldOffset "dstBinding" VkWriteDescriptorSet =
(24)
{-# LINE 188 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
type FieldIsArray "dstBinding" VkWriteDescriptorSet = 'False -- ' closing tick for hsc2hs
{-# INLINE fieldOptional #-}
fieldOptional = False
{-# INLINE fieldOffset #-}
fieldOffset
= (24)
{-# LINE 196 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
instance {-# OVERLAPPING #-}
CanReadField "dstBinding" VkWriteDescriptorSet where
{-# NOINLINE getField #-}
getField x
= unsafeDupablePerformIO
(peekByteOff (unsafePtr x) (24))
{-# LINE 203 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
{-# INLINE readField #-}
readField p
= peekByteOff p (24)
{-# LINE 207 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
instance {-# OVERLAPPING #-}
CanWriteField "dstBinding" VkWriteDescriptorSet where
{-# INLINE writeField #-}
writeField p
= pokeByteOff p (24)
{-# LINE 213 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
instance {-# OVERLAPPING #-}
HasField "dstArrayElement" VkWriteDescriptorSet where
type FieldType "dstArrayElement" VkWriteDescriptorSet = Word32
type FieldOptional "dstArrayElement" VkWriteDescriptorSet = 'False -- ' closing tick for hsc2hs
type FieldOffset "dstArrayElement" VkWriteDescriptorSet =
(28)
{-# LINE 220 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
type FieldIsArray "dstArrayElement" VkWriteDescriptorSet = 'False -- ' closing tick for hsc2hs
{-# INLINE fieldOptional #-}
fieldOptional = False
{-# INLINE fieldOffset #-}
fieldOffset
= (28)
{-# LINE 228 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
instance {-# OVERLAPPING #-}
CanReadField "dstArrayElement" VkWriteDescriptorSet where
{-# NOINLINE getField #-}
getField x
= unsafeDupablePerformIO
(peekByteOff (unsafePtr x) (28))
{-# LINE 235 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
{-# INLINE readField #-}
readField p
= peekByteOff p (28)
{-# LINE 239 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
instance {-# OVERLAPPING #-}
CanWriteField "dstArrayElement" VkWriteDescriptorSet where
{-# INLINE writeField #-}
writeField p
= pokeByteOff p (28)
{-# LINE 245 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
instance {-# OVERLAPPING #-}
HasField "descriptorCount" VkWriteDescriptorSet where
type FieldType "descriptorCount" VkWriteDescriptorSet = Word32
type FieldOptional "descriptorCount" VkWriteDescriptorSet = 'False -- ' closing tick for hsc2hs
type FieldOffset "descriptorCount" VkWriteDescriptorSet =
(32)
{-# LINE 252 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
type FieldIsArray "descriptorCount" VkWriteDescriptorSet = 'False -- ' closing tick for hsc2hs
{-# INLINE fieldOptional #-}
fieldOptional = False
{-# INLINE fieldOffset #-}
fieldOffset
= (32)
{-# LINE 260 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
instance {-# OVERLAPPING #-}
CanReadField "descriptorCount" VkWriteDescriptorSet where
{-# NOINLINE getField #-}
getField x
= unsafeDupablePerformIO
(peekByteOff (unsafePtr x) (32))
{-# LINE 267 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
{-# INLINE readField #-}
readField p
= peekByteOff p (32)
{-# LINE 271 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
instance {-# OVERLAPPING #-}
CanWriteField "descriptorCount" VkWriteDescriptorSet where
{-# INLINE writeField #-}
writeField p
= pokeByteOff p (32)
{-# LINE 277 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
instance {-# OVERLAPPING #-}
HasField "descriptorType" VkWriteDescriptorSet where
type FieldType "descriptorType" VkWriteDescriptorSet =
VkDescriptorType
type FieldOptional "descriptorType" VkWriteDescriptorSet = 'False -- ' closing tick for hsc2hs
type FieldOffset "descriptorType" VkWriteDescriptorSet =
(36)
{-# LINE 285 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
type FieldIsArray "descriptorType" VkWriteDescriptorSet = 'False -- ' closing tick for hsc2hs
{-# INLINE fieldOptional #-}
fieldOptional = False
{-# INLINE fieldOffset #-}
fieldOffset
= (36)
{-# LINE 293 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
instance {-# OVERLAPPING #-}
CanReadField "descriptorType" VkWriteDescriptorSet where
{-# NOINLINE getField #-}
getField x
= unsafeDupablePerformIO
(peekByteOff (unsafePtr x) (36))
{-# LINE 300 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
{-# INLINE readField #-}
readField p
= peekByteOff p (36)
{-# LINE 304 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
instance {-# OVERLAPPING #-}
CanWriteField "descriptorType" VkWriteDescriptorSet where
{-# INLINE writeField #-}
writeField p
= pokeByteOff p (36)
{-# LINE 310 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
instance {-# OVERLAPPING #-}
HasField "pImageInfo" VkWriteDescriptorSet where
type FieldType "pImageInfo" VkWriteDescriptorSet =
Ptr VkDescriptorImageInfo
type FieldOptional "pImageInfo" VkWriteDescriptorSet = 'False -- ' closing tick for hsc2hs
type FieldOffset "pImageInfo" VkWriteDescriptorSet =
(40)
{-# LINE 318 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
type FieldIsArray "pImageInfo" VkWriteDescriptorSet = 'False -- ' closing tick for hsc2hs
{-# INLINE fieldOptional #-}
fieldOptional = False
{-# INLINE fieldOffset #-}
fieldOffset
= (40)
{-# LINE 326 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
instance {-# OVERLAPPING #-}
CanReadField "pImageInfo" VkWriteDescriptorSet where
{-# NOINLINE getField #-}
getField x
= unsafeDupablePerformIO
(peekByteOff (unsafePtr x) (40))
{-# LINE 333 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
{-# INLINE readField #-}
readField p
= peekByteOff p (40)
{-# LINE 337 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
instance {-# OVERLAPPING #-}
CanWriteField "pImageInfo" VkWriteDescriptorSet where
{-# INLINE writeField #-}
writeField p
= pokeByteOff p (40)
{-# LINE 343 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
instance {-# OVERLAPPING #-}
HasField "pBufferInfo" VkWriteDescriptorSet where
type FieldType "pBufferInfo" VkWriteDescriptorSet =
Ptr VkDescriptorBufferInfo
type FieldOptional "pBufferInfo" VkWriteDescriptorSet = 'False -- ' closing tick for hsc2hs
type FieldOffset "pBufferInfo" VkWriteDescriptorSet =
(48)
{-# LINE 351 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
type FieldIsArray "pBufferInfo" VkWriteDescriptorSet = 'False -- ' closing tick for hsc2hs
{-# INLINE fieldOptional #-}
fieldOptional = False
{-# INLINE fieldOffset #-}
fieldOffset
= (48)
{-# LINE 359 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
instance {-# OVERLAPPING #-}
CanReadField "pBufferInfo" VkWriteDescriptorSet where
{-# NOINLINE getField #-}
getField x
= unsafeDupablePerformIO
(peekByteOff (unsafePtr x) (48))
{-# LINE 366 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
{-# INLINE readField #-}
readField p
= peekByteOff p (48)
{-# LINE 370 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
instance {-# OVERLAPPING #-}
CanWriteField "pBufferInfo" VkWriteDescriptorSet where
{-# INLINE writeField #-}
writeField p
= pokeByteOff p (48)
{-# LINE 376 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
instance {-# OVERLAPPING #-}
HasField "pTexelBufferView" VkWriteDescriptorSet where
type FieldType "pTexelBufferView" VkWriteDescriptorSet =
Ptr VkBufferView
type FieldOptional "pTexelBufferView" VkWriteDescriptorSet = 'False -- ' closing tick for hsc2hs
type FieldOffset "pTexelBufferView" VkWriteDescriptorSet =
(56)
{-# LINE 384 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
type FieldIsArray "pTexelBufferView" VkWriteDescriptorSet = 'False -- ' closing tick for hsc2hs
{-# INLINE fieldOptional #-}
fieldOptional = False
{-# INLINE fieldOffset #-}
fieldOffset
= (56)
{-# LINE 392 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
instance {-# OVERLAPPING #-}
CanReadField "pTexelBufferView" VkWriteDescriptorSet where
{-# NOINLINE getField #-}
getField x
= unsafeDupablePerformIO
(peekByteOff (unsafePtr x) (56))
{-# LINE 399 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
{-# INLINE readField #-}
readField p
= peekByteOff p (56)
{-# LINE 403 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
instance {-# OVERLAPPING #-}
CanWriteField "pTexelBufferView" VkWriteDescriptorSet where
{-# INLINE writeField #-}
writeField p
= pokeByteOff p (56)
{-# LINE 409 "src-gen/Graphics/Vulkan/Types/Struct/WriteDescriptorSet.hsc" #-}
instance Show VkWriteDescriptorSet where
showsPrec d x
= showString "VkWriteDescriptorSet {" .
showString "sType = " .
showsPrec d (getField @"sType" x) .
showString ", " .
showString "pNext = " .
showsPrec d (getField @"pNext" x) .
showString ", " .
showString "dstSet = " .
showsPrec d (getField @"dstSet" x) .
showString ", " .
showString "dstBinding = " .
showsPrec d (getField @"dstBinding" x) .
showString ", " .
showString "dstArrayElement = " .
showsPrec d (getField @"dstArrayElement" x) .
showString ", " .
showString "descriptorCount = " .
showsPrec d (getField @"descriptorCount" x) .
showString ", " .
showString "descriptorType = " .
showsPrec d (getField @"descriptorType" x) .
showString ", " .
showString "pImageInfo = " .
showsPrec d (getField @"pImageInfo" x) .
showString ", " .
showString "pBufferInfo = " .
showsPrec d
(getField @"pBufferInfo" x)
.
showString ", " .
showString "pTexelBufferView = "
.
showsPrec d
(getField
@"pTexelBufferView"
x)
. showChar '}'