module Graphics.Vulkan.Types.Struct.CopyDescriptorSet
(VkCopyDescriptorSet(..)) 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.StructureType (VkStructureType)
import Graphics.Vulkan.Types.Handles (VkDescriptorSet)
import System.IO.Unsafe (unsafeDupablePerformIO)
data VkCopyDescriptorSet = VkCopyDescriptorSet# Addr# ByteArray#
instance Eq VkCopyDescriptorSet where
(VkCopyDescriptorSet# a _) == x@(VkCopyDescriptorSet# b _)
= EQ == cmpBytes# (sizeOf x) a b
instance Ord VkCopyDescriptorSet where
(VkCopyDescriptorSet# a _) `compare` x@(VkCopyDescriptorSet# b _)
= cmpBytes# (sizeOf x) a b
instance Storable VkCopyDescriptorSet where
sizeOf ~_ = (56)
alignment ~_ = (8)
peek = peekVkData#
poke = pokeVkData#
instance VulkanMarshalPrim VkCopyDescriptorSet where
unsafeAddr (VkCopyDescriptorSet# a _) = a
unsafeByteArray (VkCopyDescriptorSet# _ b) = b
unsafeFromByteArrayOffset off b
= VkCopyDescriptorSet# (plusAddr# (byteArrayContents# b) off) b
instance VulkanMarshal VkCopyDescriptorSet where
type StructFields VkCopyDescriptorSet =
'["sType", "pNext", "srcSet", "srcBinding", "srcArrayElement",
"dstSet", "dstBinding", "dstArrayElement", "descriptorCount"]
type CUnionType VkCopyDescriptorSet = 'False
type ReturnedOnly VkCopyDescriptorSet = 'False
type StructExtends VkCopyDescriptorSet = '[]
instance HasField "sType" VkCopyDescriptorSet
where
type FieldType "sType" VkCopyDescriptorSet = VkStructureType
type FieldOptional "sType" VkCopyDescriptorSet = 'False
type FieldOffset "sType" VkCopyDescriptorSet =
(0)
type FieldIsArray "sType" VkCopyDescriptorSet = 'False
fieldOptional = False
fieldOffset = (0)
instance
CanReadField "sType" VkCopyDescriptorSet where
getField x
= unsafeDupablePerformIO
(peekByteOff (unsafePtr x) (0))
readField p
= peekByteOff p (0)
instance
CanWriteField "sType" VkCopyDescriptorSet where
writeField p
= pokeByteOff p (0)
instance HasField "pNext" VkCopyDescriptorSet
where
type FieldType "pNext" VkCopyDescriptorSet = Ptr Void
type FieldOptional "pNext" VkCopyDescriptorSet = 'False
type FieldOffset "pNext" VkCopyDescriptorSet =
(8)
type FieldIsArray "pNext" VkCopyDescriptorSet = 'False
fieldOptional = False
fieldOffset = (8)
instance
CanReadField "pNext" VkCopyDescriptorSet where
getField x
= unsafeDupablePerformIO
(peekByteOff (unsafePtr x) (8))
readField p
= peekByteOff p (8)
instance
CanWriteField "pNext" VkCopyDescriptorSet where
writeField p
= pokeByteOff p (8)
instance HasField "srcSet" VkCopyDescriptorSet
where
type FieldType "srcSet" VkCopyDescriptorSet = VkDescriptorSet
type FieldOptional "srcSet" VkCopyDescriptorSet = 'False
type FieldOffset "srcSet" VkCopyDescriptorSet =
(16)
type FieldIsArray "srcSet" VkCopyDescriptorSet = 'False
fieldOptional = False
fieldOffset = (16)
instance
CanReadField "srcSet" VkCopyDescriptorSet where
getField x
= unsafeDupablePerformIO
(peekByteOff (unsafePtr x) (16))
readField p
= peekByteOff p (16)
instance
CanWriteField "srcSet" VkCopyDescriptorSet where
writeField p
= pokeByteOff p (16)
instance
HasField "srcBinding" VkCopyDescriptorSet where
type FieldType "srcBinding" VkCopyDescriptorSet = Word32
type FieldOptional "srcBinding" VkCopyDescriptorSet = 'False
type FieldOffset "srcBinding" VkCopyDescriptorSet =
(24)
type FieldIsArray "srcBinding" VkCopyDescriptorSet = 'False
fieldOptional = False
fieldOffset = (24)
instance
CanReadField "srcBinding" VkCopyDescriptorSet where
getField x
= unsafeDupablePerformIO
(peekByteOff (unsafePtr x) (24))
readField p
= peekByteOff p (24)
instance
CanWriteField "srcBinding" VkCopyDescriptorSet where
writeField p
= pokeByteOff p (24)
instance
HasField "srcArrayElement" VkCopyDescriptorSet where
type FieldType "srcArrayElement" VkCopyDescriptorSet = Word32
type FieldOptional "srcArrayElement" VkCopyDescriptorSet = 'False
type FieldOffset "srcArrayElement" VkCopyDescriptorSet =
(28)
type FieldIsArray "srcArrayElement" VkCopyDescriptorSet = 'False
fieldOptional = False
fieldOffset
= (28)
instance
CanReadField "srcArrayElement" VkCopyDescriptorSet where
getField x
= unsafeDupablePerformIO
(peekByteOff (unsafePtr x) (28))
readField p
= peekByteOff p (28)
instance
CanWriteField "srcArrayElement" VkCopyDescriptorSet where
writeField p
= pokeByteOff p (28)
instance HasField "dstSet" VkCopyDescriptorSet
where
type FieldType "dstSet" VkCopyDescriptorSet = VkDescriptorSet
type FieldOptional "dstSet" VkCopyDescriptorSet = 'False
type FieldOffset "dstSet" VkCopyDescriptorSet =
(32)
type FieldIsArray "dstSet" VkCopyDescriptorSet = 'False
fieldOptional = False
fieldOffset = (32)
instance
CanReadField "dstSet" VkCopyDescriptorSet where
getField x
= unsafeDupablePerformIO
(peekByteOff (unsafePtr x) (32))
readField p
= peekByteOff p (32)
instance
CanWriteField "dstSet" VkCopyDescriptorSet where
writeField p
= pokeByteOff p (32)
instance
HasField "dstBinding" VkCopyDescriptorSet where
type FieldType "dstBinding" VkCopyDescriptorSet = Word32
type FieldOptional "dstBinding" VkCopyDescriptorSet = 'False
type FieldOffset "dstBinding" VkCopyDescriptorSet =
(40)
type FieldIsArray "dstBinding" VkCopyDescriptorSet = 'False
fieldOptional = False
fieldOffset = (40)
instance
CanReadField "dstBinding" VkCopyDescriptorSet where
getField x
= unsafeDupablePerformIO
(peekByteOff (unsafePtr x) (40))
readField p
= peekByteOff p (40)
instance
CanWriteField "dstBinding" VkCopyDescriptorSet where
writeField p
= pokeByteOff p (40)
instance
HasField "dstArrayElement" VkCopyDescriptorSet where
type FieldType "dstArrayElement" VkCopyDescriptorSet = Word32
type FieldOptional "dstArrayElement" VkCopyDescriptorSet = 'False
type FieldOffset "dstArrayElement" VkCopyDescriptorSet =
(44)
type FieldIsArray "dstArrayElement" VkCopyDescriptorSet = 'False
fieldOptional = False
fieldOffset
= (44)
instance
CanReadField "dstArrayElement" VkCopyDescriptorSet where
getField x
= unsafeDupablePerformIO
(peekByteOff (unsafePtr x) (44))
readField p
= peekByteOff p (44)
instance
CanWriteField "dstArrayElement" VkCopyDescriptorSet where
writeField p
= pokeByteOff p (44)
instance
HasField "descriptorCount" VkCopyDescriptorSet where
type FieldType "descriptorCount" VkCopyDescriptorSet = Word32
type FieldOptional "descriptorCount" VkCopyDescriptorSet = 'False
type FieldOffset "descriptorCount" VkCopyDescriptorSet =
(48)
type FieldIsArray "descriptorCount" VkCopyDescriptorSet = 'False
fieldOptional = False
fieldOffset
= (48)
instance
CanReadField "descriptorCount" VkCopyDescriptorSet where
getField x
= unsafeDupablePerformIO
(peekByteOff (unsafePtr x) (48))
readField p
= peekByteOff p (48)
instance
CanWriteField "descriptorCount" VkCopyDescriptorSet where
writeField p
= pokeByteOff p (48)
instance Show VkCopyDescriptorSet where
showsPrec d x
= showString "VkCopyDescriptorSet {" .
showString "sType = " .
showsPrec d (getField @"sType" x) .
showString ", " .
showString "pNext = " .
showsPrec d (getField @"pNext" x) .
showString ", " .
showString "srcSet = " .
showsPrec d (getField @"srcSet" x) .
showString ", " .
showString "srcBinding = " .
showsPrec d (getField @"srcBinding" x) .
showString ", " .
showString "srcArrayElement = " .
showsPrec d (getField @"srcArrayElement" 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)
. showChar '}'