Package org.lwjgl.vulkan
Class VkBindIndexBufferIndirectCommandEXT
java.lang.Object
org.lwjgl.system.Pointer.Default
org.lwjgl.system.Struct<VkBindIndexBufferIndirectCommandEXT>
org.lwjgl.vulkan.VkBindIndexBufferIndirectCommandEXT
- All Implemented Interfaces:
AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
public class VkBindIndexBufferIndirectCommandEXT
extends org.lwjgl.system.Struct<VkBindIndexBufferIndirectCommandEXT>
implements org.lwjgl.system.NativeResource
Structure specifying input data for a single index buffer command token.
Valid Usage
- The buffer’s usage flags from which the address was acquired must have the
BUFFER_USAGE_INDEX_BUFFER_BITbit set - The
bufferAddressmust be aligned to theVkIndexTypeof theindexTypeused - Each element of the buffer from which the address was acquired and that is non-sparse must be bound completely and contiguously to a single
VkDeviceMemoryobject
Valid Usage (Implicit)
indexTypemust be a validVkIndexTypevalue
Layout
struct VkBindIndexBufferIndirectCommandEXT {
VkDeviceAddress bufferAddress();
uint32_t size();
VkIndexType indexType();
}-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classAn array ofVkBindIndexBufferIndirectCommandEXTstructs.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 size in bytes.Fields inherited from interface org.lwjgl.system.Pointer
BITS32, BITS64, CLONG_SHIFT, CLONG_SIZE, POINTER_SHIFT, POINTER_SIZE -
Constructor Summary
ConstructorsConstructorDescriptionVkBindIndexBufferIndirectCommandEXT(ByteBuffer container) Creates aVkBindIndexBufferIndirectCommandEXTinstance at the current position of the specifiedByteBuffercontainer. -
Method Summary
Modifier and TypeMethodDescriptionlongspecifies a physical address of theVkBufferused as index buffer.bufferAddress(long value) Sets the specified value to thebufferAddress()field.calloc()Returns a newVkBindIndexBufferIndirectCommandEXTinstance allocated withmemCalloc.calloc(int capacity) Returns a newVkBindIndexBufferIndirectCommandEXT.Bufferinstance allocated withmemCalloc.calloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkBindIndexBufferIndirectCommandEXT.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.calloc(org.lwjgl.system.MemoryStack stack) Returns a newVkBindIndexBufferIndirectCommandEXTinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.create()Returns a newVkBindIndexBufferIndirectCommandEXTinstance allocated withBufferUtils.create(int capacity) Returns a newVkBindIndexBufferIndirectCommandEXT.Bufferinstance allocated withBufferUtils.create(long address) Returns a newVkBindIndexBufferIndirectCommandEXTinstance for the specified memory address.create(long address, int capacity) Create aVkBindIndexBufferIndirectCommandEXT.Bufferinstance at the specified memory.static @Nullable VkBindIndexBufferIndirectCommandEXTcreateSafe(long address) static @Nullable VkBindIndexBufferIndirectCommandEXT.BuffercreateSafe(long address, int capacity) intaVkIndexTypevalue specifying how indices are treated.indexType(int value) Sets the specified value to theindexType()field.malloc()Returns a newVkBindIndexBufferIndirectCommandEXTinstance allocated withmemAlloc.malloc(int capacity) Returns a newVkBindIndexBufferIndirectCommandEXT.Bufferinstance allocated withmemAlloc.malloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkBindIndexBufferIndirectCommandEXT.Bufferinstance allocated on the specifiedMemoryStack.malloc(org.lwjgl.system.MemoryStack stack) Returns a newVkBindIndexBufferIndirectCommandEXTinstance allocated on the specifiedMemoryStack.static longnbufferAddress(long struct) Unsafe version ofbufferAddress().static voidnbufferAddress(long struct, long value) Unsafe version ofbufferAddress.static intnindexType(long struct) Unsafe version ofindexType().static voidnindexType(long struct, int value) Unsafe version ofindexType.static intnsize(long struct) Unsafe version ofsize().static voidnsize(long struct, int value) Unsafe version ofsize.set(long bufferAddress, int size, int indexType) Initializes this struct with the specified values.Copies the specified struct data to this struct.intsize()the byte size range which is available for this operation from the provided address.size(int value) Sets the specified value to thesize()field.intsizeof()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. -
BUFFERADDRESS
public static final int BUFFERADDRESSThe struct member offsets. -
SIZE
public static final int SIZEThe struct member offsets. -
INDEXTYPE
public static final int INDEXTYPEThe struct member offsets.
-
-
Constructor Details
-
VkBindIndexBufferIndirectCommandEXT
Creates aVkBindIndexBufferIndirectCommandEXTinstance 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<VkBindIndexBufferIndirectCommandEXT>
-
bufferAddress
public long bufferAddress()specifies a physical address of theVkBufferused as index buffer. -
size
public int size()the byte size range which is available for this operation from the provided address. -
indexType
public int indexType()aVkIndexTypevalue specifying how indices are treated. -
bufferAddress
Sets the specified value to thebufferAddress()field. -
size
Sets the specified value to thesize()field. -
indexType
Sets the specified value to theindexType()field. -
set
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
Returns a newVkBindIndexBufferIndirectCommandEXTinstance allocated withmemAlloc. The instance must be explicitly freed. -
calloc
Returns a newVkBindIndexBufferIndirectCommandEXTinstance allocated withmemCalloc. The instance must be explicitly freed. -
create
Returns a newVkBindIndexBufferIndirectCommandEXTinstance allocated withBufferUtils. -
create
Returns a newVkBindIndexBufferIndirectCommandEXTinstance for the specified memory address. -
createSafe
-
malloc
Returns a newVkBindIndexBufferIndirectCommandEXT.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
Returns a newVkBindIndexBufferIndirectCommandEXT.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
Returns a newVkBindIndexBufferIndirectCommandEXT.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
Create aVkBindIndexBufferIndirectCommandEXT.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
public static @Nullable VkBindIndexBufferIndirectCommandEXT.Buffer createSafe(long address, int capacity) -
malloc
Returns a newVkBindIndexBufferIndirectCommandEXTinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
calloc
Returns a newVkBindIndexBufferIndirectCommandEXTinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
malloc
public static VkBindIndexBufferIndirectCommandEXT.Buffer malloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkBindIndexBufferIndirectCommandEXT.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
capacity- the buffer capacitystack- the stack from which to allocate
-
calloc
public static VkBindIndexBufferIndirectCommandEXT.Buffer calloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkBindIndexBufferIndirectCommandEXT.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
capacity- the buffer capacitystack- the stack from which to allocate
-
nbufferAddress
public static long nbufferAddress(long struct) Unsafe version ofbufferAddress(). -
nsize
public static int nsize(long struct) Unsafe version ofsize(). -
nindexType
public static int nindexType(long struct) Unsafe version ofindexType(). -
nbufferAddress
public static void nbufferAddress(long struct, long value) Unsafe version ofbufferAddress. -
nsize
public static void nsize(long struct, int value) Unsafe version ofsize. -
nindexType
public static void nindexType(long struct, int value) Unsafe version ofindexType.
-