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.NativeResource
Structure describing the control subgroup size properties of an implementation.Description
If the
VkPhysicalDeviceSubgroupSizeControlPropertiesEXT
structure is included in thepNext
chain ofVkPhysicalDeviceProperties2
, it is filled with the implementation-dependent limits.Valid Usage (Implicit)
Member documentation
sType
– the type of this structure.pNext
–NULL
or a pointer to an extension-specific structure.minSubgroupSize
– the minimum subgroup size supported by this device.minSubgroupSize
is at least one if any of the physical device’s queues supportQUEUE_GRAPHICS_BIT
orQUEUE_COMPUTE_BIT
.minSubgroupSize
is less than or equal tomaxSubgroupSize
.minSubgroupSize
is less than or equal to subgroupSize.maxSubgroupSize
– the maximum subgroup size supported by this device.maxSubgroupSize
is at least one if any of the physical device’s queues supportQUEUE_GRAPHICS_BIT
orQUEUE_COMPUTE_BIT
.maxSubgroupSize
is greater than or equal tominSubgroupSize
.maxSubgroupSize
is 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 class
VkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffer
An array ofVkPhysicalDeviceSubgroupSizeControlPropertiesEXT
structs.
-
Field Summary
Fields Modifier and Type Field Description static int
ALIGNOF
The struct alignment in bytes.static int
MAXCOMPUTEWORKGROUPSUBGROUPS
MAXSUBGROUPSIZE
MINSUBGROUPSIZE
PNEXT
REQUIREDSUBGROUPSIZESTAGESThe struct member offsets.static int
SIZEOF
The struct size in bytes.static int
STYPE
The struct member offsets.
-
Constructor Summary
Constructors Constructor Description VkPhysicalDeviceSubgroupSizeControlPropertiesEXT(java.nio.ByteBuffer container)
Creates aVkPhysicalDeviceSubgroupSizeControlPropertiesEXT
instance at the current position of the specifiedByteBuffer
container.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT
calloc()
Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT
instance allocated withmemCalloc
.static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffer
calloc(int capacity)
Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffer
instance allocated withmemCalloc
.static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT
callocStack()
Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffer
callocStack(int capacity)
Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffer
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffer
callocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffer
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT
callocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT
create()
Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT
instance allocated withBufferUtils
.static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffer
create(int capacity)
Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffer
instance allocated withBufferUtils
.static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT
create(long address)
Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT
instance for the specified memory address.static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffer
create(long address, int capacity)
Create aVkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffer
instance at the specified memory.static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT
createSafe(long address)
static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffer
createSafe(long address, int capacity)
static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT
malloc()
Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT
instance allocated withmemAlloc
.static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffer
malloc(int capacity)
Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffer
instance allocated withmemAlloc
.static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT
mallocStack()
Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT
instance allocated on the thread-localMemoryStack
.static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffer
mallocStack(int capacity)
Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffer
instance allocated on the thread-localMemoryStack
.static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffer
mallocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffer
instance allocated on the specifiedMemoryStack
.static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT
mallocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT
instance allocated on the specifiedMemoryStack
.int
maxComputeWorkgroupSubgroups()
Returns the value of themaxComputeWorkgroupSubgroups
field.int
maxSubgroupSize()
Returns the value of themaxSubgroupSize
field.int
minSubgroupSize()
Returns the value of theminSubgroupSize
field.static int
nmaxComputeWorkgroupSubgroups(long struct)
Unsafe version ofmaxComputeWorkgroupSubgroups()
.static int
nmaxSubgroupSize(long struct)
Unsafe version ofmaxSubgroupSize()
.static int
nminSubgroupSize(long struct)
Unsafe version ofminSubgroupSize()
.static long
npNext(long struct)
Unsafe version ofpNext()
.static void
npNext(long struct, long value)
Unsafe version ofpNext
.static int
nrequiredSubgroupSizeStages(long struct)
Unsafe version ofrequiredSubgroupSizeStages()
.static int
nsType(long struct)
Unsafe version ofsType()
.static void
nsType(long struct, int value)
Unsafe version ofsType
.long
pNext()
Returns the value of thepNext
field.VkPhysicalDeviceSubgroupSizeControlPropertiesEXT
pNext(long value)
Sets the specified value to thepNext
field.int
requiredSubgroupSizeStages()
Returns the value of therequiredSubgroupSizeStages
field.VkPhysicalDeviceSubgroupSizeControlPropertiesEXT
set(int sType, long pNext)
Initializes this struct with the specified values.VkPhysicalDeviceSubgroupSizeControlPropertiesEXT
set(VkPhysicalDeviceSubgroupSizeControlPropertiesEXT src)
Copies the specified struct data to this struct.int
sizeof()
int
sType()
Returns the value of thesType
field.VkPhysicalDeviceSubgroupSizeControlPropertiesEXT
sType(int value)
Sets the specified value to thesType
field.
-
-
-
Constructor Detail
-
VkPhysicalDeviceSubgroupSizeControlPropertiesEXT
public VkPhysicalDeviceSubgroupSizeControlPropertiesEXT(java.nio.ByteBuffer container)
Creates aVkPhysicalDeviceSubgroupSizeControlPropertiesEXT
instance at the current position of the specifiedByteBuffer
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 classorg.lwjgl.system.Struct
-
sType
public int sType()
Returns the value of thesType
field.
-
pNext
public long pNext()
Returns the value of thepNext
field.
-
minSubgroupSize
public int minSubgroupSize()
Returns the value of theminSubgroupSize
field.
-
maxSubgroupSize
public int maxSubgroupSize()
Returns the value of themaxSubgroupSize
field.
-
maxComputeWorkgroupSubgroups
public int maxComputeWorkgroupSubgroups()
Returns the value of themaxComputeWorkgroupSubgroups
field.
-
requiredSubgroupSizeStages
public int requiredSubgroupSizeStages()
Returns the value of therequiredSubgroupSizeStages
field.
-
sType
public VkPhysicalDeviceSubgroupSizeControlPropertiesEXT sType(int value)
Sets the specified value to thesType
field.
-
pNext
public VkPhysicalDeviceSubgroupSizeControlPropertiesEXT pNext(long value)
Sets the specified value to thepNext
field.
-
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 newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT
instance allocated withmemAlloc
. The instance must be explicitly freed.
-
calloc
public static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT calloc()
Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT
instance allocated withmemCalloc
. The instance must be explicitly freed.
-
create
public static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT create()
Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT
instance allocated withBufferUtils
.
-
create
public static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT create(long address)
Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT
instance for the specified memory address.
-
createSafe
@Nullable public static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT createSafe(long address)
-
malloc
public static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffer malloc(int capacity)
Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffer
instance allocated withmemAlloc
. The instance must be explicitly freed.- Parameters:
capacity
- the buffer capacity
-
calloc
public static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffer calloc(int capacity)
Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffer
instance allocated withmemCalloc
. The instance must be explicitly freed.- Parameters:
capacity
- the buffer capacity
-
create
public static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffer create(int capacity)
Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffer
instance allocated withBufferUtils
.- Parameters:
capacity
- the buffer capacity
-
create
public static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffer create(long address, int capacity)
Create aVkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffer
instance 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 newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT
instance allocated on the thread-localMemoryStack
.
-
callocStack
public static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT callocStack()
Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.
-
mallocStack
public static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT mallocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT
instance allocated on the specifiedMemoryStack
.- Parameters:
stack
- the stack from which to allocate
-
callocStack
public static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT callocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT
instance allocated on the specifiedMemoryStack
and 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.Buffer
instance allocated on the thread-localMemoryStack
.- Parameters:
capacity
- the buffer capacity
-
callocStack
public static VkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffer callocStack(int capacity)
Returns a newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT.Buffer
instance allocated on the thread-localMemoryStack
and 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.Buffer
instance 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.Buffer
instance allocated on the specifiedMemoryStack
and 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
.
-
-