{-# language CPP #-}
module Vulkan.Extensions.VK_NV_fragment_shading_rate_enums ( cmdSetFragmentShadingRateEnumNV
, PhysicalDeviceFragmentShadingRateEnumsFeaturesNV(..)
, PhysicalDeviceFragmentShadingRateEnumsPropertiesNV(..)
, PipelineFragmentShadingRateEnumStateCreateInfoNV(..)
, FragmentShadingRateNV( FRAGMENT_SHADING_RATE_1_INVOCATION_PER_PIXEL_NV
, FRAGMENT_SHADING_RATE_1_INVOCATION_PER_1X2_PIXELS_NV
, FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X1_PIXELS_NV
, FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X2_PIXELS_NV
, FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X4_PIXELS_NV
, FRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X2_PIXELS_NV
, FRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X4_PIXELS_NV
, FRAGMENT_SHADING_RATE_2_INVOCATIONS_PER_PIXEL_NV
, FRAGMENT_SHADING_RATE_4_INVOCATIONS_PER_PIXEL_NV
, FRAGMENT_SHADING_RATE_8_INVOCATIONS_PER_PIXEL_NV
, FRAGMENT_SHADING_RATE_16_INVOCATIONS_PER_PIXEL_NV
, FRAGMENT_SHADING_RATE_NO_INVOCATIONS_NV
, ..
)
, FragmentShadingRateTypeNV( FRAGMENT_SHADING_RATE_TYPE_FRAGMENT_SIZE_NV
, FRAGMENT_SHADING_RATE_TYPE_ENUMS_NV
, ..
)
, NV_FRAGMENT_SHADING_RATE_ENUMS_SPEC_VERSION
, pattern NV_FRAGMENT_SHADING_RATE_ENUMS_SPEC_VERSION
, NV_FRAGMENT_SHADING_RATE_ENUMS_EXTENSION_NAME
, pattern NV_FRAGMENT_SHADING_RATE_ENUMS_EXTENSION_NAME
, FragmentShadingRateCombinerOpKHR(..)
) where
import Vulkan.CStruct.Utils (FixedArray)
import Vulkan.Internal.Utils (enumReadPrec)
import Vulkan.Internal.Utils (enumShowsPrec)
import Vulkan.Internal.Utils (traceAroundEvent)
import Control.Monad (unless)
import Control.Monad.IO.Class (liftIO)
import Foreign.Marshal.Alloc (allocaBytes)
import GHC.IO (throwIO)
import GHC.Ptr (nullFunPtr)
import Foreign.Ptr (nullPtr)
import Foreign.Ptr (plusPtr)
import GHC.Show (showsPrec)
import Control.Monad.Trans.Class (lift)
import Control.Monad.Trans.Cont (evalContT)
import Vulkan.CStruct (FromCStruct)
import Vulkan.CStruct (FromCStruct(..))
import Vulkan.CStruct (ToCStruct)
import Vulkan.CStruct (ToCStruct(..))
import Vulkan.Zero (Zero)
import Vulkan.Zero (Zero(..))
import Control.Monad.IO.Class (MonadIO)
import Data.String (IsString)
import Data.Typeable (Typeable)
import Foreign.Storable (Storable)
import Foreign.Storable (Storable(peek))
import Foreign.Storable (Storable(poke))
import qualified Foreign.Storable (Storable(..))
import GHC.Generics (Generic)
import GHC.IO.Exception (IOErrorType(..))
import GHC.IO.Exception (IOException(..))
import Data.Int (Int32)
import Foreign.Ptr (FunPtr)
import Foreign.Ptr (Ptr)
import GHC.Read (Read(readPrec))
import GHC.Show (Show(showsPrec))
import Data.Kind (Type)
import Control.Monad.Trans.Cont (ContT(..))
import Vulkan.CStruct.Utils (advancePtrBytes)
import Vulkan.Core10.FundamentalTypes (bool32ToBool)
import Vulkan.Core10.FundamentalTypes (boolToBool32)
import Vulkan.CStruct.Utils (lowerArrayPtr)
import Vulkan.NamedType ((:::))
import Vulkan.Core10.FundamentalTypes (Bool32)
import Vulkan.Core10.Handles (CommandBuffer)
import Vulkan.Core10.Handles (CommandBuffer(..))
import Vulkan.Core10.Handles (CommandBuffer(CommandBuffer))
import Vulkan.Core10.Handles (CommandBuffer_T)
import Vulkan.Dynamic (DeviceCmds(pVkCmdSetFragmentShadingRateEnumNV))
import Vulkan.Extensions.VK_KHR_fragment_shading_rate (FragmentShadingRateCombinerOpKHR)
import Vulkan.Extensions.VK_KHR_fragment_shading_rate (FragmentShadingRateCombinerOpKHR(..))
import Vulkan.Core10.Enums.SampleCountFlagBits (SampleCountFlagBits)
import Vulkan.Core10.Enums.StructureType (StructureType)
import Vulkan.Core10.Enums.StructureType (StructureType(STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV))
import Vulkan.Core10.Enums.StructureType (StructureType(STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV))
import Vulkan.Core10.Enums.StructureType (StructureType(STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_ENUM_STATE_CREATE_INFO_NV))
import Vulkan.Extensions.VK_KHR_fragment_shading_rate (FragmentShadingRateCombinerOpKHR(..))
foreign import ccall
#if !defined(SAFE_FOREIGN_CALLS)
unsafe
#endif
"dynamic" mkVkCmdSetFragmentShadingRateEnumNV
:: FunPtr (Ptr CommandBuffer_T -> FragmentShadingRateNV -> Ptr (FixedArray 2 FragmentShadingRateCombinerOpKHR) -> IO ()) -> Ptr CommandBuffer_T -> FragmentShadingRateNV -> Ptr (FixedArray 2 FragmentShadingRateCombinerOpKHR) -> IO ()
cmdSetFragmentShadingRateEnumNV :: forall io
. (MonadIO io)
=>
CommandBuffer
->
FragmentShadingRateNV
->
("combinerOps" ::: (FragmentShadingRateCombinerOpKHR, FragmentShadingRateCombinerOpKHR))
-> io ()
cmdSetFragmentShadingRateEnumNV :: forall (io :: * -> *).
MonadIO io =>
CommandBuffer
-> FragmentShadingRateNV
-> ("combinerOps"
::: (FragmentShadingRateCombinerOpKHR,
FragmentShadingRateCombinerOpKHR))
-> io ()
cmdSetFragmentShadingRateEnumNV CommandBuffer
commandBuffer
FragmentShadingRateNV
shadingRate
"combinerOps"
::: (FragmentShadingRateCombinerOpKHR,
FragmentShadingRateCombinerOpKHR)
combinerOps = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall b c a. (b -> c) -> (a -> b) -> a -> c
. forall (m :: * -> *) r. Monad m => ContT r m r -> m r
evalContT forall a b. (a -> b) -> a -> b
$ do
let vkCmdSetFragmentShadingRateEnumNVPtr :: FunPtr
(Ptr CommandBuffer_T
-> FragmentShadingRateNV
-> ("combinerOps"
::: Ptr (FixedArray 2 FragmentShadingRateCombinerOpKHR))
-> IO ())
vkCmdSetFragmentShadingRateEnumNVPtr = DeviceCmds
-> FunPtr
(Ptr CommandBuffer_T
-> FragmentShadingRateNV
-> ("combinerOps"
::: Ptr (FixedArray 2 FragmentShadingRateCombinerOpKHR))
-> IO ())
pVkCmdSetFragmentShadingRateEnumNV (case CommandBuffer
commandBuffer of CommandBuffer{DeviceCmds
$sel:deviceCmds:CommandBuffer :: CommandBuffer -> DeviceCmds
deviceCmds :: DeviceCmds
deviceCmds} -> DeviceCmds
deviceCmds)
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift forall a b. (a -> b) -> a -> b
$ forall (f :: * -> *). Applicative f => Bool -> f () -> f ()
unless (FunPtr
(Ptr CommandBuffer_T
-> FragmentShadingRateNV
-> ("combinerOps"
::: Ptr (FixedArray 2 FragmentShadingRateCombinerOpKHR))
-> IO ())
vkCmdSetFragmentShadingRateEnumNVPtr forall a. Eq a => a -> a -> Bool
/= forall a. FunPtr a
nullFunPtr) forall a b. (a -> b) -> a -> b
$
forall e a. Exception e => e -> IO a
throwIO forall a b. (a -> b) -> a -> b
$ Maybe Handle
-> IOErrorType
-> String
-> String
-> Maybe CInt
-> Maybe String
-> IOException
IOError forall a. Maybe a
Nothing IOErrorType
InvalidArgument String
"" String
"The function pointer for vkCmdSetFragmentShadingRateEnumNV is null" forall a. Maybe a
Nothing forall a. Maybe a
Nothing
let vkCmdSetFragmentShadingRateEnumNV' :: Ptr CommandBuffer_T
-> FragmentShadingRateNV
-> ("combinerOps"
::: Ptr (FixedArray 2 FragmentShadingRateCombinerOpKHR))
-> IO ()
vkCmdSetFragmentShadingRateEnumNV' = FunPtr
(Ptr CommandBuffer_T
-> FragmentShadingRateNV
-> ("combinerOps"
::: Ptr (FixedArray 2 FragmentShadingRateCombinerOpKHR))
-> IO ())
-> Ptr CommandBuffer_T
-> FragmentShadingRateNV
-> ("combinerOps"
::: Ptr (FixedArray 2 FragmentShadingRateCombinerOpKHR))
-> IO ()
mkVkCmdSetFragmentShadingRateEnumNV FunPtr
(Ptr CommandBuffer_T
-> FragmentShadingRateNV
-> ("combinerOps"
::: Ptr (FixedArray 2 FragmentShadingRateCombinerOpKHR))
-> IO ())
vkCmdSetFragmentShadingRateEnumNVPtr
"combinerOps"
::: Ptr (FixedArray 2 FragmentShadingRateCombinerOpKHR)
pCombinerOps <- forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT forall a b. (a -> b) -> a -> b
$ forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes @(FixedArray 2 FragmentShadingRateCombinerOpKHR) Int
8
let pCombinerOps' :: Ptr FragmentShadingRateCombinerOpKHR
pCombinerOps' = forall a (n :: Nat). Ptr (FixedArray n a) -> Ptr a
lowerArrayPtr "combinerOps"
::: Ptr (FixedArray 2 FragmentShadingRateCombinerOpKHR)
pCombinerOps
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift forall a b. (a -> b) -> a -> b
$ case ("combinerOps"
::: (FragmentShadingRateCombinerOpKHR,
FragmentShadingRateCombinerOpKHR)
combinerOps) of
(FragmentShadingRateCombinerOpKHR
e0, FragmentShadingRateCombinerOpKHR
e1) -> do
forall a. Storable a => Ptr a -> a -> IO ()
poke (Ptr FragmentShadingRateCombinerOpKHR
pCombinerOps' :: Ptr FragmentShadingRateCombinerOpKHR) (FragmentShadingRateCombinerOpKHR
e0)
forall a. Storable a => Ptr a -> a -> IO ()
poke (Ptr FragmentShadingRateCombinerOpKHR
pCombinerOps' forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
4 :: Ptr FragmentShadingRateCombinerOpKHR) (FragmentShadingRateCombinerOpKHR
e1)
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift forall a b. (a -> b) -> a -> b
$ forall a. String -> IO a -> IO a
traceAroundEvent String
"vkCmdSetFragmentShadingRateEnumNV" (Ptr CommandBuffer_T
-> FragmentShadingRateNV
-> ("combinerOps"
::: Ptr (FixedArray 2 FragmentShadingRateCombinerOpKHR))
-> IO ()
vkCmdSetFragmentShadingRateEnumNV'
(CommandBuffer -> Ptr CommandBuffer_T
commandBufferHandle (CommandBuffer
commandBuffer))
(FragmentShadingRateNV
shadingRate)
("combinerOps"
::: Ptr (FixedArray 2 FragmentShadingRateCombinerOpKHR)
pCombinerOps))
forall (f :: * -> *) a. Applicative f => a -> f a
pure forall a b. (a -> b) -> a -> b
$ ()
data PhysicalDeviceFragmentShadingRateEnumsFeaturesNV = PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
{
PhysicalDeviceFragmentShadingRateEnumsFeaturesNV -> Bool
fragmentShadingRateEnums :: Bool
,
PhysicalDeviceFragmentShadingRateEnumsFeaturesNV -> Bool
supersampleFragmentShadingRates :: Bool
,
PhysicalDeviceFragmentShadingRateEnumsFeaturesNV -> Bool
noInvocationFragmentShadingRates :: Bool
}
deriving (Typeable, PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
-> PhysicalDeviceFragmentShadingRateEnumsFeaturesNV -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
-> PhysicalDeviceFragmentShadingRateEnumsFeaturesNV -> Bool
$c/= :: PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
-> PhysicalDeviceFragmentShadingRateEnumsFeaturesNV -> Bool
== :: PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
-> PhysicalDeviceFragmentShadingRateEnumsFeaturesNV -> Bool
$c== :: PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
-> PhysicalDeviceFragmentShadingRateEnumsFeaturesNV -> Bool
Eq)
#if defined(GENERIC_INSTANCES)
deriving instance Generic (PhysicalDeviceFragmentShadingRateEnumsFeaturesNV)
#endif
deriving instance Show PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
instance ToCStruct PhysicalDeviceFragmentShadingRateEnumsFeaturesNV where
withCStruct :: forall b.
PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
-> (Ptr PhysicalDeviceFragmentShadingRateEnumsFeaturesNV -> IO b)
-> IO b
withCStruct PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
x Ptr PhysicalDeviceFragmentShadingRateEnumsFeaturesNV -> IO b
f = forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes Int
32 forall a b. (a -> b) -> a -> b
$ \Ptr PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
p -> forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
p PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
x (Ptr PhysicalDeviceFragmentShadingRateEnumsFeaturesNV -> IO b
f Ptr PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
p)
pokeCStruct :: forall b.
Ptr PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
-> PhysicalDeviceFragmentShadingRateEnumsFeaturesNV -> IO b -> IO b
pokeCStruct Ptr PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
p PhysicalDeviceFragmentShadingRateEnumsFeaturesNV{Bool
noInvocationFragmentShadingRates :: Bool
supersampleFragmentShadingRates :: Bool
fragmentShadingRateEnums :: Bool
$sel:noInvocationFragmentShadingRates:PhysicalDeviceFragmentShadingRateEnumsFeaturesNV :: PhysicalDeviceFragmentShadingRateEnumsFeaturesNV -> Bool
$sel:supersampleFragmentShadingRates:PhysicalDeviceFragmentShadingRateEnumsFeaturesNV :: PhysicalDeviceFragmentShadingRateEnumsFeaturesNV -> Bool
$sel:fragmentShadingRateEnums:PhysicalDeviceFragmentShadingRateEnumsFeaturesNV :: PhysicalDeviceFragmentShadingRateEnumsFeaturesNV -> Bool
..} IO b
f = do
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV)
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (forall a. Ptr a
nullPtr)
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
fragmentShadingRateEnums))
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
20 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
supersampleFragmentShadingRates))
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
noInvocationFragmentShadingRates))
IO b
f
cStructSize :: Int
cStructSize = Int
32
cStructAlignment :: Int
cStructAlignment = Int
8
pokeZeroCStruct :: forall b.
Ptr PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
-> IO b -> IO b
pokeZeroCStruct Ptr PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
p IO b
f = do
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV)
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (forall a. Ptr a
nullPtr)
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (forall a. Zero a => a
zero))
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
20 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (forall a. Zero a => a
zero))
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (forall a. Zero a => a
zero))
IO b
f
instance FromCStruct PhysicalDeviceFragmentShadingRateEnumsFeaturesNV where
peekCStruct :: Ptr PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
-> IO PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
peekCStruct Ptr PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
p = do
Bool32
fragmentShadingRateEnums <- forall a. Storable a => Ptr a -> IO a
peek @Bool32 ((Ptr PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr Bool32))
Bool32
supersampleFragmentShadingRates <- forall a. Storable a => Ptr a -> IO a
peek @Bool32 ((Ptr PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
20 :: Ptr Bool32))
Bool32
noInvocationFragmentShadingRates <- forall a. Storable a => Ptr a -> IO a
peek @Bool32 ((Ptr PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr Bool32))
forall (f :: * -> *) a. Applicative f => a -> f a
pure forall a b. (a -> b) -> a -> b
$ Bool
-> Bool -> Bool -> PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
(Bool32 -> Bool
bool32ToBool Bool32
fragmentShadingRateEnums)
(Bool32 -> Bool
bool32ToBool Bool32
supersampleFragmentShadingRates)
(Bool32 -> Bool
bool32ToBool Bool32
noInvocationFragmentShadingRates)
instance Storable PhysicalDeviceFragmentShadingRateEnumsFeaturesNV where
sizeOf :: PhysicalDeviceFragmentShadingRateEnumsFeaturesNV -> Int
sizeOf ~PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
_ = Int
32
alignment :: PhysicalDeviceFragmentShadingRateEnumsFeaturesNV -> Int
alignment ~PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
_ = Int
8
peek :: Ptr PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
-> IO PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
peek = forall a. FromCStruct a => Ptr a -> IO a
peekCStruct
poke :: Ptr PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
-> PhysicalDeviceFragmentShadingRateEnumsFeaturesNV -> IO ()
poke Ptr PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
ptr PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
poked = forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
ptr PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
poked (forall (f :: * -> *) a. Applicative f => a -> f a
pure ())
instance Zero PhysicalDeviceFragmentShadingRateEnumsFeaturesNV where
zero :: PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
zero = Bool
-> Bool -> Bool -> PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
forall a. Zero a => a
zero
forall a. Zero a => a
zero
forall a. Zero a => a
zero
data PhysicalDeviceFragmentShadingRateEnumsPropertiesNV = PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
{
PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
-> SampleCountFlagBits
maxFragmentShadingRateInvocationCount :: SampleCountFlagBits }
deriving (Typeable, PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
-> PhysicalDeviceFragmentShadingRateEnumsPropertiesNV -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
-> PhysicalDeviceFragmentShadingRateEnumsPropertiesNV -> Bool
$c/= :: PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
-> PhysicalDeviceFragmentShadingRateEnumsPropertiesNV -> Bool
== :: PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
-> PhysicalDeviceFragmentShadingRateEnumsPropertiesNV -> Bool
$c== :: PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
-> PhysicalDeviceFragmentShadingRateEnumsPropertiesNV -> Bool
Eq)
#if defined(GENERIC_INSTANCES)
deriving instance Generic (PhysicalDeviceFragmentShadingRateEnumsPropertiesNV)
#endif
deriving instance Show PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
instance ToCStruct PhysicalDeviceFragmentShadingRateEnumsPropertiesNV where
withCStruct :: forall b.
PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
-> (Ptr PhysicalDeviceFragmentShadingRateEnumsPropertiesNV -> IO b)
-> IO b
withCStruct PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
x Ptr PhysicalDeviceFragmentShadingRateEnumsPropertiesNV -> IO b
f = forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes Int
24 forall a b. (a -> b) -> a -> b
$ \Ptr PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
p -> forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
p PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
x (Ptr PhysicalDeviceFragmentShadingRateEnumsPropertiesNV -> IO b
f Ptr PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
p)
pokeCStruct :: forall b.
Ptr PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
-> PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
-> IO b
-> IO b
pokeCStruct Ptr PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
p PhysicalDeviceFragmentShadingRateEnumsPropertiesNV{SampleCountFlagBits
maxFragmentShadingRateInvocationCount :: SampleCountFlagBits
$sel:maxFragmentShadingRateInvocationCount:PhysicalDeviceFragmentShadingRateEnumsPropertiesNV :: PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
-> SampleCountFlagBits
..} IO b
f = do
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV)
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (forall a. Ptr a
nullPtr)
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr SampleCountFlagBits)) (SampleCountFlagBits
maxFragmentShadingRateInvocationCount)
IO b
f
cStructSize :: Int
cStructSize = Int
24
cStructAlignment :: Int
cStructAlignment = Int
8
pokeZeroCStruct :: forall b.
Ptr PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
-> IO b -> IO b
pokeZeroCStruct Ptr PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
p IO b
f = do
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV)
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (forall a. Ptr a
nullPtr)
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr SampleCountFlagBits)) (forall a. Zero a => a
zero)
IO b
f
instance FromCStruct PhysicalDeviceFragmentShadingRateEnumsPropertiesNV where
peekCStruct :: Ptr PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
-> IO PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
peekCStruct Ptr PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
p = do
SampleCountFlagBits
maxFragmentShadingRateInvocationCount <- forall a. Storable a => Ptr a -> IO a
peek @SampleCountFlagBits ((Ptr PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr SampleCountFlagBits))
forall (f :: * -> *) a. Applicative f => a -> f a
pure forall a b. (a -> b) -> a -> b
$ SampleCountFlagBits
-> PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
SampleCountFlagBits
maxFragmentShadingRateInvocationCount
instance Storable PhysicalDeviceFragmentShadingRateEnumsPropertiesNV where
sizeOf :: PhysicalDeviceFragmentShadingRateEnumsPropertiesNV -> Int
sizeOf ~PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
_ = Int
24
alignment :: PhysicalDeviceFragmentShadingRateEnumsPropertiesNV -> Int
alignment ~PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
_ = Int
8
peek :: Ptr PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
-> IO PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
peek = forall a. FromCStruct a => Ptr a -> IO a
peekCStruct
poke :: Ptr PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
-> PhysicalDeviceFragmentShadingRateEnumsPropertiesNV -> IO ()
poke Ptr PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
ptr PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
poked = forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
ptr PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
poked (forall (f :: * -> *) a. Applicative f => a -> f a
pure ())
instance Zero PhysicalDeviceFragmentShadingRateEnumsPropertiesNV where
zero :: PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
zero = SampleCountFlagBits
-> PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
forall a. Zero a => a
zero
data PipelineFragmentShadingRateEnumStateCreateInfoNV = PipelineFragmentShadingRateEnumStateCreateInfoNV
{
PipelineFragmentShadingRateEnumStateCreateInfoNV
-> FragmentShadingRateTypeNV
shadingRateType :: FragmentShadingRateTypeNV
,
PipelineFragmentShadingRateEnumStateCreateInfoNV
-> FragmentShadingRateNV
shadingRate :: FragmentShadingRateNV
,
PipelineFragmentShadingRateEnumStateCreateInfoNV
-> "combinerOps"
::: (FragmentShadingRateCombinerOpKHR,
FragmentShadingRateCombinerOpKHR)
combinerOps :: (FragmentShadingRateCombinerOpKHR, FragmentShadingRateCombinerOpKHR)
}
deriving (Typeable, PipelineFragmentShadingRateEnumStateCreateInfoNV
-> PipelineFragmentShadingRateEnumStateCreateInfoNV -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PipelineFragmentShadingRateEnumStateCreateInfoNV
-> PipelineFragmentShadingRateEnumStateCreateInfoNV -> Bool
$c/= :: PipelineFragmentShadingRateEnumStateCreateInfoNV
-> PipelineFragmentShadingRateEnumStateCreateInfoNV -> Bool
== :: PipelineFragmentShadingRateEnumStateCreateInfoNV
-> PipelineFragmentShadingRateEnumStateCreateInfoNV -> Bool
$c== :: PipelineFragmentShadingRateEnumStateCreateInfoNV
-> PipelineFragmentShadingRateEnumStateCreateInfoNV -> Bool
Eq)
#if defined(GENERIC_INSTANCES)
deriving instance Generic (PipelineFragmentShadingRateEnumStateCreateInfoNV)
#endif
deriving instance Show PipelineFragmentShadingRateEnumStateCreateInfoNV
instance ToCStruct PipelineFragmentShadingRateEnumStateCreateInfoNV where
withCStruct :: forall b.
PipelineFragmentShadingRateEnumStateCreateInfoNV
-> (Ptr PipelineFragmentShadingRateEnumStateCreateInfoNV -> IO b)
-> IO b
withCStruct PipelineFragmentShadingRateEnumStateCreateInfoNV
x Ptr PipelineFragmentShadingRateEnumStateCreateInfoNV -> IO b
f = forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes Int
32 forall a b. (a -> b) -> a -> b
$ \Ptr PipelineFragmentShadingRateEnumStateCreateInfoNV
p -> forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr PipelineFragmentShadingRateEnumStateCreateInfoNV
p PipelineFragmentShadingRateEnumStateCreateInfoNV
x (Ptr PipelineFragmentShadingRateEnumStateCreateInfoNV -> IO b
f Ptr PipelineFragmentShadingRateEnumStateCreateInfoNV
p)
pokeCStruct :: forall b.
Ptr PipelineFragmentShadingRateEnumStateCreateInfoNV
-> PipelineFragmentShadingRateEnumStateCreateInfoNV -> IO b -> IO b
pokeCStruct Ptr PipelineFragmentShadingRateEnumStateCreateInfoNV
p PipelineFragmentShadingRateEnumStateCreateInfoNV{"combinerOps"
::: (FragmentShadingRateCombinerOpKHR,
FragmentShadingRateCombinerOpKHR)
FragmentShadingRateNV
FragmentShadingRateTypeNV
combinerOps :: "combinerOps"
::: (FragmentShadingRateCombinerOpKHR,
FragmentShadingRateCombinerOpKHR)
shadingRate :: FragmentShadingRateNV
shadingRateType :: FragmentShadingRateTypeNV
$sel:combinerOps:PipelineFragmentShadingRateEnumStateCreateInfoNV :: PipelineFragmentShadingRateEnumStateCreateInfoNV
-> "combinerOps"
::: (FragmentShadingRateCombinerOpKHR,
FragmentShadingRateCombinerOpKHR)
$sel:shadingRate:PipelineFragmentShadingRateEnumStateCreateInfoNV :: PipelineFragmentShadingRateEnumStateCreateInfoNV
-> FragmentShadingRateNV
$sel:shadingRateType:PipelineFragmentShadingRateEnumStateCreateInfoNV :: PipelineFragmentShadingRateEnumStateCreateInfoNV
-> FragmentShadingRateTypeNV
..} IO b
f = do
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PipelineFragmentShadingRateEnumStateCreateInfoNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_ENUM_STATE_CREATE_INFO_NV)
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PipelineFragmentShadingRateEnumStateCreateInfoNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (forall a. Ptr a
nullPtr)
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PipelineFragmentShadingRateEnumStateCreateInfoNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr FragmentShadingRateTypeNV)) (FragmentShadingRateTypeNV
shadingRateType)
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PipelineFragmentShadingRateEnumStateCreateInfoNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
20 :: Ptr FragmentShadingRateNV)) (FragmentShadingRateNV
shadingRate)
let pCombinerOps' :: Ptr FragmentShadingRateCombinerOpKHR
pCombinerOps' = forall a (n :: Nat). Ptr (FixedArray n a) -> Ptr a
lowerArrayPtr ((Ptr PipelineFragmentShadingRateEnumStateCreateInfoNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr (FixedArray 2 FragmentShadingRateCombinerOpKHR)))
case ("combinerOps"
::: (FragmentShadingRateCombinerOpKHR,
FragmentShadingRateCombinerOpKHR)
combinerOps) of
(FragmentShadingRateCombinerOpKHR
e0, FragmentShadingRateCombinerOpKHR
e1) -> do
forall a. Storable a => Ptr a -> a -> IO ()
poke (Ptr FragmentShadingRateCombinerOpKHR
pCombinerOps' :: Ptr FragmentShadingRateCombinerOpKHR) (FragmentShadingRateCombinerOpKHR
e0)
forall a. Storable a => Ptr a -> a -> IO ()
poke (Ptr FragmentShadingRateCombinerOpKHR
pCombinerOps' forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
4 :: Ptr FragmentShadingRateCombinerOpKHR) (FragmentShadingRateCombinerOpKHR
e1)
IO b
f
cStructSize :: Int
cStructSize = Int
32
cStructAlignment :: Int
cStructAlignment = Int
8
pokeZeroCStruct :: forall b.
Ptr PipelineFragmentShadingRateEnumStateCreateInfoNV
-> IO b -> IO b
pokeZeroCStruct Ptr PipelineFragmentShadingRateEnumStateCreateInfoNV
p IO b
f = do
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PipelineFragmentShadingRateEnumStateCreateInfoNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_ENUM_STATE_CREATE_INFO_NV)
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PipelineFragmentShadingRateEnumStateCreateInfoNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (forall a. Ptr a
nullPtr)
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PipelineFragmentShadingRateEnumStateCreateInfoNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr FragmentShadingRateTypeNV)) (forall a. Zero a => a
zero)
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PipelineFragmentShadingRateEnumStateCreateInfoNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
20 :: Ptr FragmentShadingRateNV)) (forall a. Zero a => a
zero)
let pCombinerOps' :: Ptr FragmentShadingRateCombinerOpKHR
pCombinerOps' = forall a (n :: Nat). Ptr (FixedArray n a) -> Ptr a
lowerArrayPtr ((Ptr PipelineFragmentShadingRateEnumStateCreateInfoNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr (FixedArray 2 FragmentShadingRateCombinerOpKHR)))
case ((forall a. Zero a => a
zero, forall a. Zero a => a
zero)) of
(FragmentShadingRateCombinerOpKHR
e0, FragmentShadingRateCombinerOpKHR
e1) -> do
forall a. Storable a => Ptr a -> a -> IO ()
poke (Ptr FragmentShadingRateCombinerOpKHR
pCombinerOps' :: Ptr FragmentShadingRateCombinerOpKHR) (FragmentShadingRateCombinerOpKHR
e0)
forall a. Storable a => Ptr a -> a -> IO ()
poke (Ptr FragmentShadingRateCombinerOpKHR
pCombinerOps' forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
4 :: Ptr FragmentShadingRateCombinerOpKHR) (FragmentShadingRateCombinerOpKHR
e1)
IO b
f
instance FromCStruct PipelineFragmentShadingRateEnumStateCreateInfoNV where
peekCStruct :: Ptr PipelineFragmentShadingRateEnumStateCreateInfoNV
-> IO PipelineFragmentShadingRateEnumStateCreateInfoNV
peekCStruct Ptr PipelineFragmentShadingRateEnumStateCreateInfoNV
p = do
FragmentShadingRateTypeNV
shadingRateType <- forall a. Storable a => Ptr a -> IO a
peek @FragmentShadingRateTypeNV ((Ptr PipelineFragmentShadingRateEnumStateCreateInfoNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr FragmentShadingRateTypeNV))
FragmentShadingRateNV
shadingRate <- forall a. Storable a => Ptr a -> IO a
peek @FragmentShadingRateNV ((Ptr PipelineFragmentShadingRateEnumStateCreateInfoNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
20 :: Ptr FragmentShadingRateNV))
let pcombinerOps :: Ptr FragmentShadingRateCombinerOpKHR
pcombinerOps = forall a (n :: Nat). Ptr (FixedArray n a) -> Ptr a
lowerArrayPtr @FragmentShadingRateCombinerOpKHR ((Ptr PipelineFragmentShadingRateEnumStateCreateInfoNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr (FixedArray 2 FragmentShadingRateCombinerOpKHR)))
FragmentShadingRateCombinerOpKHR
combinerOps0 <- forall a. Storable a => Ptr a -> IO a
peek @FragmentShadingRateCombinerOpKHR ((Ptr FragmentShadingRateCombinerOpKHR
pcombinerOps forall a. Ptr a -> Int -> Ptr a
`advancePtrBytes` Int
0 :: Ptr FragmentShadingRateCombinerOpKHR))
FragmentShadingRateCombinerOpKHR
combinerOps1 <- forall a. Storable a => Ptr a -> IO a
peek @FragmentShadingRateCombinerOpKHR ((Ptr FragmentShadingRateCombinerOpKHR
pcombinerOps forall a. Ptr a -> Int -> Ptr a
`advancePtrBytes` Int
4 :: Ptr FragmentShadingRateCombinerOpKHR))
forall (f :: * -> *) a. Applicative f => a -> f a
pure forall a b. (a -> b) -> a -> b
$ FragmentShadingRateTypeNV
-> FragmentShadingRateNV
-> ("combinerOps"
::: (FragmentShadingRateCombinerOpKHR,
FragmentShadingRateCombinerOpKHR))
-> PipelineFragmentShadingRateEnumStateCreateInfoNV
PipelineFragmentShadingRateEnumStateCreateInfoNV
FragmentShadingRateTypeNV
shadingRateType FragmentShadingRateNV
shadingRate ((FragmentShadingRateCombinerOpKHR
combinerOps0, FragmentShadingRateCombinerOpKHR
combinerOps1))
instance Storable PipelineFragmentShadingRateEnumStateCreateInfoNV where
sizeOf :: PipelineFragmentShadingRateEnumStateCreateInfoNV -> Int
sizeOf ~PipelineFragmentShadingRateEnumStateCreateInfoNV
_ = Int
32
alignment :: PipelineFragmentShadingRateEnumStateCreateInfoNV -> Int
alignment ~PipelineFragmentShadingRateEnumStateCreateInfoNV
_ = Int
8
peek :: Ptr PipelineFragmentShadingRateEnumStateCreateInfoNV
-> IO PipelineFragmentShadingRateEnumStateCreateInfoNV
peek = forall a. FromCStruct a => Ptr a -> IO a
peekCStruct
poke :: Ptr PipelineFragmentShadingRateEnumStateCreateInfoNV
-> PipelineFragmentShadingRateEnumStateCreateInfoNV -> IO ()
poke Ptr PipelineFragmentShadingRateEnumStateCreateInfoNV
ptr PipelineFragmentShadingRateEnumStateCreateInfoNV
poked = forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr PipelineFragmentShadingRateEnumStateCreateInfoNV
ptr PipelineFragmentShadingRateEnumStateCreateInfoNV
poked (forall (f :: * -> *) a. Applicative f => a -> f a
pure ())
instance Zero PipelineFragmentShadingRateEnumStateCreateInfoNV where
zero :: PipelineFragmentShadingRateEnumStateCreateInfoNV
zero = FragmentShadingRateTypeNV
-> FragmentShadingRateNV
-> ("combinerOps"
::: (FragmentShadingRateCombinerOpKHR,
FragmentShadingRateCombinerOpKHR))
-> PipelineFragmentShadingRateEnumStateCreateInfoNV
PipelineFragmentShadingRateEnumStateCreateInfoNV
forall a. Zero a => a
zero
forall a. Zero a => a
zero
(forall a. Zero a => a
zero, forall a. Zero a => a
zero)
newtype FragmentShadingRateNV = FragmentShadingRateNV Int32
deriving newtype (FragmentShadingRateNV -> FragmentShadingRateNV -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: FragmentShadingRateNV -> FragmentShadingRateNV -> Bool
$c/= :: FragmentShadingRateNV -> FragmentShadingRateNV -> Bool
== :: FragmentShadingRateNV -> FragmentShadingRateNV -> Bool
$c== :: FragmentShadingRateNV -> FragmentShadingRateNV -> Bool
Eq, Eq FragmentShadingRateNV
FragmentShadingRateNV -> FragmentShadingRateNV -> Bool
FragmentShadingRateNV -> FragmentShadingRateNV -> Ordering
FragmentShadingRateNV
-> FragmentShadingRateNV -> FragmentShadingRateNV
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: FragmentShadingRateNV
-> FragmentShadingRateNV -> FragmentShadingRateNV
$cmin :: FragmentShadingRateNV
-> FragmentShadingRateNV -> FragmentShadingRateNV
max :: FragmentShadingRateNV
-> FragmentShadingRateNV -> FragmentShadingRateNV
$cmax :: FragmentShadingRateNV
-> FragmentShadingRateNV -> FragmentShadingRateNV
>= :: FragmentShadingRateNV -> FragmentShadingRateNV -> Bool
$c>= :: FragmentShadingRateNV -> FragmentShadingRateNV -> Bool
> :: FragmentShadingRateNV -> FragmentShadingRateNV -> Bool
$c> :: FragmentShadingRateNV -> FragmentShadingRateNV -> Bool
<= :: FragmentShadingRateNV -> FragmentShadingRateNV -> Bool
$c<= :: FragmentShadingRateNV -> FragmentShadingRateNV -> Bool
< :: FragmentShadingRateNV -> FragmentShadingRateNV -> Bool
$c< :: FragmentShadingRateNV -> FragmentShadingRateNV -> Bool
compare :: FragmentShadingRateNV -> FragmentShadingRateNV -> Ordering
$ccompare :: FragmentShadingRateNV -> FragmentShadingRateNV -> Ordering
Ord, Ptr FragmentShadingRateNV -> IO FragmentShadingRateNV
Ptr FragmentShadingRateNV -> Int -> IO FragmentShadingRateNV
Ptr FragmentShadingRateNV -> Int -> FragmentShadingRateNV -> IO ()
Ptr FragmentShadingRateNV -> FragmentShadingRateNV -> IO ()
FragmentShadingRateNV -> Int
forall b. Ptr b -> Int -> IO FragmentShadingRateNV
forall b. Ptr b -> Int -> FragmentShadingRateNV -> IO ()
forall a.
(a -> Int)
-> (a -> Int)
-> (Ptr a -> Int -> IO a)
-> (Ptr a -> Int -> a -> IO ())
-> (forall b. Ptr b -> Int -> IO a)
-> (forall b. Ptr b -> Int -> a -> IO ())
-> (Ptr a -> IO a)
-> (Ptr a -> a -> IO ())
-> Storable a
poke :: Ptr FragmentShadingRateNV -> FragmentShadingRateNV -> IO ()
$cpoke :: Ptr FragmentShadingRateNV -> FragmentShadingRateNV -> IO ()
peek :: Ptr FragmentShadingRateNV -> IO FragmentShadingRateNV
$cpeek :: Ptr FragmentShadingRateNV -> IO FragmentShadingRateNV
pokeByteOff :: forall b. Ptr b -> Int -> FragmentShadingRateNV -> IO ()
$cpokeByteOff :: forall b. Ptr b -> Int -> FragmentShadingRateNV -> IO ()
peekByteOff :: forall b. Ptr b -> Int -> IO FragmentShadingRateNV
$cpeekByteOff :: forall b. Ptr b -> Int -> IO FragmentShadingRateNV
pokeElemOff :: Ptr FragmentShadingRateNV -> Int -> FragmentShadingRateNV -> IO ()
$cpokeElemOff :: Ptr FragmentShadingRateNV -> Int -> FragmentShadingRateNV -> IO ()
peekElemOff :: Ptr FragmentShadingRateNV -> Int -> IO FragmentShadingRateNV
$cpeekElemOff :: Ptr FragmentShadingRateNV -> Int -> IO FragmentShadingRateNV
alignment :: FragmentShadingRateNV -> Int
$calignment :: FragmentShadingRateNV -> Int
sizeOf :: FragmentShadingRateNV -> Int
$csizeOf :: FragmentShadingRateNV -> Int
Storable, FragmentShadingRateNV
forall a. a -> Zero a
zero :: FragmentShadingRateNV
$czero :: FragmentShadingRateNV
Zero)
pattern $bFRAGMENT_SHADING_RATE_1_INVOCATION_PER_PIXEL_NV :: FragmentShadingRateNV
$mFRAGMENT_SHADING_RATE_1_INVOCATION_PER_PIXEL_NV :: forall {r}.
FragmentShadingRateNV -> ((# #) -> r) -> ((# #) -> r) -> r
FRAGMENT_SHADING_RATE_1_INVOCATION_PER_PIXEL_NV = FragmentShadingRateNV 0
pattern $bFRAGMENT_SHADING_RATE_1_INVOCATION_PER_1X2_PIXELS_NV :: FragmentShadingRateNV
$mFRAGMENT_SHADING_RATE_1_INVOCATION_PER_1X2_PIXELS_NV :: forall {r}.
FragmentShadingRateNV -> ((# #) -> r) -> ((# #) -> r) -> r
FRAGMENT_SHADING_RATE_1_INVOCATION_PER_1X2_PIXELS_NV = FragmentShadingRateNV 1
pattern $bFRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X1_PIXELS_NV :: FragmentShadingRateNV
$mFRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X1_PIXELS_NV :: forall {r}.
FragmentShadingRateNV -> ((# #) -> r) -> ((# #) -> r) -> r
FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X1_PIXELS_NV = FragmentShadingRateNV 4
pattern $bFRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X2_PIXELS_NV :: FragmentShadingRateNV
$mFRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X2_PIXELS_NV :: forall {r}.
FragmentShadingRateNV -> ((# #) -> r) -> ((# #) -> r) -> r
FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X2_PIXELS_NV = FragmentShadingRateNV 5
pattern $bFRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X4_PIXELS_NV :: FragmentShadingRateNV
$mFRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X4_PIXELS_NV :: forall {r}.
FragmentShadingRateNV -> ((# #) -> r) -> ((# #) -> r) -> r
FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X4_PIXELS_NV = FragmentShadingRateNV 6
pattern $bFRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X2_PIXELS_NV :: FragmentShadingRateNV
$mFRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X2_PIXELS_NV :: forall {r}.
FragmentShadingRateNV -> ((# #) -> r) -> ((# #) -> r) -> r
FRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X2_PIXELS_NV = FragmentShadingRateNV 9
pattern $bFRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X4_PIXELS_NV :: FragmentShadingRateNV
$mFRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X4_PIXELS_NV :: forall {r}.
FragmentShadingRateNV -> ((# #) -> r) -> ((# #) -> r) -> r
FRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X4_PIXELS_NV = FragmentShadingRateNV 10
pattern $bFRAGMENT_SHADING_RATE_2_INVOCATIONS_PER_PIXEL_NV :: FragmentShadingRateNV
$mFRAGMENT_SHADING_RATE_2_INVOCATIONS_PER_PIXEL_NV :: forall {r}.
FragmentShadingRateNV -> ((# #) -> r) -> ((# #) -> r) -> r
FRAGMENT_SHADING_RATE_2_INVOCATIONS_PER_PIXEL_NV = FragmentShadingRateNV 11
pattern $bFRAGMENT_SHADING_RATE_4_INVOCATIONS_PER_PIXEL_NV :: FragmentShadingRateNV
$mFRAGMENT_SHADING_RATE_4_INVOCATIONS_PER_PIXEL_NV :: forall {r}.
FragmentShadingRateNV -> ((# #) -> r) -> ((# #) -> r) -> r
FRAGMENT_SHADING_RATE_4_INVOCATIONS_PER_PIXEL_NV = FragmentShadingRateNV 12
pattern $bFRAGMENT_SHADING_RATE_8_INVOCATIONS_PER_PIXEL_NV :: FragmentShadingRateNV
$mFRAGMENT_SHADING_RATE_8_INVOCATIONS_PER_PIXEL_NV :: forall {r}.
FragmentShadingRateNV -> ((# #) -> r) -> ((# #) -> r) -> r
FRAGMENT_SHADING_RATE_8_INVOCATIONS_PER_PIXEL_NV = FragmentShadingRateNV 13
pattern $bFRAGMENT_SHADING_RATE_16_INVOCATIONS_PER_PIXEL_NV :: FragmentShadingRateNV
$mFRAGMENT_SHADING_RATE_16_INVOCATIONS_PER_PIXEL_NV :: forall {r}.
FragmentShadingRateNV -> ((# #) -> r) -> ((# #) -> r) -> r
FRAGMENT_SHADING_RATE_16_INVOCATIONS_PER_PIXEL_NV = FragmentShadingRateNV 14
pattern $bFRAGMENT_SHADING_RATE_NO_INVOCATIONS_NV :: FragmentShadingRateNV
$mFRAGMENT_SHADING_RATE_NO_INVOCATIONS_NV :: forall {r}.
FragmentShadingRateNV -> ((# #) -> r) -> ((# #) -> r) -> r
FRAGMENT_SHADING_RATE_NO_INVOCATIONS_NV = FragmentShadingRateNV 15
{-# COMPLETE
FRAGMENT_SHADING_RATE_1_INVOCATION_PER_PIXEL_NV
, FRAGMENT_SHADING_RATE_1_INVOCATION_PER_1X2_PIXELS_NV
, FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X1_PIXELS_NV
, FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X2_PIXELS_NV
, FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X4_PIXELS_NV
, FRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X2_PIXELS_NV
, FRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X4_PIXELS_NV
, FRAGMENT_SHADING_RATE_2_INVOCATIONS_PER_PIXEL_NV
, FRAGMENT_SHADING_RATE_4_INVOCATIONS_PER_PIXEL_NV
, FRAGMENT_SHADING_RATE_8_INVOCATIONS_PER_PIXEL_NV
, FRAGMENT_SHADING_RATE_16_INVOCATIONS_PER_PIXEL_NV
, FRAGMENT_SHADING_RATE_NO_INVOCATIONS_NV ::
FragmentShadingRateNV
#-}
conNameFragmentShadingRateNV :: String
conNameFragmentShadingRateNV :: String
conNameFragmentShadingRateNV = String
"FragmentShadingRateNV"
enumPrefixFragmentShadingRateNV :: String
enumPrefixFragmentShadingRateNV :: String
enumPrefixFragmentShadingRateNV = String
"FRAGMENT_SHADING_RATE_"
showTableFragmentShadingRateNV :: [(FragmentShadingRateNV, String)]
showTableFragmentShadingRateNV :: [(FragmentShadingRateNV, String)]
showTableFragmentShadingRateNV =
[
( FragmentShadingRateNV
FRAGMENT_SHADING_RATE_1_INVOCATION_PER_PIXEL_NV
, String
"1_INVOCATION_PER_PIXEL_NV"
)
,
( FragmentShadingRateNV
FRAGMENT_SHADING_RATE_1_INVOCATION_PER_1X2_PIXELS_NV
, String
"1_INVOCATION_PER_1X2_PIXELS_NV"
)
,
( FragmentShadingRateNV
FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X1_PIXELS_NV
, String
"1_INVOCATION_PER_2X1_PIXELS_NV"
)
,
( FragmentShadingRateNV
FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X2_PIXELS_NV
, String
"1_INVOCATION_PER_2X2_PIXELS_NV"
)
,
( FragmentShadingRateNV
FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X4_PIXELS_NV
, String
"1_INVOCATION_PER_2X4_PIXELS_NV"
)
,
( FragmentShadingRateNV
FRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X2_PIXELS_NV
, String
"1_INVOCATION_PER_4X2_PIXELS_NV"
)
,
( FragmentShadingRateNV
FRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X4_PIXELS_NV
, String
"1_INVOCATION_PER_4X4_PIXELS_NV"
)
,
( FragmentShadingRateNV
FRAGMENT_SHADING_RATE_2_INVOCATIONS_PER_PIXEL_NV
, String
"2_INVOCATIONS_PER_PIXEL_NV"
)
,
( FragmentShadingRateNV
FRAGMENT_SHADING_RATE_4_INVOCATIONS_PER_PIXEL_NV
, String
"4_INVOCATIONS_PER_PIXEL_NV"
)
,
( FragmentShadingRateNV
FRAGMENT_SHADING_RATE_8_INVOCATIONS_PER_PIXEL_NV
, String
"8_INVOCATIONS_PER_PIXEL_NV"
)
,
( FragmentShadingRateNV
FRAGMENT_SHADING_RATE_16_INVOCATIONS_PER_PIXEL_NV
, String
"16_INVOCATIONS_PER_PIXEL_NV"
)
,
( FragmentShadingRateNV
FRAGMENT_SHADING_RATE_NO_INVOCATIONS_NV
, String
"NO_INVOCATIONS_NV"
)
]
instance Show FragmentShadingRateNV where
showsPrec :: Int -> FragmentShadingRateNV -> ShowS
showsPrec =
forall a i.
Eq a =>
String
-> [(a, String)]
-> String
-> (a -> i)
-> (i -> ShowS)
-> Int
-> a
-> ShowS
enumShowsPrec
String
enumPrefixFragmentShadingRateNV
[(FragmentShadingRateNV, String)]
showTableFragmentShadingRateNV
String
conNameFragmentShadingRateNV
(\(FragmentShadingRateNV Int32
x) -> Int32
x)
(forall a. Show a => Int -> a -> ShowS
showsPrec Int
11)
instance Read FragmentShadingRateNV where
readPrec :: ReadPrec FragmentShadingRateNV
readPrec =
forall i a.
Read i =>
String -> [(a, String)] -> String -> (i -> a) -> ReadPrec a
enumReadPrec
String
enumPrefixFragmentShadingRateNV
[(FragmentShadingRateNV, String)]
showTableFragmentShadingRateNV
String
conNameFragmentShadingRateNV
Int32 -> FragmentShadingRateNV
FragmentShadingRateNV
newtype FragmentShadingRateTypeNV = FragmentShadingRateTypeNV Int32
deriving newtype (FragmentShadingRateTypeNV -> FragmentShadingRateTypeNV -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: FragmentShadingRateTypeNV -> FragmentShadingRateTypeNV -> Bool
$c/= :: FragmentShadingRateTypeNV -> FragmentShadingRateTypeNV -> Bool
== :: FragmentShadingRateTypeNV -> FragmentShadingRateTypeNV -> Bool
$c== :: FragmentShadingRateTypeNV -> FragmentShadingRateTypeNV -> Bool
Eq, Eq FragmentShadingRateTypeNV
FragmentShadingRateTypeNV -> FragmentShadingRateTypeNV -> Bool
FragmentShadingRateTypeNV -> FragmentShadingRateTypeNV -> Ordering
FragmentShadingRateTypeNV
-> FragmentShadingRateTypeNV -> FragmentShadingRateTypeNV
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: FragmentShadingRateTypeNV
-> FragmentShadingRateTypeNV -> FragmentShadingRateTypeNV
$cmin :: FragmentShadingRateTypeNV
-> FragmentShadingRateTypeNV -> FragmentShadingRateTypeNV
max :: FragmentShadingRateTypeNV
-> FragmentShadingRateTypeNV -> FragmentShadingRateTypeNV
$cmax :: FragmentShadingRateTypeNV
-> FragmentShadingRateTypeNV -> FragmentShadingRateTypeNV
>= :: FragmentShadingRateTypeNV -> FragmentShadingRateTypeNV -> Bool
$c>= :: FragmentShadingRateTypeNV -> FragmentShadingRateTypeNV -> Bool
> :: FragmentShadingRateTypeNV -> FragmentShadingRateTypeNV -> Bool
$c> :: FragmentShadingRateTypeNV -> FragmentShadingRateTypeNV -> Bool
<= :: FragmentShadingRateTypeNV -> FragmentShadingRateTypeNV -> Bool
$c<= :: FragmentShadingRateTypeNV -> FragmentShadingRateTypeNV -> Bool
< :: FragmentShadingRateTypeNV -> FragmentShadingRateTypeNV -> Bool
$c< :: FragmentShadingRateTypeNV -> FragmentShadingRateTypeNV -> Bool
compare :: FragmentShadingRateTypeNV -> FragmentShadingRateTypeNV -> Ordering
$ccompare :: FragmentShadingRateTypeNV -> FragmentShadingRateTypeNV -> Ordering
Ord, Ptr FragmentShadingRateTypeNV -> IO FragmentShadingRateTypeNV
Ptr FragmentShadingRateTypeNV
-> Int -> IO FragmentShadingRateTypeNV
Ptr FragmentShadingRateTypeNV
-> Int -> FragmentShadingRateTypeNV -> IO ()
Ptr FragmentShadingRateTypeNV -> FragmentShadingRateTypeNV -> IO ()
FragmentShadingRateTypeNV -> Int
forall b. Ptr b -> Int -> IO FragmentShadingRateTypeNV
forall b. Ptr b -> Int -> FragmentShadingRateTypeNV -> IO ()
forall a.
(a -> Int)
-> (a -> Int)
-> (Ptr a -> Int -> IO a)
-> (Ptr a -> Int -> a -> IO ())
-> (forall b. Ptr b -> Int -> IO a)
-> (forall b. Ptr b -> Int -> a -> IO ())
-> (Ptr a -> IO a)
-> (Ptr a -> a -> IO ())
-> Storable a
poke :: Ptr FragmentShadingRateTypeNV -> FragmentShadingRateTypeNV -> IO ()
$cpoke :: Ptr FragmentShadingRateTypeNV -> FragmentShadingRateTypeNV -> IO ()
peek :: Ptr FragmentShadingRateTypeNV -> IO FragmentShadingRateTypeNV
$cpeek :: Ptr FragmentShadingRateTypeNV -> IO FragmentShadingRateTypeNV
pokeByteOff :: forall b. Ptr b -> Int -> FragmentShadingRateTypeNV -> IO ()
$cpokeByteOff :: forall b. Ptr b -> Int -> FragmentShadingRateTypeNV -> IO ()
peekByteOff :: forall b. Ptr b -> Int -> IO FragmentShadingRateTypeNV
$cpeekByteOff :: forall b. Ptr b -> Int -> IO FragmentShadingRateTypeNV
pokeElemOff :: Ptr FragmentShadingRateTypeNV
-> Int -> FragmentShadingRateTypeNV -> IO ()
$cpokeElemOff :: Ptr FragmentShadingRateTypeNV
-> Int -> FragmentShadingRateTypeNV -> IO ()
peekElemOff :: Ptr FragmentShadingRateTypeNV
-> Int -> IO FragmentShadingRateTypeNV
$cpeekElemOff :: Ptr FragmentShadingRateTypeNV
-> Int -> IO FragmentShadingRateTypeNV
alignment :: FragmentShadingRateTypeNV -> Int
$calignment :: FragmentShadingRateTypeNV -> Int
sizeOf :: FragmentShadingRateTypeNV -> Int
$csizeOf :: FragmentShadingRateTypeNV -> Int
Storable, FragmentShadingRateTypeNV
forall a. a -> Zero a
zero :: FragmentShadingRateTypeNV
$czero :: FragmentShadingRateTypeNV
Zero)
pattern $bFRAGMENT_SHADING_RATE_TYPE_FRAGMENT_SIZE_NV :: FragmentShadingRateTypeNV
$mFRAGMENT_SHADING_RATE_TYPE_FRAGMENT_SIZE_NV :: forall {r}.
FragmentShadingRateTypeNV -> ((# #) -> r) -> ((# #) -> r) -> r
FRAGMENT_SHADING_RATE_TYPE_FRAGMENT_SIZE_NV = FragmentShadingRateTypeNV 0
pattern $bFRAGMENT_SHADING_RATE_TYPE_ENUMS_NV :: FragmentShadingRateTypeNV
$mFRAGMENT_SHADING_RATE_TYPE_ENUMS_NV :: forall {r}.
FragmentShadingRateTypeNV -> ((# #) -> r) -> ((# #) -> r) -> r
FRAGMENT_SHADING_RATE_TYPE_ENUMS_NV = FragmentShadingRateTypeNV 1
{-# COMPLETE
FRAGMENT_SHADING_RATE_TYPE_FRAGMENT_SIZE_NV
, FRAGMENT_SHADING_RATE_TYPE_ENUMS_NV ::
FragmentShadingRateTypeNV
#-}
conNameFragmentShadingRateTypeNV :: String
conNameFragmentShadingRateTypeNV :: String
conNameFragmentShadingRateTypeNV = String
"FragmentShadingRateTypeNV"
enumPrefixFragmentShadingRateTypeNV :: String
enumPrefixFragmentShadingRateTypeNV :: String
enumPrefixFragmentShadingRateTypeNV = String
"FRAGMENT_SHADING_RATE_TYPE_"
showTableFragmentShadingRateTypeNV :: [(FragmentShadingRateTypeNV, String)]
showTableFragmentShadingRateTypeNV :: [(FragmentShadingRateTypeNV, String)]
showTableFragmentShadingRateTypeNV =
[
( FragmentShadingRateTypeNV
FRAGMENT_SHADING_RATE_TYPE_FRAGMENT_SIZE_NV
, String
"FRAGMENT_SIZE_NV"
)
,
( FragmentShadingRateTypeNV
FRAGMENT_SHADING_RATE_TYPE_ENUMS_NV
, String
"ENUMS_NV"
)
]
instance Show FragmentShadingRateTypeNV where
showsPrec :: Int -> FragmentShadingRateTypeNV -> ShowS
showsPrec =
forall a i.
Eq a =>
String
-> [(a, String)]
-> String
-> (a -> i)
-> (i -> ShowS)
-> Int
-> a
-> ShowS
enumShowsPrec
String
enumPrefixFragmentShadingRateTypeNV
[(FragmentShadingRateTypeNV, String)]
showTableFragmentShadingRateTypeNV
String
conNameFragmentShadingRateTypeNV
(\(FragmentShadingRateTypeNV Int32
x) -> Int32
x)
(forall a. Show a => Int -> a -> ShowS
showsPrec Int
11)
instance Read FragmentShadingRateTypeNV where
readPrec :: ReadPrec FragmentShadingRateTypeNV
readPrec =
forall i a.
Read i =>
String -> [(a, String)] -> String -> (i -> a) -> ReadPrec a
enumReadPrec
String
enumPrefixFragmentShadingRateTypeNV
[(FragmentShadingRateTypeNV, String)]
showTableFragmentShadingRateTypeNV
String
conNameFragmentShadingRateTypeNV
Int32 -> FragmentShadingRateTypeNV
FragmentShadingRateTypeNV
type NV_FRAGMENT_SHADING_RATE_ENUMS_SPEC_VERSION = 1
pattern NV_FRAGMENT_SHADING_RATE_ENUMS_SPEC_VERSION :: forall a . Integral a => a
pattern $bNV_FRAGMENT_SHADING_RATE_ENUMS_SPEC_VERSION :: forall a. Integral a => a
$mNV_FRAGMENT_SHADING_RATE_ENUMS_SPEC_VERSION :: forall {r} {a}.
Integral a =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
NV_FRAGMENT_SHADING_RATE_ENUMS_SPEC_VERSION = 1
type NV_FRAGMENT_SHADING_RATE_ENUMS_EXTENSION_NAME = "VK_NV_fragment_shading_rate_enums"
pattern NV_FRAGMENT_SHADING_RATE_ENUMS_EXTENSION_NAME :: forall a . (Eq a, IsString a) => a
pattern $bNV_FRAGMENT_SHADING_RATE_ENUMS_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
$mNV_FRAGMENT_SHADING_RATE_ENUMS_EXTENSION_NAME :: forall {r} {a}.
(Eq a, IsString a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
NV_FRAGMENT_SHADING_RATE_ENUMS_EXTENSION_NAME = "VK_NV_fragment_shading_rate_enums"