{-# LINE 1 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
{-# LINE 2 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
{-# LANGUAGE DataKinds #-}
{-# LANGUAGE FlexibleInstances #-}
{-# LANGUAGE MagicHash #-}
{-# LANGUAGE MultiParamTypeClasses #-}
{-# LANGUAGE Strict #-}
{-# LANGUAGE TypeApplications #-}
{-# LANGUAGE TypeFamilies #-}
module Graphics.Vulkan.Types.Struct.Subpass
(VkSubpassDependency(..), VkSubpassDescription(..),
VkSubpassSampleLocationsEXT(..))
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.AccessFlags (VkAccessFlags)
import Graphics.Vulkan.Types.Enum.DependencyFlags (VkDependencyFlags)
import Graphics.Vulkan.Types.Enum.Pipeline (VkPipelineBindPoint,
VkPipelineStageFlags)
import Graphics.Vulkan.Types.Enum.Subpass (VkSubpassDescriptionFlags)
import Graphics.Vulkan.Types.Struct.Attachment (VkAttachmentReference)
import Graphics.Vulkan.Types.Struct.SampleLocation (VkSampleLocationsInfoEXT)
import System.IO.Unsafe (unsafeDupablePerformIO)
data VkSubpassDependency = VkSubpassDependency# Addr# ByteArray#
instance Eq VkSubpassDependency where
(VkSubpassDependency# a _) == x@(VkSubpassDependency# b _)
= EQ == cmpBytes# (sizeOf x) a b
{-# INLINE (==) #-}
instance Ord VkSubpassDependency where
(VkSubpassDependency# a _) `compare` x@(VkSubpassDependency# b _)
= cmpBytes# (sizeOf x) a b
{-# INLINE compare #-}
instance Storable VkSubpassDependency where
sizeOf ~_ = (28)
{-# LINE 56 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
{-# INLINE sizeOf #-}
alignment ~_ = (4)
{-# LINE 59 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
{-# INLINE alignment #-}
peek = peekVkData#
{-# INLINE peek #-}
poke = pokeVkData#
{-# INLINE poke #-}
instance VulkanMarshalPrim VkSubpassDependency where
unsafeAddr (VkSubpassDependency# a _) = a
{-# INLINE unsafeAddr #-}
unsafeByteArray (VkSubpassDependency# _ b) = b
{-# INLINE unsafeByteArray #-}
unsafeFromByteArrayOffset off b
= VkSubpassDependency# (plusAddr# (byteArrayContents# b) off) b
{-# INLINE unsafeFromByteArrayOffset #-}
instance VulkanMarshal VkSubpassDependency where
type StructFields VkSubpassDependency =
'["srcSubpass", "dstSubpass", "srcStageMask", "dstStageMask", -- ' closing tick for hsc2hs
"srcAccessMask", "dstAccessMask", "dependencyFlags"]
type CUnionType VkSubpassDependency = 'False -- ' closing tick for hsc2hs
type ReturnedOnly VkSubpassDependency = 'False -- ' closing tick for hsc2hs
type StructExtends VkSubpassDependency = '[] -- ' closing tick for hsc2hs
instance {-# OVERLAPPING #-}
HasField "srcSubpass" VkSubpassDependency where
type FieldType "srcSubpass" VkSubpassDependency = Word32
type FieldOptional "srcSubpass" VkSubpassDependency = 'False -- ' closing tick for hsc2hs
type FieldOffset "srcSubpass" VkSubpassDependency =
(0)
{-# LINE 94 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
type FieldIsArray "srcSubpass" VkSubpassDependency = 'False -- ' closing tick for hsc2hs
{-# INLINE fieldOptional #-}
fieldOptional = False
{-# INLINE fieldOffset #-}
fieldOffset = (0)
{-# LINE 101 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
CanReadField "srcSubpass" VkSubpassDependency where
{-# NOINLINE getField #-}
getField x
= unsafeDupablePerformIO
(peekByteOff (unsafePtr x) (0))
{-# LINE 108 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
{-# INLINE readField #-}
readField p
= peekByteOff p (0)
{-# LINE 112 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
CanWriteField "srcSubpass" VkSubpassDependency where
{-# INLINE writeField #-}
writeField p
= pokeByteOff p (0)
{-# LINE 118 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
HasField "dstSubpass" VkSubpassDependency where
type FieldType "dstSubpass" VkSubpassDependency = Word32
type FieldOptional "dstSubpass" VkSubpassDependency = 'False -- ' closing tick for hsc2hs
type FieldOffset "dstSubpass" VkSubpassDependency =
(4)
{-# LINE 125 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
type FieldIsArray "dstSubpass" VkSubpassDependency = 'False -- ' closing tick for hsc2hs
{-# INLINE fieldOptional #-}
fieldOptional = False
{-# INLINE fieldOffset #-}
fieldOffset = (4)
{-# LINE 132 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
CanReadField "dstSubpass" VkSubpassDependency where
{-# NOINLINE getField #-}
getField x
= unsafeDupablePerformIO
(peekByteOff (unsafePtr x) (4))
{-# LINE 139 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
{-# INLINE readField #-}
readField p
= peekByteOff p (4)
{-# LINE 143 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
CanWriteField "dstSubpass" VkSubpassDependency where
{-# INLINE writeField #-}
writeField p
= pokeByteOff p (4)
{-# LINE 149 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
HasField "srcStageMask" VkSubpassDependency where
type FieldType "srcStageMask" VkSubpassDependency =
VkPipelineStageFlags
type FieldOptional "srcStageMask" VkSubpassDependency = 'False -- ' closing tick for hsc2hs
type FieldOffset "srcStageMask" VkSubpassDependency =
(8)
{-# LINE 157 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
type FieldIsArray "srcStageMask" VkSubpassDependency = 'False -- ' closing tick for hsc2hs
{-# INLINE fieldOptional #-}
fieldOptional = False
{-# INLINE fieldOffset #-}
fieldOffset
= (8)
{-# LINE 165 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
CanReadField "srcStageMask" VkSubpassDependency where
{-# NOINLINE getField #-}
getField x
= unsafeDupablePerformIO
(peekByteOff (unsafePtr x) (8))
{-# LINE 172 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
{-# INLINE readField #-}
readField p
= peekByteOff p (8)
{-# LINE 176 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
CanWriteField "srcStageMask" VkSubpassDependency where
{-# INLINE writeField #-}
writeField p
= pokeByteOff p (8)
{-# LINE 182 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
HasField "dstStageMask" VkSubpassDependency where
type FieldType "dstStageMask" VkSubpassDependency =
VkPipelineStageFlags
type FieldOptional "dstStageMask" VkSubpassDependency = 'False -- ' closing tick for hsc2hs
type FieldOffset "dstStageMask" VkSubpassDependency =
(12)
{-# LINE 190 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
type FieldIsArray "dstStageMask" VkSubpassDependency = 'False -- ' closing tick for hsc2hs
{-# INLINE fieldOptional #-}
fieldOptional = False
{-# INLINE fieldOffset #-}
fieldOffset
= (12)
{-# LINE 198 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
CanReadField "dstStageMask" VkSubpassDependency where
{-# NOINLINE getField #-}
getField x
= unsafeDupablePerformIO
(peekByteOff (unsafePtr x) (12))
{-# LINE 205 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
{-# INLINE readField #-}
readField p
= peekByteOff p (12)
{-# LINE 209 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
CanWriteField "dstStageMask" VkSubpassDependency where
{-# INLINE writeField #-}
writeField p
= pokeByteOff p (12)
{-# LINE 215 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
HasField "srcAccessMask" VkSubpassDependency where
type FieldType "srcAccessMask" VkSubpassDependency = VkAccessFlags
type FieldOptional "srcAccessMask" VkSubpassDependency = 'True -- ' closing tick for hsc2hs
type FieldOffset "srcAccessMask" VkSubpassDependency =
(16)
{-# LINE 222 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
type FieldIsArray "srcAccessMask" VkSubpassDependency = 'False -- ' closing tick for hsc2hs
{-# INLINE fieldOptional #-}
fieldOptional = True
{-# INLINE fieldOffset #-}
fieldOffset
= (16)
{-# LINE 230 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
CanReadField "srcAccessMask" VkSubpassDependency where
{-# NOINLINE getField #-}
getField x
= unsafeDupablePerformIO
(peekByteOff (unsafePtr x) (16))
{-# LINE 237 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
{-# INLINE readField #-}
readField p
= peekByteOff p (16)
{-# LINE 241 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
CanWriteField "srcAccessMask" VkSubpassDependency where
{-# INLINE writeField #-}
writeField p
= pokeByteOff p (16)
{-# LINE 247 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
HasField "dstAccessMask" VkSubpassDependency where
type FieldType "dstAccessMask" VkSubpassDependency = VkAccessFlags
type FieldOptional "dstAccessMask" VkSubpassDependency = 'True -- ' closing tick for hsc2hs
type FieldOffset "dstAccessMask" VkSubpassDependency =
(20)
{-# LINE 254 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
type FieldIsArray "dstAccessMask" VkSubpassDependency = 'False -- ' closing tick for hsc2hs
{-# INLINE fieldOptional #-}
fieldOptional = True
{-# INLINE fieldOffset #-}
fieldOffset
= (20)
{-# LINE 262 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
CanReadField "dstAccessMask" VkSubpassDependency where
{-# NOINLINE getField #-}
getField x
= unsafeDupablePerformIO
(peekByteOff (unsafePtr x) (20))
{-# LINE 269 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
{-# INLINE readField #-}
readField p
= peekByteOff p (20)
{-# LINE 273 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
CanWriteField "dstAccessMask" VkSubpassDependency where
{-# INLINE writeField #-}
writeField p
= pokeByteOff p (20)
{-# LINE 279 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
HasField "dependencyFlags" VkSubpassDependency where
type FieldType "dependencyFlags" VkSubpassDependency =
VkDependencyFlags
type FieldOptional "dependencyFlags" VkSubpassDependency = 'True -- ' closing tick for hsc2hs
type FieldOffset "dependencyFlags" VkSubpassDependency =
(24)
{-# LINE 287 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
type FieldIsArray "dependencyFlags" VkSubpassDependency = 'False -- ' closing tick for hsc2hs
{-# INLINE fieldOptional #-}
fieldOptional = True
{-# INLINE fieldOffset #-}
fieldOffset
= (24)
{-# LINE 295 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
CanReadField "dependencyFlags" VkSubpassDependency where
{-# NOINLINE getField #-}
getField x
= unsafeDupablePerformIO
(peekByteOff (unsafePtr x) (24))
{-# LINE 302 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
{-# INLINE readField #-}
readField p
= peekByteOff p (24)
{-# LINE 306 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
CanWriteField "dependencyFlags" VkSubpassDependency where
{-# INLINE writeField #-}
writeField p
= pokeByteOff p (24)
{-# LINE 312 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance Show VkSubpassDependency where
showsPrec d x
= showString "VkSubpassDependency {" .
showString "srcSubpass = " .
showsPrec d (getField @"srcSubpass" x) .
showString ", " .
showString "dstSubpass = " .
showsPrec d (getField @"dstSubpass" x) .
showString ", " .
showString "srcStageMask = " .
showsPrec d (getField @"srcStageMask" x) .
showString ", " .
showString "dstStageMask = " .
showsPrec d (getField @"dstStageMask" x) .
showString ", " .
showString "srcAccessMask = " .
showsPrec d (getField @"srcAccessMask" x) .
showString ", " .
showString "dstAccessMask = " .
showsPrec d (getField @"dstAccessMask" x) .
showString ", " .
showString "dependencyFlags = " .
showsPrec d (getField @"dependencyFlags" x) .
showChar '}'
-- | > typedef struct VkSubpassDescription {
-- > VkSubpassDescriptionFlags flags;
-- > VkPipelineBindPoint pipelineBindPoint;
-- > uint32_t inputAttachmentCount;
-- > const VkAttachmentReference* pInputAttachments;
-- > uint32_t colorAttachmentCount;
-- > const VkAttachmentReference* pColorAttachments;
-- > const VkAttachmentReference* pResolveAttachments;
-- > const VkAttachmentReference* pDepthStencilAttachment;
-- > uint32_t preserveAttachmentCount;
-- > const uint32_t* pPreserveAttachments;
-- > } VkSubpassDescription;
--
-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/html/vkspec.html#VkSubpassDescription VkSubpassDescription registry at www.khronos.org>
data VkSubpassDescription = VkSubpassDescription# Addr# ByteArray#
instance Eq VkSubpassDescription where
(VkSubpassDescription# a _) == x@(VkSubpassDescription# b _)
= EQ == cmpBytes# (sizeOf x) a b
{-# INLINE (==) #-}
instance Ord VkSubpassDescription where
(VkSubpassDescription# a _) `compare` x@(VkSubpassDescription# b _)
= cmpBytes# (sizeOf x) a b
{-# INLINE compare #-}
instance Storable VkSubpassDescription where
sizeOf ~_ = (72)
{-# LINE 368 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
{-# INLINE sizeOf #-}
alignment ~_ = (8)
{-# LINE 371 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
{-# INLINE alignment #-}
peek = peekVkData#
{-# INLINE peek #-}
poke = pokeVkData#
{-# INLINE poke #-}
instance VulkanMarshalPrim VkSubpassDescription where
unsafeAddr (VkSubpassDescription# a _) = a
{-# INLINE unsafeAddr #-}
unsafeByteArray (VkSubpassDescription# _ b) = b
{-# INLINE unsafeByteArray #-}
unsafeFromByteArrayOffset off b
= VkSubpassDescription# (plusAddr# (byteArrayContents# b) off) b
{-# INLINE unsafeFromByteArrayOffset #-}
instance VulkanMarshal VkSubpassDescription where
type StructFields VkSubpassDescription =
'["flags", "pipelineBindPoint", "inputAttachmentCount", -- ' closing tick for hsc2hs
"pInputAttachments", "colorAttachmentCount", "pColorAttachments",
"pResolveAttachments", "pDepthStencilAttachment",
"preserveAttachmentCount", "pPreserveAttachments"]
type CUnionType VkSubpassDescription = 'False -- ' closing tick for hsc2hs
type ReturnedOnly VkSubpassDescription = 'False -- ' closing tick for hsc2hs
type StructExtends VkSubpassDescription = '[] -- ' closing tick for hsc2hs
instance {-# OVERLAPPING #-} HasField "flags" VkSubpassDescription
where
type FieldType "flags" VkSubpassDescription =
VkSubpassDescriptionFlags
type FieldOptional "flags" VkSubpassDescription = 'True -- ' closing tick for hsc2hs
type FieldOffset "flags" VkSubpassDescription =
(0)
{-# LINE 409 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
type FieldIsArray "flags" VkSubpassDescription = 'False -- ' closing tick for hsc2hs
{-# INLINE fieldOptional #-}
fieldOptional = True
{-# INLINE fieldOffset #-}
fieldOffset = (0)
{-# LINE 416 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
CanReadField "flags" VkSubpassDescription where
{-# NOINLINE getField #-}
getField x
= unsafeDupablePerformIO
(peekByteOff (unsafePtr x) (0))
{-# LINE 423 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
{-# INLINE readField #-}
readField p
= peekByteOff p (0)
{-# LINE 427 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
CanWriteField "flags" VkSubpassDescription where
{-# INLINE writeField #-}
writeField p
= pokeByteOff p (0)
{-# LINE 433 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
HasField "pipelineBindPoint" VkSubpassDescription where
type FieldType "pipelineBindPoint" VkSubpassDescription =
VkPipelineBindPoint
type FieldOptional "pipelineBindPoint" VkSubpassDescription =
'False -- ' closing tick for hsc2hs
type FieldOffset "pipelineBindPoint" VkSubpassDescription =
(4)
{-# LINE 442 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
type FieldIsArray "pipelineBindPoint" VkSubpassDescription = 'False -- ' closing tick for hsc2hs
{-# INLINE fieldOptional #-}
fieldOptional = False
{-# INLINE fieldOffset #-}
fieldOffset
= (4)
{-# LINE 450 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
CanReadField "pipelineBindPoint" VkSubpassDescription where
{-# NOINLINE getField #-}
getField x
= unsafeDupablePerformIO
(peekByteOff (unsafePtr x) (4))
{-# LINE 457 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
{-# INLINE readField #-}
readField p
= peekByteOff p (4)
{-# LINE 461 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
CanWriteField "pipelineBindPoint" VkSubpassDescription where
{-# INLINE writeField #-}
writeField p
= pokeByteOff p (4)
{-# LINE 467 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
HasField "inputAttachmentCount" VkSubpassDescription where
type FieldType "inputAttachmentCount" VkSubpassDescription = Word32
type FieldOptional "inputAttachmentCount" VkSubpassDescription =
'True -- ' closing tick for hsc2hs
type FieldOffset "inputAttachmentCount" VkSubpassDescription =
(8)
{-# LINE 475 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
type FieldIsArray "inputAttachmentCount" VkSubpassDescription =
'False -- ' closing tick for hsc2hs
{-# INLINE fieldOptional #-}
fieldOptional = True
{-# INLINE fieldOffset #-}
fieldOffset
= (8)
{-# LINE 484 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
CanReadField "inputAttachmentCount" VkSubpassDescription where
{-# NOINLINE getField #-}
getField x
= unsafeDupablePerformIO
(peekByteOff (unsafePtr x) (8))
{-# LINE 491 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
{-# INLINE readField #-}
readField p
= peekByteOff p (8)
{-# LINE 495 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
CanWriteField "inputAttachmentCount" VkSubpassDescription where
{-# INLINE writeField #-}
writeField p
= pokeByteOff p (8)
{-# LINE 501 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
HasField "pInputAttachments" VkSubpassDescription where
type FieldType "pInputAttachments" VkSubpassDescription =
Ptr VkAttachmentReference
type FieldOptional "pInputAttachments" VkSubpassDescription =
'False -- ' closing tick for hsc2hs
type FieldOffset "pInputAttachments" VkSubpassDescription =
(16)
{-# LINE 510 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
type FieldIsArray "pInputAttachments" VkSubpassDescription = 'False -- ' closing tick for hsc2hs
{-# INLINE fieldOptional #-}
fieldOptional = False
{-# INLINE fieldOffset #-}
fieldOffset
= (16)
{-# LINE 518 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
CanReadField "pInputAttachments" VkSubpassDescription where
{-# NOINLINE getField #-}
getField x
= unsafeDupablePerformIO
(peekByteOff (unsafePtr x) (16))
{-# LINE 525 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
{-# INLINE readField #-}
readField p
= peekByteOff p (16)
{-# LINE 529 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
CanWriteField "pInputAttachments" VkSubpassDescription where
{-# INLINE writeField #-}
writeField p
= pokeByteOff p (16)
{-# LINE 535 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
HasField "colorAttachmentCount" VkSubpassDescription where
type FieldType "colorAttachmentCount" VkSubpassDescription = Word32
type FieldOptional "colorAttachmentCount" VkSubpassDescription =
'True -- ' closing tick for hsc2hs
type FieldOffset "colorAttachmentCount" VkSubpassDescription =
(24)
{-# LINE 543 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
type FieldIsArray "colorAttachmentCount" VkSubpassDescription =
'False -- ' closing tick for hsc2hs
{-# INLINE fieldOptional #-}
fieldOptional = True
{-# INLINE fieldOffset #-}
fieldOffset
= (24)
{-# LINE 552 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
CanReadField "colorAttachmentCount" VkSubpassDescription where
{-# NOINLINE getField #-}
getField x
= unsafeDupablePerformIO
(peekByteOff (unsafePtr x) (24))
{-# LINE 559 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
{-# INLINE readField #-}
readField p
= peekByteOff p (24)
{-# LINE 563 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
CanWriteField "colorAttachmentCount" VkSubpassDescription where
{-# INLINE writeField #-}
writeField p
= pokeByteOff p (24)
{-# LINE 569 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
HasField "pColorAttachments" VkSubpassDescription where
type FieldType "pColorAttachments" VkSubpassDescription =
Ptr VkAttachmentReference
type FieldOptional "pColorAttachments" VkSubpassDescription =
'False -- ' closing tick for hsc2hs
type FieldOffset "pColorAttachments" VkSubpassDescription =
(32)
{-# LINE 578 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
type FieldIsArray "pColorAttachments" VkSubpassDescription = 'False -- ' closing tick for hsc2hs
{-# INLINE fieldOptional #-}
fieldOptional = False
{-# INLINE fieldOffset #-}
fieldOffset
= (32)
{-# LINE 586 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
CanReadField "pColorAttachments" VkSubpassDescription where
{-# NOINLINE getField #-}
getField x
= unsafeDupablePerformIO
(peekByteOff (unsafePtr x) (32))
{-# LINE 593 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
{-# INLINE readField #-}
readField p
= peekByteOff p (32)
{-# LINE 597 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
CanWriteField "pColorAttachments" VkSubpassDescription where
{-# INLINE writeField #-}
writeField p
= pokeByteOff p (32)
{-# LINE 603 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
HasField "pResolveAttachments" VkSubpassDescription where
type FieldType "pResolveAttachments" VkSubpassDescription =
Ptr VkAttachmentReference
type FieldOptional "pResolveAttachments" VkSubpassDescription =
'True -- ' closing tick for hsc2hs
type FieldOffset "pResolveAttachments" VkSubpassDescription =
(40)
{-# LINE 612 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
type FieldIsArray "pResolveAttachments" VkSubpassDescription =
'False -- ' closing tick for hsc2hs
{-# INLINE fieldOptional #-}
fieldOptional = True
{-# INLINE fieldOffset #-}
fieldOffset
= (40)
{-# LINE 621 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
CanReadField "pResolveAttachments" VkSubpassDescription where
{-# NOINLINE getField #-}
getField x
= unsafeDupablePerformIO
(peekByteOff (unsafePtr x) (40))
{-# LINE 628 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
{-# INLINE readField #-}
readField p
= peekByteOff p (40)
{-# LINE 632 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
CanWriteField "pResolveAttachments" VkSubpassDescription where
{-# INLINE writeField #-}
writeField p
= pokeByteOff p (40)
{-# LINE 638 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
HasField "pDepthStencilAttachment" VkSubpassDescription where
type FieldType "pDepthStencilAttachment" VkSubpassDescription =
Ptr VkAttachmentReference
type FieldOptional "pDepthStencilAttachment" VkSubpassDescription =
'True -- ' closing tick for hsc2hs
type FieldOffset "pDepthStencilAttachment" VkSubpassDescription =
(48)
{-# LINE 647 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
type FieldIsArray "pDepthStencilAttachment" VkSubpassDescription =
'False -- ' closing tick for hsc2hs
{-# INLINE fieldOptional #-}
fieldOptional = True
{-# INLINE fieldOffset #-}
fieldOffset
= (48)
{-# LINE 656 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
CanReadField "pDepthStencilAttachment" VkSubpassDescription where
{-# NOINLINE getField #-}
getField x
= unsafeDupablePerformIO
(peekByteOff (unsafePtr x) (48))
{-# LINE 663 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
{-# INLINE readField #-}
readField p
= peekByteOff p (48)
{-# LINE 667 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
CanWriteField "pDepthStencilAttachment" VkSubpassDescription where
{-# INLINE writeField #-}
writeField p
= pokeByteOff p (48)
{-# LINE 673 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
HasField "preserveAttachmentCount" VkSubpassDescription where
type FieldType "preserveAttachmentCount" VkSubpassDescription =
Word32
type FieldOptional "preserveAttachmentCount" VkSubpassDescription =
'True -- ' closing tick for hsc2hs
type FieldOffset "preserveAttachmentCount" VkSubpassDescription =
(56)
{-# LINE 682 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
type FieldIsArray "preserveAttachmentCount" VkSubpassDescription =
'False -- ' closing tick for hsc2hs
{-# INLINE fieldOptional #-}
fieldOptional = True
{-# INLINE fieldOffset #-}
fieldOffset
= (56)
{-# LINE 691 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
CanReadField "preserveAttachmentCount" VkSubpassDescription where
{-# NOINLINE getField #-}
getField x
= unsafeDupablePerformIO
(peekByteOff (unsafePtr x) (56))
{-# LINE 698 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
{-# INLINE readField #-}
readField p
= peekByteOff p (56)
{-# LINE 702 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
CanWriteField "preserveAttachmentCount" VkSubpassDescription where
{-# INLINE writeField #-}
writeField p
= pokeByteOff p (56)
{-# LINE 708 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
HasField "pPreserveAttachments" VkSubpassDescription where
type FieldType "pPreserveAttachments" VkSubpassDescription =
Ptr Word32
type FieldOptional "pPreserveAttachments" VkSubpassDescription =
'False -- ' closing tick for hsc2hs
type FieldOffset "pPreserveAttachments" VkSubpassDescription =
(64)
{-# LINE 717 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
type FieldIsArray "pPreserveAttachments" VkSubpassDescription =
'False -- ' closing tick for hsc2hs
{-# INLINE fieldOptional #-}
fieldOptional = False
{-# INLINE fieldOffset #-}
fieldOffset
= (64)
{-# LINE 726 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
CanReadField "pPreserveAttachments" VkSubpassDescription where
{-# NOINLINE getField #-}
getField x
= unsafeDupablePerformIO
(peekByteOff (unsafePtr x) (64))
{-# LINE 733 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
{-# INLINE readField #-}
readField p
= peekByteOff p (64)
{-# LINE 737 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
CanWriteField "pPreserveAttachments" VkSubpassDescription where
{-# INLINE writeField #-}
writeField p
= pokeByteOff p (64)
{-# LINE 743 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance Show VkSubpassDescription where
showsPrec d x
= showString "VkSubpassDescription {" .
showString "flags = " .
showsPrec d (getField @"flags" x) .
showString ", " .
showString "pipelineBindPoint = " .
showsPrec d (getField @"pipelineBindPoint" x) .
showString ", " .
showString "inputAttachmentCount = " .
showsPrec d (getField @"inputAttachmentCount" x) .
showString ", " .
showString "pInputAttachments = " .
showsPrec d (getField @"pInputAttachments" x) .
showString ", " .
showString "colorAttachmentCount = " .
showsPrec d (getField @"colorAttachmentCount" x) .
showString ", " .
showString "pColorAttachments = " .
showsPrec d (getField @"pColorAttachments" x) .
showString ", " .
showString "pResolveAttachments = " .
showsPrec d (getField @"pResolveAttachments" x)
.
showString ", " .
showString "pDepthStencilAttachment = " .
showsPrec d
(getField @"pDepthStencilAttachment" x)
.
showString ", " .
showString
"preserveAttachmentCount = "
.
showsPrec d
(getField
@"preserveAttachmentCount"
x)
.
showString ", " .
showString
"pPreserveAttachments = "
.
showsPrec d
(getField
@"pPreserveAttachments"
x)
. showChar '}'
-- | > typedef struct VkSubpassSampleLocationsEXT {
-- > uint32_t subpassIndex;
-- > VkSampleLocationsInfoEXT sampleLocationsInfo;
-- > } VkSubpassSampleLocationsEXT;
--
-- <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/html/vkspec.html#VkSubpassSampleLocationsEXT VkSubpassSampleLocationsEXT registry at www.khronos.org>
data VkSubpassSampleLocationsEXT = VkSubpassSampleLocationsEXT# Addr#
ByteArray#
instance Eq VkSubpassSampleLocationsEXT where
(VkSubpassSampleLocationsEXT# a _) ==
x@(VkSubpassSampleLocationsEXT# b _)
= EQ == cmpBytes# (sizeOf x) a b
{-# INLINE (==) #-}
instance Ord VkSubpassSampleLocationsEXT where
(VkSubpassSampleLocationsEXT# a _) `compare`
x@(VkSubpassSampleLocationsEXT# b _) = cmpBytes# (sizeOf x) a b
{-# INLINE compare #-}
instance Storable VkSubpassSampleLocationsEXT where
sizeOf ~_ = (48)
{-# LINE 816 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
{-# INLINE sizeOf #-}
alignment ~_ = (8)
{-# LINE 819 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
{-# INLINE alignment #-}
peek = peekVkData#
{-# INLINE peek #-}
poke = pokeVkData#
{-# INLINE poke #-}
instance VulkanMarshalPrim VkSubpassSampleLocationsEXT where
unsafeAddr (VkSubpassSampleLocationsEXT# a _) = a
{-# INLINE unsafeAddr #-}
unsafeByteArray (VkSubpassSampleLocationsEXT# _ b) = b
{-# INLINE unsafeByteArray #-}
unsafeFromByteArrayOffset off b
= VkSubpassSampleLocationsEXT#
(plusAddr# (byteArrayContents# b) off)
b
{-# INLINE unsafeFromByteArrayOffset #-}
instance VulkanMarshal VkSubpassSampleLocationsEXT where
type StructFields VkSubpassSampleLocationsEXT =
'["subpassIndex", "sampleLocationsInfo"] -- ' closing tick for hsc2hs
type CUnionType VkSubpassSampleLocationsEXT = 'False -- ' closing tick for hsc2hs
type ReturnedOnly VkSubpassSampleLocationsEXT = 'False -- ' closing tick for hsc2hs
type StructExtends VkSubpassSampleLocationsEXT = '[] -- ' closing tick for hsc2hs
instance {-# OVERLAPPING #-}
HasField "subpassIndex" VkSubpassSampleLocationsEXT where
type FieldType "subpassIndex" VkSubpassSampleLocationsEXT = Word32
type FieldOptional "subpassIndex" VkSubpassSampleLocationsEXT =
'False -- ' closing tick for hsc2hs
type FieldOffset "subpassIndex" VkSubpassSampleLocationsEXT =
(0)
{-# LINE 856 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
type FieldIsArray "subpassIndex" VkSubpassSampleLocationsEXT =
'False -- ' closing tick for hsc2hs
{-# INLINE fieldOptional #-}
fieldOptional = False
{-# INLINE fieldOffset #-}
fieldOffset
= (0)
{-# LINE 865 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
CanReadField "subpassIndex" VkSubpassSampleLocationsEXT where
{-# NOINLINE getField #-}
getField x
= unsafeDupablePerformIO
(peekByteOff (unsafePtr x) (0))
{-# LINE 872 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
{-# INLINE readField #-}
readField p
= peekByteOff p (0)
{-# LINE 876 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
CanWriteField "subpassIndex" VkSubpassSampleLocationsEXT where
{-# INLINE writeField #-}
writeField p
= pokeByteOff p (0)
{-# LINE 882 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
HasField "sampleLocationsInfo" VkSubpassSampleLocationsEXT where
type FieldType "sampleLocationsInfo" VkSubpassSampleLocationsEXT =
VkSampleLocationsInfoEXT
type FieldOptional "sampleLocationsInfo"
VkSubpassSampleLocationsEXT
= 'False -- ' closing tick for hsc2hs
type FieldOffset "sampleLocationsInfo" VkSubpassSampleLocationsEXT
=
(8)
{-# LINE 893 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
type FieldIsArray "sampleLocationsInfo" VkSubpassSampleLocationsEXT
= 'False -- ' closing tick for hsc2hs
{-# INLINE fieldOptional #-}
fieldOptional = False
{-# INLINE fieldOffset #-}
fieldOffset
= (8)
{-# LINE 902 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
CanReadField "sampleLocationsInfo" VkSubpassSampleLocationsEXT
where
{-# NOINLINE getField #-}
getField x
= unsafeDupablePerformIO
(peekByteOff (unsafePtr x) (8))
{-# LINE 910 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
{-# INLINE readField #-}
readField p
= peekByteOff p (8)
{-# LINE 914 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance {-# OVERLAPPING #-}
CanWriteField "sampleLocationsInfo" VkSubpassSampleLocationsEXT
where
{-# INLINE writeField #-}
writeField p
= pokeByteOff p (8)
{-# LINE 921 "src-gen/Graphics/Vulkan/Types/Struct/Subpass.hsc" #-}
instance Show VkSubpassSampleLocationsEXT where
showsPrec d x
= showString "VkSubpassSampleLocationsEXT {" .
showString "subpassIndex = " .
showsPrec d (getField @"subpassIndex" x) .
showString ", " .
showString "sampleLocationsInfo = " .
showsPrec d (getField @"sampleLocationsInfo" x) . showChar '}'