{-# LINE 1 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}


{-# LANGUAGE DataKinds             #-}
{-# LANGUAGE FlexibleInstances     #-}
{-# LANGUAGE MagicHash             #-}
{-# LANGUAGE MultiParamTypeClasses #-}
{-# LANGUAGE Strict                #-}
{-# LANGUAGE TypeApplications      #-}
{-# LANGUAGE TypeFamilies          #-}
module Graphics.Vulkan.Types.Struct.RenderPass
       (VkRenderPassBeginInfo(..), VkRenderPassCreateInfo(..),
        VkRenderPassInputAttachmentAspectCreateInfo(..),
        VkRenderPassInputAttachmentAspectCreateInfoKHR,
        VkRenderPassMultiviewCreateInfo(..),
        VkRenderPassMultiviewCreateInfoKHR,
        VkRenderPassSampleLocationsBeginInfoEXT(..))
       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.Bitmasks                              (VkRenderPassCreateFlags)
import           Graphics.Vulkan.Types.Enum.StructureType                    (VkStructureType)
import           Graphics.Vulkan.Types.Handles                               (VkFramebuffer,
                                                                              VkRenderPass)
import           Graphics.Vulkan.Types.Struct.Attachment                     (VkAttachmentDescription,
                                                                              VkAttachmentSampleLocationsEXT)
import           Graphics.Vulkan.Types.Struct.Clear                          (VkClearValue)
import           Graphics.Vulkan.Types.Struct.InputAttachmentAspectReference (VkInputAttachmentAspectReference)
import           Graphics.Vulkan.Types.Struct.Rect                           (VkRect2D)
import           Graphics.Vulkan.Types.Struct.Subpass                        (VkSubpassDependency,
                                                                              VkSubpassDescription,
                                                                              VkSubpassSampleLocationsEXT)
import           System.IO.Unsafe                                            (unsafeDupablePerformIO)

-- | > typedef struct VkRenderPassBeginInfo {
--   >     VkStructureType sType;
--   >     const void*            pNext;
--   >     VkRenderPass           renderPass;
--   >     VkFramebuffer          framebuffer;
--   >     VkRect2D               renderArea;
--   >     uint32_t               clearValueCount;
--   >     const VkClearValue*    pClearValues;
--   > } VkRenderPassBeginInfo;
--
--   <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/html/vkspec.html#VkRenderPassBeginInfo VkRenderPassBeginInfo registry at www.khronos.org>
data VkRenderPassBeginInfo = VkRenderPassBeginInfo# Addr#
                                                    ByteArray#

instance Eq VkRenderPassBeginInfo where
        (VkRenderPassBeginInfo# Addr#
a ByteArray#
_) == :: VkRenderPassBeginInfo -> VkRenderPassBeginInfo -> Bool
== x :: VkRenderPassBeginInfo
x@(VkRenderPassBeginInfo# Addr#
b ByteArray#
_)
          = Ordering
EQ Ordering -> Ordering -> Bool
forall a. Eq a => a -> a -> Bool
== Int -> Addr# -> Addr# -> Ordering
cmpBytes# (VkRenderPassBeginInfo -> Int
forall a. Storable a => a -> Int
sizeOf VkRenderPassBeginInfo
x) Addr#
a Addr#
b

        {-# INLINE (==) #-}

instance Ord VkRenderPassBeginInfo where
        (VkRenderPassBeginInfo# Addr#
a ByteArray#
_) compare :: VkRenderPassBeginInfo -> VkRenderPassBeginInfo -> Ordering
`compare`
          x :: VkRenderPassBeginInfo
x@(VkRenderPassBeginInfo# Addr#
b ByteArray#
_) = Int -> Addr# -> Addr# -> Ordering
cmpBytes# (VkRenderPassBeginInfo -> Int
forall a. Storable a => a -> Int
sizeOf VkRenderPassBeginInfo
x) Addr#
a Addr#
b

        {-# INLINE compare #-}

instance Storable VkRenderPassBeginInfo where
        sizeOf :: VkRenderPassBeginInfo -> Int
sizeOf ~VkRenderPassBeginInfo
_ = (Int
64)
{-# LINE 67 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE sizeOf #-}
        alignment :: VkRenderPassBeginInfo -> Int
alignment ~VkRenderPassBeginInfo
_ = Int
8
{-# LINE 70 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE alignment #-}
        peek :: Ptr VkRenderPassBeginInfo -> IO VkRenderPassBeginInfo
peek = Ptr VkRenderPassBeginInfo -> IO VkRenderPassBeginInfo
forall a. (Storable a, VulkanMarshalPrim a) => Ptr a -> IO a
peekVkData#

        {-# INLINE peek #-}
        poke :: Ptr VkRenderPassBeginInfo -> VkRenderPassBeginInfo -> IO ()
poke = Ptr VkRenderPassBeginInfo -> VkRenderPassBeginInfo -> IO ()
forall a. (Storable a, VulkanMarshalPrim a) => Ptr a -> a -> IO ()
pokeVkData#

        {-# INLINE poke #-}

instance VulkanMarshalPrim VkRenderPassBeginInfo where
        unsafeAddr :: VkRenderPassBeginInfo -> Addr#
unsafeAddr (VkRenderPassBeginInfo# Addr#
a ByteArray#
_) = Addr#
a

        {-# INLINE unsafeAddr #-}
        unsafeByteArray :: VkRenderPassBeginInfo -> ByteArray#
unsafeByteArray (VkRenderPassBeginInfo# Addr#
_ ByteArray#
b) = ByteArray#
b

        {-# INLINE unsafeByteArray #-}
        unsafeFromByteArrayOffset :: Int# -> ByteArray# -> VkRenderPassBeginInfo
unsafeFromByteArrayOffset Int#
off ByteArray#
b
          = Addr# -> ByteArray# -> VkRenderPassBeginInfo
VkRenderPassBeginInfo# (Addr# -> Int# -> Addr#
plusAddr# (ByteArray# -> Addr#
byteArrayContents# ByteArray#
b) Int#
off) ByteArray#
b

        {-# INLINE unsafeFromByteArrayOffset #-}

instance VulkanMarshal VkRenderPassBeginInfo where
        type StructFields VkRenderPassBeginInfo =
             '["sType", "pNext", "renderPass", "framebuffer", "renderArea", -- ' closing tick for hsc2hs
               "clearValueCount", "pClearValues"]
        type CUnionType VkRenderPassBeginInfo = 'False -- ' closing tick for hsc2hs
        type ReturnedOnly VkRenderPassBeginInfo = 'False -- ' closing tick for hsc2hs
        type StructExtends VkRenderPassBeginInfo = '[] -- ' closing tick for hsc2hs

instance {-# OVERLAPPING #-} HasField "sType" VkRenderPassBeginInfo
         where
        type FieldType "sType" VkRenderPassBeginInfo = VkStructureType
        type FieldOptional "sType" VkRenderPassBeginInfo = 'False -- ' closing tick for hsc2hs
        type FieldOffset "sType" VkRenderPassBeginInfo =
             (0)
{-# LINE 105 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
        type FieldIsArray "sType" VkRenderPassBeginInfo = 'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
False

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset = (Int
0)
{-# LINE 112 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "sType" VkRenderPassBeginInfo where
        {-# NOINLINE getField #-}
        getField :: VkRenderPassBeginInfo -> FieldType "sType" VkRenderPassBeginInfo
getField VkRenderPassBeginInfo
x
          = IO VkStructureType -> VkStructureType
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkRenderPassBeginInfo -> Int -> IO VkStructureType
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkRenderPassBeginInfo -> Ptr VkRenderPassBeginInfo
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkRenderPassBeginInfo
x) (Int
0))
{-# LINE 119 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkRenderPassBeginInfo
-> IO (FieldType "sType" VkRenderPassBeginInfo)
readField Ptr VkRenderPassBeginInfo
p
          = Ptr VkRenderPassBeginInfo -> Int -> IO VkStructureType
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkRenderPassBeginInfo
p (Int
0)
{-# LINE 123 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "sType" VkRenderPassBeginInfo where
        {-# INLINE writeField #-}
        writeField :: Ptr VkRenderPassBeginInfo
-> FieldType "sType" VkRenderPassBeginInfo -> IO ()
writeField Ptr VkRenderPassBeginInfo
p
          = Ptr VkRenderPassBeginInfo -> Int -> VkStructureType -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkRenderPassBeginInfo
p (Int
0)
{-# LINE 129 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-} HasField "pNext" VkRenderPassBeginInfo
         where
        type FieldType "pNext" VkRenderPassBeginInfo = Ptr Void
        type FieldOptional "pNext" VkRenderPassBeginInfo = 'False -- ' closing tick for hsc2hs
        type FieldOffset "pNext" VkRenderPassBeginInfo =
             (8)
{-# LINE 136 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
        type FieldIsArray "pNext" VkRenderPassBeginInfo = 'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
False

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset = (Int
8)
{-# LINE 143 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "pNext" VkRenderPassBeginInfo where
        {-# NOINLINE getField #-}
        getField :: VkRenderPassBeginInfo -> FieldType "pNext" VkRenderPassBeginInfo
getField VkRenderPassBeginInfo
x
          = IO (Ptr Void) -> Ptr Void
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkRenderPassBeginInfo -> Int -> IO (Ptr Void)
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkRenderPassBeginInfo -> Ptr VkRenderPassBeginInfo
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkRenderPassBeginInfo
x) (Int
8))
{-# LINE 150 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkRenderPassBeginInfo
-> IO (FieldType "pNext" VkRenderPassBeginInfo)
readField Ptr VkRenderPassBeginInfo
p
          = Ptr VkRenderPassBeginInfo -> Int -> IO (Ptr Void)
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkRenderPassBeginInfo
p (Int
8)
{-# LINE 154 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "pNext" VkRenderPassBeginInfo where
        {-# INLINE writeField #-}
        writeField :: Ptr VkRenderPassBeginInfo
-> FieldType "pNext" VkRenderPassBeginInfo -> IO ()
writeField Ptr VkRenderPassBeginInfo
p
          = Ptr VkRenderPassBeginInfo -> Int -> Ptr Void -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkRenderPassBeginInfo
p (Int
8)
{-# LINE 160 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         HasField "renderPass" VkRenderPassBeginInfo where
        type FieldType "renderPass" VkRenderPassBeginInfo = VkRenderPass
        type FieldOptional "renderPass" VkRenderPassBeginInfo = 'False -- ' closing tick for hsc2hs
        type FieldOffset "renderPass" VkRenderPassBeginInfo =
             (16)
{-# LINE 167 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
        type FieldIsArray "renderPass" VkRenderPassBeginInfo = 'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
False

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
16)
{-# LINE 175 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "renderPass" VkRenderPassBeginInfo where
        {-# NOINLINE getField #-}
        getField :: VkRenderPassBeginInfo
-> FieldType "renderPass" VkRenderPassBeginInfo
getField VkRenderPassBeginInfo
x
          = IO VkRenderPass -> VkRenderPass
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkRenderPassBeginInfo -> Int -> IO VkRenderPass
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkRenderPassBeginInfo -> Ptr VkRenderPassBeginInfo
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkRenderPassBeginInfo
x) (Int
16))
{-# LINE 182 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkRenderPassBeginInfo
-> IO (FieldType "renderPass" VkRenderPassBeginInfo)
readField Ptr VkRenderPassBeginInfo
p
          = Ptr VkRenderPassBeginInfo -> Int -> IO VkRenderPass
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkRenderPassBeginInfo
p (Int
16)
{-# LINE 186 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "renderPass" VkRenderPassBeginInfo where
        {-# INLINE writeField #-}
        writeField :: Ptr VkRenderPassBeginInfo
-> FieldType "renderPass" VkRenderPassBeginInfo -> IO ()
writeField Ptr VkRenderPassBeginInfo
p
          = Ptr VkRenderPassBeginInfo -> Int -> VkRenderPass -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkRenderPassBeginInfo
p (Int
16)
{-# LINE 192 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         HasField "framebuffer" VkRenderPassBeginInfo where
        type FieldType "framebuffer" VkRenderPassBeginInfo = VkFramebuffer
        type FieldOptional "framebuffer" VkRenderPassBeginInfo = 'False -- ' closing tick for hsc2hs
        type FieldOffset "framebuffer" VkRenderPassBeginInfo =
             (24)
{-# LINE 199 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
        type FieldIsArray "framebuffer" VkRenderPassBeginInfo = 'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
False

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
24)
{-# LINE 207 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "framebuffer" VkRenderPassBeginInfo where
        {-# NOINLINE getField #-}
        getField :: VkRenderPassBeginInfo
-> FieldType "framebuffer" VkRenderPassBeginInfo
getField VkRenderPassBeginInfo
x
          = IO VkFramebuffer -> VkFramebuffer
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkRenderPassBeginInfo -> Int -> IO VkFramebuffer
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkRenderPassBeginInfo -> Ptr VkRenderPassBeginInfo
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkRenderPassBeginInfo
x) (Int
24))
{-# LINE 214 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkRenderPassBeginInfo
-> IO (FieldType "framebuffer" VkRenderPassBeginInfo)
readField Ptr VkRenderPassBeginInfo
p
          = Ptr VkRenderPassBeginInfo -> Int -> IO VkFramebuffer
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkRenderPassBeginInfo
p (Int
24)
{-# LINE 218 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "framebuffer" VkRenderPassBeginInfo where
        {-# INLINE writeField #-}
        writeField :: Ptr VkRenderPassBeginInfo
-> FieldType "framebuffer" VkRenderPassBeginInfo -> IO ()
writeField Ptr VkRenderPassBeginInfo
p
          = Ptr VkRenderPassBeginInfo -> Int -> VkFramebuffer -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkRenderPassBeginInfo
p (Int
24)
{-# LINE 224 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         HasField "renderArea" VkRenderPassBeginInfo where
        type FieldType "renderArea" VkRenderPassBeginInfo = VkRect2D
        type FieldOptional "renderArea" VkRenderPassBeginInfo = 'False -- ' closing tick for hsc2hs
        type FieldOffset "renderArea" VkRenderPassBeginInfo =
             (32)
{-# LINE 231 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
        type FieldIsArray "renderArea" VkRenderPassBeginInfo = 'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
False

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
32)
{-# LINE 239 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "renderArea" VkRenderPassBeginInfo where
        {-# NOINLINE getField #-}
        getField :: VkRenderPassBeginInfo
-> FieldType "renderArea" VkRenderPassBeginInfo
getField VkRenderPassBeginInfo
x
          = IO VkRect2D -> VkRect2D
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkRenderPassBeginInfo -> Int -> IO VkRect2D
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkRenderPassBeginInfo -> Ptr VkRenderPassBeginInfo
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkRenderPassBeginInfo
x) (Int
32))
{-# LINE 246 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkRenderPassBeginInfo
-> IO (FieldType "renderArea" VkRenderPassBeginInfo)
readField Ptr VkRenderPassBeginInfo
p
          = Ptr VkRenderPassBeginInfo -> Int -> IO VkRect2D
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkRenderPassBeginInfo
p (Int
32)
{-# LINE 250 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "renderArea" VkRenderPassBeginInfo where
        {-# INLINE writeField #-}
        writeField :: Ptr VkRenderPassBeginInfo
-> FieldType "renderArea" VkRenderPassBeginInfo -> IO ()
writeField Ptr VkRenderPassBeginInfo
p
          = Ptr VkRenderPassBeginInfo -> Int -> VkRect2D -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkRenderPassBeginInfo
p (Int
32)
{-# LINE 256 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         HasField "clearValueCount" VkRenderPassBeginInfo where
        type FieldType "clearValueCount" VkRenderPassBeginInfo = Word32
        type FieldOptional "clearValueCount" VkRenderPassBeginInfo = 'True -- ' closing tick for hsc2hs
        type FieldOffset "clearValueCount" VkRenderPassBeginInfo =
             (48)
{-# LINE 263 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
        type FieldIsArray "clearValueCount" VkRenderPassBeginInfo = 'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
True

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
48)
{-# LINE 271 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "clearValueCount" VkRenderPassBeginInfo where
        {-# NOINLINE getField #-}
        getField :: VkRenderPassBeginInfo
-> FieldType "clearValueCount" VkRenderPassBeginInfo
getField VkRenderPassBeginInfo
x
          = IO Word32 -> Word32
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkRenderPassBeginInfo -> Int -> IO Word32
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkRenderPassBeginInfo -> Ptr VkRenderPassBeginInfo
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkRenderPassBeginInfo
x) (Int
48))
{-# LINE 278 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkRenderPassBeginInfo
-> IO (FieldType "clearValueCount" VkRenderPassBeginInfo)
readField Ptr VkRenderPassBeginInfo
p
          = Ptr VkRenderPassBeginInfo -> Int -> IO Word32
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkRenderPassBeginInfo
p (Int
48)
{-# LINE 282 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "clearValueCount" VkRenderPassBeginInfo where
        {-# INLINE writeField #-}
        writeField :: Ptr VkRenderPassBeginInfo
-> FieldType "clearValueCount" VkRenderPassBeginInfo -> IO ()
writeField Ptr VkRenderPassBeginInfo
p
          = Ptr VkRenderPassBeginInfo -> Int -> Word32 -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkRenderPassBeginInfo
p (Int
48)
{-# LINE 288 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         HasField "pClearValues" VkRenderPassBeginInfo where
        type FieldType "pClearValues" VkRenderPassBeginInfo =
             Ptr VkClearValue
        type FieldOptional "pClearValues" VkRenderPassBeginInfo = 'False -- ' closing tick for hsc2hs
        type FieldOffset "pClearValues" VkRenderPassBeginInfo =
             (56)
{-# LINE 296 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
        type FieldIsArray "pClearValues" VkRenderPassBeginInfo = 'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
False

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
56)
{-# LINE 304 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "pClearValues" VkRenderPassBeginInfo where
        {-# NOINLINE getField #-}
        getField :: VkRenderPassBeginInfo
-> FieldType "pClearValues" VkRenderPassBeginInfo
getField VkRenderPassBeginInfo
x
          = IO (Ptr VkClearValue) -> Ptr VkClearValue
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkRenderPassBeginInfo -> Int -> IO (Ptr VkClearValue)
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkRenderPassBeginInfo -> Ptr VkRenderPassBeginInfo
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkRenderPassBeginInfo
x) (Int
56))
{-# LINE 311 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkRenderPassBeginInfo
-> IO (FieldType "pClearValues" VkRenderPassBeginInfo)
readField Ptr VkRenderPassBeginInfo
p
          = Ptr VkRenderPassBeginInfo -> Int -> IO (Ptr VkClearValue)
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkRenderPassBeginInfo
p (Int
56)
{-# LINE 315 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "pClearValues" VkRenderPassBeginInfo where
        {-# INLINE writeField #-}
        writeField :: Ptr VkRenderPassBeginInfo
-> FieldType "pClearValues" VkRenderPassBeginInfo -> IO ()
writeField Ptr VkRenderPassBeginInfo
p
          = Ptr VkRenderPassBeginInfo -> Int -> Ptr VkClearValue -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkRenderPassBeginInfo
p (Int
56)
{-# LINE 321 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance Show VkRenderPassBeginInfo where
        showsPrec :: Int -> VkRenderPassBeginInfo -> ShowS
showsPrec Int
d VkRenderPassBeginInfo
x
          = String -> ShowS
showString String
"VkRenderPassBeginInfo {" ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
              String -> ShowS
showString String
"sType = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                Int -> VkStructureType -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d (VkRenderPassBeginInfo -> FieldType "sType" VkRenderPassBeginInfo
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"sType" VkRenderPassBeginInfo
x) ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                  String -> ShowS
showString String
", " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                    String -> ShowS
showString String
"pNext = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                      Int -> Ptr Void -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d (VkRenderPassBeginInfo -> FieldType "pNext" VkRenderPassBeginInfo
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"pNext" VkRenderPassBeginInfo
x) ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                        String -> ShowS
showString String
", " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                          String -> ShowS
showString String
"renderPass = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                            Int -> VkRenderPass -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d (VkRenderPassBeginInfo
-> FieldType "renderPass" VkRenderPassBeginInfo
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"renderPass" VkRenderPassBeginInfo
x) ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                              String -> ShowS
showString String
", " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                String -> ShowS
showString String
"framebuffer = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                  Int -> VkFramebuffer -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d (VkRenderPassBeginInfo
-> FieldType "framebuffer" VkRenderPassBeginInfo
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"framebuffer" VkRenderPassBeginInfo
x) ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                    String -> ShowS
showString String
", " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                      String -> ShowS
showString String
"renderArea = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                        Int -> VkRect2D -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d (VkRenderPassBeginInfo
-> FieldType "renderArea" VkRenderPassBeginInfo
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"renderArea" VkRenderPassBeginInfo
x) ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                          String -> ShowS
showString String
", " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                            String -> ShowS
showString String
"clearValueCount = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                              Int -> Word32 -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d (VkRenderPassBeginInfo
-> FieldType "clearValueCount" VkRenderPassBeginInfo
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"clearValueCount" VkRenderPassBeginInfo
x) ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                                String -> ShowS
showString String
", " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                                  String -> ShowS
showString String
"pClearValues = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                                    Int -> Ptr VkClearValue -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d (VkRenderPassBeginInfo
-> FieldType "pClearValues" VkRenderPassBeginInfo
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"pClearValues" VkRenderPassBeginInfo
x) ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                                      Char -> ShowS
showChar Char
'}'

-- | > typedef struct VkRenderPassCreateInfo {
--   >     VkStructureType sType;
--   >     const void*            pNext;
--   >     VkRenderPassCreateFlags    flags;
--   >     uint32_t   attachmentCount;
--   >     const VkAttachmentDescription* pAttachments;
--   >     uint32_t               subpassCount;
--   >     const VkSubpassDescription* pSubpasses;
--   >     uint32_t       dependencyCount;
--   >     const VkSubpassDependency* pDependencies;
--   > } VkRenderPassCreateInfo;
--
--   <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/html/vkspec.html#VkRenderPassCreateInfo VkRenderPassCreateInfo registry at www.khronos.org>
data VkRenderPassCreateInfo = VkRenderPassCreateInfo# Addr#
                                                      ByteArray#

instance Eq VkRenderPassCreateInfo where
        (VkRenderPassCreateInfo# Addr#
a ByteArray#
_) == :: VkRenderPassCreateInfo -> VkRenderPassCreateInfo -> Bool
== x :: VkRenderPassCreateInfo
x@(VkRenderPassCreateInfo# Addr#
b ByteArray#
_)
          = Ordering
EQ Ordering -> Ordering -> Bool
forall a. Eq a => a -> a -> Bool
== Int -> Addr# -> Addr# -> Ordering
cmpBytes# (VkRenderPassCreateInfo -> Int
forall a. Storable a => a -> Int
sizeOf VkRenderPassCreateInfo
x) Addr#
a Addr#
b

        {-# INLINE (==) #-}

instance Ord VkRenderPassCreateInfo where
        (VkRenderPassCreateInfo# Addr#
a ByteArray#
_) compare :: VkRenderPassCreateInfo -> VkRenderPassCreateInfo -> Ordering
`compare`
          x :: VkRenderPassCreateInfo
x@(VkRenderPassCreateInfo# Addr#
b ByteArray#
_) = Int -> Addr# -> Addr# -> Ordering
cmpBytes# (VkRenderPassCreateInfo -> Int
forall a. Storable a => a -> Int
sizeOf VkRenderPassCreateInfo
x) Addr#
a Addr#
b

        {-# INLINE compare #-}

instance Storable VkRenderPassCreateInfo where
        sizeOf :: VkRenderPassCreateInfo -> Int
sizeOf ~VkRenderPassCreateInfo
_ = (Int
64)
{-# LINE 377 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE sizeOf #-}
        alignment :: VkRenderPassCreateInfo -> Int
alignment ~VkRenderPassCreateInfo
_ = Int
8
{-# LINE 380 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE alignment #-}
        peek :: Ptr VkRenderPassCreateInfo -> IO VkRenderPassCreateInfo
peek = Ptr VkRenderPassCreateInfo -> IO VkRenderPassCreateInfo
forall a. (Storable a, VulkanMarshalPrim a) => Ptr a -> IO a
peekVkData#

        {-# INLINE peek #-}
        poke :: Ptr VkRenderPassCreateInfo -> VkRenderPassCreateInfo -> IO ()
poke = Ptr VkRenderPassCreateInfo -> VkRenderPassCreateInfo -> IO ()
forall a. (Storable a, VulkanMarshalPrim a) => Ptr a -> a -> IO ()
pokeVkData#

        {-# INLINE poke #-}

instance VulkanMarshalPrim VkRenderPassCreateInfo where
        unsafeAddr :: VkRenderPassCreateInfo -> Addr#
unsafeAddr (VkRenderPassCreateInfo# Addr#
a ByteArray#
_) = Addr#
a

        {-# INLINE unsafeAddr #-}
        unsafeByteArray :: VkRenderPassCreateInfo -> ByteArray#
unsafeByteArray (VkRenderPassCreateInfo# Addr#
_ ByteArray#
b) = ByteArray#
b

        {-# INLINE unsafeByteArray #-}
        unsafeFromByteArrayOffset :: Int# -> ByteArray# -> VkRenderPassCreateInfo
unsafeFromByteArrayOffset Int#
off ByteArray#
b
          = Addr# -> ByteArray# -> VkRenderPassCreateInfo
VkRenderPassCreateInfo# (Addr# -> Int# -> Addr#
plusAddr# (ByteArray# -> Addr#
byteArrayContents# ByteArray#
b) Int#
off) ByteArray#
b

        {-# INLINE unsafeFromByteArrayOffset #-}

instance VulkanMarshal VkRenderPassCreateInfo where
        type StructFields VkRenderPassCreateInfo =
             '["sType", "pNext", "flags", "attachmentCount", "pAttachments", -- ' closing tick for hsc2hs
               "subpassCount", "pSubpasses", "dependencyCount", "pDependencies"]
        type CUnionType VkRenderPassCreateInfo = 'False -- ' closing tick for hsc2hs
        type ReturnedOnly VkRenderPassCreateInfo = 'False -- ' closing tick for hsc2hs
        type StructExtends VkRenderPassCreateInfo = '[] -- ' closing tick for hsc2hs

instance {-# OVERLAPPING #-}
         HasField "sType" VkRenderPassCreateInfo where
        type FieldType "sType" VkRenderPassCreateInfo = VkStructureType
        type FieldOptional "sType" VkRenderPassCreateInfo = 'False -- ' closing tick for hsc2hs
        type FieldOffset "sType" VkRenderPassCreateInfo =
             (0)
{-# LINE 415 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
        type FieldIsArray "sType" VkRenderPassCreateInfo = 'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
False

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset = (Int
0)
{-# LINE 422 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "sType" VkRenderPassCreateInfo where
        {-# NOINLINE getField #-}
        getField :: VkRenderPassCreateInfo -> FieldType "sType" VkRenderPassCreateInfo
getField VkRenderPassCreateInfo
x
          = IO VkStructureType -> VkStructureType
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkRenderPassCreateInfo -> Int -> IO VkStructureType
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkRenderPassCreateInfo -> Ptr VkRenderPassCreateInfo
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkRenderPassCreateInfo
x) (Int
0))
{-# LINE 429 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkRenderPassCreateInfo
-> IO (FieldType "sType" VkRenderPassCreateInfo)
readField Ptr VkRenderPassCreateInfo
p
          = Ptr VkRenderPassCreateInfo -> Int -> IO VkStructureType
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkRenderPassCreateInfo
p (Int
0)
{-# LINE 433 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "sType" VkRenderPassCreateInfo where
        {-# INLINE writeField #-}
        writeField :: Ptr VkRenderPassCreateInfo
-> FieldType "sType" VkRenderPassCreateInfo -> IO ()
writeField Ptr VkRenderPassCreateInfo
p
          = Ptr VkRenderPassCreateInfo -> Int -> VkStructureType -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkRenderPassCreateInfo
p (Int
0)
{-# LINE 439 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         HasField "pNext" VkRenderPassCreateInfo where
        type FieldType "pNext" VkRenderPassCreateInfo = Ptr Void
        type FieldOptional "pNext" VkRenderPassCreateInfo = 'False -- ' closing tick for hsc2hs
        type FieldOffset "pNext" VkRenderPassCreateInfo =
             (8)
{-# LINE 446 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
        type FieldIsArray "pNext" VkRenderPassCreateInfo = 'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
False

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset = (Int
8)
{-# LINE 453 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "pNext" VkRenderPassCreateInfo where
        {-# NOINLINE getField #-}
        getField :: VkRenderPassCreateInfo -> FieldType "pNext" VkRenderPassCreateInfo
getField VkRenderPassCreateInfo
x
          = IO (Ptr Void) -> Ptr Void
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkRenderPassCreateInfo -> Int -> IO (Ptr Void)
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkRenderPassCreateInfo -> Ptr VkRenderPassCreateInfo
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkRenderPassCreateInfo
x) (Int
8))
{-# LINE 460 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkRenderPassCreateInfo
-> IO (FieldType "pNext" VkRenderPassCreateInfo)
readField Ptr VkRenderPassCreateInfo
p
          = Ptr VkRenderPassCreateInfo -> Int -> IO (Ptr Void)
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkRenderPassCreateInfo
p (Int
8)
{-# LINE 464 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "pNext" VkRenderPassCreateInfo where
        {-# INLINE writeField #-}
        writeField :: Ptr VkRenderPassCreateInfo
-> FieldType "pNext" VkRenderPassCreateInfo -> IO ()
writeField Ptr VkRenderPassCreateInfo
p
          = Ptr VkRenderPassCreateInfo -> Int -> Ptr Void -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkRenderPassCreateInfo
p (Int
8)
{-# LINE 470 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         HasField "flags" VkRenderPassCreateInfo where
        type FieldType "flags" VkRenderPassCreateInfo =
             VkRenderPassCreateFlags
        type FieldOptional "flags" VkRenderPassCreateInfo = 'True -- ' closing tick for hsc2hs
        type FieldOffset "flags" VkRenderPassCreateInfo =
             (16)
{-# LINE 478 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
        type FieldIsArray "flags" VkRenderPassCreateInfo = 'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
True

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset = (Int
16)
{-# LINE 485 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "flags" VkRenderPassCreateInfo where
        {-# NOINLINE getField #-}
        getField :: VkRenderPassCreateInfo -> FieldType "flags" VkRenderPassCreateInfo
getField VkRenderPassCreateInfo
x
          = IO VkRenderPassCreateFlags -> VkRenderPassCreateFlags
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkRenderPassCreateInfo -> Int -> IO VkRenderPassCreateFlags
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkRenderPassCreateInfo -> Ptr VkRenderPassCreateInfo
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkRenderPassCreateInfo
x) (Int
16))
{-# LINE 492 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkRenderPassCreateInfo
-> IO (FieldType "flags" VkRenderPassCreateInfo)
readField Ptr VkRenderPassCreateInfo
p
          = Ptr VkRenderPassCreateInfo -> Int -> IO VkRenderPassCreateFlags
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkRenderPassCreateInfo
p (Int
16)
{-# LINE 496 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "flags" VkRenderPassCreateInfo where
        {-# INLINE writeField #-}
        writeField :: Ptr VkRenderPassCreateInfo
-> FieldType "flags" VkRenderPassCreateInfo -> IO ()
writeField Ptr VkRenderPassCreateInfo
p
          = Ptr VkRenderPassCreateInfo
-> Int -> VkRenderPassCreateFlags -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkRenderPassCreateInfo
p (Int
16)
{-# LINE 502 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         HasField "attachmentCount" VkRenderPassCreateInfo where
        type FieldType "attachmentCount" VkRenderPassCreateInfo = Word32
        type FieldOptional "attachmentCount" VkRenderPassCreateInfo = 'True -- ' closing tick for hsc2hs
        type FieldOffset "attachmentCount" VkRenderPassCreateInfo =
             (20)
{-# LINE 509 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
        type FieldIsArray "attachmentCount" VkRenderPassCreateInfo = 'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
True

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
20)
{-# LINE 517 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "attachmentCount" VkRenderPassCreateInfo where
        {-# NOINLINE getField #-}
        getField :: VkRenderPassCreateInfo
-> FieldType "attachmentCount" VkRenderPassCreateInfo
getField VkRenderPassCreateInfo
x
          = IO Word32 -> Word32
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkRenderPassCreateInfo -> Int -> IO Word32
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkRenderPassCreateInfo -> Ptr VkRenderPassCreateInfo
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkRenderPassCreateInfo
x) (Int
20))
{-# LINE 524 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkRenderPassCreateInfo
-> IO (FieldType "attachmentCount" VkRenderPassCreateInfo)
readField Ptr VkRenderPassCreateInfo
p
          = Ptr VkRenderPassCreateInfo -> Int -> IO Word32
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkRenderPassCreateInfo
p (Int
20)
{-# LINE 528 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "attachmentCount" VkRenderPassCreateInfo where
        {-# INLINE writeField #-}
        writeField :: Ptr VkRenderPassCreateInfo
-> FieldType "attachmentCount" VkRenderPassCreateInfo -> IO ()
writeField Ptr VkRenderPassCreateInfo
p
          = Ptr VkRenderPassCreateInfo -> Int -> Word32 -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkRenderPassCreateInfo
p (Int
20)
{-# LINE 534 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         HasField "pAttachments" VkRenderPassCreateInfo where
        type FieldType "pAttachments" VkRenderPassCreateInfo =
             Ptr VkAttachmentDescription
        type FieldOptional "pAttachments" VkRenderPassCreateInfo = 'False -- ' closing tick for hsc2hs
        type FieldOffset "pAttachments" VkRenderPassCreateInfo =
             (24)
{-# LINE 542 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
        type FieldIsArray "pAttachments" VkRenderPassCreateInfo = 'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
False

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
24)
{-# LINE 550 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "pAttachments" VkRenderPassCreateInfo where
        {-# NOINLINE getField #-}
        getField :: VkRenderPassCreateInfo
-> FieldType "pAttachments" VkRenderPassCreateInfo
getField VkRenderPassCreateInfo
x
          = IO (Ptr VkAttachmentDescription) -> Ptr VkAttachmentDescription
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkRenderPassCreateInfo
-> Int -> IO (Ptr VkAttachmentDescription)
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkRenderPassCreateInfo -> Ptr VkRenderPassCreateInfo
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkRenderPassCreateInfo
x) (Int
24))
{-# LINE 557 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkRenderPassCreateInfo
-> IO (FieldType "pAttachments" VkRenderPassCreateInfo)
readField Ptr VkRenderPassCreateInfo
p
          = Ptr VkRenderPassCreateInfo
-> Int -> IO (Ptr VkAttachmentDescription)
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkRenderPassCreateInfo
p (Int
24)
{-# LINE 561 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "pAttachments" VkRenderPassCreateInfo where
        {-# INLINE writeField #-}
        writeField :: Ptr VkRenderPassCreateInfo
-> FieldType "pAttachments" VkRenderPassCreateInfo -> IO ()
writeField Ptr VkRenderPassCreateInfo
p
          = Ptr VkRenderPassCreateInfo
-> Int -> Ptr VkAttachmentDescription -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkRenderPassCreateInfo
p (Int
24)
{-# LINE 567 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         HasField "subpassCount" VkRenderPassCreateInfo where
        type FieldType "subpassCount" VkRenderPassCreateInfo = Word32
        type FieldOptional "subpassCount" VkRenderPassCreateInfo = 'False -- ' closing tick for hsc2hs
        type FieldOffset "subpassCount" VkRenderPassCreateInfo =
             (32)
{-# LINE 574 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
        type FieldIsArray "subpassCount" VkRenderPassCreateInfo = 'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
False

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
32)
{-# LINE 582 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "subpassCount" VkRenderPassCreateInfo where
        {-# NOINLINE getField #-}
        getField :: VkRenderPassCreateInfo
-> FieldType "subpassCount" VkRenderPassCreateInfo
getField VkRenderPassCreateInfo
x
          = IO Word32 -> Word32
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkRenderPassCreateInfo -> Int -> IO Word32
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkRenderPassCreateInfo -> Ptr VkRenderPassCreateInfo
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkRenderPassCreateInfo
x) (Int
32))
{-# LINE 589 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkRenderPassCreateInfo
-> IO (FieldType "subpassCount" VkRenderPassCreateInfo)
readField Ptr VkRenderPassCreateInfo
p
          = Ptr VkRenderPassCreateInfo -> Int -> IO Word32
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkRenderPassCreateInfo
p (Int
32)
{-# LINE 593 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "subpassCount" VkRenderPassCreateInfo where
        {-# INLINE writeField #-}
        writeField :: Ptr VkRenderPassCreateInfo
-> FieldType "subpassCount" VkRenderPassCreateInfo -> IO ()
writeField Ptr VkRenderPassCreateInfo
p
          = Ptr VkRenderPassCreateInfo -> Int -> Word32 -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkRenderPassCreateInfo
p (Int
32)
{-# LINE 599 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         HasField "pSubpasses" VkRenderPassCreateInfo where
        type FieldType "pSubpasses" VkRenderPassCreateInfo =
             Ptr VkSubpassDescription
        type FieldOptional "pSubpasses" VkRenderPassCreateInfo = 'False -- ' closing tick for hsc2hs
        type FieldOffset "pSubpasses" VkRenderPassCreateInfo =
             (40)
{-# LINE 607 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
        type FieldIsArray "pSubpasses" VkRenderPassCreateInfo = 'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
False

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
40)
{-# LINE 615 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "pSubpasses" VkRenderPassCreateInfo where
        {-# NOINLINE getField #-}
        getField :: VkRenderPassCreateInfo
-> FieldType "pSubpasses" VkRenderPassCreateInfo
getField VkRenderPassCreateInfo
x
          = IO (Ptr VkSubpassDescription) -> Ptr VkSubpassDescription
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkRenderPassCreateInfo -> Int -> IO (Ptr VkSubpassDescription)
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkRenderPassCreateInfo -> Ptr VkRenderPassCreateInfo
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkRenderPassCreateInfo
x) (Int
40))
{-# LINE 622 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkRenderPassCreateInfo
-> IO (FieldType "pSubpasses" VkRenderPassCreateInfo)
readField Ptr VkRenderPassCreateInfo
p
          = Ptr VkRenderPassCreateInfo -> Int -> IO (Ptr VkSubpassDescription)
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkRenderPassCreateInfo
p (Int
40)
{-# LINE 626 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "pSubpasses" VkRenderPassCreateInfo where
        {-# INLINE writeField #-}
        writeField :: Ptr VkRenderPassCreateInfo
-> FieldType "pSubpasses" VkRenderPassCreateInfo -> IO ()
writeField Ptr VkRenderPassCreateInfo
p
          = Ptr VkRenderPassCreateInfo
-> Int -> Ptr VkSubpassDescription -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkRenderPassCreateInfo
p (Int
40)
{-# LINE 632 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         HasField "dependencyCount" VkRenderPassCreateInfo where
        type FieldType "dependencyCount" VkRenderPassCreateInfo = Word32
        type FieldOptional "dependencyCount" VkRenderPassCreateInfo = 'True -- ' closing tick for hsc2hs
        type FieldOffset "dependencyCount" VkRenderPassCreateInfo =
             (48)
{-# LINE 639 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
        type FieldIsArray "dependencyCount" VkRenderPassCreateInfo = 'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
True

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
48)
{-# LINE 647 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "dependencyCount" VkRenderPassCreateInfo where
        {-# NOINLINE getField #-}
        getField :: VkRenderPassCreateInfo
-> FieldType "dependencyCount" VkRenderPassCreateInfo
getField VkRenderPassCreateInfo
x
          = IO Word32 -> Word32
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkRenderPassCreateInfo -> Int -> IO Word32
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkRenderPassCreateInfo -> Ptr VkRenderPassCreateInfo
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkRenderPassCreateInfo
x) (Int
48))
{-# LINE 654 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkRenderPassCreateInfo
-> IO (FieldType "dependencyCount" VkRenderPassCreateInfo)
readField Ptr VkRenderPassCreateInfo
p
          = Ptr VkRenderPassCreateInfo -> Int -> IO Word32
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkRenderPassCreateInfo
p (Int
48)
{-# LINE 658 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "dependencyCount" VkRenderPassCreateInfo where
        {-# INLINE writeField #-}
        writeField :: Ptr VkRenderPassCreateInfo
-> FieldType "dependencyCount" VkRenderPassCreateInfo -> IO ()
writeField Ptr VkRenderPassCreateInfo
p
          = Ptr VkRenderPassCreateInfo -> Int -> Word32 -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkRenderPassCreateInfo
p (Int
48)
{-# LINE 664 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         HasField "pDependencies" VkRenderPassCreateInfo where
        type FieldType "pDependencies" VkRenderPassCreateInfo =
             Ptr VkSubpassDependency
        type FieldOptional "pDependencies" VkRenderPassCreateInfo = 'False -- ' closing tick for hsc2hs
        type FieldOffset "pDependencies" VkRenderPassCreateInfo =
             (56)
{-# LINE 672 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
        type FieldIsArray "pDependencies" VkRenderPassCreateInfo = 'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
False

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
56)
{-# LINE 680 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "pDependencies" VkRenderPassCreateInfo where
        {-# NOINLINE getField #-}
        getField :: VkRenderPassCreateInfo
-> FieldType "pDependencies" VkRenderPassCreateInfo
getField VkRenderPassCreateInfo
x
          = IO (Ptr VkSubpassDependency) -> Ptr VkSubpassDependency
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkRenderPassCreateInfo -> Int -> IO (Ptr VkSubpassDependency)
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkRenderPassCreateInfo -> Ptr VkRenderPassCreateInfo
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkRenderPassCreateInfo
x) (Int
56))
{-# LINE 687 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkRenderPassCreateInfo
-> IO (FieldType "pDependencies" VkRenderPassCreateInfo)
readField Ptr VkRenderPassCreateInfo
p
          = Ptr VkRenderPassCreateInfo -> Int -> IO (Ptr VkSubpassDependency)
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkRenderPassCreateInfo
p (Int
56)
{-# LINE 691 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "pDependencies" VkRenderPassCreateInfo where
        {-# INLINE writeField #-}
        writeField :: Ptr VkRenderPassCreateInfo
-> FieldType "pDependencies" VkRenderPassCreateInfo -> IO ()
writeField Ptr VkRenderPassCreateInfo
p
          = Ptr VkRenderPassCreateInfo
-> Int -> Ptr VkSubpassDependency -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkRenderPassCreateInfo
p (Int
56)
{-# LINE 697 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance Show VkRenderPassCreateInfo where
        showsPrec :: Int -> VkRenderPassCreateInfo -> ShowS
showsPrec Int
d VkRenderPassCreateInfo
x
          = String -> ShowS
showString String
"VkRenderPassCreateInfo {" ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
              String -> ShowS
showString String
"sType = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                Int -> VkStructureType -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d (VkRenderPassCreateInfo -> FieldType "sType" VkRenderPassCreateInfo
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"sType" VkRenderPassCreateInfo
x) ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                  String -> ShowS
showString String
", " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                    String -> ShowS
showString String
"pNext = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                      Int -> Ptr Void -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d (VkRenderPassCreateInfo -> FieldType "pNext" VkRenderPassCreateInfo
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"pNext" VkRenderPassCreateInfo
x) ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                        String -> ShowS
showString String
", " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                          String -> ShowS
showString String
"flags = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                            Int -> VkRenderPassCreateFlags -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d (VkRenderPassCreateInfo -> FieldType "flags" VkRenderPassCreateInfo
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"flags" VkRenderPassCreateInfo
x) ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                              String -> ShowS
showString String
", " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                String -> ShowS
showString String
"attachmentCount = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                  Int -> Word32 -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d (VkRenderPassCreateInfo
-> FieldType "attachmentCount" VkRenderPassCreateInfo
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"attachmentCount" VkRenderPassCreateInfo
x) ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                    String -> ShowS
showString String
", " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                      String -> ShowS
showString String
"pAttachments = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                        Int -> Ptr VkAttachmentDescription -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d (VkRenderPassCreateInfo
-> FieldType "pAttachments" VkRenderPassCreateInfo
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"pAttachments" VkRenderPassCreateInfo
x) ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                          String -> ShowS
showString String
", " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                            String -> ShowS
showString String
"subpassCount = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                              Int -> Word32 -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d (VkRenderPassCreateInfo
-> FieldType "subpassCount" VkRenderPassCreateInfo
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"subpassCount" VkRenderPassCreateInfo
x) ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                                String -> ShowS
showString String
", " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                                  String -> ShowS
showString String
"pSubpasses = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                                    Int -> Ptr VkSubpassDescription -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d (VkRenderPassCreateInfo
-> FieldType "pSubpasses" VkRenderPassCreateInfo
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"pSubpasses" VkRenderPassCreateInfo
x) ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                                      String -> ShowS
showString String
", " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                                        String -> ShowS
showString String
"dependencyCount = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                                          Int -> Word32 -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d
                                                            (VkRenderPassCreateInfo
-> FieldType "dependencyCount" VkRenderPassCreateInfo
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"dependencyCount" VkRenderPassCreateInfo
x)
                                                            ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                                            String -> ShowS
showString String
", " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                                              String -> ShowS
showString String
"pDependencies = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                                                Int -> Ptr VkSubpassDependency -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d
                                                                  (VkRenderPassCreateInfo
-> FieldType "pDependencies" VkRenderPassCreateInfo
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"pDependencies" VkRenderPassCreateInfo
x)
                                                                  ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Char -> ShowS
showChar Char
'}'

-- | > typedef struct VkRenderPassInputAttachmentAspectCreateInfo {
--   >     VkStructureType sType;
--   >     const void*                     pNext;
--   >     uint32_t                        aspectReferenceCount;
--   >     const VkInputAttachmentAspectReference* pAspectReferences;
--   > } VkRenderPassInputAttachmentAspectCreateInfo;
--
--   <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/html/vkspec.html#VkRenderPassInputAttachmentAspectCreateInfo VkRenderPassInputAttachmentAspectCreateInfo registry at www.khronos.org>
data VkRenderPassInputAttachmentAspectCreateInfo = VkRenderPassInputAttachmentAspectCreateInfo# Addr#
                                                                                                ByteArray#

instance Eq VkRenderPassInputAttachmentAspectCreateInfo where
        (VkRenderPassInputAttachmentAspectCreateInfo# Addr#
a ByteArray#
_) == :: VkRenderPassInputAttachmentAspectCreateInfo
-> VkRenderPassInputAttachmentAspectCreateInfo -> Bool
==
          x :: VkRenderPassInputAttachmentAspectCreateInfo
x@(VkRenderPassInputAttachmentAspectCreateInfo# Addr#
b ByteArray#
_)
          = Ordering
EQ Ordering -> Ordering -> Bool
forall a. Eq a => a -> a -> Bool
== Int -> Addr# -> Addr# -> Ordering
cmpBytes# (VkRenderPassInputAttachmentAspectCreateInfo -> Int
forall a. Storable a => a -> Int
sizeOf VkRenderPassInputAttachmentAspectCreateInfo
x) Addr#
a Addr#
b

        {-# INLINE (==) #-}

instance Ord VkRenderPassInputAttachmentAspectCreateInfo where
        (VkRenderPassInputAttachmentAspectCreateInfo# Addr#
a ByteArray#
_) compare :: VkRenderPassInputAttachmentAspectCreateInfo
-> VkRenderPassInputAttachmentAspectCreateInfo -> Ordering
`compare`
          x :: VkRenderPassInputAttachmentAspectCreateInfo
x@(VkRenderPassInputAttachmentAspectCreateInfo# Addr#
b ByteArray#
_)
          = Int -> Addr# -> Addr# -> Ordering
cmpBytes# (VkRenderPassInputAttachmentAspectCreateInfo -> Int
forall a. Storable a => a -> Int
sizeOf VkRenderPassInputAttachmentAspectCreateInfo
x) Addr#
a Addr#
b

        {-# INLINE compare #-}

instance Storable VkRenderPassInputAttachmentAspectCreateInfo where
        sizeOf :: VkRenderPassInputAttachmentAspectCreateInfo -> Int
sizeOf ~VkRenderPassInputAttachmentAspectCreateInfo
_
          = (Int
32)
{-# LINE 760 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE sizeOf #-}
        alignment :: VkRenderPassInputAttachmentAspectCreateInfo -> Int
alignment ~VkRenderPassInputAttachmentAspectCreateInfo
_
          = Int
8
{-# LINE 764 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE alignment #-}
        peek :: Ptr VkRenderPassInputAttachmentAspectCreateInfo
-> IO VkRenderPassInputAttachmentAspectCreateInfo
peek = Ptr VkRenderPassInputAttachmentAspectCreateInfo
-> IO VkRenderPassInputAttachmentAspectCreateInfo
forall a. (Storable a, VulkanMarshalPrim a) => Ptr a -> IO a
peekVkData#

        {-# INLINE peek #-}
        poke :: Ptr VkRenderPassInputAttachmentAspectCreateInfo
-> VkRenderPassInputAttachmentAspectCreateInfo -> IO ()
poke = Ptr VkRenderPassInputAttachmentAspectCreateInfo
-> VkRenderPassInputAttachmentAspectCreateInfo -> IO ()
forall a. (Storable a, VulkanMarshalPrim a) => Ptr a -> a -> IO ()
pokeVkData#

        {-# INLINE poke #-}

instance VulkanMarshalPrim
           VkRenderPassInputAttachmentAspectCreateInfo
         where
        unsafeAddr :: VkRenderPassInputAttachmentAspectCreateInfo -> Addr#
unsafeAddr (VkRenderPassInputAttachmentAspectCreateInfo# Addr#
a ByteArray#
_) = Addr#
a

        {-# INLINE unsafeAddr #-}
        unsafeByteArray :: VkRenderPassInputAttachmentAspectCreateInfo -> ByteArray#
unsafeByteArray (VkRenderPassInputAttachmentAspectCreateInfo# Addr#
_ ByteArray#
b)
          = ByteArray#
b

        {-# INLINE unsafeByteArray #-}
        unsafeFromByteArrayOffset :: Int# -> ByteArray# -> VkRenderPassInputAttachmentAspectCreateInfo
unsafeFromByteArrayOffset Int#
off ByteArray#
b
          = Addr# -> ByteArray# -> VkRenderPassInputAttachmentAspectCreateInfo
VkRenderPassInputAttachmentAspectCreateInfo#
              (Addr# -> Int# -> Addr#
plusAddr# (ByteArray# -> Addr#
byteArrayContents# ByteArray#
b) Int#
off)
              ByteArray#
b

        {-# INLINE unsafeFromByteArrayOffset #-}

instance VulkanMarshal VkRenderPassInputAttachmentAspectCreateInfo
         where
        type StructFields VkRenderPassInputAttachmentAspectCreateInfo =
             '["sType", "pNext", "aspectReferenceCount", "pAspectReferences"] -- ' closing tick for hsc2hs
        type CUnionType VkRenderPassInputAttachmentAspectCreateInfo =
             'False -- ' closing tick for hsc2hs
        type ReturnedOnly VkRenderPassInputAttachmentAspectCreateInfo =
             'False -- ' closing tick for hsc2hs
        type StructExtends VkRenderPassInputAttachmentAspectCreateInfo =
             '[VkRenderPassCreateInfo] -- ' closing tick for hsc2hs

instance {-# OVERLAPPING #-}
         HasField "sType" VkRenderPassInputAttachmentAspectCreateInfo where
        type FieldType "sType" VkRenderPassInputAttachmentAspectCreateInfo
             = VkStructureType
        type FieldOptional "sType"
               VkRenderPassInputAttachmentAspectCreateInfo
             = 'False -- ' closing tick for hsc2hs
        type FieldOffset "sType"
               VkRenderPassInputAttachmentAspectCreateInfo
             =
             (0)
{-# LINE 812 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
        type FieldIsArray "sType"
               VkRenderPassInputAttachmentAspectCreateInfo
             = 'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
False

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
0)
{-# LINE 822 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "sType" VkRenderPassInputAttachmentAspectCreateInfo
         where
        {-# NOINLINE getField #-}
        getField :: VkRenderPassInputAttachmentAspectCreateInfo
-> FieldType "sType" VkRenderPassInputAttachmentAspectCreateInfo
getField VkRenderPassInputAttachmentAspectCreateInfo
x
          = IO VkStructureType -> VkStructureType
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkRenderPassInputAttachmentAspectCreateInfo
-> Int -> IO VkStructureType
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkRenderPassInputAttachmentAspectCreateInfo
-> Ptr VkRenderPassInputAttachmentAspectCreateInfo
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkRenderPassInputAttachmentAspectCreateInfo
x) (Int
0))
{-# LINE 830 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkRenderPassInputAttachmentAspectCreateInfo
-> IO
     (FieldType "sType" VkRenderPassInputAttachmentAspectCreateInfo)
readField Ptr VkRenderPassInputAttachmentAspectCreateInfo
p
          = Ptr VkRenderPassInputAttachmentAspectCreateInfo
-> Int -> IO VkStructureType
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkRenderPassInputAttachmentAspectCreateInfo
p (Int
0)
{-# LINE 834 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "sType" VkRenderPassInputAttachmentAspectCreateInfo
         where
        {-# INLINE writeField #-}
        writeField :: Ptr VkRenderPassInputAttachmentAspectCreateInfo
-> FieldType "sType" VkRenderPassInputAttachmentAspectCreateInfo
-> IO ()
writeField Ptr VkRenderPassInputAttachmentAspectCreateInfo
p
          = Ptr VkRenderPassInputAttachmentAspectCreateInfo
-> Int -> VkStructureType -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkRenderPassInputAttachmentAspectCreateInfo
p (Int
0)
{-# LINE 841 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         HasField "pNext" VkRenderPassInputAttachmentAspectCreateInfo where
        type FieldType "pNext" VkRenderPassInputAttachmentAspectCreateInfo
             = Ptr Void
        type FieldOptional "pNext"
               VkRenderPassInputAttachmentAspectCreateInfo
             = 'False -- ' closing tick for hsc2hs
        type FieldOffset "pNext"
               VkRenderPassInputAttachmentAspectCreateInfo
             =
             (8)
{-# LINE 853 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
        type FieldIsArray "pNext"
               VkRenderPassInputAttachmentAspectCreateInfo
             = 'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
False

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
8)
{-# LINE 863 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "pNext" VkRenderPassInputAttachmentAspectCreateInfo
         where
        {-# NOINLINE getField #-}
        getField :: VkRenderPassInputAttachmentAspectCreateInfo
-> FieldType "pNext" VkRenderPassInputAttachmentAspectCreateInfo
getField VkRenderPassInputAttachmentAspectCreateInfo
x
          = IO (Ptr Void) -> Ptr Void
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkRenderPassInputAttachmentAspectCreateInfo
-> Int -> IO (Ptr Void)
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkRenderPassInputAttachmentAspectCreateInfo
-> Ptr VkRenderPassInputAttachmentAspectCreateInfo
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkRenderPassInputAttachmentAspectCreateInfo
x) (Int
8))
{-# LINE 871 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkRenderPassInputAttachmentAspectCreateInfo
-> IO
     (FieldType "pNext" VkRenderPassInputAttachmentAspectCreateInfo)
readField Ptr VkRenderPassInputAttachmentAspectCreateInfo
p
          = Ptr VkRenderPassInputAttachmentAspectCreateInfo
-> Int -> IO (Ptr Void)
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkRenderPassInputAttachmentAspectCreateInfo
p (Int
8)
{-# LINE 875 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "pNext" VkRenderPassInputAttachmentAspectCreateInfo
         where
        {-# INLINE writeField #-}
        writeField :: Ptr VkRenderPassInputAttachmentAspectCreateInfo
-> FieldType "pNext" VkRenderPassInputAttachmentAspectCreateInfo
-> IO ()
writeField Ptr VkRenderPassInputAttachmentAspectCreateInfo
p
          = Ptr VkRenderPassInputAttachmentAspectCreateInfo
-> Int -> Ptr Void -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkRenderPassInputAttachmentAspectCreateInfo
p (Int
8)
{-# LINE 882 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         HasField "aspectReferenceCount"
           VkRenderPassInputAttachmentAspectCreateInfo
         where
        type FieldType "aspectReferenceCount"
               VkRenderPassInputAttachmentAspectCreateInfo
             = Word32
        type FieldOptional "aspectReferenceCount"
               VkRenderPassInputAttachmentAspectCreateInfo
             = 'False -- ' closing tick for hsc2hs
        type FieldOffset "aspectReferenceCount"
               VkRenderPassInputAttachmentAspectCreateInfo
             =
             (16)
{-# LINE 897 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
        type FieldIsArray "aspectReferenceCount"
               VkRenderPassInputAttachmentAspectCreateInfo
             = 'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
False

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
16)
{-# LINE 907 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "aspectReferenceCount"
           VkRenderPassInputAttachmentAspectCreateInfo
         where
        {-# NOINLINE getField #-}
        getField :: VkRenderPassInputAttachmentAspectCreateInfo
-> FieldType
     "aspectReferenceCount" VkRenderPassInputAttachmentAspectCreateInfo
getField VkRenderPassInputAttachmentAspectCreateInfo
x
          = IO Word32 -> Word32
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkRenderPassInputAttachmentAspectCreateInfo -> Int -> IO Word32
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkRenderPassInputAttachmentAspectCreateInfo
-> Ptr VkRenderPassInputAttachmentAspectCreateInfo
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkRenderPassInputAttachmentAspectCreateInfo
x) (Int
16))
{-# LINE 916 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkRenderPassInputAttachmentAspectCreateInfo
-> IO
     (FieldType
        "aspectReferenceCount" VkRenderPassInputAttachmentAspectCreateInfo)
readField Ptr VkRenderPassInputAttachmentAspectCreateInfo
p
          = Ptr VkRenderPassInputAttachmentAspectCreateInfo -> Int -> IO Word32
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkRenderPassInputAttachmentAspectCreateInfo
p (Int
16)
{-# LINE 920 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "aspectReferenceCount"
           VkRenderPassInputAttachmentAspectCreateInfo
         where
        {-# INLINE writeField #-}
        writeField :: Ptr VkRenderPassInputAttachmentAspectCreateInfo
-> FieldType
     "aspectReferenceCount" VkRenderPassInputAttachmentAspectCreateInfo
-> IO ()
writeField Ptr VkRenderPassInputAttachmentAspectCreateInfo
p
          = Ptr VkRenderPassInputAttachmentAspectCreateInfo
-> Int -> Word32 -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkRenderPassInputAttachmentAspectCreateInfo
p (Int
16)
{-# LINE 928 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         HasField "pAspectReferences"
           VkRenderPassInputAttachmentAspectCreateInfo
         where
        type FieldType "pAspectReferences"
               VkRenderPassInputAttachmentAspectCreateInfo
             = Ptr VkInputAttachmentAspectReference
        type FieldOptional "pAspectReferences"
               VkRenderPassInputAttachmentAspectCreateInfo
             = 'False -- ' closing tick for hsc2hs
        type FieldOffset "pAspectReferences"
               VkRenderPassInputAttachmentAspectCreateInfo
             =
             (24)
{-# LINE 943 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
        type FieldIsArray "pAspectReferences"
               VkRenderPassInputAttachmentAspectCreateInfo
             = 'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
False

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
24)
{-# LINE 953 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "pAspectReferences"
           VkRenderPassInputAttachmentAspectCreateInfo
         where
        {-# NOINLINE getField #-}
        getField :: VkRenderPassInputAttachmentAspectCreateInfo
-> FieldType
     "pAspectReferences" VkRenderPassInputAttachmentAspectCreateInfo
getField VkRenderPassInputAttachmentAspectCreateInfo
x
          = IO (Ptr VkInputAttachmentAspectReference)
-> Ptr VkInputAttachmentAspectReference
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkRenderPassInputAttachmentAspectCreateInfo
-> Int -> IO (Ptr VkInputAttachmentAspectReference)
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkRenderPassInputAttachmentAspectCreateInfo
-> Ptr VkRenderPassInputAttachmentAspectCreateInfo
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkRenderPassInputAttachmentAspectCreateInfo
x) (Int
24))
{-# LINE 962 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkRenderPassInputAttachmentAspectCreateInfo
-> IO
     (FieldType
        "pAspectReferences" VkRenderPassInputAttachmentAspectCreateInfo)
readField Ptr VkRenderPassInputAttachmentAspectCreateInfo
p
          = Ptr VkRenderPassInputAttachmentAspectCreateInfo
-> Int -> IO (Ptr VkInputAttachmentAspectReference)
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkRenderPassInputAttachmentAspectCreateInfo
p (Int
24)
{-# LINE 966 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "pAspectReferences"
           VkRenderPassInputAttachmentAspectCreateInfo
         where
        {-# INLINE writeField #-}
        writeField :: Ptr VkRenderPassInputAttachmentAspectCreateInfo
-> FieldType
     "pAspectReferences" VkRenderPassInputAttachmentAspectCreateInfo
-> IO ()
writeField Ptr VkRenderPassInputAttachmentAspectCreateInfo
p
          = Ptr VkRenderPassInputAttachmentAspectCreateInfo
-> Int -> Ptr VkInputAttachmentAspectReference -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkRenderPassInputAttachmentAspectCreateInfo
p (Int
24)
{-# LINE 974 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance Show VkRenderPassInputAttachmentAspectCreateInfo where
        showsPrec :: Int -> VkRenderPassInputAttachmentAspectCreateInfo -> ShowS
showsPrec Int
d VkRenderPassInputAttachmentAspectCreateInfo
x
          = String -> ShowS
showString String
"VkRenderPassInputAttachmentAspectCreateInfo {" ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
              String -> ShowS
showString String
"sType = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                Int -> VkStructureType -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d (VkRenderPassInputAttachmentAspectCreateInfo
-> FieldType "sType" VkRenderPassInputAttachmentAspectCreateInfo
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"sType" VkRenderPassInputAttachmentAspectCreateInfo
x) ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                  String -> ShowS
showString String
", " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                    String -> ShowS
showString String
"pNext = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                      Int -> Ptr Void -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d (VkRenderPassInputAttachmentAspectCreateInfo
-> FieldType "pNext" VkRenderPassInputAttachmentAspectCreateInfo
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"pNext" VkRenderPassInputAttachmentAspectCreateInfo
x) ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                        String -> ShowS
showString String
", " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                          String -> ShowS
showString String
"aspectReferenceCount = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                            Int -> Word32 -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d (VkRenderPassInputAttachmentAspectCreateInfo
-> FieldType
     "aspectReferenceCount" VkRenderPassInputAttachmentAspectCreateInfo
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"aspectReferenceCount" VkRenderPassInputAttachmentAspectCreateInfo
x) ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                              String -> ShowS
showString String
", " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                String -> ShowS
showString String
"pAspectReferences = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                  Int -> Ptr VkInputAttachmentAspectReference -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d (VkRenderPassInputAttachmentAspectCreateInfo
-> FieldType
     "pAspectReferences" VkRenderPassInputAttachmentAspectCreateInfo
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"pAspectReferences" VkRenderPassInputAttachmentAspectCreateInfo
x) ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Char -> ShowS
showChar Char
'}'

-- | Alias for `VkRenderPassInputAttachmentAspectCreateInfo`
type VkRenderPassInputAttachmentAspectCreateInfoKHR =
     VkRenderPassInputAttachmentAspectCreateInfo

-- | > typedef struct VkRenderPassMultiviewCreateInfo {
--   >     VkStructureType        sType;
--   >     const void*            pNext;
--   >     uint32_t               subpassCount;
--   >     const uint32_t*     pViewMasks;
--   >     uint32_t               dependencyCount;
--   >     const int32_t*   pViewOffsets;
--   >     uint32_t               correlationMaskCount;
--   >     const uint32_t* pCorrelationMasks;
--   > } VkRenderPassMultiviewCreateInfo;
--
--   <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/html/vkspec.html#VkRenderPassMultiviewCreateInfo VkRenderPassMultiviewCreateInfo registry at www.khronos.org>
data VkRenderPassMultiviewCreateInfo = VkRenderPassMultiviewCreateInfo# Addr#
                                                                        ByteArray#

instance Eq VkRenderPassMultiviewCreateInfo where
        (VkRenderPassMultiviewCreateInfo# Addr#
a ByteArray#
_) == :: VkRenderPassMultiviewCreateInfo
-> VkRenderPassMultiviewCreateInfo -> Bool
==
          x :: VkRenderPassMultiviewCreateInfo
x@(VkRenderPassMultiviewCreateInfo# Addr#
b ByteArray#
_)
          = Ordering
EQ Ordering -> Ordering -> Bool
forall a. Eq a => a -> a -> Bool
== Int -> Addr# -> Addr# -> Ordering
cmpBytes# (VkRenderPassMultiviewCreateInfo -> Int
forall a. Storable a => a -> Int
sizeOf VkRenderPassMultiviewCreateInfo
x) Addr#
a Addr#
b

        {-# INLINE (==) #-}

instance Ord VkRenderPassMultiviewCreateInfo where
        (VkRenderPassMultiviewCreateInfo# Addr#
a ByteArray#
_) compare :: VkRenderPassMultiviewCreateInfo
-> VkRenderPassMultiviewCreateInfo -> Ordering
`compare`
          x :: VkRenderPassMultiviewCreateInfo
x@(VkRenderPassMultiviewCreateInfo# Addr#
b ByteArray#
_) = Int -> Addr# -> Addr# -> Ordering
cmpBytes# (VkRenderPassMultiviewCreateInfo -> Int
forall a. Storable a => a -> Int
sizeOf VkRenderPassMultiviewCreateInfo
x) Addr#
a Addr#
b

        {-# INLINE compare #-}

instance Storable VkRenderPassMultiviewCreateInfo where
        sizeOf :: VkRenderPassMultiviewCreateInfo -> Int
sizeOf ~VkRenderPassMultiviewCreateInfo
_ = (Int
64)
{-# LINE 1024 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE sizeOf #-}
        alignment :: VkRenderPassMultiviewCreateInfo -> Int
alignment ~VkRenderPassMultiviewCreateInfo
_
          = Int
8
{-# LINE 1028 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE alignment #-}
        peek :: Ptr VkRenderPassMultiviewCreateInfo
-> IO VkRenderPassMultiviewCreateInfo
peek = Ptr VkRenderPassMultiviewCreateInfo
-> IO VkRenderPassMultiviewCreateInfo
forall a. (Storable a, VulkanMarshalPrim a) => Ptr a -> IO a
peekVkData#

        {-# INLINE peek #-}
        poke :: Ptr VkRenderPassMultiviewCreateInfo
-> VkRenderPassMultiviewCreateInfo -> IO ()
poke = Ptr VkRenderPassMultiviewCreateInfo
-> VkRenderPassMultiviewCreateInfo -> IO ()
forall a. (Storable a, VulkanMarshalPrim a) => Ptr a -> a -> IO ()
pokeVkData#

        {-# INLINE poke #-}

instance VulkanMarshalPrim VkRenderPassMultiviewCreateInfo where
        unsafeAddr :: VkRenderPassMultiviewCreateInfo -> Addr#
unsafeAddr (VkRenderPassMultiviewCreateInfo# Addr#
a ByteArray#
_) = Addr#
a

        {-# INLINE unsafeAddr #-}
        unsafeByteArray :: VkRenderPassMultiviewCreateInfo -> ByteArray#
unsafeByteArray (VkRenderPassMultiviewCreateInfo# Addr#
_ ByteArray#
b) = ByteArray#
b

        {-# INLINE unsafeByteArray #-}
        unsafeFromByteArrayOffset :: Int# -> ByteArray# -> VkRenderPassMultiviewCreateInfo
unsafeFromByteArrayOffset Int#
off ByteArray#
b
          = Addr# -> ByteArray# -> VkRenderPassMultiviewCreateInfo
VkRenderPassMultiviewCreateInfo#
              (Addr# -> Int# -> Addr#
plusAddr# (ByteArray# -> Addr#
byteArrayContents# ByteArray#
b) Int#
off)
              ByteArray#
b

        {-# INLINE unsafeFromByteArrayOffset #-}

instance VulkanMarshal VkRenderPassMultiviewCreateInfo where
        type StructFields VkRenderPassMultiviewCreateInfo =
             '["sType", "pNext", "subpassCount", "pViewMasks", -- ' closing tick for hsc2hs
               "dependencyCount", "pViewOffsets", "correlationMaskCount",
               "pCorrelationMasks"]
        type CUnionType VkRenderPassMultiviewCreateInfo = 'False -- ' closing tick for hsc2hs
        type ReturnedOnly VkRenderPassMultiviewCreateInfo = 'False -- ' closing tick for hsc2hs
        type StructExtends VkRenderPassMultiviewCreateInfo =
             '[VkRenderPassCreateInfo] -- ' closing tick for hsc2hs

instance {-# OVERLAPPING #-}
         HasField "sType" VkRenderPassMultiviewCreateInfo where
        type FieldType "sType" VkRenderPassMultiviewCreateInfo =
             VkStructureType
        type FieldOptional "sType" VkRenderPassMultiviewCreateInfo = 'False -- ' closing tick for hsc2hs
        type FieldOffset "sType" VkRenderPassMultiviewCreateInfo =
             (0)
{-# LINE 1068 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
        type FieldIsArray "sType" VkRenderPassMultiviewCreateInfo = 'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
False

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
0)
{-# LINE 1076 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "sType" VkRenderPassMultiviewCreateInfo where
        {-# NOINLINE getField #-}
        getField :: VkRenderPassMultiviewCreateInfo
-> FieldType "sType" VkRenderPassMultiviewCreateInfo
getField VkRenderPassMultiviewCreateInfo
x
          = IO VkStructureType -> VkStructureType
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkRenderPassMultiviewCreateInfo -> Int -> IO VkStructureType
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkRenderPassMultiviewCreateInfo
-> Ptr VkRenderPassMultiviewCreateInfo
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkRenderPassMultiviewCreateInfo
x) (Int
0))
{-# LINE 1083 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkRenderPassMultiviewCreateInfo
-> IO (FieldType "sType" VkRenderPassMultiviewCreateInfo)
readField Ptr VkRenderPassMultiviewCreateInfo
p
          = Ptr VkRenderPassMultiviewCreateInfo -> Int -> IO VkStructureType
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkRenderPassMultiviewCreateInfo
p (Int
0)
{-# LINE 1087 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "sType" VkRenderPassMultiviewCreateInfo where
        {-# INLINE writeField #-}
        writeField :: Ptr VkRenderPassMultiviewCreateInfo
-> FieldType "sType" VkRenderPassMultiviewCreateInfo -> IO ()
writeField Ptr VkRenderPassMultiviewCreateInfo
p
          = Ptr VkRenderPassMultiviewCreateInfo
-> Int -> VkStructureType -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkRenderPassMultiviewCreateInfo
p (Int
0)
{-# LINE 1093 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         HasField "pNext" VkRenderPassMultiviewCreateInfo where
        type FieldType "pNext" VkRenderPassMultiviewCreateInfo = Ptr Void
        type FieldOptional "pNext" VkRenderPassMultiviewCreateInfo = 'False -- ' closing tick for hsc2hs
        type FieldOffset "pNext" VkRenderPassMultiviewCreateInfo =
             (8)
{-# LINE 1100 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
        type FieldIsArray "pNext" VkRenderPassMultiviewCreateInfo = 'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
False

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
8)
{-# LINE 1108 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "pNext" VkRenderPassMultiviewCreateInfo where
        {-# NOINLINE getField #-}
        getField :: VkRenderPassMultiviewCreateInfo
-> FieldType "pNext" VkRenderPassMultiviewCreateInfo
getField VkRenderPassMultiviewCreateInfo
x
          = IO (Ptr Void) -> Ptr Void
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkRenderPassMultiviewCreateInfo -> Int -> IO (Ptr Void)
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkRenderPassMultiviewCreateInfo
-> Ptr VkRenderPassMultiviewCreateInfo
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkRenderPassMultiviewCreateInfo
x) (Int
8))
{-# LINE 1115 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkRenderPassMultiviewCreateInfo
-> IO (FieldType "pNext" VkRenderPassMultiviewCreateInfo)
readField Ptr VkRenderPassMultiviewCreateInfo
p
          = Ptr VkRenderPassMultiviewCreateInfo -> Int -> IO (Ptr Void)
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkRenderPassMultiviewCreateInfo
p (Int
8)
{-# LINE 1119 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "pNext" VkRenderPassMultiviewCreateInfo where
        {-# INLINE writeField #-}
        writeField :: Ptr VkRenderPassMultiviewCreateInfo
-> FieldType "pNext" VkRenderPassMultiviewCreateInfo -> IO ()
writeField Ptr VkRenderPassMultiviewCreateInfo
p
          = Ptr VkRenderPassMultiviewCreateInfo -> Int -> Ptr Void -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkRenderPassMultiviewCreateInfo
p (Int
8)
{-# LINE 1125 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         HasField "subpassCount" VkRenderPassMultiviewCreateInfo where
        type FieldType "subpassCount" VkRenderPassMultiviewCreateInfo =
             Word32
        type FieldOptional "subpassCount" VkRenderPassMultiviewCreateInfo =
             'True -- ' closing tick for hsc2hs
        type FieldOffset "subpassCount" VkRenderPassMultiviewCreateInfo =
             (16)
{-# LINE 1134 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
        type FieldIsArray "subpassCount" VkRenderPassMultiviewCreateInfo =
             'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
True

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
16)
{-# LINE 1143 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "subpassCount" VkRenderPassMultiviewCreateInfo where
        {-# NOINLINE getField #-}
        getField :: VkRenderPassMultiviewCreateInfo
-> FieldType "subpassCount" VkRenderPassMultiviewCreateInfo
getField VkRenderPassMultiviewCreateInfo
x
          = IO Word32 -> Word32
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkRenderPassMultiviewCreateInfo -> Int -> IO Word32
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkRenderPassMultiviewCreateInfo
-> Ptr VkRenderPassMultiviewCreateInfo
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkRenderPassMultiviewCreateInfo
x) (Int
16))
{-# LINE 1150 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkRenderPassMultiviewCreateInfo
-> IO (FieldType "subpassCount" VkRenderPassMultiviewCreateInfo)
readField Ptr VkRenderPassMultiviewCreateInfo
p
          = Ptr VkRenderPassMultiviewCreateInfo -> Int -> IO Word32
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkRenderPassMultiviewCreateInfo
p (Int
16)
{-# LINE 1154 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "subpassCount" VkRenderPassMultiviewCreateInfo where
        {-# INLINE writeField #-}
        writeField :: Ptr VkRenderPassMultiviewCreateInfo
-> FieldType "subpassCount" VkRenderPassMultiviewCreateInfo
-> IO ()
writeField Ptr VkRenderPassMultiviewCreateInfo
p
          = Ptr VkRenderPassMultiviewCreateInfo -> Int -> Word32 -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkRenderPassMultiviewCreateInfo
p (Int
16)
{-# LINE 1160 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         HasField "pViewMasks" VkRenderPassMultiviewCreateInfo where
        type FieldType "pViewMasks" VkRenderPassMultiviewCreateInfo =
             Ptr Word32
        type FieldOptional "pViewMasks" VkRenderPassMultiviewCreateInfo =
             'False -- ' closing tick for hsc2hs
        type FieldOffset "pViewMasks" VkRenderPassMultiviewCreateInfo =
             (24)
{-# LINE 1169 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
        type FieldIsArray "pViewMasks" VkRenderPassMultiviewCreateInfo =
             'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
False

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
24)
{-# LINE 1178 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "pViewMasks" VkRenderPassMultiviewCreateInfo where
        {-# NOINLINE getField #-}
        getField :: VkRenderPassMultiviewCreateInfo
-> FieldType "pViewMasks" VkRenderPassMultiviewCreateInfo
getField VkRenderPassMultiviewCreateInfo
x
          = IO (Ptr Word32) -> Ptr Word32
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkRenderPassMultiviewCreateInfo -> Int -> IO (Ptr Word32)
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkRenderPassMultiviewCreateInfo
-> Ptr VkRenderPassMultiviewCreateInfo
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkRenderPassMultiviewCreateInfo
x) (Int
24))
{-# LINE 1185 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkRenderPassMultiviewCreateInfo
-> IO (FieldType "pViewMasks" VkRenderPassMultiviewCreateInfo)
readField Ptr VkRenderPassMultiviewCreateInfo
p
          = Ptr VkRenderPassMultiviewCreateInfo -> Int -> IO (Ptr Word32)
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkRenderPassMultiviewCreateInfo
p (Int
24)
{-# LINE 1189 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "pViewMasks" VkRenderPassMultiviewCreateInfo where
        {-# INLINE writeField #-}
        writeField :: Ptr VkRenderPassMultiviewCreateInfo
-> FieldType "pViewMasks" VkRenderPassMultiviewCreateInfo -> IO ()
writeField Ptr VkRenderPassMultiviewCreateInfo
p
          = Ptr VkRenderPassMultiviewCreateInfo -> Int -> Ptr Word32 -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkRenderPassMultiviewCreateInfo
p (Int
24)
{-# LINE 1195 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         HasField "dependencyCount" VkRenderPassMultiviewCreateInfo where
        type FieldType "dependencyCount" VkRenderPassMultiviewCreateInfo =
             Word32
        type FieldOptional "dependencyCount"
               VkRenderPassMultiviewCreateInfo
             = 'True -- ' closing tick for hsc2hs
        type FieldOffset "dependencyCount" VkRenderPassMultiviewCreateInfo
             =
             (32)
{-# LINE 1206 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
        type FieldIsArray "dependencyCount" VkRenderPassMultiviewCreateInfo
             = 'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
True

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
32)
{-# LINE 1215 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "dependencyCount" VkRenderPassMultiviewCreateInfo
         where
        {-# NOINLINE getField #-}
        getField :: VkRenderPassMultiviewCreateInfo
-> FieldType "dependencyCount" VkRenderPassMultiviewCreateInfo
getField VkRenderPassMultiviewCreateInfo
x
          = IO Word32 -> Word32
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkRenderPassMultiviewCreateInfo -> Int -> IO Word32
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkRenderPassMultiviewCreateInfo
-> Ptr VkRenderPassMultiviewCreateInfo
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkRenderPassMultiviewCreateInfo
x) (Int
32))
{-# LINE 1223 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkRenderPassMultiviewCreateInfo
-> IO (FieldType "dependencyCount" VkRenderPassMultiviewCreateInfo)
readField Ptr VkRenderPassMultiviewCreateInfo
p
          = Ptr VkRenderPassMultiviewCreateInfo -> Int -> IO Word32
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkRenderPassMultiviewCreateInfo
p (Int
32)
{-# LINE 1227 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "dependencyCount" VkRenderPassMultiviewCreateInfo
         where
        {-# INLINE writeField #-}
        writeField :: Ptr VkRenderPassMultiviewCreateInfo
-> FieldType "dependencyCount" VkRenderPassMultiviewCreateInfo
-> IO ()
writeField Ptr VkRenderPassMultiviewCreateInfo
p
          = Ptr VkRenderPassMultiviewCreateInfo -> Int -> Word32 -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkRenderPassMultiviewCreateInfo
p (Int
32)
{-# LINE 1234 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         HasField "pViewOffsets" VkRenderPassMultiviewCreateInfo where
        type FieldType "pViewOffsets" VkRenderPassMultiviewCreateInfo =
             Ptr Int32
        type FieldOptional "pViewOffsets" VkRenderPassMultiviewCreateInfo =
             'False -- ' closing tick for hsc2hs
        type FieldOffset "pViewOffsets" VkRenderPassMultiviewCreateInfo =
             (40)
{-# LINE 1243 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
        type FieldIsArray "pViewOffsets" VkRenderPassMultiviewCreateInfo =
             'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
False

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
40)
{-# LINE 1252 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "pViewOffsets" VkRenderPassMultiviewCreateInfo where
        {-# NOINLINE getField #-}
        getField :: VkRenderPassMultiviewCreateInfo
-> FieldType "pViewOffsets" VkRenderPassMultiviewCreateInfo
getField VkRenderPassMultiviewCreateInfo
x
          = IO (Ptr Int32) -> Ptr Int32
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkRenderPassMultiviewCreateInfo -> Int -> IO (Ptr Int32)
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkRenderPassMultiviewCreateInfo
-> Ptr VkRenderPassMultiviewCreateInfo
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkRenderPassMultiviewCreateInfo
x) (Int
40))
{-# LINE 1259 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkRenderPassMultiviewCreateInfo
-> IO (FieldType "pViewOffsets" VkRenderPassMultiviewCreateInfo)
readField Ptr VkRenderPassMultiviewCreateInfo
p
          = Ptr VkRenderPassMultiviewCreateInfo -> Int -> IO (Ptr Int32)
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkRenderPassMultiviewCreateInfo
p (Int
40)
{-# LINE 1263 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "pViewOffsets" VkRenderPassMultiviewCreateInfo where
        {-# INLINE writeField #-}
        writeField :: Ptr VkRenderPassMultiviewCreateInfo
-> FieldType "pViewOffsets" VkRenderPassMultiviewCreateInfo
-> IO ()
writeField Ptr VkRenderPassMultiviewCreateInfo
p
          = Ptr VkRenderPassMultiviewCreateInfo -> Int -> Ptr Int32 -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkRenderPassMultiviewCreateInfo
p (Int
40)
{-# LINE 1269 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         HasField "correlationMaskCount" VkRenderPassMultiviewCreateInfo
         where
        type FieldType "correlationMaskCount"
               VkRenderPassMultiviewCreateInfo
             = Word32
        type FieldOptional "correlationMaskCount"
               VkRenderPassMultiviewCreateInfo
             = 'True -- ' closing tick for hsc2hs
        type FieldOffset "correlationMaskCount"
               VkRenderPassMultiviewCreateInfo
             =
             (48)
{-# LINE 1283 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
        type FieldIsArray "correlationMaskCount"
               VkRenderPassMultiviewCreateInfo
             = 'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
True

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
48)
{-# LINE 1293 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "correlationMaskCount" VkRenderPassMultiviewCreateInfo
         where
        {-# NOINLINE getField #-}
        getField :: VkRenderPassMultiviewCreateInfo
-> FieldType "correlationMaskCount" VkRenderPassMultiviewCreateInfo
getField VkRenderPassMultiviewCreateInfo
x
          = IO Word32 -> Word32
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkRenderPassMultiviewCreateInfo -> Int -> IO Word32
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkRenderPassMultiviewCreateInfo
-> Ptr VkRenderPassMultiviewCreateInfo
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkRenderPassMultiviewCreateInfo
x) (Int
48))
{-# LINE 1301 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkRenderPassMultiviewCreateInfo
-> IO
     (FieldType "correlationMaskCount" VkRenderPassMultiviewCreateInfo)
readField Ptr VkRenderPassMultiviewCreateInfo
p
          = Ptr VkRenderPassMultiviewCreateInfo -> Int -> IO Word32
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkRenderPassMultiviewCreateInfo
p (Int
48)
{-# LINE 1305 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "correlationMaskCount"
           VkRenderPassMultiviewCreateInfo
         where
        {-# INLINE writeField #-}
        writeField :: Ptr VkRenderPassMultiviewCreateInfo
-> FieldType "correlationMaskCount" VkRenderPassMultiviewCreateInfo
-> IO ()
writeField Ptr VkRenderPassMultiviewCreateInfo
p
          = Ptr VkRenderPassMultiviewCreateInfo -> Int -> Word32 -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkRenderPassMultiviewCreateInfo
p (Int
48)
{-# LINE 1313 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         HasField "pCorrelationMasks" VkRenderPassMultiviewCreateInfo where
        type FieldType "pCorrelationMasks" VkRenderPassMultiviewCreateInfo
             = Ptr Word32
        type FieldOptional "pCorrelationMasks"
               VkRenderPassMultiviewCreateInfo
             = 'False -- ' closing tick for hsc2hs
        type FieldOffset "pCorrelationMasks"
               VkRenderPassMultiviewCreateInfo
             =
             (56)
{-# LINE 1325 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
        type FieldIsArray "pCorrelationMasks"
               VkRenderPassMultiviewCreateInfo
             = 'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
False

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
56)
{-# LINE 1335 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "pCorrelationMasks" VkRenderPassMultiviewCreateInfo
         where
        {-# NOINLINE getField #-}
        getField :: VkRenderPassMultiviewCreateInfo
-> FieldType "pCorrelationMasks" VkRenderPassMultiviewCreateInfo
getField VkRenderPassMultiviewCreateInfo
x
          = IO (Ptr Word32) -> Ptr Word32
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkRenderPassMultiviewCreateInfo -> Int -> IO (Ptr Word32)
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkRenderPassMultiviewCreateInfo
-> Ptr VkRenderPassMultiviewCreateInfo
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkRenderPassMultiviewCreateInfo
x) (Int
56))
{-# LINE 1343 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkRenderPassMultiviewCreateInfo
-> IO
     (FieldType "pCorrelationMasks" VkRenderPassMultiviewCreateInfo)
readField Ptr VkRenderPassMultiviewCreateInfo
p
          = Ptr VkRenderPassMultiviewCreateInfo -> Int -> IO (Ptr Word32)
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkRenderPassMultiviewCreateInfo
p (Int
56)
{-# LINE 1347 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "pCorrelationMasks" VkRenderPassMultiviewCreateInfo
         where
        {-# INLINE writeField #-}
        writeField :: Ptr VkRenderPassMultiviewCreateInfo
-> FieldType "pCorrelationMasks" VkRenderPassMultiviewCreateInfo
-> IO ()
writeField Ptr VkRenderPassMultiviewCreateInfo
p
          = Ptr VkRenderPassMultiviewCreateInfo -> Int -> Ptr Word32 -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkRenderPassMultiviewCreateInfo
p (Int
56)
{-# LINE 1354 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance Show VkRenderPassMultiviewCreateInfo where
        showsPrec :: Int -> VkRenderPassMultiviewCreateInfo -> ShowS
showsPrec Int
d VkRenderPassMultiviewCreateInfo
x
          = String -> ShowS
showString String
"VkRenderPassMultiviewCreateInfo {" ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
              String -> ShowS
showString String
"sType = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                Int -> VkStructureType -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d (VkRenderPassMultiviewCreateInfo
-> FieldType "sType" VkRenderPassMultiviewCreateInfo
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"sType" VkRenderPassMultiviewCreateInfo
x) ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                  String -> ShowS
showString String
", " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                    String -> ShowS
showString String
"pNext = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                      Int -> Ptr Void -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d (VkRenderPassMultiviewCreateInfo
-> FieldType "pNext" VkRenderPassMultiviewCreateInfo
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"pNext" VkRenderPassMultiviewCreateInfo
x) ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                        String -> ShowS
showString String
", " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                          String -> ShowS
showString String
"subpassCount = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                            Int -> Word32 -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d (VkRenderPassMultiviewCreateInfo
-> FieldType "subpassCount" VkRenderPassMultiviewCreateInfo
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"subpassCount" VkRenderPassMultiviewCreateInfo
x) ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                              String -> ShowS
showString String
", " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                String -> ShowS
showString String
"pViewMasks = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                  Int -> Ptr Word32 -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d (VkRenderPassMultiviewCreateInfo
-> FieldType "pViewMasks" VkRenderPassMultiviewCreateInfo
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"pViewMasks" VkRenderPassMultiviewCreateInfo
x) ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                    String -> ShowS
showString String
", " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                      String -> ShowS
showString String
"dependencyCount = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                        Int -> Word32 -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d (VkRenderPassMultiviewCreateInfo
-> FieldType "dependencyCount" VkRenderPassMultiviewCreateInfo
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"dependencyCount" VkRenderPassMultiviewCreateInfo
x) ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                          String -> ShowS
showString String
", " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                            String -> ShowS
showString String
"pViewOffsets = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                              Int -> Ptr Int32 -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d (VkRenderPassMultiviewCreateInfo
-> FieldType "pViewOffsets" VkRenderPassMultiviewCreateInfo
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"pViewOffsets" VkRenderPassMultiviewCreateInfo
x) ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                                String -> ShowS
showString String
", " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                                  String -> ShowS
showString String
"correlationMaskCount = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                                    Int -> Word32 -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d (VkRenderPassMultiviewCreateInfo
-> FieldType "correlationMaskCount" VkRenderPassMultiviewCreateInfo
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"correlationMaskCount" VkRenderPassMultiviewCreateInfo
x)
                                                      ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                                      String -> ShowS
showString String
", " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                                        String -> ShowS
showString String
"pCorrelationMasks = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                                          Int -> Ptr Word32 -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d
                                                            (VkRenderPassMultiviewCreateInfo
-> FieldType "pCorrelationMasks" VkRenderPassMultiviewCreateInfo
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"pCorrelationMasks" VkRenderPassMultiviewCreateInfo
x)
                                                            ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Char -> ShowS
showChar Char
'}'

-- | Alias for `VkRenderPassMultiviewCreateInfo`
type VkRenderPassMultiviewCreateInfoKHR =
     VkRenderPassMultiviewCreateInfo

-- | > typedef struct VkRenderPassSampleLocationsBeginInfoEXT {
--   >     VkStructureType sType;
--   >     const void*                      pNext;
--   >     uint32_t         attachmentInitialSampleLocationsCount;
--   >     const VkAttachmentSampleLocationsEXT* pAttachmentInitialSampleLocations;
--   >     uint32_t         postSubpassSampleLocationsCount;
--   >     const VkSubpassSampleLocationsEXT* pPostSubpassSampleLocations;
--   > } VkRenderPassSampleLocationsBeginInfoEXT;
--
--   <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/html/vkspec.html#VkRenderPassSampleLocationsBeginInfoEXT VkRenderPassSampleLocationsBeginInfoEXT registry at www.khronos.org>
data VkRenderPassSampleLocationsBeginInfoEXT = VkRenderPassSampleLocationsBeginInfoEXT# Addr#
                                                                                        ByteArray#

instance Eq VkRenderPassSampleLocationsBeginInfoEXT where
        (VkRenderPassSampleLocationsBeginInfoEXT# Addr#
a ByteArray#
_) == :: VkRenderPassSampleLocationsBeginInfoEXT
-> VkRenderPassSampleLocationsBeginInfoEXT -> Bool
==
          x :: VkRenderPassSampleLocationsBeginInfoEXT
x@(VkRenderPassSampleLocationsBeginInfoEXT# Addr#
b ByteArray#
_)
          = Ordering
EQ Ordering -> Ordering -> Bool
forall a. Eq a => a -> a -> Bool
== Int -> Addr# -> Addr# -> Ordering
cmpBytes# (VkRenderPassSampleLocationsBeginInfoEXT -> Int
forall a. Storable a => a -> Int
sizeOf VkRenderPassSampleLocationsBeginInfoEXT
x) Addr#
a Addr#
b

        {-# INLINE (==) #-}

instance Ord VkRenderPassSampleLocationsBeginInfoEXT where
        (VkRenderPassSampleLocationsBeginInfoEXT# Addr#
a ByteArray#
_) compare :: VkRenderPassSampleLocationsBeginInfoEXT
-> VkRenderPassSampleLocationsBeginInfoEXT -> Ordering
`compare`
          x :: VkRenderPassSampleLocationsBeginInfoEXT
x@(VkRenderPassSampleLocationsBeginInfoEXT# Addr#
b ByteArray#
_)
          = Int -> Addr# -> Addr# -> Ordering
cmpBytes# (VkRenderPassSampleLocationsBeginInfoEXT -> Int
forall a. Storable a => a -> Int
sizeOf VkRenderPassSampleLocationsBeginInfoEXT
x) Addr#
a Addr#
b

        {-# INLINE compare #-}

instance Storable VkRenderPassSampleLocationsBeginInfoEXT where
        sizeOf :: VkRenderPassSampleLocationsBeginInfoEXT -> Int
sizeOf ~VkRenderPassSampleLocationsBeginInfoEXT
_
          = (Int
48)
{-# LINE 1419 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE sizeOf #-}
        alignment :: VkRenderPassSampleLocationsBeginInfoEXT -> Int
alignment ~VkRenderPassSampleLocationsBeginInfoEXT
_
          = Int
8
{-# LINE 1423 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE alignment #-}
        peek :: Ptr VkRenderPassSampleLocationsBeginInfoEXT
-> IO VkRenderPassSampleLocationsBeginInfoEXT
peek = Ptr VkRenderPassSampleLocationsBeginInfoEXT
-> IO VkRenderPassSampleLocationsBeginInfoEXT
forall a. (Storable a, VulkanMarshalPrim a) => Ptr a -> IO a
peekVkData#

        {-# INLINE peek #-}
        poke :: Ptr VkRenderPassSampleLocationsBeginInfoEXT
-> VkRenderPassSampleLocationsBeginInfoEXT -> IO ()
poke = Ptr VkRenderPassSampleLocationsBeginInfoEXT
-> VkRenderPassSampleLocationsBeginInfoEXT -> IO ()
forall a. (Storable a, VulkanMarshalPrim a) => Ptr a -> a -> IO ()
pokeVkData#

        {-# INLINE poke #-}

instance VulkanMarshalPrim VkRenderPassSampleLocationsBeginInfoEXT
         where
        unsafeAddr :: VkRenderPassSampleLocationsBeginInfoEXT -> Addr#
unsafeAddr (VkRenderPassSampleLocationsBeginInfoEXT# Addr#
a ByteArray#
_) = Addr#
a

        {-# INLINE unsafeAddr #-}
        unsafeByteArray :: VkRenderPassSampleLocationsBeginInfoEXT -> ByteArray#
unsafeByteArray (VkRenderPassSampleLocationsBeginInfoEXT# Addr#
_ ByteArray#
b) = ByteArray#
b

        {-# INLINE unsafeByteArray #-}
        unsafeFromByteArrayOffset :: Int# -> ByteArray# -> VkRenderPassSampleLocationsBeginInfoEXT
unsafeFromByteArrayOffset Int#
off ByteArray#
b
          = Addr# -> ByteArray# -> VkRenderPassSampleLocationsBeginInfoEXT
VkRenderPassSampleLocationsBeginInfoEXT#
              (Addr# -> Int# -> Addr#
plusAddr# (ByteArray# -> Addr#
byteArrayContents# ByteArray#
b) Int#
off)
              ByteArray#
b

        {-# INLINE unsafeFromByteArrayOffset #-}

instance VulkanMarshal VkRenderPassSampleLocationsBeginInfoEXT
         where
        type StructFields VkRenderPassSampleLocationsBeginInfoEXT =
             '["sType", "pNext", "attachmentInitialSampleLocationsCount", -- ' closing tick for hsc2hs
               "pAttachmentInitialSampleLocations",
               "postSubpassSampleLocationsCount", "pPostSubpassSampleLocations"]
        type CUnionType VkRenderPassSampleLocationsBeginInfoEXT = 'False -- ' closing tick for hsc2hs
        type ReturnedOnly VkRenderPassSampleLocationsBeginInfoEXT = 'False -- ' closing tick for hsc2hs
        type StructExtends VkRenderPassSampleLocationsBeginInfoEXT =
             '[VkRenderPassBeginInfo] -- ' closing tick for hsc2hs

instance {-# OVERLAPPING #-}
         HasField "sType" VkRenderPassSampleLocationsBeginInfoEXT where
        type FieldType "sType" VkRenderPassSampleLocationsBeginInfoEXT =
             VkStructureType
        type FieldOptional "sType" VkRenderPassSampleLocationsBeginInfoEXT
             = 'False -- ' closing tick for hsc2hs
        type FieldOffset "sType" VkRenderPassSampleLocationsBeginInfoEXT =
             (0)
{-# LINE 1466 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
        type FieldIsArray "sType" VkRenderPassSampleLocationsBeginInfoEXT =
             'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
False

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
0)
{-# LINE 1475 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "sType" VkRenderPassSampleLocationsBeginInfoEXT where
        {-# NOINLINE getField #-}
        getField :: VkRenderPassSampleLocationsBeginInfoEXT
-> FieldType "sType" VkRenderPassSampleLocationsBeginInfoEXT
getField VkRenderPassSampleLocationsBeginInfoEXT
x
          = IO VkStructureType -> VkStructureType
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkRenderPassSampleLocationsBeginInfoEXT
-> Int -> IO VkStructureType
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkRenderPassSampleLocationsBeginInfoEXT
-> Ptr VkRenderPassSampleLocationsBeginInfoEXT
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkRenderPassSampleLocationsBeginInfoEXT
x) (Int
0))
{-# LINE 1482 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkRenderPassSampleLocationsBeginInfoEXT
-> IO (FieldType "sType" VkRenderPassSampleLocationsBeginInfoEXT)
readField Ptr VkRenderPassSampleLocationsBeginInfoEXT
p
          = Ptr VkRenderPassSampleLocationsBeginInfoEXT
-> Int -> IO VkStructureType
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkRenderPassSampleLocationsBeginInfoEXT
p (Int
0)
{-# LINE 1486 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "sType" VkRenderPassSampleLocationsBeginInfoEXT where
        {-# INLINE writeField #-}
        writeField :: Ptr VkRenderPassSampleLocationsBeginInfoEXT
-> FieldType "sType" VkRenderPassSampleLocationsBeginInfoEXT
-> IO ()
writeField Ptr VkRenderPassSampleLocationsBeginInfoEXT
p
          = Ptr VkRenderPassSampleLocationsBeginInfoEXT
-> Int -> VkStructureType -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkRenderPassSampleLocationsBeginInfoEXT
p (Int
0)
{-# LINE 1492 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         HasField "pNext" VkRenderPassSampleLocationsBeginInfoEXT where
        type FieldType "pNext" VkRenderPassSampleLocationsBeginInfoEXT =
             Ptr Void
        type FieldOptional "pNext" VkRenderPassSampleLocationsBeginInfoEXT
             = 'False -- ' closing tick for hsc2hs
        type FieldOffset "pNext" VkRenderPassSampleLocationsBeginInfoEXT =
             (8)
{-# LINE 1501 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
        type FieldIsArray "pNext" VkRenderPassSampleLocationsBeginInfoEXT =
             'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
False

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
8)
{-# LINE 1510 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "pNext" VkRenderPassSampleLocationsBeginInfoEXT where
        {-# NOINLINE getField #-}
        getField :: VkRenderPassSampleLocationsBeginInfoEXT
-> FieldType "pNext" VkRenderPassSampleLocationsBeginInfoEXT
getField VkRenderPassSampleLocationsBeginInfoEXT
x
          = IO (Ptr Void) -> Ptr Void
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkRenderPassSampleLocationsBeginInfoEXT -> Int -> IO (Ptr Void)
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkRenderPassSampleLocationsBeginInfoEXT
-> Ptr VkRenderPassSampleLocationsBeginInfoEXT
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkRenderPassSampleLocationsBeginInfoEXT
x) (Int
8))
{-# LINE 1517 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkRenderPassSampleLocationsBeginInfoEXT
-> IO (FieldType "pNext" VkRenderPassSampleLocationsBeginInfoEXT)
readField Ptr VkRenderPassSampleLocationsBeginInfoEXT
p
          = Ptr VkRenderPassSampleLocationsBeginInfoEXT -> Int -> IO (Ptr Void)
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkRenderPassSampleLocationsBeginInfoEXT
p (Int
8)
{-# LINE 1521 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "pNext" VkRenderPassSampleLocationsBeginInfoEXT where
        {-# INLINE writeField #-}
        writeField :: Ptr VkRenderPassSampleLocationsBeginInfoEXT
-> FieldType "pNext" VkRenderPassSampleLocationsBeginInfoEXT
-> IO ()
writeField Ptr VkRenderPassSampleLocationsBeginInfoEXT
p
          = Ptr VkRenderPassSampleLocationsBeginInfoEXT
-> Int -> Ptr Void -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkRenderPassSampleLocationsBeginInfoEXT
p (Int
8)
{-# LINE 1527 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         HasField "attachmentInitialSampleLocationsCount"
           VkRenderPassSampleLocationsBeginInfoEXT
         where
        type FieldType "attachmentInitialSampleLocationsCount"
               VkRenderPassSampleLocationsBeginInfoEXT
             = Word32
        type FieldOptional "attachmentInitialSampleLocationsCount"
               VkRenderPassSampleLocationsBeginInfoEXT
             = 'True -- ' closing tick for hsc2hs
        type FieldOffset "attachmentInitialSampleLocationsCount"
               VkRenderPassSampleLocationsBeginInfoEXT
             =
             (16)
{-# LINE 1542 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
        type FieldIsArray "attachmentInitialSampleLocationsCount"
               VkRenderPassSampleLocationsBeginInfoEXT
             = 'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
True

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
16)
{-# LINE 1552 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "attachmentInitialSampleLocationsCount"
           VkRenderPassSampleLocationsBeginInfoEXT
         where
        {-# NOINLINE getField #-}
        getField :: VkRenderPassSampleLocationsBeginInfoEXT
-> FieldType
     "attachmentInitialSampleLocationsCount"
     VkRenderPassSampleLocationsBeginInfoEXT
getField VkRenderPassSampleLocationsBeginInfoEXT
x
          = IO Word32 -> Word32
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkRenderPassSampleLocationsBeginInfoEXT -> Int -> IO Word32
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkRenderPassSampleLocationsBeginInfoEXT
-> Ptr VkRenderPassSampleLocationsBeginInfoEXT
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkRenderPassSampleLocationsBeginInfoEXT
x) (Int
16))
{-# LINE 1561 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkRenderPassSampleLocationsBeginInfoEXT
-> IO
     (FieldType
        "attachmentInitialSampleLocationsCount"
        VkRenderPassSampleLocationsBeginInfoEXT)
readField Ptr VkRenderPassSampleLocationsBeginInfoEXT
p
          = Ptr VkRenderPassSampleLocationsBeginInfoEXT -> Int -> IO Word32
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkRenderPassSampleLocationsBeginInfoEXT
p (Int
16)
{-# LINE 1565 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "attachmentInitialSampleLocationsCount"
           VkRenderPassSampleLocationsBeginInfoEXT
         where
        {-# INLINE writeField #-}
        writeField :: Ptr VkRenderPassSampleLocationsBeginInfoEXT
-> FieldType
     "attachmentInitialSampleLocationsCount"
     VkRenderPassSampleLocationsBeginInfoEXT
-> IO ()
writeField Ptr VkRenderPassSampleLocationsBeginInfoEXT
p
          = Ptr VkRenderPassSampleLocationsBeginInfoEXT
-> Int -> Word32 -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkRenderPassSampleLocationsBeginInfoEXT
p (Int
16)
{-# LINE 1573 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         HasField "pAttachmentInitialSampleLocations"
           VkRenderPassSampleLocationsBeginInfoEXT
         where
        type FieldType "pAttachmentInitialSampleLocations"
               VkRenderPassSampleLocationsBeginInfoEXT
             = Ptr VkAttachmentSampleLocationsEXT
        type FieldOptional "pAttachmentInitialSampleLocations"
               VkRenderPassSampleLocationsBeginInfoEXT
             = 'False -- ' closing tick for hsc2hs
        type FieldOffset "pAttachmentInitialSampleLocations"
               VkRenderPassSampleLocationsBeginInfoEXT
             =
             (24)
{-# LINE 1588 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
        type FieldIsArray "pAttachmentInitialSampleLocations"
               VkRenderPassSampleLocationsBeginInfoEXT
             = 'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
False

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
24)
{-# LINE 1598 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "pAttachmentInitialSampleLocations"
           VkRenderPassSampleLocationsBeginInfoEXT
         where
        {-# NOINLINE getField #-}
        getField :: VkRenderPassSampleLocationsBeginInfoEXT
-> FieldType
     "pAttachmentInitialSampleLocations"
     VkRenderPassSampleLocationsBeginInfoEXT
getField VkRenderPassSampleLocationsBeginInfoEXT
x
          = IO (Ptr VkAttachmentSampleLocationsEXT)
-> Ptr VkAttachmentSampleLocationsEXT
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkRenderPassSampleLocationsBeginInfoEXT
-> Int -> IO (Ptr VkAttachmentSampleLocationsEXT)
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkRenderPassSampleLocationsBeginInfoEXT
-> Ptr VkRenderPassSampleLocationsBeginInfoEXT
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkRenderPassSampleLocationsBeginInfoEXT
x) (Int
24))
{-# LINE 1607 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkRenderPassSampleLocationsBeginInfoEXT
-> IO
     (FieldType
        "pAttachmentInitialSampleLocations"
        VkRenderPassSampleLocationsBeginInfoEXT)
readField Ptr VkRenderPassSampleLocationsBeginInfoEXT
p
          = Ptr VkRenderPassSampleLocationsBeginInfoEXT
-> Int -> IO (Ptr VkAttachmentSampleLocationsEXT)
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkRenderPassSampleLocationsBeginInfoEXT
p (Int
24)
{-# LINE 1611 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "pAttachmentInitialSampleLocations"
           VkRenderPassSampleLocationsBeginInfoEXT
         where
        {-# INLINE writeField #-}
        writeField :: Ptr VkRenderPassSampleLocationsBeginInfoEXT
-> FieldType
     "pAttachmentInitialSampleLocations"
     VkRenderPassSampleLocationsBeginInfoEXT
-> IO ()
writeField Ptr VkRenderPassSampleLocationsBeginInfoEXT
p
          = Ptr VkRenderPassSampleLocationsBeginInfoEXT
-> Int -> Ptr VkAttachmentSampleLocationsEXT -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkRenderPassSampleLocationsBeginInfoEXT
p (Int
24)
{-# LINE 1619 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         HasField "postSubpassSampleLocationsCount"
           VkRenderPassSampleLocationsBeginInfoEXT
         where
        type FieldType "postSubpassSampleLocationsCount"
               VkRenderPassSampleLocationsBeginInfoEXT
             = Word32
        type FieldOptional "postSubpassSampleLocationsCount"
               VkRenderPassSampleLocationsBeginInfoEXT
             = 'True -- ' closing tick for hsc2hs
        type FieldOffset "postSubpassSampleLocationsCount"
               VkRenderPassSampleLocationsBeginInfoEXT
             =
             (32)
{-# LINE 1634 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
        type FieldIsArray "postSubpassSampleLocationsCount"
               VkRenderPassSampleLocationsBeginInfoEXT
             = 'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
True

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
32)
{-# LINE 1644 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "postSubpassSampleLocationsCount"
           VkRenderPassSampleLocationsBeginInfoEXT
         where
        {-# NOINLINE getField #-}
        getField :: VkRenderPassSampleLocationsBeginInfoEXT
-> FieldType
     "postSubpassSampleLocationsCount"
     VkRenderPassSampleLocationsBeginInfoEXT
getField VkRenderPassSampleLocationsBeginInfoEXT
x
          = IO Word32 -> Word32
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkRenderPassSampleLocationsBeginInfoEXT -> Int -> IO Word32
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkRenderPassSampleLocationsBeginInfoEXT
-> Ptr VkRenderPassSampleLocationsBeginInfoEXT
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkRenderPassSampleLocationsBeginInfoEXT
x) (Int
32))
{-# LINE 1653 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkRenderPassSampleLocationsBeginInfoEXT
-> IO
     (FieldType
        "postSubpassSampleLocationsCount"
        VkRenderPassSampleLocationsBeginInfoEXT)
readField Ptr VkRenderPassSampleLocationsBeginInfoEXT
p
          = Ptr VkRenderPassSampleLocationsBeginInfoEXT -> Int -> IO Word32
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkRenderPassSampleLocationsBeginInfoEXT
p (Int
32)
{-# LINE 1657 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "postSubpassSampleLocationsCount"
           VkRenderPassSampleLocationsBeginInfoEXT
         where
        {-# INLINE writeField #-}
        writeField :: Ptr VkRenderPassSampleLocationsBeginInfoEXT
-> FieldType
     "postSubpassSampleLocationsCount"
     VkRenderPassSampleLocationsBeginInfoEXT
-> IO ()
writeField Ptr VkRenderPassSampleLocationsBeginInfoEXT
p
          = Ptr VkRenderPassSampleLocationsBeginInfoEXT
-> Int -> Word32 -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkRenderPassSampleLocationsBeginInfoEXT
p (Int
32)
{-# LINE 1665 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         HasField "pPostSubpassSampleLocations"
           VkRenderPassSampleLocationsBeginInfoEXT
         where
        type FieldType "pPostSubpassSampleLocations"
               VkRenderPassSampleLocationsBeginInfoEXT
             = Ptr VkSubpassSampleLocationsEXT
        type FieldOptional "pPostSubpassSampleLocations"
               VkRenderPassSampleLocationsBeginInfoEXT
             = 'False -- ' closing tick for hsc2hs
        type FieldOffset "pPostSubpassSampleLocations"
               VkRenderPassSampleLocationsBeginInfoEXT
             =
             (40)
{-# LINE 1680 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
        type FieldIsArray "pPostSubpassSampleLocations"
               VkRenderPassSampleLocationsBeginInfoEXT
             = 'False -- ' closing tick for hsc2hs

        {-# INLINE fieldOptional #-}
        fieldOptional :: Bool
fieldOptional = Bool
False

        {-# INLINE fieldOffset #-}
        fieldOffset :: Int
fieldOffset
          = (Int
40)
{-# LINE 1690 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanReadField "pPostSubpassSampleLocations"
           VkRenderPassSampleLocationsBeginInfoEXT
         where
        {-# NOINLINE getField #-}
        getField :: VkRenderPassSampleLocationsBeginInfoEXT
-> FieldType
     "pPostSubpassSampleLocations"
     VkRenderPassSampleLocationsBeginInfoEXT
getField VkRenderPassSampleLocationsBeginInfoEXT
x
          = IO (Ptr VkSubpassSampleLocationsEXT)
-> Ptr VkSubpassSampleLocationsEXT
forall a. IO a -> a
unsafeDupablePerformIO
              (Ptr VkRenderPassSampleLocationsBeginInfoEXT
-> Int -> IO (Ptr VkSubpassSampleLocationsEXT)
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff (VkRenderPassSampleLocationsBeginInfoEXT
-> Ptr VkRenderPassSampleLocationsBeginInfoEXT
forall a. VulkanMarshal a => a -> Ptr a
unsafePtr VkRenderPassSampleLocationsBeginInfoEXT
x) (Int
40))
{-# LINE 1699 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

        {-# INLINE readField #-}
        readField :: Ptr VkRenderPassSampleLocationsBeginInfoEXT
-> IO
     (FieldType
        "pPostSubpassSampleLocations"
        VkRenderPassSampleLocationsBeginInfoEXT)
readField Ptr VkRenderPassSampleLocationsBeginInfoEXT
p
          = Ptr VkRenderPassSampleLocationsBeginInfoEXT
-> Int -> IO (Ptr VkSubpassSampleLocationsEXT)
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr VkRenderPassSampleLocationsBeginInfoEXT
p (Int
40)
{-# LINE 1703 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance {-# OVERLAPPING #-}
         CanWriteField "pPostSubpassSampleLocations"
           VkRenderPassSampleLocationsBeginInfoEXT
         where
        {-# INLINE writeField #-}
        writeField :: Ptr VkRenderPassSampleLocationsBeginInfoEXT
-> FieldType
     "pPostSubpassSampleLocations"
     VkRenderPassSampleLocationsBeginInfoEXT
-> IO ()
writeField Ptr VkRenderPassSampleLocationsBeginInfoEXT
p
          = Ptr VkRenderPassSampleLocationsBeginInfoEXT
-> Int -> Ptr VkSubpassSampleLocationsEXT -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr VkRenderPassSampleLocationsBeginInfoEXT
p (Int
40)
{-# LINE 1711 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}

instance Show VkRenderPassSampleLocationsBeginInfoEXT where
        showsPrec :: Int -> VkRenderPassSampleLocationsBeginInfoEXT -> ShowS
showsPrec Int
d VkRenderPassSampleLocationsBeginInfoEXT
x
          = String -> ShowS
showString String
"VkRenderPassSampleLocationsBeginInfoEXT {" ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
              String -> ShowS
showString String
"sType = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                Int -> VkStructureType -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d (VkRenderPassSampleLocationsBeginInfoEXT
-> FieldType "sType" VkRenderPassSampleLocationsBeginInfoEXT
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"sType" VkRenderPassSampleLocationsBeginInfoEXT
x) ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                  String -> ShowS
showString String
", " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                    String -> ShowS
showString String
"pNext = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                      Int -> Ptr Void -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d (VkRenderPassSampleLocationsBeginInfoEXT
-> FieldType "pNext" VkRenderPassSampleLocationsBeginInfoEXT
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"pNext" VkRenderPassSampleLocationsBeginInfoEXT
x) ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                        String -> ShowS
showString String
", " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                          String -> ShowS
showString String
"attachmentInitialSampleLocationsCount = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                            Int -> Word32 -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d (VkRenderPassSampleLocationsBeginInfoEXT
-> FieldType
     "attachmentInitialSampleLocationsCount"
     VkRenderPassSampleLocationsBeginInfoEXT
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"attachmentInitialSampleLocationsCount" VkRenderPassSampleLocationsBeginInfoEXT
x) ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                              String -> ShowS
showString String
", " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                String -> ShowS
showString String
"pAttachmentInitialSampleLocations = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                  Int -> Ptr VkAttachmentSampleLocationsEXT -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d (VkRenderPassSampleLocationsBeginInfoEXT
-> FieldType
     "pAttachmentInitialSampleLocations"
     VkRenderPassSampleLocationsBeginInfoEXT
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"pAttachmentInitialSampleLocations" VkRenderPassSampleLocationsBeginInfoEXT
x) ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                    String -> ShowS
showString String
", " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                      String -> ShowS
showString String
"postSubpassSampleLocationsCount = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                        Int -> Word32 -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d (VkRenderPassSampleLocationsBeginInfoEXT
-> FieldType
     "postSubpassSampleLocationsCount"
     VkRenderPassSampleLocationsBeginInfoEXT
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"postSubpassSampleLocationsCount" VkRenderPassSampleLocationsBeginInfoEXT
x)
                                          ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                          String -> ShowS
showString String
", " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                            String -> ShowS
showString String
"pPostSubpassSampleLocations = " ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
.
                                              Int -> Ptr VkSubpassSampleLocationsEXT -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
d
                                                (VkRenderPassSampleLocationsBeginInfoEXT
-> FieldType
     "pPostSubpassSampleLocations"
     VkRenderPassSampleLocationsBeginInfoEXT
forall (fname :: Symbol) a.
CanReadField fname a =>
a -> FieldType fname a
getField @"pPostSubpassSampleLocations" VkRenderPassSampleLocationsBeginInfoEXT
x)
                                                ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Char -> ShowS
showChar Char
'}'