Class VkShaderResourceUsageAMD

All Implemented Interfaces:
Pointer

public class VkShaderResourceUsageAMD extends Struct<VkShaderResourceUsageAMD>
Resource usage information about a particular shader within a pipeline.
See Also

VkShaderStatisticsInfoAMD

Layout


 struct VkShaderResourceUsageAMD {
     uint32_t numUsedVgprs();
     uint32_t numUsedSgprs();
     uint32_t ldsSizePerLocalWorkGroup();
     size_t ldsUsageSizeInBytes();
     size_t scratchMemUsageInBytes();
 }
  • Field Details

    • SIZEOF

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

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

      public static final int NUMUSEDVGPRS
      The struct member offsets.
    • NUMUSEDSGPRS

      public static final int NUMUSEDSGPRS
      The struct member offsets.
    • LDSSIZEPERLOCALWORKGROUP

      public static final int LDSSIZEPERLOCALWORKGROUP
      The struct member offsets.
    • LDSUSAGESIZEINBYTES

      public static final int LDSUSAGESIZEINBYTES
      The struct member offsets.
    • SCRATCHMEMUSAGEINBYTES

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

    • VkShaderResourceUsageAMD

      public VkShaderResourceUsageAMD(ByteBuffer container)
      Creates a VkShaderResourceUsageAMD 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()
      Description copied from class: Struct
      Returns sizeof(struct).
      Specified by:
      sizeof in class Struct<VkShaderResourceUsageAMD>
    • numUsedVgprs

      public int numUsedVgprs()
      the number of vector instruction general-purpose registers used by this shader.
    • numUsedSgprs

      public int numUsedSgprs()
      the number of scalar instruction general-purpose registers used by this shader.
    • ldsSizePerLocalWorkGroup

      public int ldsSizePerLocalWorkGroup()
      the maximum local data store size per work group in bytes.
    • ldsUsageSizeInBytes

      public long ldsUsageSizeInBytes()
      the LDS usage size in bytes per work group by this shader.
    • scratchMemUsageInBytes

      public long scratchMemUsageInBytes()
      the scratch memory usage in bytes by this shader.
    • create

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

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

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

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

      public static int nnumUsedVgprs(long struct)
      Unsafe version of numUsedVgprs().
    • nnumUsedSgprs

      public static int nnumUsedSgprs(long struct)
      Unsafe version of numUsedSgprs().
    • nldsSizePerLocalWorkGroup

      public static int nldsSizePerLocalWorkGroup(long struct)
      Unsafe version of ldsSizePerLocalWorkGroup().
    • nldsUsageSizeInBytes

      public static long nldsUsageSizeInBytes(long struct)
      Unsafe version of ldsUsageSizeInBytes().
    • nscratchMemUsageInBytes

      public static long nscratchMemUsageInBytes(long struct)
      Unsafe version of scratchMemUsageInBytes().