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


{-# LANGUAGE DataKinds             #-}
{-# LANGUAGE FlexibleInstances     #-}
{-# LANGUAGE MultiParamTypeClasses #-}
{-# LANGUAGE Strict                #-}
{-# LANGUAGE TypeFamilies          #-}
module Graphics.Vulkan.Types.Struct.RenderPass
       (VkRenderPassAttachmentBeginInfo,
        VkRenderPassAttachmentBeginInfoKHR, VkRenderPassBeginInfo,
        VkRenderPassCreateInfo, VkRenderPassCreateInfo2,
        VkRenderPassCreateInfo2KHR,
        VkRenderPassFragmentDensityMapCreateInfoEXT,
        VkRenderPassInputAttachmentAspectCreateInfo,
        VkRenderPassInputAttachmentAspectCreateInfoKHR,
        VkRenderPassMultiviewCreateInfo,
        VkRenderPassMultiviewCreateInfoKHR,
        VkRenderPassSampleLocationsBeginInfoEXT,
        VkRenderPassTransformBeginInfoQCOM)
       where
import Graphics.Vulkan.Marshal
import Graphics.Vulkan.Marshal.Internal
import Graphics.Vulkan.Types.Enum.RenderPassCreateFlags            (VkRenderPassCreateFlags)
import Graphics.Vulkan.Types.Enum.StructureType                    (VkStructureType)
import Graphics.Vulkan.Types.Enum.Surface                          (VkSurfaceTransformFlagBitsKHR)
import Graphics.Vulkan.Types.Handles                               (VkFramebuffer,
                                                                    VkImageView,
                                                                    VkRenderPass)
import Graphics.Vulkan.Types.Struct.Attachment                     (VkAttachmentDescription,
                                                                    VkAttachmentDescription2,
                                                                    VkAttachmentReference,
                                                                    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,
                                                                    VkSubpassDependency2,
                                                                    VkSubpassDescription,
                                                                    VkSubpassDescription2,
                                                                    VkSubpassSampleLocationsEXT)

-- | > typedef struct VkRenderPassAttachmentBeginInfo {
--   >     VkStructureType sType;
--   >     const void*                              pNext;
--   >     uint32_t                 attachmentCount;
--   >     const VkImageView* pAttachments;
--   > } VkRenderPassAttachmentBeginInfo;
--
--   <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkRenderPassAttachmentBeginInfo VkRenderPassAttachmentBeginInfo registry at www.khronos.org>
type VkRenderPassAttachmentBeginInfo =
     VkStruct VkRenderPassAttachmentBeginInfo' -- ' closing tick for hsc2hs

data VkRenderPassAttachmentBeginInfo' -- ' closing tick for hsc2hs

instance VulkanMarshal VkRenderPassAttachmentBeginInfo where
    type StructRep VkRenderPassAttachmentBeginInfo =
         'StructMeta "VkRenderPassAttachmentBeginInfo" -- ' closing tick for hsc2hs
           VkRenderPassAttachmentBeginInfo
           (32)
{-# LINE 60 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
           8
{-# LINE 61 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
           '[('FieldMeta "sType" VkStructureType 'False  -- ' closing tick for hsc2hs
                                                        (0)
{-# LINE 63 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "pNext" (Ptr Void) 'False 
                                                   (8)
{-# LINE 68 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "attachmentCount" Word32 'True 
                                                        (16)
{-# LINE 73 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "pAttachments" (Ptr VkImageView) 'False 
                                                                 (24)
{-# LINE 78 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True)] -- ' closing tick for hsc2hs
           'False -- ' closing tick for hsc2hs
           'False -- ' closing tick for hsc2hs
           '[VkRenderPassBeginInfo] -- ' closing tick for hsc2hs

-- | Alias for `VkRenderPassAttachmentBeginInfo`
type VkRenderPassAttachmentBeginInfoKHR =
     VkRenderPassAttachmentBeginInfo

-- | > 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.2-extensions/html/vkspec.html#VkRenderPassBeginInfo VkRenderPassBeginInfo registry at www.khronos.org>
type VkRenderPassBeginInfo = VkStruct VkRenderPassBeginInfo' -- ' closing tick for hsc2hs

data VkRenderPassBeginInfo' -- ' closing tick for hsc2hs

instance VulkanMarshal VkRenderPassBeginInfo where
    type StructRep VkRenderPassBeginInfo =
         'StructMeta "VkRenderPassBeginInfo" VkRenderPassBeginInfo  -- ' closing tick for hsc2hs
                                                                   (64)
{-# LINE 108 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
           8
{-# LINE 109 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
           '[('FieldMeta "sType" VkStructureType 'False  -- ' closing tick for hsc2hs
                                                        (0)
{-# LINE 111 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "pNext" (Ptr Void) 'False 
                                                   (8)
{-# LINE 116 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "renderPass" VkRenderPass 'False 
                                                          (16)
{-# LINE 121 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "framebuffer" VkFramebuffer 'False 
                                                            (24)
{-# LINE 126 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "renderArea" VkRect2D 'False 
                                                      (32)
{-# LINE 131 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "clearValueCount" Word32 'True 
                                                        (48)
{-# LINE 136 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "pClearValues" (Ptr VkClearValue) 'False 
                                                                  (56)
{-# LINE 141 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True)] -- ' closing tick for hsc2hs
           'False -- ' closing tick for hsc2hs
           'False -- ' closing tick for hsc2hs
           '[] -- ' closing tick for hsc2hs

-- | > 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.2-extensions/html/vkspec.html#VkRenderPassCreateInfo VkRenderPassCreateInfo registry at www.khronos.org>
type VkRenderPassCreateInfo = VkStruct VkRenderPassCreateInfo' -- ' closing tick for hsc2hs

data VkRenderPassCreateInfo' -- ' closing tick for hsc2hs

instance VulkanMarshal VkRenderPassCreateInfo where
    type StructRep VkRenderPassCreateInfo =
         'StructMeta "VkRenderPassCreateInfo" VkRenderPassCreateInfo -- ' closing tick for hsc2hs
           (64)
{-# LINE 169 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
           8
{-# LINE 170 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
           '[('FieldMeta "sType" VkStructureType 'False  -- ' closing tick for hsc2hs
                                                        (0)
{-# LINE 172 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "pNext" (Ptr Void) 'False 
                                                   (8)
{-# LINE 177 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "flags" VkRenderPassCreateFlags 'True 
                                                               (16)
{-# LINE 182 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "attachmentCount" Word32 'True 
                                                        (20)
{-# LINE 187 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "pAttachments" (Ptr VkAttachmentDescription) 'False
                (24)
{-# LINE 192 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "subpassCount" Word32 'False 
                                                      (32)
{-# LINE 197 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "pSubpasses" (Ptr VkSubpassDescription) 'False
                (40)
{-# LINE 202 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "dependencyCount" Word32 'True 
                                                        (48)
{-# LINE 207 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "pDependencies" (Ptr VkSubpassDependency) 'False
                (56)
{-# LINE 212 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True)] -- ' closing tick for hsc2hs
           'False -- ' closing tick for hsc2hs
           'False -- ' closing tick for hsc2hs
           '[] -- ' closing tick for hsc2hs

-- | > typedef struct VkRenderPassCreateInfo2 {
--   >     VkStructureType sType;
--   >     const void*                                              pNext;
--   >     VkRenderPassCreateFlags                  flags;
--   >     uint32_t                                 attachmentCount;
--   >     const VkAttachmentDescription2*    pAttachments;
--   >     uint32_t                                                 subpassCount;
--   >     const VkSubpassDescription2*          pSubpasses;
--   >     uint32_t                                 dependencyCount;
--   >     const VkSubpassDependency2*        pDependencies;
--   >     uint32_t                                 correlatedViewMaskCount;
--   >     const uint32_t*            pCorrelatedViewMasks;
--   > } VkRenderPassCreateInfo2;
--
--   <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkRenderPassCreateInfo2 VkRenderPassCreateInfo2 registry at www.khronos.org>
type VkRenderPassCreateInfo2 = VkStruct VkRenderPassCreateInfo2' -- ' closing tick for hsc2hs

data VkRenderPassCreateInfo2' -- ' closing tick for hsc2hs

instance VulkanMarshal VkRenderPassCreateInfo2 where
    type StructRep VkRenderPassCreateInfo2 =
         'StructMeta "VkRenderPassCreateInfo2" VkRenderPassCreateInfo2 -- ' closing tick for hsc2hs
           (80)
{-# LINE 242 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
           8
{-# LINE 243 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
           '[('FieldMeta "sType" VkStructureType 'False  -- ' closing tick for hsc2hs
                                                        (0)
{-# LINE 245 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "pNext" (Ptr Void) 'False 
                                                   (8)
{-# LINE 250 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "flags" VkRenderPassCreateFlags 'True 
                                                               (16)
{-# LINE 255 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "attachmentCount" Word32 'True 
                                                        (20)
{-# LINE 260 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "pAttachments" (Ptr VkAttachmentDescription2) 'False
                (24)
{-# LINE 265 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "subpassCount" Word32 'False 
                                                      (32)
{-# LINE 270 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "pSubpasses" (Ptr VkSubpassDescription2) 'False
                (40)
{-# LINE 275 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "dependencyCount" Word32 'True 
                                                        (48)
{-# LINE 280 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "pDependencies" (Ptr VkSubpassDependency2) 'False
                (56)
{-# LINE 285 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "correlatedViewMaskCount" Word32 'True 
                                                                (64)
{-# LINE 290 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "pCorrelatedViewMasks" (Ptr Word32) 'False 
                                                                    (72)
{-# LINE 295 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True)] -- ' closing tick for hsc2hs
           'False -- ' closing tick for hsc2hs
           'False -- ' closing tick for hsc2hs
           '[] -- ' closing tick for hsc2hs

-- | Alias for `VkRenderPassCreateInfo2`
type VkRenderPassCreateInfo2KHR = VkRenderPassCreateInfo2

-- | > typedef struct VkRenderPassFragmentDensityMapCreateInfoEXT {
--   >     VkStructureType sType;
--   >     const void*                      pNext;
--   >     VkAttachmentReference            fragmentDensityMapAttachment;
--   > } VkRenderPassFragmentDensityMapCreateInfoEXT;
--
--   <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkRenderPassFragmentDensityMapCreateInfoEXT VkRenderPassFragmentDensityMapCreateInfoEXT registry at www.khronos.org>
type VkRenderPassFragmentDensityMapCreateInfoEXT =
     VkStruct VkRenderPassFragmentDensityMapCreateInfoEXT' -- ' closing tick for hsc2hs

data VkRenderPassFragmentDensityMapCreateInfoEXT' -- ' closing tick for hsc2hs

instance VulkanMarshal VkRenderPassFragmentDensityMapCreateInfoEXT
         where
    type StructRep VkRenderPassFragmentDensityMapCreateInfoEXT =
         'StructMeta "VkRenderPassFragmentDensityMapCreateInfoEXT" -- ' closing tick for hsc2hs
           VkRenderPassFragmentDensityMapCreateInfoEXT
           (24)
{-# LINE 323 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
           8
{-# LINE 324 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
           '[('FieldMeta "sType" VkStructureType 'False  -- ' closing tick for hsc2hs
                                                        (0)
{-# LINE 326 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "pNext" (Ptr Void) 'False 
                                                   (8)
{-# LINE 331 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "fragmentDensityMapAttachment" VkAttachmentReference -- ' closing tick for hsc2hs
                'False -- ' closing tick for hsc2hs
                (16)
{-# LINE 337 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True)] -- ' closing tick for hsc2hs
           'False -- ' closing tick for hsc2hs
           'False -- ' closing tick for hsc2hs
           '[VkRenderPassCreateInfo, VkRenderPassCreateInfo2] -- ' closing tick for hsc2hs

-- | > typedef struct VkRenderPassInputAttachmentAspectCreateInfo {
--   >     VkStructureType sType;
--   >     const void*                     pNext;
--   >     uint32_t                        aspectReferenceCount;
--   >     const VkInputAttachmentAspectReference* pAspectReferences;
--   > } VkRenderPassInputAttachmentAspectCreateInfo;
--
--   <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkRenderPassInputAttachmentAspectCreateInfo VkRenderPassInputAttachmentAspectCreateInfo registry at www.khronos.org>
type VkRenderPassInputAttachmentAspectCreateInfo =
     VkStruct VkRenderPassInputAttachmentAspectCreateInfo' -- ' closing tick for hsc2hs

data VkRenderPassInputAttachmentAspectCreateInfo' -- ' closing tick for hsc2hs

instance VulkanMarshal VkRenderPassInputAttachmentAspectCreateInfo
         where
    type StructRep VkRenderPassInputAttachmentAspectCreateInfo =
         'StructMeta "VkRenderPassInputAttachmentAspectCreateInfo" -- ' closing tick for hsc2hs
           VkRenderPassInputAttachmentAspectCreateInfo
           (32)
{-# LINE 363 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
           8
{-# LINE 364 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
           '[('FieldMeta "sType" VkStructureType 'False  -- ' closing tick for hsc2hs
                                                        (0)
{-# LINE 366 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "pNext" (Ptr Void) 'False 
                                                   (8)
{-# LINE 371 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "aspectReferenceCount" Word32 'False 
                                                              (16)
{-# LINE 376 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "pAspectReferences" -- ' closing tick for hsc2hs
                (Ptr VkInputAttachmentAspectReference)
                'False -- ' closing tick for hsc2hs
                (24)
{-# LINE 383 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True)] -- ' closing tick for hsc2hs
           'False -- ' closing tick for hsc2hs
           'False -- ' closing tick for hsc2hs
           '[VkRenderPassCreateInfo] -- ' closing tick for hsc2hs

-- | 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.2-extensions/html/vkspec.html#VkRenderPassMultiviewCreateInfo VkRenderPassMultiviewCreateInfo registry at www.khronos.org>
type VkRenderPassMultiviewCreateInfo =
     VkStruct VkRenderPassMultiviewCreateInfo' -- ' closing tick for hsc2hs

data VkRenderPassMultiviewCreateInfo' -- ' closing tick for hsc2hs

instance VulkanMarshal VkRenderPassMultiviewCreateInfo where
    type StructRep VkRenderPassMultiviewCreateInfo =
         'StructMeta "VkRenderPassMultiviewCreateInfo" -- ' closing tick for hsc2hs
           VkRenderPassMultiviewCreateInfo
           (64)
{-# LINE 416 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
           8
{-# LINE 417 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
           '[('FieldMeta "sType" VkStructureType 'False  -- ' closing tick for hsc2hs
                                                        (0)
{-# LINE 419 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "pNext" (Ptr Void) 'False 
                                                   (8)
{-# LINE 424 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "subpassCount" Word32 'True 
                                                     (16)
{-# LINE 429 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "pViewMasks" (Ptr Word32) 'False 
                                                          (24)
{-# LINE 434 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "dependencyCount" Word32 'True 
                                                        (32)
{-# LINE 439 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "pViewOffsets" (Ptr Int32) 'False 
                                                           (40)
{-# LINE 444 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "correlationMaskCount" Word32 'True 
                                                             (48)
{-# LINE 449 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "pCorrelationMasks" (Ptr Word32) 'False 
                                                                 (56)
{-# LINE 454 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True)] -- ' closing tick for hsc2hs
           'False -- ' closing tick for hsc2hs
           'False -- ' closing tick for hsc2hs
           '[VkRenderPassCreateInfo] -- ' closing tick for hsc2hs

-- | 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.2-extensions/html/vkspec.html#VkRenderPassSampleLocationsBeginInfoEXT VkRenderPassSampleLocationsBeginInfoEXT registry at www.khronos.org>
type VkRenderPassSampleLocationsBeginInfoEXT =
     VkStruct VkRenderPassSampleLocationsBeginInfoEXT' -- ' closing tick for hsc2hs

data VkRenderPassSampleLocationsBeginInfoEXT' -- ' closing tick for hsc2hs

instance VulkanMarshal VkRenderPassSampleLocationsBeginInfoEXT
         where
    type StructRep VkRenderPassSampleLocationsBeginInfoEXT =
         'StructMeta "VkRenderPassSampleLocationsBeginInfoEXT" -- ' closing tick for hsc2hs
           VkRenderPassSampleLocationsBeginInfoEXT
           (48)
{-# LINE 486 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
           8
{-# LINE 487 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
           '[('FieldMeta "sType" VkStructureType 'False  -- ' closing tick for hsc2hs
                                                        (0)
{-# LINE 489 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "pNext" (Ptr Void) 'False 
                                                   (8)
{-# LINE 494 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "attachmentInitialSampleLocationsCount" Word32 'True
                (16)
{-# LINE 499 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "pAttachmentInitialSampleLocations" -- ' closing tick for hsc2hs
                (Ptr VkAttachmentSampleLocationsEXT)
                'False -- ' closing tick for hsc2hs
                (24)
{-# LINE 506 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "postSubpassSampleLocationsCount" Word32 'True
                (32)
{-# LINE 511 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "pPostSubpassSampleLocations" -- ' closing tick for hsc2hs
                (Ptr VkSubpassSampleLocationsEXT)
                'False -- ' closing tick for hsc2hs
                (40)
{-# LINE 518 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True)] -- ' closing tick for hsc2hs
           'False -- ' closing tick for hsc2hs
           'False -- ' closing tick for hsc2hs
           '[VkRenderPassBeginInfo] -- ' closing tick for hsc2hs

-- | > typedef struct VkRenderPassTransformBeginInfoQCOM {
--   >     VkStructureType sType;
--   >     void*                           pNext;
--   >     VkSurfaceTransformFlagBitsKHR   transform;
--   > } VkRenderPassTransformBeginInfoQCOM;
--
--   <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkRenderPassTransformBeginInfoQCOM VkRenderPassTransformBeginInfoQCOM registry at www.khronos.org>
type VkRenderPassTransformBeginInfoQCOM =
     VkStruct VkRenderPassTransformBeginInfoQCOM' -- ' closing tick for hsc2hs

data VkRenderPassTransformBeginInfoQCOM' -- ' closing tick for hsc2hs

instance VulkanMarshal VkRenderPassTransformBeginInfoQCOM where
    type StructRep VkRenderPassTransformBeginInfoQCOM =
         'StructMeta "VkRenderPassTransformBeginInfoQCOM" -- ' closing tick for hsc2hs
           VkRenderPassTransformBeginInfoQCOM
           (24)
{-# LINE 542 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
           8
{-# LINE 543 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
           '[('FieldMeta "sType" VkStructureType 'False  -- ' closing tick for hsc2hs
                                                        (0)
{-# LINE 545 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "pNext" (Ptr Void) 'False 
                                                   (8)
{-# LINE 550 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "transform" VkSurfaceTransformFlagBitsKHR 'False
                (16)
{-# LINE 555 "src-gen/Graphics/Vulkan/Types/Struct/RenderPass.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True)] -- ' closing tick for hsc2hs
           'False -- ' closing tick for hsc2hs
           'False -- ' closing tick for hsc2hs
           '[VkRenderPassBeginInfo] -- ' closing tick for hsc2hs