Class VkPhysicalDeviceVulkan11Properties

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

public class VkPhysicalDeviceVulkan11Properties extends org.lwjgl.system.Struct<VkPhysicalDeviceVulkan11Properties> implements org.lwjgl.system.NativeResource
Structure specifying physical device properties for functionality promoted to Vulkan 1.1.
Description

If the VkPhysicalDeviceVulkan11Properties structure is included in the pNext chain of the VkPhysicalDeviceProperties2 structure passed to GetPhysicalDeviceProperties2, it is filled in with each corresponding implementation-dependent property.

These properties correspond to Vulkan 1.1 functionality.

The members of VkPhysicalDeviceVulkan11Properties have the same values as the corresponding members of VkPhysicalDeviceIDProperties, VkPhysicalDeviceSubgroupProperties, VkPhysicalDevicePointClippingProperties, VkPhysicalDeviceMultiviewProperties, VkPhysicalDeviceProtectedMemoryProperties, and VkPhysicalDeviceMaintenance3Properties.

Note

The subgroupSupportedStages, subgroupSupportedOperations, and subgroupQuadOperationsInAllStages members of this structure correspond respectively to the VkPhysicalDeviceSubgroupProperties::supportedStages, VkPhysicalDeviceSubgroupProperties::supportedOperations, and VkPhysicalDeviceSubgroupProperties::quadOperationsInAllStages members, but add the subgroup prefix to the member name.

Valid Usage (Implicit)

Layout


 struct VkPhysicalDeviceVulkan11Properties {
     VkStructureType sType();
     void * pNext();
     uint8_t deviceUUID()[VK_UUID_SIZE];
     uint8_t driverUUID()[VK_UUID_SIZE];
     uint8_t deviceLUID()[VK_LUID_SIZE];
     uint32_t deviceNodeMask();
     VkBool32 deviceLUIDValid();
     uint32_t subgroupSize();
     VkShaderStageFlags subgroupSupportedStages();
     VkSubgroupFeatureFlags subgroupSupportedOperations();
     VkBool32 subgroupQuadOperationsInAllStages();
     VkPointClippingBehavior pointClippingBehavior();
     uint32_t maxMultiviewViewCount();
     uint32_t maxMultiviewInstanceIndex();
     VkBool32 protectedNoFault();
     uint32_t maxPerSetDescriptors();
     VkDeviceSize maxMemoryAllocationSize();
 }
  • Field Details

    • SIZEOF

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

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

      public static final int STYPE
      The struct member offsets.
    • PNEXT

      public static final int PNEXT
      The struct member offsets.
    • DEVICEUUID

      public static final int DEVICEUUID
      The struct member offsets.
    • DRIVERUUID

      public static final int DRIVERUUID
      The struct member offsets.
    • DEVICELUID

      public static final int DEVICELUID
      The struct member offsets.
    • DEVICENODEMASK

      public static final int DEVICENODEMASK
      The struct member offsets.
    • DEVICELUIDVALID

      public static final int DEVICELUIDVALID
      The struct member offsets.
    • SUBGROUPSIZE

      public static final int SUBGROUPSIZE
      The struct member offsets.
    • SUBGROUPSUPPORTEDSTAGES

      public static final int SUBGROUPSUPPORTEDSTAGES
      The struct member offsets.
    • SUBGROUPSUPPORTEDOPERATIONS

      public static final int SUBGROUPSUPPORTEDOPERATIONS
      The struct member offsets.
    • SUBGROUPQUADOPERATIONSINALLSTAGES

      public static final int SUBGROUPQUADOPERATIONSINALLSTAGES
      The struct member offsets.
    • POINTCLIPPINGBEHAVIOR

      public static final int POINTCLIPPINGBEHAVIOR
      The struct member offsets.
    • MAXMULTIVIEWVIEWCOUNT

      public static final int MAXMULTIVIEWVIEWCOUNT
      The struct member offsets.
    • MAXMULTIVIEWINSTANCEINDEX

      public static final int MAXMULTIVIEWINSTANCEINDEX
      The struct member offsets.
    • PROTECTEDNOFAULT

      public static final int PROTECTEDNOFAULT
      The struct member offsets.
    • MAXPERSETDESCRIPTORS

      public static final int MAXPERSETDESCRIPTORS
      The struct member offsets.
    • MAXMEMORYALLOCATIONSIZE

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

    • VkPhysicalDeviceVulkan11Properties

      public VkPhysicalDeviceVulkan11Properties(ByteBuffer container)
      Creates a VkPhysicalDeviceVulkan11Properties 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<VkPhysicalDeviceVulkan11Properties>
    • sType

      public int sType()
      a VkStructureType value identifying this structure.
    • pNext

      public long pNext()
      NULL or a pointer to a structure extending this structure.
    • deviceUUID

      public ByteBuffer deviceUUID()
      an array of UUID_SIZE uint8_t values representing a universally unique identifier for the device.
    • deviceUUID

      public byte deviceUUID(int index)
      an array of UUID_SIZE uint8_t values representing a universally unique identifier for the device.
    • driverUUID

      public ByteBuffer driverUUID()
      an array of UUID_SIZE uint8_t values representing a universally unique identifier for the driver build in use by the device.
    • driverUUID

      public byte driverUUID(int index)
      an array of UUID_SIZE uint8_t values representing a universally unique identifier for the driver build in use by the device.
    • deviceLUID

      public ByteBuffer deviceLUID()
      an array of LUID_SIZE uint8_t values representing a locally unique identifier for the device.
    • deviceLUID

      public byte deviceLUID(int index)
      an array of LUID_SIZE uint8_t values representing a locally unique identifier for the device.
    • deviceNodeMask

      public int deviceNodeMask()
      a uint32_t bitfield identifying the node within a linked device adapter corresponding to the device.
    • deviceLUIDValid

      public boolean deviceLUIDValid()
      a boolean value that will be TRUE if deviceLUID contains a valid LUID and deviceNodeMask contains a valid node mask, and FALSE if they do not.
    • subgroupSize

      public int subgroupSize()
      the default number of invocations in each subgroup. subgroupSize is at least 1 if any of the physical device’s queues support QUEUE_GRAPHICS_BIT or QUEUE_COMPUTE_BIT. subgroupSize is a power-of-two.
    • subgroupSupportedStages

      public int subgroupSupportedStages()
      a bitfield of VkShaderStageFlagBits describing the shader stages that group operations with subgroup scope are supported in. subgroupSupportedStages will have the SHADER_STAGE_COMPUTE_BIT bit set if any of the physical device’s queues support QUEUE_COMPUTE_BIT.
    • subgroupSupportedOperations

      public int subgroupSupportedOperations()
      a bitmask of VkSubgroupFeatureFlagBits specifying the sets of group operations with subgroup scope supported on this device. subgroupSupportedOperations will have the SUBGROUP_FEATURE_BASIC_BIT bit set if any of the physical device’s queues support QUEUE_GRAPHICS_BIT or QUEUE_COMPUTE_BIT.
    • subgroupQuadOperationsInAllStages

      public boolean subgroupQuadOperationsInAllStages()
      a boolean specifying whether quad group operations are available in all stages, or are restricted to fragment and compute stages.
    • pointClippingBehavior

      public int pointClippingBehavior()
      a VkPointClippingBehavior value specifying the point clipping behavior supported by the implementation.
    • maxMultiviewViewCount

      public int maxMultiviewViewCount()
      one greater than the maximum view index that can be used in a subpass.
    • maxMultiviewInstanceIndex

      public int maxMultiviewInstanceIndex()
      the maximum valid value of instance index allowed to be generated by a drawing command recorded within a subpass of a multiview render pass instance.
    • protectedNoFault

      public boolean protectedNoFault()
      specifies how an implementation behaves when an application attempts to write to unprotected memory in a protected queue operation, read from protected memory in an unprotected queue operation, or perform a query in a protected queue operation. If this limit is TRUE, such writes will be discarded or have undefined values written, reads and queries will return undefined values. If this limit is FALSE, applications must not perform these operations. See Protected Memory Access Rules for more information.
    • maxPerSetDescriptors

      public int maxPerSetDescriptors()
      a maximum number of descriptors (summed over all descriptor types) in a single descriptor set that is guaranteed to satisfy any implementation-dependent constraints on the size of a descriptor set itself. Applications can query whether a descriptor set that goes beyond this limit is supported using GetDescriptorSetLayoutSupport.
    • maxMemoryAllocationSize

      public long maxMemoryAllocationSize()
      the maximum size of a memory allocation that can be created, even if there is more space available in the heap.
    • sType

      public VkPhysicalDeviceVulkan11Properties sType(int value)
      Sets the specified value to the sType() field.
    • sType$Default

      public VkPhysicalDeviceVulkan11Properties sType$Default()
    • pNext

      public VkPhysicalDeviceVulkan11Properties pNext(long value)
      Sets the specified value to the pNext() field.
    • set

      public VkPhysicalDeviceVulkan11Properties set(int sType, long pNext)
      Initializes this struct with the specified values.
    • set

      Copies the specified struct data to this struct.
      Parameters:
      src - the source struct
      Returns:
      this struct
    • malloc

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

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

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

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

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

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

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

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

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

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

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

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

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

      public static VkPhysicalDeviceVulkan11Properties.Buffer calloc(int capacity, org.lwjgl.system.MemoryStack stack)
      Returns a new VkPhysicalDeviceVulkan11Properties.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
    • nsType

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

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

      public static ByteBuffer ndeviceUUID(long struct)
      Unsafe version of deviceUUID().
    • ndeviceUUID

      public static byte ndeviceUUID(long struct, int index)
      Unsafe version of deviceUUID.
    • ndriverUUID

      public static ByteBuffer ndriverUUID(long struct)
      Unsafe version of driverUUID().
    • ndriverUUID

      public static byte ndriverUUID(long struct, int index)
      Unsafe version of driverUUID.
    • ndeviceLUID

      public static ByteBuffer ndeviceLUID(long struct)
      Unsafe version of deviceLUID().
    • ndeviceLUID

      public static byte ndeviceLUID(long struct, int index)
      Unsafe version of deviceLUID.
    • ndeviceNodeMask

      public static int ndeviceNodeMask(long struct)
      Unsafe version of deviceNodeMask().
    • ndeviceLUIDValid

      public static int ndeviceLUIDValid(long struct)
      Unsafe version of deviceLUIDValid().
    • nsubgroupSize

      public static int nsubgroupSize(long struct)
      Unsafe version of subgroupSize().
    • nsubgroupSupportedStages

      public static int nsubgroupSupportedStages(long struct)
      Unsafe version of subgroupSupportedStages().
    • nsubgroupSupportedOperations

      public static int nsubgroupSupportedOperations(long struct)
    • nsubgroupQuadOperationsInAllStages

      public static int nsubgroupQuadOperationsInAllStages(long struct)
    • npointClippingBehavior

      public static int npointClippingBehavior(long struct)
      Unsafe version of pointClippingBehavior().
    • nmaxMultiviewViewCount

      public static int nmaxMultiviewViewCount(long struct)
      Unsafe version of maxMultiviewViewCount().
    • nmaxMultiviewInstanceIndex

      public static int nmaxMultiviewInstanceIndex(long struct)
      Unsafe version of maxMultiviewInstanceIndex().
    • nprotectedNoFault

      public static int nprotectedNoFault(long struct)
      Unsafe version of protectedNoFault().
    • nmaxPerSetDescriptors

      public static int nmaxPerSetDescriptors(long struct)
      Unsafe version of maxPerSetDescriptors().
    • nmaxMemoryAllocationSize

      public static long nmaxMemoryAllocationSize(long struct)
      Unsafe version of maxMemoryAllocationSize().
    • 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.