{-# LINE 1 "src/Gpu/Vulkan/Component/Core.hsc" #-}
{-# LANGUAGE TemplateHaskell #-}
{-# LANGUAGE TupleSections #-}
{-# LANGUAGE PatternSynonyms, ViewPatterns #-}
{-# OPTIONS_GHC -Wall -fno-warn-tabs #-}

module Gpu.Vulkan.Component.Core (
	Mapping, pattern Mapping, mappingR, mappingG, mappingB, mappingA,
	swizzleIdentity ) where

import Foreign.Storable
import Foreign.C.Struct
import Data.Word



struct "Mapping" (16)
{-# LINE 17 "src/Gpu/Vulkan/Component/Core.hsc" #-}
		4 [
{-# LINE 18 "src/Gpu/Vulkan/Component/Core.hsc" #-}
	("r", ''Word32,
{-# LINE 19 "src/Gpu/Vulkan/Component/Core.hsc" #-}
		[| (\hsc_ptr -> peekByteOff hsc_ptr 0) |],
{-# LINE 20 "src/Gpu/Vulkan/Component/Core.hsc" #-}
		[| (\hsc_ptr -> pokeByteOff hsc_ptr 0) |]),
{-# LINE 21 "src/Gpu/Vulkan/Component/Core.hsc" #-}
	("g", ''Word32,
{-# LINE 22 "src/Gpu/Vulkan/Component/Core.hsc" #-}
		[| (\hsc_ptr -> peekByteOff hsc_ptr 4) |],
{-# LINE 23 "src/Gpu/Vulkan/Component/Core.hsc" #-}
		[| (\hsc_ptr -> pokeByteOff hsc_ptr 4) |]),
{-# LINE 24 "src/Gpu/Vulkan/Component/Core.hsc" #-}
	("b", ''Word32,
{-# LINE 25 "src/Gpu/Vulkan/Component/Core.hsc" #-}
		[| (\hsc_ptr -> peekByteOff hsc_ptr 8) |],
{-# LINE 26 "src/Gpu/Vulkan/Component/Core.hsc" #-}
		[| (\hsc_ptr -> pokeByteOff hsc_ptr 8) |]),
{-# LINE 27 "src/Gpu/Vulkan/Component/Core.hsc" #-}
	("a", ''Word32,
{-# LINE 28 "src/Gpu/Vulkan/Component/Core.hsc" #-}
		[| (\hsc_ptr -> peekByteOff hsc_ptr 12) |],
{-# LINE 29 "src/Gpu/Vulkan/Component/Core.hsc" #-}
		[| (\hsc_ptr -> pokeByteOff hsc_ptr 12) |]) ]
{-# LINE 30 "src/Gpu/Vulkan/Component/Core.hsc" #-}
	[''Show, ''Storable]

swizzleIdentity :: Word32
{-# LINE 33 "src/Gpu/Vulkan/Component/Core.hsc" #-}
swizzleIdentity = 0
{-# LINE 34 "src/Gpu/Vulkan/Component/Core.hsc" #-}