Top Description Inners Fields Constructors Methods
org.lwjgl.vulkan

public Class VkGeometryDataNV

extends Struct<VkGeometryDataNV>
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 geometry in a bottom-level acceleration structure.
Valid Usage (Implicit)
See Also

VkGeometryAABBNV, VkGeometryNV, VkGeometryTrianglesNV

Layout


struct VkGeometryDataNV {
    VkGeometryTrianglesNV triangles;
    VkGeometryAABBNV aabbs;
}

Nested and Inner Type Summary

Modifier and TypeClass and Description
public static class

Field Summary

Modifier and TypeField and Description
public static final int
AABBS

The struct member offsets.

public static final int
ALIGNOF

The struct alignment in bytes.

public static final int
SIZEOF

The struct size in bytes.

public static final int
TRIANGLES

The struct member offsets.

Inherited from org.lwjgl.system.Struct:
containerDEFAULT_ALIGN_ASDEFAULT_PACK_ALIGNMENT

Constructor Summary

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

public
VkGeometryDataNV(ByteBuffer container)

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

Method Summary

Modifier and TypeMethod and Description
public VkGeometryAABBNV
aabbs()

contains axis-aligned bounding box data if VkGeometryNV::geometryType is GEOMETRY_TYPE_AABBS_NV.

public VkGeometryDataNV
aabbs(VkGeometryAABBNV value)

Copies the specified VkGeometryAABBNV to the aabbs field.

public VkGeometryDataNV
aabbs(Consumer<VkGeometryAABBNV> consumer)

Passes the aabbs field to the specified Consumer.

public static VkGeometryDataNV
calloc()

Returns a new VkGeometryDataNV instance allocated with memCalloc.

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

Returns a new VkGeometryDataNV.Buffer instance allocated with memCalloc.

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

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

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

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

public static VkGeometryDataNV
callocStack()

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

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

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

Deprecated
Deprecated for removal in 3.4.0.
protected VkGeometryDataNV
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 VkGeometryDataNV
create()

Returns a new VkGeometryDataNV instance allocated with BufferUtils.

public static VkGeometryDataNV
create(long address)

Returns a new VkGeometryDataNV instance for the specified memory address.

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

Returns a new VkGeometryDataNV.Buffer instance allocated with BufferUtils.

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

Create a VkGeometryDataNV.Buffer instance at the specified memory.

public static VkGeometryDataNV
createSafe(long address)

Like create, but returns null if address is NULL.

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

Like create, but returns null if address is NULL.

public static VkGeometryDataNV
malloc()

Returns a new VkGeometryDataNV instance allocated with memAlloc.

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

Returns a new VkGeometryDataNV.Buffer instance allocated with memAlloc.

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

Returns a new VkGeometryDataNV instance allocated on the specified MemoryStack.

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

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

public static VkGeometryDataNV
mallocStack()

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

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

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

Deprecated
Deprecated for removal in 3.4.0.
public static VkGeometryAABBNV
naabbs(long struct)

Unsafe version of aabbs.

public static void
naabbs(long struct, VkGeometryAABBNV value)

Unsafe version of aabbs.

public static VkGeometryTrianglesNV
ntriangles(long struct)

Unsafe version of triangles.

public static void
ntriangles(long struct, VkGeometryTrianglesNV value)

Unsafe version of triangles.

public VkGeometryDataNV
set(VkGeometryTrianglesNV triangles, VkGeometryAABBNV aabbs)

Initializes this struct with the specified values.

public VkGeometryDataNV

Returns:

this struct
set
(VkGeometryDataNV
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 VkGeometryTrianglesNV
triangles()

contains triangle data if VkGeometryNV::geometryType is GEOMETRY_TYPE_TRIANGLES_NV.

public VkGeometryDataNV
triangles(VkGeometryTrianglesNV value)

Copies the specified VkGeometryTrianglesNV to the triangles field.

public VkGeometryDataNV
triangles(Consumer<VkGeometryTrianglesNV> consumer)

Passes the triangles field to the specified Consumer.

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

AABBSback to summary
public static final int AABBS

The struct member offsets.

ALIGNOFback to summary
public static final int ALIGNOF

The struct alignment in bytes.

SIZEOFback to summary
public static final int SIZEOF

The struct size in bytes.

TRIANGLESback to summary
public static final int TRIANGLES

The struct member offsets.

Constructor Detail

VkGeometryDataNVback to summary
protected VkGeometryDataNV(long address, ByteBuffer container)
VkGeometryDataNVback to summary
public VkGeometryDataNV(ByteBuffer container)

Creates a VkGeometryDataNV 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

aabbsback to summary
public VkGeometryAABBNV aabbs()

contains axis-aligned bounding box data if VkGeometryNV::geometryType is GEOMETRY_TYPE_AABBS_NV.

aabbsback to summary
public VkGeometryDataNV aabbs(VkGeometryAABBNV value)

Copies the specified VkGeometryAABBNV to the aabbs field.

aabbsback to summary
public VkGeometryDataNV aabbs(Consumer<VkGeometryAABBNV> consumer)

Passes the aabbs field to the specified Consumer.

callocback to summary
public static VkGeometryDataNV calloc()

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

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

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

Parameters
capacity:int

the buffer capacity

callocback to summary
public static VkGeometryDataNV calloc(MemoryStack stack)

Returns a new VkGeometryDataNV 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 VkGeometryDataNV.Buffer calloc(int capacity, MemoryStack stack)

Returns a new VkGeometryDataNV.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 VkGeometryDataNV callocStack()

Deprecated

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

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

Deprecated

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

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

Deprecated

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

Annotations
@Deprecated
callocStackback to summary
public static VkGeometryDataNV.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 VkGeometryDataNV 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 VkGeometryDataNV create()

Returns a new VkGeometryDataNV instance allocated with BufferUtils.

createback to summary
public static VkGeometryDataNV create(long address)

Returns a new VkGeometryDataNV instance for the specified memory address.

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

Returns a new VkGeometryDataNV.Buffer instance allocated with BufferUtils.

Parameters
capacity:int

the buffer capacity

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

Create a VkGeometryDataNV.Buffer instance at the specified memory.

Parameters
address:long

the memory address

capacity:int

the buffer capacity

createSafeback to summary
public static VkGeometryDataNV createSafe(long address)

Like create, but returns null if address is NULL.

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

Like create, but returns null if address is NULL.

Annotations
@Nullable
mallocback to summary
public static VkGeometryDataNV malloc()

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

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

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

Parameters
capacity:int

the buffer capacity

mallocback to summary
public static VkGeometryDataNV malloc(MemoryStack stack)

Returns a new VkGeometryDataNV instance allocated on the specified MemoryStack.

Parameters
stack:MemoryStack

the stack from which to allocate

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

Returns a new VkGeometryDataNV.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 VkGeometryDataNV mallocStack()

Deprecated

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

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

Deprecated

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

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

Deprecated

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

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

Deprecated

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

Annotations
@Deprecated
naabbsback to summary
public static VkGeometryAABBNV naabbs(long struct)

Unsafe version of aabbs.

naabbsback to summary
public static void naabbs(long struct, VkGeometryAABBNV value)

Unsafe version of aabbs.

ntrianglesback to summary
public static VkGeometryTrianglesNV ntriangles(long struct)

Unsafe version of triangles.

ntrianglesback to summary
public static void ntriangles(long struct, VkGeometryTrianglesNV value)

Unsafe version of triangles.

setback to summary
public VkGeometryDataNV set(VkGeometryTrianglesNV triangles, VkGeometryAABBNV aabbs)

Initializes this struct with the specified values.

setback to summary
public VkGeometryDataNV set(VkGeometryDataNV src)

Copies the specified struct data to this struct.

Parameters
src:VkGeometryDataNV

the source struct

Returns:VkGeometryDataNV

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
trianglesback to summary
public VkGeometryTrianglesNV triangles()

contains triangle data if VkGeometryNV::geometryType is GEOMETRY_TYPE_TRIANGLES_NV.

trianglesback to summary
public VkGeometryDataNV triangles(VkGeometryTrianglesNV value)

Copies the specified VkGeometryTrianglesNV to the triangles field.

trianglesback to summary
public VkGeometryDataNV triangles(Consumer<VkGeometryTrianglesNV> consumer)

Passes the triangles field to the specified Consumer.

org.lwjgl.vulkan back to summary

public Class VkGeometryDataNV.Buffer

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

An array of VkGeometryDataNV structs.

Field Summary

Modifier and TypeField and Description
private static final VkGeometryDataNV

Constructor Summary

AccessConstructor and Description
public
Buffer(ByteBuffer container)

Creates a new VkGeometryDataNV.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 VkGeometryAABBNV

Returns:

a VkGeometryAABBNV view of the VkGeometryDataNV#aabbs field.
aabbs
()

public VkGeometryDataNV.Buffer
aabbs(VkGeometryAABBNV value)

Copies the specified VkGeometryAABBNV to the VkGeometryDataNV#aabbs field.

public VkGeometryDataNV.Buffer
aabbs(Consumer<VkGeometryAABBNV> consumer)

Passes the VkGeometryDataNV#aabbs field to the specified Consumer.

protected VkGeometryDataNV
protected VkGeometryDataNV.Buffer
public VkGeometryTrianglesNV
public VkGeometryDataNV.Buffer
public VkGeometryDataNV.Buffer
triangles(Consumer<VkGeometryTrianglesNV> consumer)

Passes the VkGeometryDataNV#triangles field to the specified Consumer.

Inherited from org.lwjgl.system.StructBuffer:
applyapplyforEachgetgetgetgetiteratorparallelStreamputputsizeofspliteratorstream

Field Detail

ELEMENT_FACTORYback to summary
private static final VkGeometryDataNV ELEMENT_FACTORY

Constructor Detail

Bufferback to summary
public Buffer(ByteBuffer container)

Creates a new VkGeometryDataNV.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 VkGeometryDataNV#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

aabbsback to summary
public VkGeometryAABBNV aabbs()
Returns:VkGeometryAABBNV

a VkGeometryAABBNV view of the VkGeometryDataNV#aabbs field.

aabbsback to summary
public VkGeometryDataNV.Buffer aabbs(VkGeometryAABBNV value)

Copies the specified VkGeometryAABBNV to the VkGeometryDataNV#aabbs field.

aabbsback to summary
public VkGeometryDataNV.Buffer aabbs(Consumer<VkGeometryAABBNV> consumer)

Passes the VkGeometryDataNV#aabbs field to the specified Consumer.

getElementFactoryback to summary
protected VkGeometryDataNV getElementFactory()

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

Annotations
@Override
selfback to summary
protected VkGeometryDataNV.Buffer self()

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

Annotations
@Override
trianglesback to summary
public VkGeometryTrianglesNV triangles()
Returns:VkGeometryTrianglesNV

a VkGeometryTrianglesNV view of the VkGeometryDataNV#triangles field.

trianglesback to summary
public VkGeometryDataNV.Buffer triangles(VkGeometryTrianglesNV value)

Copies the specified VkGeometryTrianglesNV to the VkGeometryDataNV#triangles field.

trianglesback to summary
public VkGeometryDataNV.Buffer triangles(Consumer<VkGeometryTrianglesNV> consumer)

Passes the VkGeometryDataNV#triangles field to the specified Consumer.