Class VkLayerProperties

java.lang.Object
org.lwjgl.system.Pointer.Default
org.lwjgl.system.Struct<VkLayerProperties>
org.lwjgl.vulkan.VkLayerProperties
All Implemented Interfaces:
AutoCloseable, org.lwjgl.system.NativeResource, org.lwjgl.system.Pointer

public class VkLayerProperties extends org.lwjgl.system.Struct<VkLayerProperties> implements org.lwjgl.system.NativeResource
Structure specifying layer properties.
See Also

EnumerateDeviceLayerProperties, EnumerateInstanceLayerProperties

Layout


 struct VkLayerProperties {
     char layerName()[VK_MAX_EXTENSION_NAME_SIZE];
     uint32_t specVersion();
     uint32_t implementationVersion();
     char description()[VK_MAX_DESCRIPTION_SIZE];
 }
  • Field Details

    • SIZEOF

      public static final int SIZEOF
      The struct size in bytes.
    • ALIGNOF

      public static final int ALIGNOF
      The struct alignment in bytes.
    • LAYERNAME

      public static final int LAYERNAME
      The struct member offsets.
    • SPECVERSION

      public static final int SPECVERSION
      The struct member offsets.
    • IMPLEMENTATIONVERSION

      public static final int IMPLEMENTATIONVERSION
      The struct member offsets.
    • DESCRIPTION

      public static final int DESCRIPTION
      The struct member offsets.
  • Constructor Details

    • VkLayerProperties

      public VkLayerProperties(ByteBuffer container)
      Creates a VkLayerProperties 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 Details

    • sizeof

      public int sizeof()
      Specified by:
      sizeof in class org.lwjgl.system.Struct<VkLayerProperties>
    • layerName

      public ByteBuffer layerName()
      an array of MAX_EXTENSION_NAME_SIZE char containing a null-terminated UTF-8 string which is the name of the layer. Use this name in the ppEnabledLayerNames array passed in the VkInstanceCreateInfo structure to enable this layer for an instance.
    • layerNameString

      public String layerNameString()
      an array of MAX_EXTENSION_NAME_SIZE char containing a null-terminated UTF-8 string which is the name of the layer. Use this name in the ppEnabledLayerNames array passed in the VkInstanceCreateInfo structure to enable this layer for an instance.
    • specVersion

      public int specVersion()
      the Vulkan version the layer was written to, encoded as described in Version Numbers.
    • implementationVersion

      public int implementationVersion()
      the version of this layer. It is an integer, increasing with backward compatible changes.
    • description

      public ByteBuffer description()
      an array of MAX_DESCRIPTION_SIZE char containing a null-terminated UTF-8 string which provides additional details that can be used by the application to identify the layer.
    • descriptionString

      public String descriptionString()
      an array of MAX_DESCRIPTION_SIZE char containing a null-terminated UTF-8 string which provides additional details that can be used by the application to identify the layer.
    • malloc

      public static VkLayerProperties malloc()
      Returns a new VkLayerProperties instance allocated with memAlloc. The instance must be explicitly freed.
    • calloc

      public static VkLayerProperties calloc()
      Returns a new VkLayerProperties instance allocated with memCalloc. The instance must be explicitly freed.
    • create

      public static VkLayerProperties create()
      Returns a new VkLayerProperties instance allocated with BufferUtils.
    • create

      public static VkLayerProperties create(long address)
      Returns a new VkLayerProperties instance for the specified memory address.
    • createSafe

      public static @Nullable VkLayerProperties createSafe(long address)
      Like create, but returns null if address is NULL.
    • malloc

      public static VkLayerProperties.Buffer malloc(int capacity)
      Returns a new VkLayerProperties.Buffer instance allocated with memAlloc. The instance must be explicitly freed.
      Parameters:
      capacity - the buffer capacity
    • calloc

      public static VkLayerProperties.Buffer calloc(int capacity)
      Returns a new VkLayerProperties.Buffer instance allocated with memCalloc. The instance must be explicitly freed.
      Parameters:
      capacity - the buffer capacity
    • create

      public static VkLayerProperties.Buffer create(int capacity)
      Returns a new VkLayerProperties.Buffer instance allocated with BufferUtils.
      Parameters:
      capacity - the buffer capacity
    • create

      public static VkLayerProperties.Buffer create(long address, int capacity)
      Create a VkLayerProperties.Buffer instance at the specified memory.
      Parameters:
      address - the memory address
      capacity - the buffer capacity
    • createSafe

      public static @Nullable VkLayerProperties.Buffer createSafe(long address, int capacity)
      Like create, but returns null if address is NULL.
    • mallocStack

      @Deprecated public static VkLayerProperties mallocStack()
      Deprecated.
      Deprecated for removal in 3.4.0. Use malloc(MemoryStack) instead.
    • callocStack

      @Deprecated public static VkLayerProperties callocStack()
      Deprecated.
      Deprecated for removal in 3.4.0. Use calloc(MemoryStack) instead.
    • mallocStack

      @Deprecated public static VkLayerProperties mallocStack(org.lwjgl.system.MemoryStack stack)
      Deprecated.
      Deprecated for removal in 3.4.0. Use malloc(MemoryStack) instead.
    • callocStack

      @Deprecated public static VkLayerProperties callocStack(org.lwjgl.system.MemoryStack stack)
      Deprecated.
      Deprecated for removal in 3.4.0. Use calloc(MemoryStack) instead.
    • mallocStack

      @Deprecated public static VkLayerProperties.Buffer mallocStack(int capacity)
      Deprecated.
      Deprecated for removal in 3.4.0. Use malloc(int, MemoryStack) instead.
    • callocStack

      @Deprecated public static VkLayerProperties.Buffer callocStack(int capacity)
      Deprecated.
      Deprecated for removal in 3.4.0. Use calloc(int, MemoryStack) instead.
    • mallocStack

      @Deprecated public static VkLayerProperties.Buffer mallocStack(int capacity, org.lwjgl.system.MemoryStack stack)
      Deprecated.
      Deprecated for removal in 3.4.0. Use malloc(int, MemoryStack) instead.
    • callocStack

      @Deprecated public static VkLayerProperties.Buffer callocStack(int capacity, org.lwjgl.system.MemoryStack stack)
      Deprecated.
      Deprecated for removal in 3.4.0. Use calloc(int, MemoryStack) instead.
    • malloc

      public static VkLayerProperties malloc(org.lwjgl.system.MemoryStack stack)
      Returns a new VkLayerProperties instance allocated on the specified MemoryStack.
      Parameters:
      stack - the stack from which to allocate
    • calloc

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

      public static VkLayerProperties.Buffer malloc(int capacity, org.lwjgl.system.MemoryStack stack)
      Returns a new VkLayerProperties.Buffer instance allocated on the specified MemoryStack.
      Parameters:
      capacity - the buffer capacity
      stack - the stack from which to allocate
    • calloc

      public static VkLayerProperties.Buffer calloc(int capacity, org.lwjgl.system.MemoryStack stack)
      Returns a new VkLayerProperties.Buffer instance allocated on the specified MemoryStack and initializes all its bits to zero.
      Parameters:
      capacity - the buffer capacity
      stack - the stack from which to allocate
    • nlayerName

      public static ByteBuffer nlayerName(long struct)
      Unsafe version of layerName().
    • nlayerNameString

      public static String nlayerNameString(long struct)
      Unsafe version of layerNameString().
    • nspecVersion

      public static int nspecVersion(long struct)
      Unsafe version of specVersion().
    • nimplementationVersion

      public static int nimplementationVersion(long struct)
      Unsafe version of implementationVersion().
    • ndescription

      public static ByteBuffer ndescription(long struct)
      Unsafe version of description().
    • ndescriptionString

      public static String ndescriptionString(long struct)
      Unsafe version of descriptionString().