Package org.lwjgl.vulkan
Class VkPhysicalDeviceSubgroupSizeControlPropertiesEXT
- java.lang.Object
-
- org.lwjgl.system.Pointer.Default
-
- org.lwjgl.system.Struct
-
- org.lwjgl.vulkan.VkPhysicalDeviceSubgroupSizeControlPropertiesEXT
-
- All Implemented Interfaces:
java.lang.AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
public class VkPhysicalDeviceSubgroupSizeControlPropertiesEXT extends org.lwjgl.system.Struct implements org.lwjgl.system.NativeResourceStructure describing the control subgroup size properties of an implementation.Description
If the
VkPhysicalDeviceSubgroupSizeControlPropertiesEXTstructure is included in thepNextchain ofVkPhysicalDeviceProperties2, it is filled with the implementation-dependent limits.Valid Usage (Implicit)
Member documentation
sType– the type of this structure.pNext–NULLor a pointer to an extension-specific structure.minSubgroupSize– the minimum subgroup size supported by this device.minSubgroupSizeis at least one if any of the physical device’s queues supportQUEUE_GRAPHICS_BITorQUEUE_COMPUTE_BIT.minSubgroupSizeis less than or equal tomaxSubgroupSize.minSubgroupSizeis less than or equal to subgroupSize.maxSubgroupSize– the maximum subgroup size supported by this device.maxSubgroupSizeis at least one if any of the physical device’s queues supportQUEUE_GRAPHICS_BITorQUEUE_COMPUTE_BIT.maxSubgroupSizeis greater than or equal tominSubgroupSize.maxSubgroupSizeis greater than or equal to subgroupSize.maxComputeWorkgroupSubgroups– the maximum number of subgroups supported by the implementation within a workgroup.requiredSubgroupSizeStages– a bitfield of what shader stages support having a required subgroup size specified.
Layout
struct VkPhysicalDeviceSubgroupSizeControlPropertiesEXT { VkStructureType sType; void * pNext; uint32_t minSubgroupSize; uint32_t maxSubgroupSize; uint32_t maxComputeWorkgroupSubgroups; VkShaderStageFlags requiredSubgroupSizeStages; }
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classVkPhysicalDeviceSubgroupSizeControlPropertiesEXT.BufferAn array ofVkPhysicalDeviceSubgroupSizeControlPropertiesEXTstructs.
-
Field Summary
Fields Modifier and Type Field Description static intALIGNOFThe struct alignment in bytes.static intMAXCOMPUTEWORKGROUPSUBGROUPS
MAXSUBGROUPSIZE
MINSUBGROUPSIZE
PNEXT
REQUIREDSUBGROUPSIZESTAGESThe struct member offsets.static intSIZEOFThe struct size in bytes.static intSTYPEThe struct member offsets.
-
Constructor Summary
Constructors Constructor Description VkPhysicalDeviceSubgroupSizeControlPropertiesEXT(java.nio.ByteBuffer container)Creates aVkPhysicalDeviceSubgroupSizeControlPropertiesEXTinstance at the current position of the specifiedByteBuffercontainer.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static VkPhysicalDeviceSubgroupSizeControlPropertiesEXTcalloc()Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXTinstance allocated withmemCalloc.static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffercalloc(int capacity)Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Bufferinstance allocated withmemCalloc.static VkPhysicalDeviceSubgroupSizeControlPropertiesEXTcallocStack()Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXTinstance allocated on the thread-localMemoryStackand initializes all its bits to zero.static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT.BuffercallocStack(int capacity)Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Bufferinstance allocated on the thread-localMemoryStackand initializes all its bits to zero.static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT.BuffercallocStack(int capacity, org.lwjgl.system.MemoryStack stack)Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkPhysicalDeviceSubgroupSizeControlPropertiesEXTcallocStack(org.lwjgl.system.MemoryStack stack)Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXTinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkPhysicalDeviceSubgroupSizeControlPropertiesEXTcreate()Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXTinstance allocated withBufferUtils.static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffercreate(int capacity)Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Bufferinstance allocated withBufferUtils.static VkPhysicalDeviceSubgroupSizeControlPropertiesEXTcreate(long address)Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXTinstance for the specified memory address.static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffercreate(long address, int capacity)Create aVkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Bufferinstance at the specified memory.static VkPhysicalDeviceSubgroupSizeControlPropertiesEXTcreateSafe(long address)static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT.BuffercreateSafe(long address, int capacity)static VkPhysicalDeviceSubgroupSizeControlPropertiesEXTmalloc()Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXTinstance allocated withmemAlloc.static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffermalloc(int capacity)Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Bufferinstance allocated withmemAlloc.static VkPhysicalDeviceSubgroupSizeControlPropertiesEXTmallocStack()Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXTinstance allocated on the thread-localMemoryStack.static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT.BuffermallocStack(int capacity)Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Bufferinstance allocated on the thread-localMemoryStack.static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT.BuffermallocStack(int capacity, org.lwjgl.system.MemoryStack stack)Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Bufferinstance allocated on the specifiedMemoryStack.static VkPhysicalDeviceSubgroupSizeControlPropertiesEXTmallocStack(org.lwjgl.system.MemoryStack stack)Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXTinstance allocated on the specifiedMemoryStack.intmaxComputeWorkgroupSubgroups()Returns the value of themaxComputeWorkgroupSubgroupsfield.intmaxSubgroupSize()Returns the value of themaxSubgroupSizefield.intminSubgroupSize()Returns the value of theminSubgroupSizefield.static intnmaxComputeWorkgroupSubgroups(long struct)Unsafe version ofmaxComputeWorkgroupSubgroups().static intnmaxSubgroupSize(long struct)Unsafe version ofmaxSubgroupSize().static intnminSubgroupSize(long struct)Unsafe version ofminSubgroupSize().static longnpNext(long struct)Unsafe version ofpNext().static voidnpNext(long struct, long value)Unsafe version ofpNext.static intnrequiredSubgroupSizeStages(long struct)Unsafe version ofrequiredSubgroupSizeStages().static intnsType(long struct)Unsafe version ofsType().static voidnsType(long struct, int value)Unsafe version ofsType.longpNext()Returns the value of thepNextfield.VkPhysicalDeviceSubgroupSizeControlPropertiesEXTpNext(long value)Sets the specified value to thepNextfield.intrequiredSubgroupSizeStages()Returns the value of therequiredSubgroupSizeStagesfield.VkPhysicalDeviceSubgroupSizeControlPropertiesEXTset(int sType, long pNext)Initializes this struct with the specified values.VkPhysicalDeviceSubgroupSizeControlPropertiesEXTset(VkPhysicalDeviceSubgroupSizeControlPropertiesEXT src)Copies the specified struct data to this struct.intsizeof()intsType()Returns the value of thesTypefield.VkPhysicalDeviceSubgroupSizeControlPropertiesEXTsType(int value)Sets the specified value to thesTypefield.
-
-
-
Constructor Detail
-
VkPhysicalDeviceSubgroupSizeControlPropertiesEXT
public VkPhysicalDeviceSubgroupSizeControlPropertiesEXT(java.nio.ByteBuffer container)
Creates aVkPhysicalDeviceSubgroupSizeControlPropertiesEXTinstance at the current position of the specifiedByteBuffercontainer. 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:
sizeofin classorg.lwjgl.system.Struct
-
sType
public int sType()
Returns the value of thesTypefield.
-
pNext
public long pNext()
Returns the value of thepNextfield.
-
minSubgroupSize
public int minSubgroupSize()
Returns the value of theminSubgroupSizefield.
-
maxSubgroupSize
public int maxSubgroupSize()
Returns the value of themaxSubgroupSizefield.
-
maxComputeWorkgroupSubgroups
public int maxComputeWorkgroupSubgroups()
Returns the value of themaxComputeWorkgroupSubgroupsfield.
-
requiredSubgroupSizeStages
public int requiredSubgroupSizeStages()
Returns the value of therequiredSubgroupSizeStagesfield.
-
sType
public VkPhysicalDeviceSubgroupSizeControlPropertiesEXT sType(int value)
Sets the specified value to thesTypefield.
-
pNext
public VkPhysicalDeviceSubgroupSizeControlPropertiesEXT pNext(long value)
Sets the specified value to thepNextfield.
-
set
public VkPhysicalDeviceSubgroupSizeControlPropertiesEXT set(int sType, long pNext)
Initializes this struct with the specified values.
-
set
public VkPhysicalDeviceSubgroupSizeControlPropertiesEXT set(VkPhysicalDeviceSubgroupSizeControlPropertiesEXT src)
Copies the specified struct data to this struct.- Parameters:
src- the source struct- Returns:
- this struct
-
malloc
public static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT malloc()
Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXTinstance allocated withmemAlloc. The instance must be explicitly freed.
-
calloc
public static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT calloc()
Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXTinstance allocated withmemCalloc. The instance must be explicitly freed.
-
create
public static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT create()
Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXTinstance allocated withBufferUtils.
-
create
public static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT create(long address)
Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXTinstance for the specified memory address.
-
createSafe
@Nullable public static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT createSafe(long address)
-
malloc
public static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffer malloc(int capacity)
Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
public static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffer calloc(int capacity)
Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
public static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffer create(int capacity)
Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
public static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffer create(long address, int capacity)
Create aVkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
@Nullable public static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffer createSafe(long address, int capacity)
-
mallocStack
public static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT mallocStack()
Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXTinstance allocated on the thread-localMemoryStack.
-
callocStack
public static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT callocStack()
Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXTinstance allocated on the thread-localMemoryStackand initializes all its bits to zero.
-
mallocStack
public static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT mallocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXTinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
callocStack
public static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT callocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXTinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
mallocStack
public static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffer mallocStack(int capacity)
Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Bufferinstance allocated on the thread-localMemoryStack.- Parameters:
capacity- the buffer capacity
-
callocStack
public static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffer callocStack(int capacity)
Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Bufferinstance allocated on the thread-localMemoryStackand initializes all its bits to zero.- Parameters:
capacity- the buffer capacity
-
mallocStack
public static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffer mallocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocatecapacity- the buffer capacity
-
callocStack
public static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffer callocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocatecapacity- the buffer capacity
-
nsType
public static int nsType(long struct)
Unsafe version ofsType().
-
npNext
public static long npNext(long struct)
Unsafe version ofpNext().
-
nminSubgroupSize
public static int nminSubgroupSize(long struct)
Unsafe version ofminSubgroupSize().
-
nmaxSubgroupSize
public static int nmaxSubgroupSize(long struct)
Unsafe version ofmaxSubgroupSize().
-
nmaxComputeWorkgroupSubgroups
public static int nmaxComputeWorkgroupSubgroups(long struct)
Unsafe version ofmaxComputeWorkgroupSubgroups().
-
nrequiredSubgroupSizeStages
public static int nrequiredSubgroupSizeStages(long struct)
Unsafe version ofrequiredSubgroupSizeStages().
-
nsType
public static void nsType(long struct, int value)Unsafe version ofsType.
-
npNext
public static void npNext(long struct, long value)Unsafe version ofpNext.
-
-