Package org.lwjgl.vulkan
Class VkBindVertexBufferIndirectCommandNV
java.lang.Object
org.lwjgl.system.Pointer.Default
org.lwjgl.system.Struct<VkBindVertexBufferIndirectCommandNV>
org.lwjgl.vulkan.VkBindVertexBufferIndirectCommandNV
- All Implemented Interfaces:
AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
public class VkBindVertexBufferIndirectCommandNV
extends org.lwjgl.system.Struct<VkBindVertexBufferIndirectCommandNV>
implements org.lwjgl.system.NativeResource
Structure specifying input data for a single vertex buffer command token.
Valid Usage
- The buffer’s usage flag from which the address was acquired must have the
BUFFER_USAGE_VERTEX_BUFFER_BITbit set - 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
Layout
struct VkBindVertexBufferIndirectCommandNV {
VkDeviceAddress bufferAddress();
uint32_t size();
uint32_t stride();
}-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classAn array ofVkBindVertexBufferIndirectCommandNVstructs.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 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
ConstructorsConstructorDescriptionVkBindVertexBufferIndirectCommandNV(ByteBuffer container) Creates aVkBindVertexBufferIndirectCommandNVinstance at the current position of the specifiedByteBuffercontainer. -
Method Summary
Modifier and TypeMethodDescriptionlongspecifies a physical address of theVkBufferused as vertex input binding.bufferAddress(long value) Sets the specified value to thebufferAddress()field.calloc()Returns a newVkBindVertexBufferIndirectCommandNVinstance allocated withmemCalloc.calloc(int capacity) Returns a newVkBindVertexBufferIndirectCommandNV.Bufferinstance allocated withmemCalloc.calloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkBindVertexBufferIndirectCommandNV.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.calloc(org.lwjgl.system.MemoryStack stack) Returns a newVkBindVertexBufferIndirectCommandNVinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.create()Returns a newVkBindVertexBufferIndirectCommandNVinstance allocated withBufferUtils.create(int capacity) Returns a newVkBindVertexBufferIndirectCommandNV.Bufferinstance allocated withBufferUtils.create(long address) Returns a newVkBindVertexBufferIndirectCommandNVinstance for the specified memory address.create(long address, int capacity) Create aVkBindVertexBufferIndirectCommandNV.Bufferinstance at the specified memory.static @Nullable VkBindVertexBufferIndirectCommandNVcreateSafe(long address) static @Nullable VkBindVertexBufferIndirectCommandNV.BuffercreateSafe(long address, int capacity) malloc()Returns a newVkBindVertexBufferIndirectCommandNVinstance allocated withmemAlloc.malloc(int capacity) Returns a newVkBindVertexBufferIndirectCommandNV.Bufferinstance allocated withmemAlloc.malloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkBindVertexBufferIndirectCommandNV.Bufferinstance allocated on the specifiedMemoryStack.malloc(org.lwjgl.system.MemoryStack stack) Returns a newVkBindVertexBufferIndirectCommandNVinstance allocated on the specifiedMemoryStack.static longnbufferAddress(long struct) Unsafe version ofbufferAddress().static voidnbufferAddress(long struct, long value) Unsafe version ofbufferAddress.static intnsize(long struct) Unsafe version ofsize().static voidnsize(long struct, int value) Unsafe version ofsize.static intnstride(long struct) Unsafe version ofstride().static voidnstride(long struct, int value) Unsafe version ofstride.set(long bufferAddress, int size, int stride) 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()intstride()the byte size stride for this vertex input binding as inVkVertexInputBindingDescription::stride.stride(int value) Sets the specified value to thestride()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. -
BUFFERADDRESS
public static final int BUFFERADDRESSThe struct member offsets. -
SIZE
public static final int SIZEThe struct member offsets. -
STRIDE
public static final int STRIDEThe struct member offsets.
-
-
Constructor Details
-
VkBindVertexBufferIndirectCommandNV
Creates aVkBindVertexBufferIndirectCommandNVinstance 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<VkBindVertexBufferIndirectCommandNV>
-
bufferAddress
public long bufferAddress()specifies a physical address of theVkBufferused as vertex input binding. -
size
public int size()the byte size range which is available for this operation from the provided address. -
stride
public int stride()the byte size stride for this vertex input binding as inVkVertexInputBindingDescription::stride. It is only used ifVkIndirectCommandsLayoutTokenNV::vertexDynamicStridewas set, otherwise the stride is inherited from the current bound graphics pipeline. -
bufferAddress
Sets the specified value to thebufferAddress()field. -
size
Sets the specified value to thesize()field. -
stride
Sets the specified value to thestride()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 newVkBindVertexBufferIndirectCommandNVinstance allocated withmemAlloc. The instance must be explicitly freed. -
calloc
Returns a newVkBindVertexBufferIndirectCommandNVinstance allocated withmemCalloc. The instance must be explicitly freed. -
create
Returns a newVkBindVertexBufferIndirectCommandNVinstance allocated withBufferUtils. -
create
Returns a newVkBindVertexBufferIndirectCommandNVinstance for the specified memory address. -
createSafe
-
malloc
Returns a newVkBindVertexBufferIndirectCommandNV.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
Returns a newVkBindVertexBufferIndirectCommandNV.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
Returns a newVkBindVertexBufferIndirectCommandNV.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
Create aVkBindVertexBufferIndirectCommandNV.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
public static @Nullable VkBindVertexBufferIndirectCommandNV.Buffer createSafe(long address, int capacity) -
malloc
Returns a newVkBindVertexBufferIndirectCommandNVinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
calloc
Returns a newVkBindVertexBufferIndirectCommandNVinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
malloc
public static VkBindVertexBufferIndirectCommandNV.Buffer malloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkBindVertexBufferIndirectCommandNV.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
capacity- the buffer capacitystack- the stack from which to allocate
-
calloc
public static VkBindVertexBufferIndirectCommandNV.Buffer calloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkBindVertexBufferIndirectCommandNV.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(). -
nstride
public static int nstride(long struct) Unsafe version ofstride(). -
nbufferAddress
public static void nbufferAddress(long struct, long value) Unsafe version ofbufferAddress. -
nsize
public static void nsize(long struct, int value) Unsafe version ofsize. -
nstride
public static void nstride(long struct, int value) Unsafe version ofstride.
-