Package org.lwjgl.util.vma
Class VmaDefragmentationMove
java.lang.Object
org.lwjgl.system.Pointer.Default
org.lwjgl.system.Struct<VmaDefragmentationMove>
org.lwjgl.util.vma.VmaDefragmentationMove
- All Implemented Interfaces:
AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
public class VmaDefragmentationMove
extends org.lwjgl.system.Struct<VmaDefragmentationMove>
implements org.lwjgl.system.NativeResource
Single move of an allocation to be done for defragmentation.
Layout
struct VmaDefragmentationMove {
VmaDefragmentationMoveOperation operation();
VmaAllocation srcAllocation();
VmaAllocation dstTmpAllocation();
}-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from class org.lwjgl.system.Struct
org.lwjgl.system.Struct.StructValidationNested classes/interfaces inherited from interface org.lwjgl.system.Pointer
org.lwjgl.system.Pointer.Default -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intThe struct alignment in bytes.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct size in bytes.static final intThe struct member offsets.Fields inherited from interface org.lwjgl.system.Pointer
BITS32, BITS64, CLONG_SHIFT, CLONG_SIZE, POINTER_SHIFT, POINTER_SIZE -
Constructor Summary
ConstructorsConstructorDescriptionVmaDefragmentationMove(ByteBuffer container) Creates aVmaDefragmentationMoveinstance at the current position of the specifiedByteBuffercontainer. -
Method Summary
Modifier and TypeMethodDescriptionstatic VmaDefragmentationMovecalloc()Returns a newVmaDefragmentationMoveinstance allocated withmemCalloc.calloc(int capacity) Returns a newVmaDefragmentationMove.Bufferinstance allocated withmemCalloc.calloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVmaDefragmentationMove.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VmaDefragmentationMovecalloc(org.lwjgl.system.MemoryStack stack) Returns a newVmaDefragmentationMoveinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VmaDefragmentationMovecreate()Returns a newVmaDefragmentationMoveinstance allocated withBufferUtils.create(int capacity) Returns a newVmaDefragmentationMove.Bufferinstance allocated withBufferUtils.static VmaDefragmentationMovecreate(long address) Returns a newVmaDefragmentationMoveinstance for the specified memory address.create(long address, int capacity) Create aVmaDefragmentationMove.Bufferinstance at the specified memory.static @Nullable VmaDefragmentationMovecreateSafe(long address) static @Nullable VmaDefragmentationMove.BuffercreateSafe(long address, int capacity) longtemporary allocation pointing to destination memory that will replacesrcAllocation.dstTmpAllocation(long value) Sets the specified value to thedstTmpAllocation()field.static VmaDefragmentationMovemalloc()Returns a newVmaDefragmentationMoveinstance allocated withmemAlloc.malloc(int capacity) Returns a newVmaDefragmentationMove.Bufferinstance allocated withmemAlloc.malloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVmaDefragmentationMove.Bufferinstance allocated on the specifiedMemoryStack.static VmaDefragmentationMovemalloc(org.lwjgl.system.MemoryStack stack) Returns a newVmaDefragmentationMoveinstance allocated on the specifiedMemoryStack.static longndstTmpAllocation(long struct) Unsafe version ofdstTmpAllocation().static voidndstTmpAllocation(long struct, long value) Unsafe version ofdstTmpAllocation.static intnoperation(long struct) Unsafe version ofoperation().static voidnoperation(long struct, int value) Unsafe version ofoperation.static longnsrcAllocation(long struct) Unsafe version ofsrcAllocation().static voidnsrcAllocation(long struct, long value) Unsafe version ofsrcAllocation.intoperation to be performed on the allocation byEndDefragmentationPass.operation(int value) Sets the specified value to theoperation()field.set(int operation, long srcAllocation, long dstTmpAllocation) Initializes this struct with the specified values.Copies the specified struct data to this struct.intsizeof()longallocation that should be movedsrcAllocation(long value) Sets the specified value to thesrcAllocation()field.static voidvalidate(long struct) Validates pointer members that should not beNULL.Methods inherited from class org.lwjgl.system.Struct
clear, free, isNull, validate, validateMethods inherited from class org.lwjgl.system.Pointer.Default
address, equals, hashCode, toStringMethods inherited from interface org.lwjgl.system.NativeResource
close, free
-
Field Details
-
SIZEOF
public static final int SIZEOFThe struct size in bytes. -
ALIGNOF
public static final int ALIGNOFThe struct alignment in bytes. -
OPERATION
public static final int OPERATIONThe struct member offsets. -
SRCALLOCATION
public static final int SRCALLOCATIONThe struct member offsets. -
DSTTMPALLOCATION
public static final int DSTTMPALLOCATIONThe struct member offsets.
-
-
Constructor Details
-
VmaDefragmentationMove
Creates aVmaDefragmentationMoveinstance at the current position of the specifiedByteBuffercontainer. 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 Details
-
sizeof
public int sizeof()- Specified by:
sizeofin classorg.lwjgl.system.Struct<VmaDefragmentationMove>
-
operation
public int operation()operation to be performed on the allocation byEndDefragmentationPass.Default value is
DEFRAGMENTATION_MOVE_OPERATION_COPY. You can modify it. -
srcAllocation
public long srcAllocation()allocation that should be moved -
dstTmpAllocation
public long dstTmpAllocation()temporary allocation pointing to destination memory that will replacesrcAllocation.Warning: Do not store this allocation in your data structures! It exists only temporarily, for the duration of the defragmentation pass, to be used for binding new buffer/image to the destination memory using e.g.
BindBufferMemory.EndDefragmentationPasswill destroy it and makesrcAllocationpoint to this memory. -
operation
Sets the specified value to theoperation()field. -
srcAllocation
Sets the specified value to thesrcAllocation()field. -
dstTmpAllocation
Sets the specified value to thedstTmpAllocation()field. -
set
Initializes this struct with the specified values. -
set
Copies the specified struct data to this struct.- Parameters:
src- the source struct- Returns:
- this struct
-
malloc
Returns a newVmaDefragmentationMoveinstance allocated withmemAlloc. The instance must be explicitly freed. -
calloc
Returns a newVmaDefragmentationMoveinstance allocated withmemCalloc. The instance must be explicitly freed. -
create
Returns a newVmaDefragmentationMoveinstance allocated withBufferUtils. -
create
Returns a newVmaDefragmentationMoveinstance for the specified memory address. -
createSafe
-
malloc
Returns a newVmaDefragmentationMove.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
Returns a newVmaDefragmentationMove.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
Returns a newVmaDefragmentationMove.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
Create aVmaDefragmentationMove.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
-
malloc
Returns a newVmaDefragmentationMoveinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
calloc
Returns a newVmaDefragmentationMoveinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
malloc
public static VmaDefragmentationMove.Buffer malloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVmaDefragmentationMove.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
capacity- the buffer capacitystack- the stack from which to allocate
-
calloc
public static VmaDefragmentationMove.Buffer calloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVmaDefragmentationMove.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
capacity- the buffer capacitystack- the stack from which to allocate
-
noperation
public static int noperation(long struct) Unsafe version ofoperation(). -
nsrcAllocation
public static long nsrcAllocation(long struct) Unsafe version ofsrcAllocation(). -
ndstTmpAllocation
public static long ndstTmpAllocation(long struct) Unsafe version ofdstTmpAllocation(). -
noperation
public static void noperation(long struct, int value) Unsafe version ofoperation. -
nsrcAllocation
public static void nsrcAllocation(long struct, long value) Unsafe version ofsrcAllocation. -
ndstTmpAllocation
public static void ndstTmpAllocation(long struct, long value) Unsafe version ofdstTmpAllocation. -
validate
public static void validate(long struct) Validates pointer members that should not beNULL.- Parameters:
struct- the struct to validate
-