Top Description Inners Fields Constructors Methods
org.lwjgl.vulkan

public Class VkDrawIndexedIndirectCommand

extends Struct<VkDrawIndexedIndirectCommand>
implements NativeResource
Class Inheritance
All Implemented Interfaces
org.lwjgl.system.NativeResource, java.lang.AutoCloseable
Imports
javax.annotation.*, java.nio.*, org.lwjgl.*, org.lwjgl.system.*

Structure specifying a indexed indirect drawing command.
Description

The members of VkDrawIndexedIndirectCommand have the same meaning as the similarly named parameters of CmdDrawIndexed.

Valid Usage
See Also

CmdDrawIndexedIndirect

Layout


struct VkDrawIndexedIndirectCommand {
    uint32_t indexCount;
    uint32_t instanceCount;
    uint32_t firstIndex;
    int32_t vertexOffset;
    uint32_t firstInstance;
}

Nested and Inner Type Summary

Modifier and TypeClass and Description
public static class

Field Summary

Modifier and TypeField and Description
public static final int
ALIGNOF

The struct alignment in bytes.

public static final int
FIRSTINDEX

The struct member offsets.

public static final int
FIRSTINSTANCE

The struct member offsets.

public static final int
INDEXCOUNT

The struct member offsets.

public static final int
INSTANCECOUNT

The struct member offsets.

public static final int
SIZEOF

The struct size in bytes.

public static final int
VERTEXOFFSET

The struct member offsets.

Inherited from org.lwjgl.system.Struct:
containerDEFAULT_ALIGN_ASDEFAULT_PACK_ALIGNMENT

Constructor Summary

AccessConstructor and Description
protected
VkDrawIndexedIndirectCommand(long address, ByteBuffer container)

public
VkDrawIndexedIndirectCommand(ByteBuffer container)

Creates a VkDrawIndexedIndirectCommand instance at the current position of the specified ByteBuffer container.

Method Summary

Modifier and TypeMethod and Description
public static VkDrawIndexedIndirectCommand
calloc()

Returns a new VkDrawIndexedIndirectCommand instance allocated with memCalloc.

public static VkDrawIndexedIndirectCommand.Buffer
calloc(int
the buffer capacity
capacity
)

Returns a new VkDrawIndexedIndirectCommand.Buffer instance allocated with memCalloc.

public static VkDrawIndexedIndirectCommand
calloc(MemoryStack
the stack from which to allocate
stack
)

Returns a new VkDrawIndexedIndirectCommand instance allocated on the specified MemoryStack and initializes all its bits to zero.

public static VkDrawIndexedIndirectCommand.Buffer
calloc(int
the buffer capacity
capacity
,
MemoryStack
the stack from which to allocate
stack
)

Returns a new VkDrawIndexedIndirectCommand.Buffer instance allocated on the specified MemoryStack and initializes all its bits to zero.

public static VkDrawIndexedIndirectCommand
callocStack()

Deprecated
Deprecated for removal in 3.4.0.
public static VkDrawIndexedIndirectCommand
callocStack(MemoryStack stack)

Deprecated
Deprecated for removal in 3.4.0.
public static VkDrawIndexedIndirectCommand.Buffer
callocStack(int capacity)

Deprecated
Deprecated for removal in 3.4.0.
public static VkDrawIndexedIndirectCommand.Buffer
callocStack(int capacity, MemoryStack stack)

Deprecated
Deprecated for removal in 3.4.0.
protected VkDrawIndexedIndirectCommand
create(long
the struct memory address
address
,
ByteBuffer
an optional container buffer, to be referenced strongly by the struct instance.
container
)

Implements abstract org.lwjgl.system.Struct.create.

Similar to the constructor, but returns the exact type of the Struct subclass.
public static VkDrawIndexedIndirectCommand
create()

Returns a new VkDrawIndexedIndirectCommand instance allocated with BufferUtils.

public static VkDrawIndexedIndirectCommand
create(long address)

Returns a new VkDrawIndexedIndirectCommand instance for the specified memory address.

public static VkDrawIndexedIndirectCommand.Buffer
create(int
the buffer capacity
capacity
)

Returns a new VkDrawIndexedIndirectCommand.Buffer instance allocated with BufferUtils.

public static VkDrawIndexedIndirectCommand.Buffer
create(long
the memory address
address
,
int
the buffer capacity
capacity
)

Create a VkDrawIndexedIndirectCommand.Buffer instance at the specified memory.

public static VkDrawIndexedIndirectCommand
createSafe(long address)

Like create, but returns null if address is NULL.

public static VkDrawIndexedIndirectCommand.Buffer
createSafe(long address, int capacity)

Like create, but returns null if address is NULL.

public int
firstIndex()

the base index within the index buffer.

public VkDrawIndexedIndirectCommand
firstIndex(int value)

Sets the specified value to the firstIndex field.

public int
firstInstance()

the instance ID of the first instance to draw.

public VkDrawIndexedIndirectCommand
firstInstance(int value)

Sets the specified value to the firstInstance field.

public int
indexCount()

the number of vertices to draw.

public VkDrawIndexedIndirectCommand
indexCount(int value)

Sets the specified value to the indexCount field.

public int
instanceCount()

the number of instances to draw.

public VkDrawIndexedIndirectCommand
instanceCount(int value)

Sets the specified value to the instanceCount field.

public static VkDrawIndexedIndirectCommand
malloc()

Returns a new VkDrawIndexedIndirectCommand instance allocated with memAlloc.

public static VkDrawIndexedIndirectCommand.Buffer
malloc(int
the buffer capacity
capacity
)

Returns a new VkDrawIndexedIndirectCommand.Buffer instance allocated with memAlloc.

public static VkDrawIndexedIndirectCommand
malloc(MemoryStack
the stack from which to allocate
stack
)

Returns a new VkDrawIndexedIndirectCommand instance allocated on the specified MemoryStack.

public static VkDrawIndexedIndirectCommand.Buffer
malloc(int
the buffer capacity
capacity
,
MemoryStack
the stack from which to allocate
stack
)

Returns a new VkDrawIndexedIndirectCommand.Buffer instance allocated on the specified MemoryStack.

public static VkDrawIndexedIndirectCommand
mallocStack()

Deprecated
Deprecated for removal in 3.4.0.
public static VkDrawIndexedIndirectCommand
mallocStack(MemoryStack stack)

Deprecated
Deprecated for removal in 3.4.0.
public static VkDrawIndexedIndirectCommand.Buffer
mallocStack(int capacity)

Deprecated
Deprecated for removal in 3.4.0.
public static VkDrawIndexedIndirectCommand.Buffer
mallocStack(int capacity, MemoryStack stack)

Deprecated
Deprecated for removal in 3.4.0.
public static int
nfirstIndex(long struct)

Unsafe version of firstIndex.

public static void
nfirstIndex(long struct, int value)

Unsafe version of firstIndex.

public static int
nfirstInstance(long struct)

Unsafe version of firstInstance.

public static void
nfirstInstance(long struct, int value)

Unsafe version of firstInstance.

public static int
nindexCount(long struct)

Unsafe version of indexCount.

public static void
nindexCount(long struct, int value)

Unsafe version of indexCount.

public static int
ninstanceCount(long struct)

Unsafe version of instanceCount.

public static void
ninstanceCount(long struct, int value)

Unsafe version of instanceCount.

public static int
nvertexOffset(long struct)

Unsafe version of vertexOffset.

public static void
nvertexOffset(long struct, int value)

Unsafe version of vertexOffset.

public VkDrawIndexedIndirectCommand
set(int indexCount, int instanceCount, int firstIndex, int vertexOffset, int firstInstance)

Initializes this struct with the specified values.

public VkDrawIndexedIndirectCommand

Returns:

this struct
set
(VkDrawIndexedIndirectCommand
the source struct
src
)

Copies the specified struct data to this struct.

public int
sizeof()

Implements abstract org.lwjgl.system.Struct.sizeof.

Returns sizeof(struct).
public int
vertexOffset()

the value added to the vertex index before indexing into the vertex buffer.

public VkDrawIndexedIndirectCommand
vertexOffset(int value)

Sets the specified value to the vertexOffset field.

Inherited from org.lwjgl.system.Struct:
__array__array__array__checkContainer__checkMalloc__create__getContainer__getContainer__member__member__member__padding__padding__struct__struct__union__unionclearfreeisNullvalidate

Field Detail

ALIGNOFback to summary
public static final int ALIGNOF

The struct alignment in bytes.

FIRSTINDEXback to summary
public static final int FIRSTINDEX

The struct member offsets.

FIRSTINSTANCEback to summary
public static final int FIRSTINSTANCE

The struct member offsets.

INDEXCOUNTback to summary
public static final int INDEXCOUNT

The struct member offsets.

INSTANCECOUNTback to summary
public static final int INSTANCECOUNT

The struct member offsets.

SIZEOFback to summary
public static final int SIZEOF

The struct size in bytes.

VERTEXOFFSETback to summary
public static final int VERTEXOFFSET

The struct member offsets.

Constructor Detail

VkDrawIndexedIndirectCommandback to summary
protected VkDrawIndexedIndirectCommand(long address, ByteBuffer container)
VkDrawIndexedIndirectCommandback to summary
public VkDrawIndexedIndirectCommand(ByteBuffer container)

Creates a VkDrawIndexedIndirectCommand instance at the current position of the specified ByteBuffer 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

callocback to summary
public static VkDrawIndexedIndirectCommand calloc()

Returns a new VkDrawIndexedIndirectCommand instance allocated with memCalloc. The instance must be explicitly freed.

callocback to summary
public static VkDrawIndexedIndirectCommand.Buffer calloc(int capacity)

Returns a new VkDrawIndexedIndirectCommand.Buffer instance allocated with memCalloc. The instance must be explicitly freed.

Parameters
capacity:int

the buffer capacity

callocback to summary
public static VkDrawIndexedIndirectCommand calloc(MemoryStack stack)

Returns a new VkDrawIndexedIndirectCommand instance allocated on the specified MemoryStack and initializes all its bits to zero.

Parameters
stack:MemoryStack

the stack from which to allocate

callocback to summary
public static VkDrawIndexedIndirectCommand.Buffer calloc(int capacity, MemoryStack stack)

Returns a new VkDrawIndexedIndirectCommand.Buffer instance allocated on the specified MemoryStack and initializes all its bits to zero.

Parameters
capacity:int

the buffer capacity

stack:MemoryStack

the stack from which to allocate

callocStackback to summary
public static VkDrawIndexedIndirectCommand callocStack()

Deprecated

Deprecated for removal in 3.4.0. Use calloc(MemoryStack) instead.

Annotations
@Deprecated
callocStackback to summary
public static VkDrawIndexedIndirectCommand callocStack(MemoryStack stack)

Deprecated

Deprecated for removal in 3.4.0. Use calloc(MemoryStack) instead.

Annotations
@Deprecated
callocStackback to summary
public static VkDrawIndexedIndirectCommand.Buffer callocStack(int capacity)

Deprecated

Deprecated for removal in 3.4.0. Use calloc(int, MemoryStack) instead.

Annotations
@Deprecated
callocStackback to summary
public static VkDrawIndexedIndirectCommand.Buffer callocStack(int capacity, MemoryStack stack)

Deprecated

Deprecated for removal in 3.4.0. Use calloc(int, MemoryStack) instead.

Annotations
@Deprecated
createback to summary
protected VkDrawIndexedIndirectCommand create(long address, ByteBuffer container)

Implements abstract org.lwjgl.system.Struct.create.

Doc from org.lwjgl.system.Struct.create.

Similar to the constructor, but returns the exact type of the Struct subclass.

Effectively, every Struct instance is a factory for more instances of the same type. This is used by StructBuffer.

Parameters
address:long

the struct memory address

container:ByteBuffer

an optional container buffer, to be referenced strongly by the struct instance.

Annotations
@Override
createback to summary
public static VkDrawIndexedIndirectCommand create()

Returns a new VkDrawIndexedIndirectCommand instance allocated with BufferUtils.

createback to summary
public static VkDrawIndexedIndirectCommand create(long address)

Returns a new VkDrawIndexedIndirectCommand instance for the specified memory address.

createback to summary
public static VkDrawIndexedIndirectCommand.Buffer create(int capacity)

Returns a new VkDrawIndexedIndirectCommand.Buffer instance allocated with BufferUtils.

Parameters
capacity:int

the buffer capacity

createback to summary
public static VkDrawIndexedIndirectCommand.Buffer create(long address, int capacity)

Create a VkDrawIndexedIndirectCommand.Buffer instance at the specified memory.

Parameters
address:long

the memory address

capacity:int

the buffer capacity

createSafeback to summary
public static VkDrawIndexedIndirectCommand createSafe(long address)

Like create, but returns null if address is NULL.

Annotations
@Nullable
createSafeback to summary
public static VkDrawIndexedIndirectCommand.Buffer createSafe(long address, int capacity)

Like create, but returns null if address is NULL.

Annotations
@Nullable
firstIndexback to summary
public int firstIndex()

the base index within the index buffer.

Annotations
@NativeType:uint32_t
firstIndexback to summary
public VkDrawIndexedIndirectCommand firstIndex(int value)

Sets the specified value to the firstIndex field.

firstInstanceback to summary
public int firstInstance()

the instance ID of the first instance to draw.

Annotations
@NativeType:uint32_t
firstInstanceback to summary
public VkDrawIndexedIndirectCommand firstInstance(int value)

Sets the specified value to the firstInstance field.

indexCountback to summary
public int indexCount()

the number of vertices to draw.

Annotations
@NativeType:uint32_t
indexCountback to summary
public VkDrawIndexedIndirectCommand indexCount(int value)

Sets the specified value to the indexCount field.

instanceCountback to summary
public int instanceCount()

the number of instances to draw.

Annotations
@NativeType:uint32_t
instanceCountback to summary
public VkDrawIndexedIndirectCommand instanceCount(int value)

Sets the specified value to the instanceCount field.

mallocback to summary
public static VkDrawIndexedIndirectCommand malloc()

Returns a new VkDrawIndexedIndirectCommand instance allocated with memAlloc. The instance must be explicitly freed.

mallocback to summary
public static VkDrawIndexedIndirectCommand.Buffer malloc(int capacity)

Returns a new VkDrawIndexedIndirectCommand.Buffer instance allocated with memAlloc. The instance must be explicitly freed.

Parameters
capacity:int

the buffer capacity

mallocback to summary
public static VkDrawIndexedIndirectCommand malloc(MemoryStack stack)

Returns a new VkDrawIndexedIndirectCommand instance allocated on the specified MemoryStack.

Parameters
stack:MemoryStack

the stack from which to allocate

mallocback to summary
public static VkDrawIndexedIndirectCommand.Buffer malloc(int capacity, MemoryStack stack)

Returns a new VkDrawIndexedIndirectCommand.Buffer instance allocated on the specified MemoryStack.

Parameters
capacity:int

the buffer capacity

stack:MemoryStack

the stack from which to allocate

mallocStackback to summary
public static VkDrawIndexedIndirectCommand mallocStack()

Deprecated

Deprecated for removal in 3.4.0. Use malloc(MemoryStack) instead.

Annotations
@Deprecated
mallocStackback to summary
public static VkDrawIndexedIndirectCommand mallocStack(MemoryStack stack)

Deprecated

Deprecated for removal in 3.4.0. Use malloc(MemoryStack) instead.

Annotations
@Deprecated
mallocStackback to summary
public static VkDrawIndexedIndirectCommand.Buffer mallocStack(int capacity)

Deprecated

Deprecated for removal in 3.4.0. Use malloc(int, MemoryStack) instead.

Annotations
@Deprecated
mallocStackback to summary
public static VkDrawIndexedIndirectCommand.Buffer mallocStack(int capacity, MemoryStack stack)

Deprecated

Deprecated for removal in 3.4.0. Use malloc(int, MemoryStack) instead.

Annotations
@Deprecated
nfirstIndexback to summary
public static int nfirstIndex(long struct)

Unsafe version of firstIndex.

nfirstIndexback to summary
public static void nfirstIndex(long struct, int value)

Unsafe version of firstIndex.

nfirstInstanceback to summary
public static int nfirstInstance(long struct)

Unsafe version of firstInstance.

nfirstInstanceback to summary
public static void nfirstInstance(long struct, int value)

Unsafe version of firstInstance.

nindexCountback to summary
public static int nindexCount(long struct)

Unsafe version of indexCount.

nindexCountback to summary
public static void nindexCount(long struct, int value)

Unsafe version of indexCount.

ninstanceCountback to summary
public static int ninstanceCount(long struct)

Unsafe version of instanceCount.

ninstanceCountback to summary
public static void ninstanceCount(long struct, int value)

Unsafe version of instanceCount.

nvertexOffsetback to summary
public static int nvertexOffset(long struct)

Unsafe version of vertexOffset.

nvertexOffsetback to summary
public static void nvertexOffset(long struct, int value)

Unsafe version of vertexOffset.

setback to summary
public VkDrawIndexedIndirectCommand set(int indexCount, int instanceCount, int firstIndex, int vertexOffset, int firstInstance)

Initializes this struct with the specified values.

setback to summary
public VkDrawIndexedIndirectCommand set(VkDrawIndexedIndirectCommand src)

Copies the specified struct data to this struct.

Parameters
src:VkDrawIndexedIndirectCommand

the source struct

Returns:VkDrawIndexedIndirectCommand

this struct

sizeofback to summary
public int sizeof()

Implements abstract org.lwjgl.system.Struct.sizeof.

Doc from org.lwjgl.system.Struct.sizeof.

Returns sizeof(struct).

Annotations
@Override
vertexOffsetback to summary
public int vertexOffset()

the value added to the vertex index before indexing into the vertex buffer.

Annotations
@NativeType:int32_t
vertexOffsetback to summary
public VkDrawIndexedIndirectCommand vertexOffset(int value)

Sets the specified value to the vertexOffset field.

org.lwjgl.vulkan back to summary

public Class VkDrawIndexedIndirectCommand.Buffer

extends StructBuffer<VkDrawIndexedIndirectCommand, VkDrawIndexedIndirectCommand.Buffer>
implements NativeResource
Class Inheritance
All Implemented Interfaces
org.lwjgl.system.NativeResource, java.lang.AutoCloseable

An array of VkDrawIndexedIndirectCommand structs.

Field Summary

Modifier and TypeField and Description
private static final VkDrawIndexedIndirectCommand

Constructor Summary

AccessConstructor and Description
public
Buffer(ByteBuffer container)

Creates a new VkDrawIndexedIndirectCommand.Buffer instance backed by the specified container.

public
Buffer(long address, int cap)

pack-priv
Buffer(long address, ByteBuffer container, int mark, int pos, int lim, int cap)

Method Summary

Modifier and TypeMethod and Description
public int

Returns:

the value of the VkDrawIndexedIndirectCommand#firstIndex field.
firstIndex
()

public VkDrawIndexedIndirectCommand.Buffer
firstIndex(int value)

Sets the specified value to the VkDrawIndexedIndirectCommand#firstIndex field.

public int
public VkDrawIndexedIndirectCommand.Buffer
firstInstance(int value)

Sets the specified value to the VkDrawIndexedIndirectCommand#firstInstance field.

protected VkDrawIndexedIndirectCommand
public int

Returns:

the value of the VkDrawIndexedIndirectCommand#indexCount field.
indexCount
()

public VkDrawIndexedIndirectCommand.Buffer
indexCount(int value)

Sets the specified value to the VkDrawIndexedIndirectCommand#indexCount field.

public int
public VkDrawIndexedIndirectCommand.Buffer
instanceCount(int value)

Sets the specified value to the VkDrawIndexedIndirectCommand#instanceCount field.

protected VkDrawIndexedIndirectCommand.Buffer
public int

Returns:

the value of the VkDrawIndexedIndirectCommand#vertexOffset field.
vertexOffset
()

public VkDrawIndexedIndirectCommand.Buffer
vertexOffset(int value)

Sets the specified value to the VkDrawIndexedIndirectCommand#vertexOffset field.

Inherited from org.lwjgl.system.StructBuffer:
applyapplyforEachgetgetgetgetiteratorparallelStreamputputsizeofspliteratorstream

Field Detail

ELEMENT_FACTORYback to summary
private static final VkDrawIndexedIndirectCommand ELEMENT_FACTORY

Constructor Detail

Bufferback to summary
public Buffer(ByteBuffer container)

Creates a new VkDrawIndexedIndirectCommand.Buffer instance backed by the specified container.

Changes to the container's content will be visible to the struct buffer instance and vice versa. The two buffers' position, limit, and mark values will be independent. The new buffer's position will be zero, its capacity and its limit will be the number of bytes remaining in this buffer divided by VkDrawIndexedIndirectCommand#SIZEOF, and its mark will be undefined.

The created buffer instance holds a strong reference to the container object.

Bufferback to summary
public Buffer(long address, int cap)
Bufferback to summary
pack-priv Buffer(long address, ByteBuffer container, int mark, int pos, int lim, int cap)

Method Detail

firstIndexback to summary
public int firstIndex()
Returns:int

the value of the VkDrawIndexedIndirectCommand#firstIndex field.

Annotations
@NativeType:uint32_t
firstIndexback to summary
public VkDrawIndexedIndirectCommand.Buffer firstIndex(int value)

Sets the specified value to the VkDrawIndexedIndirectCommand#firstIndex field.

firstInstanceback to summary
public int firstInstance()
Returns:int

the value of the VkDrawIndexedIndirectCommand#firstInstance field.

Annotations
@NativeType:uint32_t
firstInstanceback to summary
public VkDrawIndexedIndirectCommand.Buffer firstInstance(int value)

Sets the specified value to the VkDrawIndexedIndirectCommand#firstInstance field.

getElementFactoryback to summary
protected VkDrawIndexedIndirectCommand getElementFactory()

Implements abstract org.lwjgl.system.StructBuffer.getElementFactory.

Annotations
@Override
indexCountback to summary
public int indexCount()
Returns:int

the value of the VkDrawIndexedIndirectCommand#indexCount field.

Annotations
@NativeType:uint32_t
indexCountback to summary
public VkDrawIndexedIndirectCommand.Buffer indexCount(int value)

Sets the specified value to the VkDrawIndexedIndirectCommand#indexCount field.

instanceCountback to summary
public int instanceCount()
Returns:int

the value of the VkDrawIndexedIndirectCommand#instanceCount field.

Annotations
@NativeType:uint32_t
instanceCountback to summary
public VkDrawIndexedIndirectCommand.Buffer instanceCount(int value)

Sets the specified value to the VkDrawIndexedIndirectCommand#instanceCount field.

selfback to summary
protected VkDrawIndexedIndirectCommand.Buffer self()

Implements abstract org.lwjgl.system.CustomBuffer.self.

Annotations
@Override
vertexOffsetback to summary
public int vertexOffset()
Returns:int

the value of the VkDrawIndexedIndirectCommand#vertexOffset field.

Annotations
@NativeType:int32_t
vertexOffsetback to summary
public VkDrawIndexedIndirectCommand.Buffer vertexOffset(int value)

Sets the specified value to the VkDrawIndexedIndirectCommand#vertexOffset field.