Package org.lwjgl.vulkan
Class VkPhysicalDeviceShaderEnqueuePropertiesAMDX
java.lang.Object
org.lwjgl.system.Pointer.Default
org.lwjgl.system.Struct<VkPhysicalDeviceShaderEnqueuePropertiesAMDX>
org.lwjgl.vulkan.VkPhysicalDeviceShaderEnqueuePropertiesAMDX
- All Implemented Interfaces:
AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
public class VkPhysicalDeviceShaderEnqueuePropertiesAMDX
extends org.lwjgl.system.Struct<VkPhysicalDeviceShaderEnqueuePropertiesAMDX>
implements org.lwjgl.system.NativeResource
Structure describing shader enqueue limits of an implementation.
Description
If the VkPhysicalDeviceShaderEnqueuePropertiesAMDX structure is included in the pNext chain of the VkPhysicalDeviceProperties2 structure passed to GetPhysicalDeviceProperties2, it is filled in with each corresponding implementation-dependent property.
Valid Usage (Implicit)
Layout
struct VkPhysicalDeviceShaderEnqueuePropertiesAMDX {
VkStructureType sType();
void * pNext();
uint32_t maxExecutionGraphDepth();
uint32_t maxExecutionGraphShaderOutputNodes();
uint32_t maxExecutionGraphShaderPayloadSize();
uint32_t maxExecutionGraphShaderPayloadCount();
uint32_t executionGraphDispatchAddressAlignment();
uint32_t maxExecutionGraphWorkgroupCount()[3];
uint32_t maxExecutionGraphWorkgroups();
}-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classAn array ofVkPhysicalDeviceShaderEnqueuePropertiesAMDXstructs.Nested classes/interfaces inherited from class org.lwjgl.system.Struct
org.lwjgl.system.Struct.StructValidationNested classes/interfaces inherited from interface org.lwjgl.system.Pointer
org.lwjgl.system.Pointer.Default -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intThe struct alignment in bytes.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct size in bytes.static final intThe struct member offsets.Fields inherited from interface org.lwjgl.system.Pointer
BITS32, BITS64, CLONG_SHIFT, CLONG_SIZE, POINTER_SHIFT, POINTER_SIZE -
Constructor Summary
ConstructorsConstructorDescriptionCreates aVkPhysicalDeviceShaderEnqueuePropertiesAMDXinstance at the current position of the specifiedByteBuffercontainer. -
Method Summary
Modifier and TypeMethodDescriptioncalloc()Returns a newVkPhysicalDeviceShaderEnqueuePropertiesAMDXinstance allocated withmemCalloc.calloc(int capacity) Returns a newVkPhysicalDeviceShaderEnqueuePropertiesAMDX.Bufferinstance allocated withmemCalloc.calloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkPhysicalDeviceShaderEnqueuePropertiesAMDX.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.calloc(org.lwjgl.system.MemoryStack stack) Returns a newVkPhysicalDeviceShaderEnqueuePropertiesAMDXinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.create()Returns a newVkPhysicalDeviceShaderEnqueuePropertiesAMDXinstance allocated withBufferUtils.create(int capacity) Returns a newVkPhysicalDeviceShaderEnqueuePropertiesAMDX.Bufferinstance allocated withBufferUtils.create(long address) Returns a newVkPhysicalDeviceShaderEnqueuePropertiesAMDXinstance for the specified memory address.create(long address, int capacity) Create aVkPhysicalDeviceShaderEnqueuePropertiesAMDX.Bufferinstance at the specified memory.static @Nullable VkPhysicalDeviceShaderEnqueuePropertiesAMDXcreateSafe(long address) static @Nullable VkPhysicalDeviceShaderEnqueuePropertiesAMDX.BuffercreateSafe(long address, int capacity) intspecifies the alignment of non-scratchVkDeviceAddressarguments consumed by graph dispatch commands.executionGraphDispatchAddressAlignment(int value) Sets the specified value to theexecutionGraphDispatchAddressAlignment()field.malloc()Returns a newVkPhysicalDeviceShaderEnqueuePropertiesAMDXinstance allocated withmemAlloc.malloc(int capacity) Returns a newVkPhysicalDeviceShaderEnqueuePropertiesAMDX.Bufferinstance allocated withmemAlloc.malloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkPhysicalDeviceShaderEnqueuePropertiesAMDX.Bufferinstance allocated on the specifiedMemoryStack.malloc(org.lwjgl.system.MemoryStack stack) Returns a newVkPhysicalDeviceShaderEnqueuePropertiesAMDXinstance allocated on the specifiedMemoryStack.intdefines the maximum node chain depth in the graph.maxExecutionGraphDepth(int value) Sets the specified value to themaxExecutionGraphDepth()field.intspecifies the maximum number of unique nodes that can be dispatched from a single shader, and must be at least 256.maxExecutionGraphShaderOutputNodes(int value) Sets the specified value to themaxExecutionGraphShaderOutputNodes()field.intspecifies the maximum number of output payloads that can be initialized in a single workgroup.maxExecutionGraphShaderPayloadCount(int value) Sets the specified value to themaxExecutionGraphShaderPayloadCount()field.intspecifies the maximum total size of payload declarations in a shader.maxExecutionGraphShaderPayloadSize(int value) Sets the specified value to themaxExecutionGraphShaderPayloadSize()field.the maximum number of local workgroups that a shader can be dispatched with in X, Y, and Z dimensions, respectively.intmaxExecutionGraphWorkgroupCount(int index) the maximum number of local workgroups that a shader can be dispatched with in X, Y, and Z dimensions, respectively.maxExecutionGraphWorkgroupCount(int index, int value) Sets the specified value at the specified index of themaxExecutionGraphWorkgroupCount()field.Copies the specifiedIntBufferto themaxExecutionGraphWorkgroupCount()field.intthe total number of local workgroups that a shader can be dispatched with.maxExecutionGraphWorkgroups(int value) Sets the specified value to themaxExecutionGraphWorkgroups()field.static intnexecutionGraphDispatchAddressAlignment(long struct) Unsafe version ofexecutionGraphDispatchAddressAlignment().static voidnexecutionGraphDispatchAddressAlignment(long struct, int value) Unsafe version ofexecutionGraphDispatchAddressAlignment.static intnmaxExecutionGraphDepth(long struct) Unsafe version ofmaxExecutionGraphDepth().static voidnmaxExecutionGraphDepth(long struct, int value) Unsafe version ofmaxExecutionGraphDepth.static intnmaxExecutionGraphShaderOutputNodes(long struct) Unsafe version ofmaxExecutionGraphShaderOutputNodes().static voidnmaxExecutionGraphShaderOutputNodes(long struct, int value) Unsafe version ofmaxExecutionGraphShaderOutputNodes.static intnmaxExecutionGraphShaderPayloadCount(long struct) Unsafe version ofmaxExecutionGraphShaderPayloadCount().static voidnmaxExecutionGraphShaderPayloadCount(long struct, int value) Unsafe version ofmaxExecutionGraphShaderPayloadCount.static intnmaxExecutionGraphShaderPayloadSize(long struct) Unsafe version ofmaxExecutionGraphShaderPayloadSize().static voidnmaxExecutionGraphShaderPayloadSize(long struct, int value) Unsafe version ofmaxExecutionGraphShaderPayloadSize.static IntBuffernmaxExecutionGraphWorkgroupCount(long struct) Unsafe version ofmaxExecutionGraphWorkgroupCount().static intnmaxExecutionGraphWorkgroupCount(long struct, int index) Unsafe version ofmaxExecutionGraphWorkgroupCount.static voidnmaxExecutionGraphWorkgroupCount(long struct, int index, int value) Unsafe version ofmaxExecutionGraphWorkgroupCount.static voidnmaxExecutionGraphWorkgroupCount(long struct, IntBuffer value) Unsafe version ofmaxExecutionGraphWorkgroupCount.static intnmaxExecutionGraphWorkgroups(long struct) Unsafe version ofmaxExecutionGraphWorkgroups().static voidnmaxExecutionGraphWorkgroups(long struct, int value) Unsafe version ofmaxExecutionGraphWorkgroups.static longnpNext(long struct) Unsafe version ofpNext().static voidnpNext(long struct, long value) Unsafe version ofpNext.static intnsType(long struct) Unsafe version ofsType().static voidnsType(long struct, int value) Unsafe version ofsType.longpNext()NULLor a pointer to a structure extending this structure.pNext(long value) Sets the specified value to thepNext()field.set(int sType, long pNext, int maxExecutionGraphDepth, int maxExecutionGraphShaderOutputNodes, int maxExecutionGraphShaderPayloadSize, int maxExecutionGraphShaderPayloadCount, int executionGraphDispatchAddressAlignment, IntBuffer maxExecutionGraphWorkgroupCount, int maxExecutionGraphWorkgroups) Initializes this struct with the specified values.Copies the specified struct data to this struct.intsizeof()intsType()aVkStructureTypevalue identifying this structure.sType(int value) Sets the specified value to thesType()field.Sets theSTRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ENQUEUE_PROPERTIES_AMDXvalue to thesType()field.Methods inherited from class org.lwjgl.system.Struct
clear, free, isNull, validate, validateMethods inherited from class org.lwjgl.system.Pointer.Default
address, equals, hashCode, toStringMethods inherited from interface org.lwjgl.system.NativeResource
close, free
-
Field Details
-
SIZEOF
public static final int SIZEOFThe struct size in bytes. -
ALIGNOF
public static final int ALIGNOFThe struct alignment in bytes. -
STYPE
public static final int STYPEThe struct member offsets. -
PNEXT
public static final int PNEXTThe struct member offsets. -
MAXEXECUTIONGRAPHDEPTH
public static final int MAXEXECUTIONGRAPHDEPTHThe struct member offsets. -
MAXEXECUTIONGRAPHSHADEROUTPUTNODES
public static final int MAXEXECUTIONGRAPHSHADEROUTPUTNODESThe struct member offsets. -
MAXEXECUTIONGRAPHSHADERPAYLOADSIZE
public static final int MAXEXECUTIONGRAPHSHADERPAYLOADSIZEThe struct member offsets. -
MAXEXECUTIONGRAPHSHADERPAYLOADCOUNT
public static final int MAXEXECUTIONGRAPHSHADERPAYLOADCOUNTThe struct member offsets. -
EXECUTIONGRAPHDISPATCHADDRESSALIGNMENT
public static final int EXECUTIONGRAPHDISPATCHADDRESSALIGNMENTThe struct member offsets. -
MAXEXECUTIONGRAPHWORKGROUPCOUNT
public static final int MAXEXECUTIONGRAPHWORKGROUPCOUNTThe struct member offsets. -
MAXEXECUTIONGRAPHWORKGROUPS
public static final int MAXEXECUTIONGRAPHWORKGROUPSThe struct member offsets.
-
-
Constructor Details
-
VkPhysicalDeviceShaderEnqueuePropertiesAMDX
Creates aVkPhysicalDeviceShaderEnqueuePropertiesAMDXinstance 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 Details
-
sizeof
public int sizeof()- Specified by:
sizeofin classorg.lwjgl.system.Struct<VkPhysicalDeviceShaderEnqueuePropertiesAMDX>
-
sType
public int sType()aVkStructureTypevalue identifying this structure. -
pNext
public long pNext()NULLor a pointer to a structure extending this structure. -
maxExecutionGraphDepth
public int maxExecutionGraphDepth()defines the maximum node chain depth in the graph. The dispatched node is at depth 1 and the node enqueued by it is at depth 2, and so on. If a node enqueues itself, each recursive enqueue increases the depth by 1 as well. -
maxExecutionGraphShaderOutputNodes
public int maxExecutionGraphShaderOutputNodes()specifies the maximum number of unique nodes that can be dispatched from a single shader, and must be at least 256. -
maxExecutionGraphShaderPayloadSize
public int maxExecutionGraphShaderPayloadSize()specifies the maximum total size of payload declarations in a shader. For any payload declarations that share resources, indicated byNodeSharesPayloadLimitsWithAMDXdecorations, the maximum size of each set of shared payload declarations is taken. The sum of each shared set’s maximum size and the size of each unshared payload is counted against this limit. -
maxExecutionGraphShaderPayloadCount
public int maxExecutionGraphShaderPayloadCount()specifies the maximum number of output payloads that can be initialized in a single workgroup. -
executionGraphDispatchAddressAlignment
public int executionGraphDispatchAddressAlignment()specifies the alignment of non-scratchVkDeviceAddressarguments consumed by graph dispatch commands. -
maxExecutionGraphWorkgroupCount
the maximum number of local workgroups that a shader can be dispatched with in X, Y, and Z dimensions, respectively. -
maxExecutionGraphWorkgroupCount
public int maxExecutionGraphWorkgroupCount(int index) the maximum number of local workgroups that a shader can be dispatched with in X, Y, and Z dimensions, respectively. -
maxExecutionGraphWorkgroups
public int maxExecutionGraphWorkgroups()the total number of local workgroups that a shader can be dispatched with. -
sType
Sets the specified value to thesType()field. -
sType$Default
Sets theSTRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ENQUEUE_PROPERTIES_AMDXvalue to thesType()field. -
pNext
Sets the specified value to thepNext()field. -
maxExecutionGraphDepth
Sets the specified value to themaxExecutionGraphDepth()field. -
maxExecutionGraphShaderOutputNodes
Sets the specified value to themaxExecutionGraphShaderOutputNodes()field. -
maxExecutionGraphShaderPayloadSize
Sets the specified value to themaxExecutionGraphShaderPayloadSize()field. -
maxExecutionGraphShaderPayloadCount
Sets the specified value to themaxExecutionGraphShaderPayloadCount()field. -
executionGraphDispatchAddressAlignment
public VkPhysicalDeviceShaderEnqueuePropertiesAMDX executionGraphDispatchAddressAlignment(int value) Sets the specified value to theexecutionGraphDispatchAddressAlignment()field. -
maxExecutionGraphWorkgroupCount
Copies the specifiedIntBufferto themaxExecutionGraphWorkgroupCount()field. -
maxExecutionGraphWorkgroupCount
public VkPhysicalDeviceShaderEnqueuePropertiesAMDX maxExecutionGraphWorkgroupCount(int index, int value) Sets the specified value at the specified index of themaxExecutionGraphWorkgroupCount()field. -
maxExecutionGraphWorkgroups
Sets the specified value to themaxExecutionGraphWorkgroups()field. -
set
public VkPhysicalDeviceShaderEnqueuePropertiesAMDX set(int sType, long pNext, int maxExecutionGraphDepth, int maxExecutionGraphShaderOutputNodes, int maxExecutionGraphShaderPayloadSize, int maxExecutionGraphShaderPayloadCount, int executionGraphDispatchAddressAlignment, IntBuffer maxExecutionGraphWorkgroupCount, int maxExecutionGraphWorkgroups) Initializes this struct with the specified values. -
set
public VkPhysicalDeviceShaderEnqueuePropertiesAMDX set(VkPhysicalDeviceShaderEnqueuePropertiesAMDX src) Copies the specified struct data to this struct.- Parameters:
src- the source struct- Returns:
- this struct
-
malloc
Returns a newVkPhysicalDeviceShaderEnqueuePropertiesAMDXinstance allocated withmemAlloc. The instance must be explicitly freed. -
calloc
Returns a newVkPhysicalDeviceShaderEnqueuePropertiesAMDXinstance allocated withmemCalloc. The instance must be explicitly freed. -
create
Returns a newVkPhysicalDeviceShaderEnqueuePropertiesAMDXinstance allocated withBufferUtils. -
create
Returns a newVkPhysicalDeviceShaderEnqueuePropertiesAMDXinstance for the specified memory address. -
createSafe
-
malloc
Returns a newVkPhysicalDeviceShaderEnqueuePropertiesAMDX.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
Returns a newVkPhysicalDeviceShaderEnqueuePropertiesAMDX.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
Returns a newVkPhysicalDeviceShaderEnqueuePropertiesAMDX.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
Create aVkPhysicalDeviceShaderEnqueuePropertiesAMDX.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
public static @Nullable VkPhysicalDeviceShaderEnqueuePropertiesAMDX.Buffer createSafe(long address, int capacity) -
malloc
public static VkPhysicalDeviceShaderEnqueuePropertiesAMDX malloc(org.lwjgl.system.MemoryStack stack) Returns a newVkPhysicalDeviceShaderEnqueuePropertiesAMDXinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
calloc
public static VkPhysicalDeviceShaderEnqueuePropertiesAMDX calloc(org.lwjgl.system.MemoryStack stack) Returns a newVkPhysicalDeviceShaderEnqueuePropertiesAMDXinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
malloc
public static VkPhysicalDeviceShaderEnqueuePropertiesAMDX.Buffer malloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkPhysicalDeviceShaderEnqueuePropertiesAMDX.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
capacity- the buffer capacitystack- the stack from which to allocate
-
calloc
public static VkPhysicalDeviceShaderEnqueuePropertiesAMDX.Buffer calloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkPhysicalDeviceShaderEnqueuePropertiesAMDX.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
capacity- the buffer capacitystack- the stack from which to allocate
-
nsType
public static int nsType(long struct) Unsafe version ofsType(). -
npNext
public static long npNext(long struct) Unsafe version ofpNext(). -
nmaxExecutionGraphDepth
public static int nmaxExecutionGraphDepth(long struct) Unsafe version ofmaxExecutionGraphDepth(). -
nmaxExecutionGraphShaderOutputNodes
public static int nmaxExecutionGraphShaderOutputNodes(long struct) Unsafe version ofmaxExecutionGraphShaderOutputNodes(). -
nmaxExecutionGraphShaderPayloadSize
public static int nmaxExecutionGraphShaderPayloadSize(long struct) Unsafe version ofmaxExecutionGraphShaderPayloadSize(). -
nmaxExecutionGraphShaderPayloadCount
public static int nmaxExecutionGraphShaderPayloadCount(long struct) Unsafe version ofmaxExecutionGraphShaderPayloadCount(). -
nexecutionGraphDispatchAddressAlignment
public static int nexecutionGraphDispatchAddressAlignment(long struct) Unsafe version ofexecutionGraphDispatchAddressAlignment(). -
nmaxExecutionGraphWorkgroupCount
Unsafe version ofmaxExecutionGraphWorkgroupCount(). -
nmaxExecutionGraphWorkgroupCount
public static int nmaxExecutionGraphWorkgroupCount(long struct, int index) Unsafe version ofmaxExecutionGraphWorkgroupCount. -
nmaxExecutionGraphWorkgroups
public static int nmaxExecutionGraphWorkgroups(long struct) Unsafe version ofmaxExecutionGraphWorkgroups(). -
nsType
public static void nsType(long struct, int value) Unsafe version ofsType. -
npNext
public static void npNext(long struct, long value) Unsafe version ofpNext. -
nmaxExecutionGraphDepth
public static void nmaxExecutionGraphDepth(long struct, int value) Unsafe version ofmaxExecutionGraphDepth. -
nmaxExecutionGraphShaderOutputNodes
public static void nmaxExecutionGraphShaderOutputNodes(long struct, int value) Unsafe version ofmaxExecutionGraphShaderOutputNodes. -
nmaxExecutionGraphShaderPayloadSize
public static void nmaxExecutionGraphShaderPayloadSize(long struct, int value) Unsafe version ofmaxExecutionGraphShaderPayloadSize. -
nmaxExecutionGraphShaderPayloadCount
public static void nmaxExecutionGraphShaderPayloadCount(long struct, int value) Unsafe version ofmaxExecutionGraphShaderPayloadCount. -
nexecutionGraphDispatchAddressAlignment
public static void nexecutionGraphDispatchAddressAlignment(long struct, int value) Unsafe version ofexecutionGraphDispatchAddressAlignment. -
nmaxExecutionGraphWorkgroupCount
Unsafe version ofmaxExecutionGraphWorkgroupCount. -
nmaxExecutionGraphWorkgroupCount
public static void nmaxExecutionGraphWorkgroupCount(long struct, int index, int value) Unsafe version ofmaxExecutionGraphWorkgroupCount. -
nmaxExecutionGraphWorkgroups
public static void nmaxExecutionGraphWorkgroups(long struct, int value) Unsafe version ofmaxExecutionGraphWorkgroups.
-