packages feed

vulkan-3.27: src/Vulkan/Core10/Enums/SamplerMipmapMode.hs

{-# language CPP #-}
-- No documentation found for Chapter "SamplerMipmapMode"
module Vulkan.Core10.Enums.SamplerMipmapMode  (SamplerMipmapMode( SAMPLER_MIPMAP_MODE_NEAREST
                                                                , SAMPLER_MIPMAP_MODE_LINEAR
                                                                , ..
                                                                )) where

import Vulkan.Internal.Utils (enumReadPrec)
import Vulkan.Internal.Utils (enumShowsPrec)
import GHC.Show (showsPrec)
import Vulkan.Zero (Zero)
import Foreign.Storable (Storable)
import Data.Int (Int32)
import GHC.Read (Read(readPrec))
import GHC.Show (Show(showsPrec))

-- | VkSamplerMipmapMode - Specify mipmap mode used for texture lookups
--
-- = Description
--
-- -   'SAMPLER_MIPMAP_MODE_NEAREST' specifies nearest filtering.
--
-- -   'SAMPLER_MIPMAP_MODE_LINEAR' specifies linear filtering.
--
-- These modes are described in detail in
-- <https://registry.khronos.org/vulkan/specs/latest/html/vkspec.html#textures-texel-filtering Texel Filtering>.
--
-- = See Also
--
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VK_VERSION_1_0 VK_VERSION_1_0>,
-- 'Vulkan.Core10.Sampler.SamplerCreateInfo'
newtype SamplerMipmapMode = SamplerMipmapMode Int32
  deriving newtype (Eq, Ord, Storable, Zero)

-- No documentation found for Nested "VkSamplerMipmapMode" "VK_SAMPLER_MIPMAP_MODE_NEAREST"
pattern SAMPLER_MIPMAP_MODE_NEAREST = SamplerMipmapMode 0

-- No documentation found for Nested "VkSamplerMipmapMode" "VK_SAMPLER_MIPMAP_MODE_LINEAR"
pattern SAMPLER_MIPMAP_MODE_LINEAR = SamplerMipmapMode 1

{-# COMPLETE
  SAMPLER_MIPMAP_MODE_NEAREST
  , SAMPLER_MIPMAP_MODE_LINEAR ::
    SamplerMipmapMode
  #-}

conNameSamplerMipmapMode :: String
conNameSamplerMipmapMode = "SamplerMipmapMode"

enumPrefixSamplerMipmapMode :: String
enumPrefixSamplerMipmapMode = "SAMPLER_MIPMAP_MODE_"

showTableSamplerMipmapMode :: [(SamplerMipmapMode, String)]
showTableSamplerMipmapMode =
  [ (SAMPLER_MIPMAP_MODE_NEAREST, "NEAREST")
  , (SAMPLER_MIPMAP_MODE_LINEAR, "LINEAR")
  ]

instance Show SamplerMipmapMode where
  showsPrec =
    enumShowsPrec
      enumPrefixSamplerMipmapMode
      showTableSamplerMipmapMode
      conNameSamplerMipmapMode
      (\(SamplerMipmapMode x) -> x)
      (showsPrec 11)

instance Read SamplerMipmapMode where
  readPrec =
    enumReadPrec
      enumPrefixSamplerMipmapMode
      showTableSamplerMipmapMode
      conNameSamplerMipmapMode
      SamplerMipmapMode