packages feed

vulkan-3.21: src/Vulkan/Extensions/VK_AMD_texture_gather_bias_lod.hs-boot

{-# language CPP #-}
-- | = Name
--
-- VK_AMD_texture_gather_bias_lod - device extension
--
-- == VK_AMD_texture_gather_bias_lod
--
-- [__Name String__]
--     @VK_AMD_texture_gather_bias_lod@
--
-- [__Extension Type__]
--     Device extension
--
-- [__Registered Extension Number__]
--     42
--
-- [__Revision__]
--     1
--
-- [__Extension and Version Dependencies__]
--
--     -   Requires support for Vulkan 1.0
--
--     -   Requires @VK_KHR_get_physical_device_properties2@ to be enabled
--         for any device-level functionality
--
-- [__Contact__]
--
--     -   Rex Xu
--         <https://github.com/KhronosGroup/Vulkan-Docs/issues/new?body=[VK_AMD_texture_gather_bias_lod] @amdrexu%0A<<Here describe the issue or question you have about the VK_AMD_texture_gather_bias_lod extension>> >
--
-- == Other Extension Metadata
--
-- [__Last Modified Date__]
--     2017-03-21
--
-- [__IP Status__]
--     No known IP claims.
--
-- [__Interactions and External Dependencies__]
--
--     -   This extension requires
--         <https://htmlpreview.github.io/?https://github.com/KhronosGroup/SPIRV-Registry/blob/master/extensions/AMD/SPV_AMD_texture_gather_bias_lod.html SPV_AMD_texture_gather_bias_lod>
--
--     -   This extension provides API support for
--         <https://registry.khronos.org/OpenGL/extensions/AMD/AMD_texture_gather_bias_lod.txt GL_AMD_texture_gather_bias_lod>
--
-- [__Contributors__]
--
--     -   Dominik Witczak, AMD
--
--     -   Daniel Rakos, AMD
--
--     -   Graham Sellers, AMD
--
--     -   Matthaeus G. Chajdas, AMD
--
--     -   Qun Lin, AMD
--
--     -   Rex Xu, AMD
--
--     -   Timothy Lottes, AMD
--
-- == Description
--
-- This extension adds two related features.
--
-- Firstly, support for the following SPIR-V extension in Vulkan is added:
--
-- -   @SPV_AMD_texture_gather_bias_lod@
--
-- Secondly, the extension allows the application to query which formats
-- can be used together with the new function prototypes introduced by the
-- SPIR-V extension.
--
-- == New Structures
--
-- -   Extending
--     'Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.ImageFormatProperties2':
--
--     -   'TextureLODGatherFormatPropertiesAMD'
--
-- == New Enum Constants
--
-- -   'AMD_TEXTURE_GATHER_BIAS_LOD_EXTENSION_NAME'
--
-- -   'AMD_TEXTURE_GATHER_BIAS_LOD_SPEC_VERSION'
--
-- -   Extending 'Vulkan.Core10.Enums.StructureType.StructureType':
--
--     -   'Vulkan.Core10.Enums.StructureType.STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD'
--
-- == New SPIR-V Capabilities
--
-- -   <https://registry.khronos.org/vulkan/specs/1.3-extensions/html/vkspec.html#spirvenv-capabilities-table-ImageGatherBiasLodAMD ImageGatherBiasLodAMD>
--
-- == Examples
--
-- > struct VkTextureLODGatherFormatPropertiesAMD
-- > {
-- >     VkStructureType sType;
-- >     const void*     pNext;
-- >     VkBool32        supportsTextureGatherLODBiasAMD;
-- > };
-- >
-- > // ----------------------------------------------------------------------------------------
-- > // How to detect if an image format can be used with the new function prototypes.
-- > VkPhysicalDeviceImageFormatInfo2   formatInfo;
-- > VkImageFormatProperties2           formatProps;
-- > VkTextureLODGatherFormatPropertiesAMD textureLODGatherSupport;
-- >
-- > textureLODGatherSupport.sType = VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD;
-- > textureLODGatherSupport.pNext = nullptr;
-- >
-- > formatInfo.sType  = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2;
-- > formatInfo.pNext  = nullptr;
-- > formatInfo.format = ...;
-- > formatInfo.type   = ...;
-- > formatInfo.tiling = ...;
-- > formatInfo.usage  = ...;
-- > formatInfo.flags  = ...;
-- >
-- > formatProps.sType = VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2;
-- > formatProps.pNext = &textureLODGatherSupport;
-- >
-- > vkGetPhysicalDeviceImageFormatProperties2(physical_device, &formatInfo, &formatProps);
-- >
-- > if (textureLODGatherSupport.supportsTextureGatherLODBiasAMD == VK_TRUE)
-- > {
-- >     // physical device supports SPV_AMD_texture_gather_bias_lod for the specified
-- >     // format configuration.
-- > }
-- > else
-- > {
-- >     // physical device does not support SPV_AMD_texture_gather_bias_lod for the
-- >     // specified format configuration.
-- > }
--
-- == Version History
--
-- -   Revision 1, 2017-03-21 (Dominik Witczak)
--
--     -   Initial draft
--
-- == See Also
--
-- 'TextureLODGatherFormatPropertiesAMD'
--
-- == Document Notes
--
-- For more information, see the
-- <https://registry.khronos.org/vulkan/specs/1.3-extensions/html/vkspec.html#VK_AMD_texture_gather_bias_lod Vulkan Specification>
--
-- This page is a generated document. Fixes and changes should be made to
-- the generator scripts, not directly.
module Vulkan.Extensions.VK_AMD_texture_gather_bias_lod  (TextureLODGatherFormatPropertiesAMD) where

import Vulkan.CStruct (FromCStruct)
import Vulkan.CStruct (ToCStruct)
import Data.Kind (Type)

data TextureLODGatherFormatPropertiesAMD

instance ToCStruct TextureLODGatherFormatPropertiesAMD
instance Show TextureLODGatherFormatPropertiesAMD

instance FromCStruct TextureLODGatherFormatPropertiesAMD