Class VkPhysicalDeviceFloatControlsPropertiesKHR

  • All Implemented Interfaces:
    java.lang.AutoCloseable, org.lwjgl.system.NativeResource, org.lwjgl.system.Pointer

    public class VkPhysicalDeviceFloatControlsPropertiesKHR
    extends org.lwjgl.system.Struct
    implements org.lwjgl.system.NativeResource
    Structure describing properties supported by VK_KHR_shader_float_controls.
    Description

    If the VkPhysicalDeviceFloatControlsPropertiesKHR structure is included in the pNext chain of VkPhysicalDeviceProperties2, it is filled with the implementation-dependent limits.

    Valid Usage (Implicit)

    Member documentation

    • denormBehaviorIndependence – an VkShaderFloatControlsIndependenceKHR value indicating whether, and how, denorm behavior can be set independently for different bit widths.
    • roundingModeIndependence – an VkShaderFloatControlsIndependenceKHR value indicating whether, and how, rounding modes can be set independently for different bit widths.
    • shaderSignedZeroInfNanPreserveFloat16 – a boolean value indicating whether sign of a zero, Nans and ±∞ can be preserved in 16-bit floating-point computations. It also indicates whether the SignedZeroInfNanPreserve execution mode can be used for 16-bit floating-point types.
    • shaderSignedZeroInfNanPreserveFloat32 – a boolean value indicating whether sign of a zero, Nans and ±∞ can be preserved in 32-bit floating-point computations. It also indicates whether the SignedZeroInfNanPreserve execution mode can be used for 32-bit floating-point types.
    • shaderSignedZeroInfNanPreserveFloat64 – a boolean value indicating whether sign of a zero, Nans and ±∞ can be preserved in 64-bit floating-point computations. It also indicates whether the SignedZeroInfNanPreserve execution mode can be used for 64-bit floating-point types.
    • shaderDenormPreserveFloat16 – a boolean value indicating whether denormals can be preserved in 16-bit floating-point computations. It also indicates whether the DenormPreserve execution mode can be used for 16-bit floating-point types.
    • shaderDenormPreserveFloat32 – a boolean value indicating whether denormals can be preserved in 32-bit floating-point computations. It also indicates whether the DenormPreserve execution mode can be used for 32-bit floating-point types.
    • shaderDenormPreserveFloat64 – a boolean value indicating whether denormals can be preserved in 64-bit floating-point computations. It also indicates whether the DenormPreserve execution mode can be used for 64-bit floating-point types.
    • shaderDenormFlushToZeroFloat16 – a boolean value indicating whether denormals can be flushed to zero in 16-bit floating-point computations. It also indicates whether the DenormFlushToZero execution mode can be used for 16-bit floating-point types.
    • shaderDenormFlushToZeroFloat32 – a boolean value indicating whether denormals can be flushed to zero in 32-bit floating-point computations. It also indicates whether the DenormFlushToZero execution mode can be used for 32-bit floating-point types.
    • shaderDenormFlushToZeroFloat64 – a boolean value indicating whether denormals can be flushed to zero in 64-bit floating-point computations. It also indicates whether the DenormFlushToZero execution mode can be used for 64-bit floating-point types.
    • shaderRoundingModeRTEFloat16 – a boolean value indicating whether an implementation supports the round-to-nearest-even rounding mode for 16-bit floating-point arithmetic and conversion instructions. It also indicates whether the RoundingModeRTE execution mode can be used for 16-bit floating-point types.
    • shaderRoundingModeRTEFloat32 – a boolean value indicating whether an implementation supports the round-to-nearest-even rounding mode for 32-bit floating-point arithmetic and conversion instructions. It also indicates whether the RoundingModeRTE execution mode can be used for 32-bit floating-point types.
    • shaderRoundingModeRTEFloat64 – a boolean value indicating whether an implementation supports the round-to-nearest-even rounding mode for 64-bit floating-point arithmetic and conversion instructions. It also indicates whether the RoundingModeRTE execution mode can be used for 64-bit floating-point types.
    • shaderRoundingModeRTZFloat16 – a boolean value indicating whether an implementation supports the round-towards-zero rounding mode for 16-bit floating-point arithmetic and conversion instructions. It also indicates whether the RoundingModeRTZ execution mode can be used for 16-bit floating-point types.
    • shaderRoundingModeRTZFloat32 – a boolean value indicating whether an implementation supports the round-towards-zero rounding mode for 32-bit floating-point arithmetic and conversion instructions. It also indicates whether the RoundingModeRTZ execution mode can be used for 32-bit floating-point types.
    • shaderRoundingModeRTZFloat64 – a boolean value indicating whether an implementation supports the round-towards-zero rounding mode for 64-bit floating-point arithmetic and conversion instructions. It also indicates whether the RoundingModeRTZ execution mode can be used for 64-bit floating-point types.

    Layout

    
     struct VkPhysicalDeviceFloatControlsPropertiesKHR {
         VkStructureType sType;
         void * pNext;
         VkShaderFloatControlsIndependenceKHR denormBehaviorIndependence;
         VkShaderFloatControlsIndependenceKHR roundingModeIndependence;
         VkBool32 shaderSignedZeroInfNanPreserveFloat16;
         VkBool32 shaderSignedZeroInfNanPreserveFloat32;
         VkBool32 shaderSignedZeroInfNanPreserveFloat64;
         VkBool32 shaderDenormPreserveFloat16;
         VkBool32 shaderDenormPreserveFloat32;
         VkBool32 shaderDenormPreserveFloat64;
         VkBool32 shaderDenormFlushToZeroFloat16;
         VkBool32 shaderDenormFlushToZeroFloat32;
         VkBool32 shaderDenormFlushToZeroFloat64;
         VkBool32 shaderRoundingModeRTEFloat16;
         VkBool32 shaderRoundingModeRTEFloat32;
         VkBool32 shaderRoundingModeRTEFloat64;
         VkBool32 shaderRoundingModeRTZFloat16;
         VkBool32 shaderRoundingModeRTZFloat32;
         VkBool32 shaderRoundingModeRTZFloat64;
     }
    • Field Detail

      • SIZEOF

        The struct size in bytes.
      • ALIGNOF

        The struct alignment in bytes.
      • STYPE, PNEXT, DENORMBEHAVIORINDEPENDENCE, ROUNDINGMODEINDEPENDENCE, SHADERSIGNEDZEROINFNANPRESERVEFLOAT16, SHADERSIGNEDZEROINFNANPRESERVEFLOAT32, SHADERSIGNEDZEROINFNANPRESERVEFLOAT64, SHADERDENORMPRESERVEFLOAT16, SHADERDENORMPRESERVEFLOAT32, SHADERDENORMPRESERVEFLOAT64, SHADERDENORMFLUSHTOZEROFLOAT16, SHADERDENORMFLUSHTOZEROFLOAT32, SHADERDENORMFLUSHTOZEROFLOAT64, SHADERROUNDINGMODERTEFLOAT16, SHADERROUNDINGMODERTEFLOAT32, SHADERROUNDINGMODERTEFLOAT64, SHADERROUNDINGMODERTZFLOAT16, SHADERROUNDINGMODERTZFLOAT32, SHADERROUNDINGMODERTZFLOAT64

        The struct member offsets.
    • Constructor Detail

      • VkPhysicalDeviceFloatControlsPropertiesKHR

        public VkPhysicalDeviceFloatControlsPropertiesKHR​(java.nio.ByteBuffer container)
        Creates a VkPhysicalDeviceFloatControlsPropertiesKHR instance at the current position of the specified ByteBuffer container. Changes to the buffer's content will be visible to the struct instance and vice versa.

        The created instance holds a strong reference to the container object.

    • Method Detail

      • sizeof

        public int sizeof()
        Specified by:
        sizeof in class org.lwjgl.system.Struct
      • sType

        public int sType()
        Returns the value of the sType field.
      • pNext

        public long pNext()
        Returns the value of the pNext field.
      • denormBehaviorIndependence

        public int denormBehaviorIndependence()
        Returns the value of the denormBehaviorIndependence field.
      • roundingModeIndependence

        public int roundingModeIndependence()
        Returns the value of the roundingModeIndependence field.
      • shaderSignedZeroInfNanPreserveFloat16

        public boolean shaderSignedZeroInfNanPreserveFloat16()
        Returns the value of the shaderSignedZeroInfNanPreserveFloat16 field.
      • shaderSignedZeroInfNanPreserveFloat32

        public boolean shaderSignedZeroInfNanPreserveFloat32()
        Returns the value of the shaderSignedZeroInfNanPreserveFloat32 field.
      • shaderSignedZeroInfNanPreserveFloat64

        public boolean shaderSignedZeroInfNanPreserveFloat64()
        Returns the value of the shaderSignedZeroInfNanPreserveFloat64 field.
      • shaderDenormPreserveFloat16

        public boolean shaderDenormPreserveFloat16()
        Returns the value of the shaderDenormPreserveFloat16 field.
      • shaderDenormPreserveFloat32

        public boolean shaderDenormPreserveFloat32()
        Returns the value of the shaderDenormPreserveFloat32 field.
      • shaderDenormPreserveFloat64

        public boolean shaderDenormPreserveFloat64()
        Returns the value of the shaderDenormPreserveFloat64 field.
      • shaderDenormFlushToZeroFloat16

        public boolean shaderDenormFlushToZeroFloat16()
        Returns the value of the shaderDenormFlushToZeroFloat16 field.
      • shaderDenormFlushToZeroFloat32

        public boolean shaderDenormFlushToZeroFloat32()
        Returns the value of the shaderDenormFlushToZeroFloat32 field.
      • shaderDenormFlushToZeroFloat64

        public boolean shaderDenormFlushToZeroFloat64()
        Returns the value of the shaderDenormFlushToZeroFloat64 field.
      • shaderRoundingModeRTEFloat16

        public boolean shaderRoundingModeRTEFloat16()
        Returns the value of the shaderRoundingModeRTEFloat16 field.
      • shaderRoundingModeRTEFloat32

        public boolean shaderRoundingModeRTEFloat32()
        Returns the value of the shaderRoundingModeRTEFloat32 field.
      • shaderRoundingModeRTEFloat64

        public boolean shaderRoundingModeRTEFloat64()
        Returns the value of the shaderRoundingModeRTEFloat64 field.
      • shaderRoundingModeRTZFloat16

        public boolean shaderRoundingModeRTZFloat16()
        Returns the value of the shaderRoundingModeRTZFloat16 field.
      • shaderRoundingModeRTZFloat32

        public boolean shaderRoundingModeRTZFloat32()
        Returns the value of the shaderRoundingModeRTZFloat32 field.
      • shaderRoundingModeRTZFloat64

        public boolean shaderRoundingModeRTZFloat64()
        Returns the value of the shaderRoundingModeRTZFloat64 field.
      • callocStack

        public static VkPhysicalDeviceFloatControlsPropertiesKHR callocStack()
        Returns a new VkPhysicalDeviceFloatControlsPropertiesKHR instance allocated on the thread-local MemoryStack and initializes all its bits to zero.
      • mallocStack

        public static VkPhysicalDeviceFloatControlsPropertiesKHR mallocStack​(org.lwjgl.system.MemoryStack stack)
        Returns a new VkPhysicalDeviceFloatControlsPropertiesKHR instance allocated on the specified MemoryStack.
        Parameters:
        stack - the stack from which to allocate
      • callocStack

        public static VkPhysicalDeviceFloatControlsPropertiesKHR callocStack​(org.lwjgl.system.MemoryStack stack)
        Returns a new VkPhysicalDeviceFloatControlsPropertiesKHR instance allocated on the specified MemoryStack and initializes all its bits to zero.
        Parameters:
        stack - the stack from which to allocate
      • nsType

        public static int nsType​(long struct)
        Unsafe version of sType().
      • npNext

        public static long npNext​(long struct)
        Unsafe version of pNext().
      • ndenormBehaviorIndependence

        public static int ndenormBehaviorIndependence​(long struct)
        Unsafe version of denormBehaviorIndependence().
      • nroundingModeIndependence

        public static int nroundingModeIndependence​(long struct)
        Unsafe version of roundingModeIndependence().
      • nshaderDenormPreserveFloat16

        public static int nshaderDenormPreserveFloat16​(long struct)
      • nshaderDenormPreserveFloat32

        public static int nshaderDenormPreserveFloat32​(long struct)
      • nshaderDenormPreserveFloat64

        public static int nshaderDenormPreserveFloat64​(long struct)
      • nsType

        public static void nsType​(long struct,
                                  int value)
        Unsafe version of sType.
      • npNext

        public static void npNext​(long struct,
                                  long value)
        Unsafe version of pNext.