Class VkBindBufferMemoryDeviceGroupInfo
- java.lang.Object
-
- org.lwjgl.system.Pointer.Default
-
- org.lwjgl.system.Struct
-
- org.lwjgl.vulkan.VkBindBufferMemoryDeviceGroupInfo
-
- All Implemented Interfaces:
java.lang.AutoCloseable
,org.lwjgl.system.NativeResource
,org.lwjgl.system.Pointer
- Direct Known Subclasses:
VkBindBufferMemoryDeviceGroupInfoKHR
public class VkBindBufferMemoryDeviceGroupInfo extends org.lwjgl.system.Struct implements org.lwjgl.system.NativeResource
Structure specifying device within a group to bind to.Description
The
VkBindBufferMemoryDeviceGroupInfo
structure is defined as:sType
is the type of this structure.pNext
isNULL
or a pointer to an extension-specific structure.deviceIndexCount
is the number of elements inpDeviceIndices
.pDeviceIndices
is a pointer to an array of device indices.
If
deviceIndexCount
is greater than zero, then on device indexi
the buffer is attached to the instance ofmemory
on the physical device with device indexpDeviceIndices[i]
.If
deviceIndexCount
is zero andmemory
comes from a memory heap with theMEMORY_HEAP_MULTI_INSTANCE_BIT
bit set, then it is as ifpDeviceIndices
contains consecutive indices from zero to the number of physical devices in the logical device, minus one. In other words, by default each physical device attaches to its own instance ofmemory
.If
deviceIndexCount
is zero andmemory
comes from a memory heap without theMEMORY_HEAP_MULTI_INSTANCE_BIT
bit set, then it is as ifpDeviceIndices
contains an array of zeros. In other words, by default each physical device attaches to instance zero.Valid Usage
deviceIndexCount
must either be zero or equal to the number of physical devices in the logical device- All elements of
pDeviceIndices
must be valid device indices
Valid Usage (Implicit)
sType
must beSTRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO
- If
deviceIndexCount
is not 0,pDeviceIndices
must be a valid pointer to an array ofdeviceIndexCount
uint32_t
values
Layout
struct VkBindBufferMemoryDeviceGroupInfo { VkStructureType sType; void const * pNext; uint32_t deviceIndexCount; uint32_t const * pDeviceIndices; }
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
VkBindBufferMemoryDeviceGroupInfo.Buffer
An array ofVkBindBufferMemoryDeviceGroupInfo
structs.
-
Field Summary
Fields Modifier and Type Field Description static int
ALIGNOF
The struct alignment in bytes.static int
DEVICEINDEXCOUNT
PDEVICEINDICES
PNEXTThe struct member offsets.static int
SIZEOF
The struct size in bytes.static int
STYPE
The struct member offsets.
-
Constructor Summary
Constructors Constructor Description VkBindBufferMemoryDeviceGroupInfo(java.nio.ByteBuffer container)
Creates aVkBindBufferMemoryDeviceGroupInfo
instance at the current position of the specifiedByteBuffer
container.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static VkBindBufferMemoryDeviceGroupInfo
calloc()
Returns a newVkBindBufferMemoryDeviceGroupInfo
instance allocated withmemCalloc
.static VkBindBufferMemoryDeviceGroupInfo.Buffer
calloc(int capacity)
Returns a newVkBindBufferMemoryDeviceGroupInfo.Buffer
instance allocated withmemCalloc
.static VkBindBufferMemoryDeviceGroupInfo
callocStack()
Returns a newVkBindBufferMemoryDeviceGroupInfo
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.static VkBindBufferMemoryDeviceGroupInfo.Buffer
callocStack(int capacity)
Returns a newVkBindBufferMemoryDeviceGroupInfo.Buffer
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.static VkBindBufferMemoryDeviceGroupInfo.Buffer
callocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkBindBufferMemoryDeviceGroupInfo.Buffer
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.static VkBindBufferMemoryDeviceGroupInfo
callocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkBindBufferMemoryDeviceGroupInfo
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.static VkBindBufferMemoryDeviceGroupInfo
create()
Returns a newVkBindBufferMemoryDeviceGroupInfo
instance allocated withBufferUtils
.static VkBindBufferMemoryDeviceGroupInfo.Buffer
create(int capacity)
Returns a newVkBindBufferMemoryDeviceGroupInfo.Buffer
instance allocated withBufferUtils
.static VkBindBufferMemoryDeviceGroupInfo
create(long address)
Returns a newVkBindBufferMemoryDeviceGroupInfo
instance for the specified memory address.static VkBindBufferMemoryDeviceGroupInfo.Buffer
create(long address, int capacity)
Create aVkBindBufferMemoryDeviceGroupInfo.Buffer
instance at the specified memory.static VkBindBufferMemoryDeviceGroupInfo
createSafe(long address)
static VkBindBufferMemoryDeviceGroupInfo.Buffer
createSafe(long address, int capacity)
int
deviceIndexCount()
Returns the value of thedeviceIndexCount
field.static VkBindBufferMemoryDeviceGroupInfo
malloc()
Returns a newVkBindBufferMemoryDeviceGroupInfo
instance allocated withmemAlloc
.static VkBindBufferMemoryDeviceGroupInfo.Buffer
malloc(int capacity)
Returns a newVkBindBufferMemoryDeviceGroupInfo.Buffer
instance allocated withmemAlloc
.static VkBindBufferMemoryDeviceGroupInfo
mallocStack()
Returns a newVkBindBufferMemoryDeviceGroupInfo
instance allocated on the thread-localMemoryStack
.static VkBindBufferMemoryDeviceGroupInfo.Buffer
mallocStack(int capacity)
Returns a newVkBindBufferMemoryDeviceGroupInfo.Buffer
instance allocated on the thread-localMemoryStack
.static VkBindBufferMemoryDeviceGroupInfo.Buffer
mallocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkBindBufferMemoryDeviceGroupInfo.Buffer
instance allocated on the specifiedMemoryStack
.static VkBindBufferMemoryDeviceGroupInfo
mallocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkBindBufferMemoryDeviceGroupInfo
instance allocated on the specifiedMemoryStack
.static int
ndeviceIndexCount(long struct)
Unsafe version ofdeviceIndexCount()
.static void
ndeviceIndexCount(long struct, int value)
Sets the specified value to thedeviceIndexCount
field of the specifiedstruct
.static java.nio.IntBuffer
npDeviceIndices(long struct)
Unsafe version ofpDeviceIndices
.static void
npDeviceIndices(long struct, java.nio.IntBuffer value)
Unsafe version ofpDeviceIndices
.static long
npNext(long struct)
Unsafe version ofpNext()
.static void
npNext(long struct, long value)
Unsafe version ofpNext
.static int
nsType(long struct)
Unsafe version ofsType()
.static void
nsType(long struct, int value)
Unsafe version ofsType
.java.nio.IntBuffer
pDeviceIndices()
Returns aIntBuffer
view of the data pointed to by thepDeviceIndices
field.VkBindBufferMemoryDeviceGroupInfo
pDeviceIndices(java.nio.IntBuffer value)
Sets the address of the specifiedIntBuffer
to thepDeviceIndices
field.long
pNext()
Returns the value of thepNext
field.VkBindBufferMemoryDeviceGroupInfo
pNext(long value)
Sets the specified value to thepNext
field.VkBindBufferMemoryDeviceGroupInfo
set(int sType, long pNext, java.nio.IntBuffer pDeviceIndices)
Initializes this struct with the specified values.VkBindBufferMemoryDeviceGroupInfo
set(VkBindBufferMemoryDeviceGroupInfo src)
Copies the specified struct data to this struct.int
sizeof()
int
sType()
Returns the value of thesType
field.VkBindBufferMemoryDeviceGroupInfo
sType(int value)
Sets the specified value to thesType
field.static void
validate(long struct)
Validates pointer members that should not beNULL
.static void
validate(long array, int count)
Callsvalidate(long)
for each struct contained in the specified struct array.
-
-
-
Constructor Detail
-
VkBindBufferMemoryDeviceGroupInfo
public VkBindBufferMemoryDeviceGroupInfo(java.nio.ByteBuffer container)
Creates aVkBindBufferMemoryDeviceGroupInfo
instance at the current position of the specifiedByteBuffer
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
-
sizeof
public int sizeof()
- Specified by:
sizeof
in classorg.lwjgl.system.Struct
-
sType
public int sType()
Returns the value of thesType
field.
-
pNext
public long pNext()
Returns the value of thepNext
field.
-
deviceIndexCount
public int deviceIndexCount()
Returns the value of thedeviceIndexCount
field.
-
pDeviceIndices
@Nullable public java.nio.IntBuffer pDeviceIndices()
Returns aIntBuffer
view of the data pointed to by thepDeviceIndices
field.
-
sType
public VkBindBufferMemoryDeviceGroupInfo sType(int value)
Sets the specified value to thesType
field.
-
pNext
public VkBindBufferMemoryDeviceGroupInfo pNext(long value)
Sets the specified value to thepNext
field.
-
pDeviceIndices
public VkBindBufferMemoryDeviceGroupInfo pDeviceIndices(@Nullable java.nio.IntBuffer value)
Sets the address of the specifiedIntBuffer
to thepDeviceIndices
field.
-
set
public VkBindBufferMemoryDeviceGroupInfo set(int sType, long pNext, @Nullable java.nio.IntBuffer pDeviceIndices)
Initializes this struct with the specified values.
-
set
public VkBindBufferMemoryDeviceGroupInfo set(VkBindBufferMemoryDeviceGroupInfo src)
Copies the specified struct data to this struct.- Parameters:
src
- the source struct- Returns:
- this struct
-
malloc
public static VkBindBufferMemoryDeviceGroupInfo malloc()
Returns a newVkBindBufferMemoryDeviceGroupInfo
instance allocated withmemAlloc
. The instance must be explicitly freed.
-
calloc
public static VkBindBufferMemoryDeviceGroupInfo calloc()
Returns a newVkBindBufferMemoryDeviceGroupInfo
instance allocated withmemCalloc
. The instance must be explicitly freed.
-
create
public static VkBindBufferMemoryDeviceGroupInfo create()
Returns a newVkBindBufferMemoryDeviceGroupInfo
instance allocated withBufferUtils
.
-
create
public static VkBindBufferMemoryDeviceGroupInfo create(long address)
Returns a newVkBindBufferMemoryDeviceGroupInfo
instance for the specified memory address.
-
createSafe
@Nullable public static VkBindBufferMemoryDeviceGroupInfo createSafe(long address)
-
malloc
public static VkBindBufferMemoryDeviceGroupInfo.Buffer malloc(int capacity)
Returns a newVkBindBufferMemoryDeviceGroupInfo.Buffer
instance allocated withmemAlloc
. The instance must be explicitly freed.- Parameters:
capacity
- the buffer capacity
-
calloc
public static VkBindBufferMemoryDeviceGroupInfo.Buffer calloc(int capacity)
Returns a newVkBindBufferMemoryDeviceGroupInfo.Buffer
instance allocated withmemCalloc
. The instance must be explicitly freed.- Parameters:
capacity
- the buffer capacity
-
create
public static VkBindBufferMemoryDeviceGroupInfo.Buffer create(int capacity)
Returns a newVkBindBufferMemoryDeviceGroupInfo.Buffer
instance allocated withBufferUtils
.- Parameters:
capacity
- the buffer capacity
-
create
public static VkBindBufferMemoryDeviceGroupInfo.Buffer create(long address, int capacity)
Create aVkBindBufferMemoryDeviceGroupInfo.Buffer
instance at the specified memory.- Parameters:
address
- the memory addresscapacity
- the buffer capacity
-
createSafe
@Nullable public static VkBindBufferMemoryDeviceGroupInfo.Buffer createSafe(long address, int capacity)
-
mallocStack
public static VkBindBufferMemoryDeviceGroupInfo mallocStack()
Returns a newVkBindBufferMemoryDeviceGroupInfo
instance allocated on the thread-localMemoryStack
.
-
callocStack
public static VkBindBufferMemoryDeviceGroupInfo callocStack()
Returns a newVkBindBufferMemoryDeviceGroupInfo
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.
-
mallocStack
public static VkBindBufferMemoryDeviceGroupInfo mallocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkBindBufferMemoryDeviceGroupInfo
instance allocated on the specifiedMemoryStack
.- Parameters:
stack
- the stack from which to allocate
-
callocStack
public static VkBindBufferMemoryDeviceGroupInfo callocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkBindBufferMemoryDeviceGroupInfo
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.- Parameters:
stack
- the stack from which to allocate
-
mallocStack
public static VkBindBufferMemoryDeviceGroupInfo.Buffer mallocStack(int capacity)
Returns a newVkBindBufferMemoryDeviceGroupInfo.Buffer
instance allocated on the thread-localMemoryStack
.- Parameters:
capacity
- the buffer capacity
-
callocStack
public static VkBindBufferMemoryDeviceGroupInfo.Buffer callocStack(int capacity)
Returns a newVkBindBufferMemoryDeviceGroupInfo.Buffer
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.- Parameters:
capacity
- the buffer capacity
-
mallocStack
public static VkBindBufferMemoryDeviceGroupInfo.Buffer mallocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkBindBufferMemoryDeviceGroupInfo.Buffer
instance allocated on the specifiedMemoryStack
.- Parameters:
stack
- the stack from which to allocatecapacity
- the buffer capacity
-
callocStack
public static VkBindBufferMemoryDeviceGroupInfo.Buffer callocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkBindBufferMemoryDeviceGroupInfo.Buffer
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.- Parameters:
stack
- the stack from which to allocatecapacity
- the buffer capacity
-
nsType
public static int nsType(long struct)
Unsafe version ofsType()
.
-
npNext
public static long npNext(long struct)
Unsafe version ofpNext()
.
-
ndeviceIndexCount
public static int ndeviceIndexCount(long struct)
Unsafe version ofdeviceIndexCount()
.
-
npDeviceIndices
@Nullable public static java.nio.IntBuffer npDeviceIndices(long struct)
Unsafe version ofpDeviceIndices
.
-
nsType
public static void nsType(long struct, int value)
Unsafe version ofsType
.
-
npNext
public static void npNext(long struct, long value)
Unsafe version ofpNext
.
-
ndeviceIndexCount
public static void ndeviceIndexCount(long struct, int value)
Sets the specified value to thedeviceIndexCount
field of the specifiedstruct
.
-
npDeviceIndices
public static void npDeviceIndices(long struct, @Nullable java.nio.IntBuffer value)
Unsafe version ofpDeviceIndices
.
-
validate
public static void validate(long struct)
Validates pointer members that should not beNULL
.- Parameters:
struct
- the struct to validate
-
validate
public static void validate(long array, int count)
Callsvalidate(long)
for each struct contained in the specified struct array.- Parameters:
array
- the struct array to validatecount
- the number of structs inarray
-
-