Package org.lwjgl.vulkan
Class VkMemoryRequirements
- java.lang.Object
-
- org.lwjgl.system.Pointer.Default
-
- org.lwjgl.system.Struct
-
- org.lwjgl.vulkan.VkMemoryRequirements
-
- All Implemented Interfaces:
java.lang.AutoCloseable
,org.lwjgl.system.NativeResource
,org.lwjgl.system.Pointer
public class VkMemoryRequirements extends org.lwjgl.system.Struct implements org.lwjgl.system.NativeResource
Structure specifying memory requirements.Member documentation
size
– the size, in bytes, of the memory allocation required: for the resource.alignment
– the alignment, in bytes, of the offset within the allocation required: for the resource.memoryTypeBits
– a bitmask and contains one bit set for every supported memory type for the resource. Biti
is set if and only if the memory typei
in theVkPhysicalDeviceMemoryProperties
structure for the physical device is supported for the resource.
Layout
struct VkMemoryRequirements { VkDeviceSize size; VkDeviceSize alignment; uint32_t memoryTypeBits; }
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
VkMemoryRequirements.Buffer
An array ofVkMemoryRequirements
structs.
-
Field Summary
Fields Modifier and Type Field Description static int
ALIGNMENT
The struct member offsets.static int
ALIGNOF
The struct alignment in bytes.static int
MEMORYTYPEBITS
SIZEThe struct member offsets.static int
SIZEOF
The struct size in bytes.
-
Constructor Summary
Constructors Constructor Description VkMemoryRequirements(java.nio.ByteBuffer container)
Creates aVkMemoryRequirements
instance at the current position of the specifiedByteBuffer
container.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description long
alignment()
Returns the value of thealignment
field.static VkMemoryRequirements
calloc()
Returns a newVkMemoryRequirements
instance allocated withmemCalloc
.static VkMemoryRequirements.Buffer
calloc(int capacity)
Returns a newVkMemoryRequirements.Buffer
instance allocated withmemCalloc
.static VkMemoryRequirements
callocStack()
Returns a newVkMemoryRequirements
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.static VkMemoryRequirements.Buffer
callocStack(int capacity)
Returns a newVkMemoryRequirements.Buffer
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.static VkMemoryRequirements.Buffer
callocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkMemoryRequirements.Buffer
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.static VkMemoryRequirements
callocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkMemoryRequirements
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.static VkMemoryRequirements
create()
Returns a newVkMemoryRequirements
instance allocated withBufferUtils
.static VkMemoryRequirements.Buffer
create(int capacity)
Returns a newVkMemoryRequirements.Buffer
instance allocated withBufferUtils
.static VkMemoryRequirements
create(long address)
Returns a newVkMemoryRequirements
instance for the specified memory address.static VkMemoryRequirements.Buffer
create(long address, int capacity)
Create aVkMemoryRequirements.Buffer
instance at the specified memory.static VkMemoryRequirements
createSafe(long address)
static VkMemoryRequirements.Buffer
createSafe(long address, int capacity)
static VkMemoryRequirements
malloc()
Returns a newVkMemoryRequirements
instance allocated withmemAlloc
.static VkMemoryRequirements.Buffer
malloc(int capacity)
Returns a newVkMemoryRequirements.Buffer
instance allocated withmemAlloc
.static VkMemoryRequirements
mallocStack()
Returns a newVkMemoryRequirements
instance allocated on the thread-localMemoryStack
.static VkMemoryRequirements.Buffer
mallocStack(int capacity)
Returns a newVkMemoryRequirements.Buffer
instance allocated on the thread-localMemoryStack
.static VkMemoryRequirements.Buffer
mallocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkMemoryRequirements.Buffer
instance allocated on the specifiedMemoryStack
.static VkMemoryRequirements
mallocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkMemoryRequirements
instance allocated on the specifiedMemoryStack
.int
memoryTypeBits()
Returns the value of thememoryTypeBits
field.static long
nalignment(long struct)
Unsafe version ofalignment()
.static int
nmemoryTypeBits(long struct)
Unsafe version ofmemoryTypeBits()
.static long
nsize(long struct)
Unsafe version ofsize()
.long
size()
Returns the value of thesize
field.int
sizeof()
-
-
-
Constructor Detail
-
VkMemoryRequirements
public VkMemoryRequirements(java.nio.ByteBuffer container)
Creates aVkMemoryRequirements
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
-
size
public long size()
Returns the value of thesize
field.
-
alignment
public long alignment()
Returns the value of thealignment
field.
-
memoryTypeBits
public int memoryTypeBits()
Returns the value of thememoryTypeBits
field.
-
malloc
public static VkMemoryRequirements malloc()
Returns a newVkMemoryRequirements
instance allocated withmemAlloc
. The instance must be explicitly freed.
-
calloc
public static VkMemoryRequirements calloc()
Returns a newVkMemoryRequirements
instance allocated withmemCalloc
. The instance must be explicitly freed.
-
create
public static VkMemoryRequirements create()
Returns a newVkMemoryRequirements
instance allocated withBufferUtils
.
-
create
public static VkMemoryRequirements create(long address)
Returns a newVkMemoryRequirements
instance for the specified memory address.
-
createSafe
@Nullable public static VkMemoryRequirements createSafe(long address)
-
malloc
public static VkMemoryRequirements.Buffer malloc(int capacity)
Returns a newVkMemoryRequirements.Buffer
instance allocated withmemAlloc
. The instance must be explicitly freed.- Parameters:
capacity
- the buffer capacity
-
calloc
public static VkMemoryRequirements.Buffer calloc(int capacity)
Returns a newVkMemoryRequirements.Buffer
instance allocated withmemCalloc
. The instance must be explicitly freed.- Parameters:
capacity
- the buffer capacity
-
create
public static VkMemoryRequirements.Buffer create(int capacity)
Returns a newVkMemoryRequirements.Buffer
instance allocated withBufferUtils
.- Parameters:
capacity
- the buffer capacity
-
create
public static VkMemoryRequirements.Buffer create(long address, int capacity)
Create aVkMemoryRequirements.Buffer
instance at the specified memory.- Parameters:
address
- the memory addresscapacity
- the buffer capacity
-
createSafe
@Nullable public static VkMemoryRequirements.Buffer createSafe(long address, int capacity)
-
mallocStack
public static VkMemoryRequirements mallocStack()
Returns a newVkMemoryRequirements
instance allocated on the thread-localMemoryStack
.
-
callocStack
public static VkMemoryRequirements callocStack()
Returns a newVkMemoryRequirements
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.
-
mallocStack
public static VkMemoryRequirements mallocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkMemoryRequirements
instance allocated on the specifiedMemoryStack
.- Parameters:
stack
- the stack from which to allocate
-
callocStack
public static VkMemoryRequirements callocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkMemoryRequirements
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.- Parameters:
stack
- the stack from which to allocate
-
mallocStack
public static VkMemoryRequirements.Buffer mallocStack(int capacity)
Returns a newVkMemoryRequirements.Buffer
instance allocated on the thread-localMemoryStack
.- Parameters:
capacity
- the buffer capacity
-
callocStack
public static VkMemoryRequirements.Buffer callocStack(int capacity)
Returns a newVkMemoryRequirements.Buffer
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.- Parameters:
capacity
- the buffer capacity
-
mallocStack
public static VkMemoryRequirements.Buffer mallocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkMemoryRequirements.Buffer
instance allocated on the specifiedMemoryStack
.- Parameters:
stack
- the stack from which to allocatecapacity
- the buffer capacity
-
callocStack
public static VkMemoryRequirements.Buffer callocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkMemoryRequirements.Buffer
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.- Parameters:
stack
- the stack from which to allocatecapacity
- the buffer capacity
-
nsize
public static long nsize(long struct)
Unsafe version ofsize()
.
-
nalignment
public static long nalignment(long struct)
Unsafe version ofalignment()
.
-
nmemoryTypeBits
public static int nmemoryTypeBits(long struct)
Unsafe version ofmemoryTypeBits()
.
-
-