public class VkBindBufferMemoryInfo
extends org.lwjgl.system.Struct
implements org.lwjgl.system.NativeResource
buffer must not already be backed by a memory objectbuffer must not have been created with any sparse memory binding flagsmemoryOffset must be less than the size of memorymemory must have been allocated using one of the memory types allowed in the memoryTypeBits member of the VkMemoryRequirements structure returned from a call to vkGetBufferMemoryRequirements with buffermemoryOffset must be an integer multiple of the alignment member of the VkMemoryRequirements structure returned from a call to vkGetBufferMemoryRequirements with buffersize member of the VkMemoryRequirements structure returned from a call to vkGetBufferMemoryRequirements with buffer must be less than or equal to the size of memory minus memoryOffsetbuffer requires a dedicated allocation(as reported by GetBufferMemoryRequirements2 in VkMemoryDedicatedRequirements::requiresDedicatedAllocation for buffer), memory must have been created with VkMemoryDedicatedAllocateInfo::buffer equal to buffer and memoryOffset must be zeroVkMemoryAllocateInfo provided when memory was allocated included a VkMemoryDedicatedAllocateInfo structure in its pNext chain, and VkMemoryDedicatedAllocateInfo::buffer was not NULL_HANDLE, then buffer must equal VkMemoryDedicatedAllocateInfo::buffer and memoryOffset must be zero.buffer was created with VkDedicatedAllocationBufferCreateInfoNV::dedicatedAllocation equal to TRUE, memory must have been created with VkDedicatedAllocationMemoryAllocateInfoNV::buffer equal to buffer and memoryOffset must be zeropNext chain includes a VkBindBufferMemoryDeviceGroupInfo structure, all instances of memory specified by VkBindBufferMemoryDeviceGroupInfo::pDeviceIndices must have been allocatedVkExportMemoryAllocateInfo::handleTypes used to allocate memory is not 0, it must include at least one of the handles set in VkExternalMemoryBufferCreateInfo::handleTypes when buffer was createdmemory was created by a memory import operation, the external handle type of the imported memory must also have been set in VkExternalMemoryBufferCreateInfo::handleTypes when buffer was createdsType must be STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFOpNext must be NULL or a pointer to a valid instance of VkBindBufferMemoryDeviceGroupInfobuffer must be a valid VkBuffer handlememory must be a valid VkDeviceMemory handlebuffer, and memory must have been created, allocated, or retrieved from the same VkDeviceBindBufferMemory2, BindBufferMemory2KHR
sType – the type of this structure.pNext – NULL or a pointer to an extension-specific structure.buffer – the buffer to be attached to memory.memory – a VkDeviceMemory object describing the device memory to attach.memoryOffset – the start offset of the region of memory which is to be bound to the buffer. The number of bytes returned in the VkMemoryRequirements::size member in memory, starting from memoryOffset bytes, will be bound to the specified buffer.
struct VkBindBufferMemoryInfo {
VkStructureType sType;
void const * pNext;
VkBuffer buffer;
VkDeviceMemory memory;
VkDeviceSize memoryOffset;
}| Modifier and Type | Class and Description |
|---|---|
static class |
VkBindBufferMemoryInfo.Buffer
An array of
VkBindBufferMemoryInfo structs. |
| Modifier and Type | Field and Description |
|---|---|
static int |
ALIGNOF
The struct alignment in bytes.
|
static int |
BUFFER
The struct member offsets.
|
static int |
MEMORY
The struct member offsets.
|
static int |
MEMORYOFFSET
The struct member offsets.
|
static int |
PNEXT
The struct member offsets.
|
static int |
SIZEOF
The struct size in bytes.
|
static int |
STYPE
The struct member offsets.
|
| Constructor and Description |
|---|
VkBindBufferMemoryInfo(java.nio.ByteBuffer container)
Creates a
VkBindBufferMemoryInfo instance at the current position of the specified ByteBuffer container. |
| Modifier and Type | Method and Description |
|---|---|
long |
buffer()
Returns the value of the
buffer field. |
VkBindBufferMemoryInfo |
buffer(long value)
Sets the specified value to the
buffer field. |
static VkBindBufferMemoryInfo |
calloc()
Returns a new
VkBindBufferMemoryInfo instance allocated with memCalloc. |
static VkBindBufferMemoryInfo.Buffer |
calloc(int capacity)
Returns a new
VkBindBufferMemoryInfo.Buffer instance allocated with memCalloc. |
static VkBindBufferMemoryInfo |
callocStack()
Returns a new
VkBindBufferMemoryInfo instance allocated on the thread-local MemoryStack and initializes all its bits to zero. |
static VkBindBufferMemoryInfo.Buffer |
callocStack(int capacity)
Returns a new
VkBindBufferMemoryInfo.Buffer instance allocated on the thread-local MemoryStack and initializes all its bits to zero. |
static VkBindBufferMemoryInfo.Buffer |
callocStack(int capacity,
org.lwjgl.system.MemoryStack stack)
Returns a new
VkBindBufferMemoryInfo.Buffer instance allocated on the specified MemoryStack and initializes all its bits to zero. |
static VkBindBufferMemoryInfo |
callocStack(org.lwjgl.system.MemoryStack stack)
Returns a new
VkBindBufferMemoryInfo instance allocated on the specified MemoryStack and initializes all its bits to zero. |
static VkBindBufferMemoryInfo |
create()
Returns a new
VkBindBufferMemoryInfo instance allocated with BufferUtils. |
static VkBindBufferMemoryInfo.Buffer |
create(int capacity)
Returns a new
VkBindBufferMemoryInfo.Buffer instance allocated with BufferUtils. |
static VkBindBufferMemoryInfo |
create(long address)
Returns a new
VkBindBufferMemoryInfo instance for the specified memory address. |
static VkBindBufferMemoryInfo.Buffer |
create(long address,
int capacity)
Create a
VkBindBufferMemoryInfo.Buffer instance at the specified memory. |
static VkBindBufferMemoryInfo |
createSafe(long address)
|
static VkBindBufferMemoryInfo.Buffer |
createSafe(long address,
int capacity)
|
static VkBindBufferMemoryInfo |
malloc()
Returns a new
VkBindBufferMemoryInfo instance allocated with memAlloc. |
static VkBindBufferMemoryInfo.Buffer |
malloc(int capacity)
Returns a new
VkBindBufferMemoryInfo.Buffer instance allocated with memAlloc. |
static VkBindBufferMemoryInfo |
mallocStack()
Returns a new
VkBindBufferMemoryInfo instance allocated on the thread-local MemoryStack. |
static VkBindBufferMemoryInfo.Buffer |
mallocStack(int capacity)
Returns a new
VkBindBufferMemoryInfo.Buffer instance allocated on the thread-local MemoryStack. |
static VkBindBufferMemoryInfo.Buffer |
mallocStack(int capacity,
org.lwjgl.system.MemoryStack stack)
Returns a new
VkBindBufferMemoryInfo.Buffer instance allocated on the specified MemoryStack. |
static VkBindBufferMemoryInfo |
mallocStack(org.lwjgl.system.MemoryStack stack)
Returns a new
VkBindBufferMemoryInfo instance allocated on the specified MemoryStack. |
long |
memory()
Returns the value of the
memory field. |
VkBindBufferMemoryInfo |
memory(long value)
Sets the specified value to the
memory field. |
long |
memoryOffset()
Returns the value of the
memoryOffset field. |
VkBindBufferMemoryInfo |
memoryOffset(long value)
Sets the specified value to the
memoryOffset field. |
static long |
nbuffer(long struct)
Unsafe version of
buffer(). |
static void |
nbuffer(long struct,
long value)
Unsafe version of
buffer. |
static long |
nmemory(long struct)
Unsafe version of
memory(). |
static void |
nmemory(long struct,
long value)
Unsafe version of
memory. |
static long |
nmemoryOffset(long struct)
Unsafe version of
memoryOffset(). |
static void |
nmemoryOffset(long struct,
long value)
Unsafe version of
memoryOffset. |
static long |
npNext(long struct)
Unsafe version of
pNext(). |
static void |
npNext(long struct,
long value)
Unsafe version of
pNext. |
static int |
nsType(long struct)
Unsafe version of
sType(). |
static void |
nsType(long struct,
int value)
Unsafe version of
sType. |
long |
pNext()
Returns the value of the
pNext field. |
VkBindBufferMemoryInfo |
pNext(long value)
Sets the specified value to the
pNext field. |
VkBindBufferMemoryInfo |
set(int sType,
long pNext,
long buffer,
long memory,
long memoryOffset)
Initializes this struct with the specified values.
|
VkBindBufferMemoryInfo |
set(VkBindBufferMemoryInfo src)
Copies the specified struct data to this struct.
|
int |
sizeof() |
int |
sType()
Returns the value of the
sType field. |
VkBindBufferMemoryInfo |
sType(int value)
Sets the specified value to the
sType field. |
public static final int SIZEOF
public static final int ALIGNOF
public static final int STYPE
public static final int PNEXT
public static final int BUFFER
public static final int MEMORY
public static final int MEMORYOFFSET
public VkBindBufferMemoryInfo(java.nio.ByteBuffer container)
VkBindBufferMemoryInfo 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.
public int sizeof()
sizeof in class org.lwjgl.system.Structpublic int sType()
sType field.public long pNext()
pNext field.public long buffer()
buffer field.public long memory()
memory field.public long memoryOffset()
memoryOffset field.public VkBindBufferMemoryInfo sType(int value)
sType field.public VkBindBufferMemoryInfo pNext(long value)
pNext field.public VkBindBufferMemoryInfo buffer(long value)
buffer field.public VkBindBufferMemoryInfo memory(long value)
memory field.public VkBindBufferMemoryInfo memoryOffset(long value)
memoryOffset field.public VkBindBufferMemoryInfo set(int sType, long pNext, long buffer, long memory, long memoryOffset)
public VkBindBufferMemoryInfo set(VkBindBufferMemoryInfo src)
src - the source structpublic static VkBindBufferMemoryInfo malloc()
VkBindBufferMemoryInfo instance allocated with memAlloc. The instance must be explicitly freed.public static VkBindBufferMemoryInfo calloc()
VkBindBufferMemoryInfo instance allocated with memCalloc. The instance must be explicitly freed.public static VkBindBufferMemoryInfo create()
VkBindBufferMemoryInfo instance allocated with BufferUtils.public static VkBindBufferMemoryInfo create(long address)
VkBindBufferMemoryInfo instance for the specified memory address.@Nullable public static VkBindBufferMemoryInfo createSafe(long address)
public static VkBindBufferMemoryInfo.Buffer malloc(int capacity)
VkBindBufferMemoryInfo.Buffer instance allocated with memAlloc. The instance must be explicitly freed.capacity - the buffer capacitypublic static VkBindBufferMemoryInfo.Buffer calloc(int capacity)
VkBindBufferMemoryInfo.Buffer instance allocated with memCalloc. The instance must be explicitly freed.capacity - the buffer capacitypublic static VkBindBufferMemoryInfo.Buffer create(int capacity)
VkBindBufferMemoryInfo.Buffer instance allocated with BufferUtils.capacity - the buffer capacitypublic static VkBindBufferMemoryInfo.Buffer create(long address, int capacity)
VkBindBufferMemoryInfo.Buffer instance at the specified memory.address - the memory addresscapacity - the buffer capacity@Nullable public static VkBindBufferMemoryInfo.Buffer createSafe(long address, int capacity)
public static VkBindBufferMemoryInfo mallocStack()
VkBindBufferMemoryInfo instance allocated on the thread-local MemoryStack.public static VkBindBufferMemoryInfo callocStack()
VkBindBufferMemoryInfo instance allocated on the thread-local MemoryStack and initializes all its bits to zero.public static VkBindBufferMemoryInfo mallocStack(org.lwjgl.system.MemoryStack stack)
VkBindBufferMemoryInfo instance allocated on the specified MemoryStack.stack - the stack from which to allocatepublic static VkBindBufferMemoryInfo callocStack(org.lwjgl.system.MemoryStack stack)
VkBindBufferMemoryInfo instance allocated on the specified MemoryStack and initializes all its bits to zero.stack - the stack from which to allocatepublic static VkBindBufferMemoryInfo.Buffer mallocStack(int capacity)
VkBindBufferMemoryInfo.Buffer instance allocated on the thread-local MemoryStack.capacity - the buffer capacitypublic static VkBindBufferMemoryInfo.Buffer callocStack(int capacity)
VkBindBufferMemoryInfo.Buffer instance allocated on the thread-local MemoryStack and initializes all its bits to zero.capacity - the buffer capacitypublic static VkBindBufferMemoryInfo.Buffer mallocStack(int capacity, org.lwjgl.system.MemoryStack stack)
VkBindBufferMemoryInfo.Buffer instance allocated on the specified MemoryStack.stack - the stack from which to allocatecapacity - the buffer capacitypublic static VkBindBufferMemoryInfo.Buffer callocStack(int capacity, org.lwjgl.system.MemoryStack stack)
VkBindBufferMemoryInfo.Buffer instance allocated on the specified MemoryStack and initializes all its bits to zero.stack - the stack from which to allocatecapacity - the buffer capacitypublic static int nsType(long struct)
sType().public static long npNext(long struct)
pNext().public static long nbuffer(long struct)
buffer().public static long nmemory(long struct)
memory().public static long nmemoryOffset(long struct)
memoryOffset().public static void nsType(long struct,
int value)
sType.public static void npNext(long struct,
long value)
pNext.public static void nbuffer(long struct,
long value)
buffer.public static void nmemory(long struct,
long value)
memory.public static void nmemoryOffset(long struct,
long value)
memoryOffset.Copyright LWJGL. All Rights Reserved. License terms.