Package org.lwjgl.vulkan
Class VkBufferImageCopy
- All Implemented Interfaces:
AutoCloseable
,NativeResource
,Pointer
Structure specifying a buffer image copy operation.
Valid Usage
bufferRowLength
must be 0, or greater than or equal to thewidth
member ofimageExtent
bufferImageHeight
must be 0, or greater than or equal to theheight
member ofimageExtent
- The
aspectMask
member ofimageSubresource
must only have a single bit set imageExtent.width
must not be 0imageExtent.height
must not be 0imageExtent.depth
must not be 0
Valid Usage (Implicit)
imageSubresource
must be a validVkImageSubresourceLayers
structure
See Also
VkExtent3D
, VkImageSubresourceLayers
, VkOffset3D
, CmdCopyBufferToImage
, CmdCopyImageToBuffer
Layout
struct VkBufferImageCopy {
VkDeviceSize bufferOffset()
;
uint32_t bufferRowLength()
;
uint32_t bufferImageHeight()
;
VkImageSubresourceLayers
imageSubresource()
;
VkOffset3D
imageOffset()
;
VkExtent3D
imageExtent()
;
}
-
Nested Class Summary
Nested classes/interfaces inherited from class org.lwjgl.system.Struct
Struct.StructValidation
Nested classes/interfaces inherited from interface org.lwjgl.system.Pointer
Pointer.Default
-
Field Summary
Modifier and TypeFieldDescriptionstatic final int
The struct alignment in bytes.static final int
The struct member offsets.static final int
The struct member offsets.static final int
The struct member offsets.static final int
The struct member offsets.static final int
The struct member offsets.static final int
The struct member offsets.static final int
The struct size in bytes.Fields inherited from interface org.lwjgl.system.Pointer
BITS32, BITS64, CLONG_SHIFT, CLONG_SIZE, POINTER_SHIFT, POINTER_SIZE
-
Constructor Summary
ConstructorDescriptionVkBufferImageCopy
(ByteBuffer container) Creates aVkBufferImageCopy
instance at the current position of the specifiedByteBuffer
container. -
Method Summary
Modifier and TypeMethodDescriptionint
seebufferRowLength
bufferImageHeight
(int value) Sets the specified value to thebufferImageHeight()
field.long
the offset in bytes from the start of the buffer object where the image data is copied from or to.bufferOffset
(long value) Sets the specified value to thebufferOffset()
field.int
bufferRowLength
andbufferImageHeight
specify in texels a subregion of a larger two- or three-dimensional image in buffer memory, and control the addressing calculations.bufferRowLength
(int value) Sets the specified value to thebufferRowLength()
field.static VkBufferImageCopy
calloc()
Returns a newVkBufferImageCopy
instance allocated withmemCalloc
.static VkBufferImageCopy.Buffer
calloc
(int capacity) Returns a newVkBufferImageCopy.Buffer
instance allocated withmemCalloc
.static VkBufferImageCopy.Buffer
calloc
(int capacity, MemoryStack stack) Returns a newVkBufferImageCopy.Buffer
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.static VkBufferImageCopy
calloc
(MemoryStack stack) Returns a newVkBufferImageCopy
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.static VkBufferImageCopy
Deprecated.static VkBufferImageCopy.Buffer
callocStack
(int capacity) Deprecated.static VkBufferImageCopy.Buffer
callocStack
(int capacity, MemoryStack stack) Deprecated.static VkBufferImageCopy
callocStack
(MemoryStack stack) Deprecated.static VkBufferImageCopy
create()
Returns a newVkBufferImageCopy
instance allocated withBufferUtils
.static VkBufferImageCopy.Buffer
create
(int capacity) Returns a newVkBufferImageCopy.Buffer
instance allocated withBufferUtils
.static VkBufferImageCopy
create
(long address) Returns a newVkBufferImageCopy
instance for the specified memory address.static VkBufferImageCopy.Buffer
create
(long address, int capacity) Create aVkBufferImageCopy.Buffer
instance at the specified memory.static VkBufferImageCopy
createSafe
(long address) static VkBufferImageCopy.Buffer
createSafe
(long address, int capacity) the size in texels of the image to copy inwidth
,height
anddepth
.imageExtent
(Consumer<VkExtent3D> consumer) Passes theimageExtent()
field to the specifiedConsumer
.imageExtent
(VkExtent3D value) Copies the specifiedVkExtent3D
to theimageExtent()
field.selects the initialx
,y
,z
offsets in texels of the sub-region of the source or destination image data.imageOffset
(Consumer<VkOffset3D> consumer) Passes theimageOffset()
field to the specifiedConsumer
.imageOffset
(VkOffset3D value) Copies the specifiedVkOffset3D
to theimageOffset()
field.aVkImageSubresourceLayers
used to specify the specific image subresources of the image used for the source or destination image data.imageSubresource
(Consumer<VkImageSubresourceLayers> consumer) Passes theimageSubresource()
field to the specifiedConsumer
.Copies the specifiedVkImageSubresourceLayers
to theimageSubresource()
field.static VkBufferImageCopy
malloc()
Returns a newVkBufferImageCopy
instance allocated withmemAlloc
.static VkBufferImageCopy.Buffer
malloc
(int capacity) Returns a newVkBufferImageCopy.Buffer
instance allocated withmemAlloc
.static VkBufferImageCopy.Buffer
malloc
(int capacity, MemoryStack stack) Returns a newVkBufferImageCopy.Buffer
instance allocated on the specifiedMemoryStack
.static VkBufferImageCopy
malloc
(MemoryStack stack) Returns a newVkBufferImageCopy
instance allocated on the specifiedMemoryStack
.static VkBufferImageCopy
Deprecated.static VkBufferImageCopy.Buffer
mallocStack
(int capacity) Deprecated.static VkBufferImageCopy.Buffer
mallocStack
(int capacity, MemoryStack stack) Deprecated.static VkBufferImageCopy
mallocStack
(MemoryStack stack) Deprecated.static int
nbufferImageHeight
(long struct) Unsafe version ofbufferImageHeight()
.static void
nbufferImageHeight
(long struct, int value) Unsafe version ofbufferImageHeight
.static long
nbufferOffset
(long struct) Unsafe version ofbufferOffset()
.static void
nbufferOffset
(long struct, long value) Unsafe version ofbufferOffset
.static int
nbufferRowLength
(long struct) Unsafe version ofbufferRowLength()
.static void
nbufferRowLength
(long struct, int value) Unsafe version ofbufferRowLength
.static VkExtent3D
nimageExtent
(long struct) Unsafe version ofimageExtent()
.static void
nimageExtent
(long struct, VkExtent3D value) Unsafe version ofimageExtent
.static VkOffset3D
nimageOffset
(long struct) Unsafe version ofimageOffset()
.static void
nimageOffset
(long struct, VkOffset3D value) Unsafe version ofimageOffset
.static VkImageSubresourceLayers
nimageSubresource
(long struct) Unsafe version ofimageSubresource()
.static void
nimageSubresource
(long struct, VkImageSubresourceLayers value) Unsafe version ofimageSubresource
.set
(long bufferOffset, int bufferRowLength, int bufferImageHeight, VkImageSubresourceLayers imageSubresource, VkOffset3D imageOffset, VkExtent3D imageExtent) Initializes this struct with the specified values.set
(VkBufferImageCopy src) Copies the specified struct data to this struct.int
sizeof()
Returnssizeof(struct)
.Methods inherited from class org.lwjgl.system.Pointer.Default
address, equals, hashCode, toString
Methods 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. -
BUFFEROFFSET
public static final int BUFFEROFFSETThe struct member offsets. -
BUFFERROWLENGTH
public static final int BUFFERROWLENGTHThe struct member offsets. -
BUFFERIMAGEHEIGHT
public static final int BUFFERIMAGEHEIGHTThe struct member offsets. -
IMAGESUBRESOURCE
public static final int IMAGESUBRESOURCEThe struct member offsets. -
IMAGEOFFSET
public static final int IMAGEOFFSETThe struct member offsets. -
IMAGEEXTENT
public static final int IMAGEEXTENTThe struct member offsets.
-
-
Constructor Details
-
VkBufferImageCopy
Creates aVkBufferImageCopy
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 Details
-
sizeof
public int sizeof()Description copied from class:Struct
Returnssizeof(struct)
.- Specified by:
sizeof
in classStruct<VkBufferImageCopy>
-
bufferOffset
public long bufferOffset()the offset in bytes from the start of the buffer object where the image data is copied from or to. -
bufferRowLength
public int bufferRowLength()bufferRowLength
andbufferImageHeight
specify in texels a subregion of a larger two- or three-dimensional image in buffer memory, and control the addressing calculations. If either of these values is zero, that aspect of the buffer memory is considered to be tightly packed according to theimageExtent
. -
bufferImageHeight
public int bufferImageHeight()seebufferRowLength
-
imageSubresource
aVkImageSubresourceLayers
used to specify the specific image subresources of the image used for the source or destination image data. -
imageOffset
selects the initialx
,y
,z
offsets in texels of the sub-region of the source or destination image data. -
imageExtent
the size in texels of the image to copy inwidth
,height
anddepth
. -
bufferOffset
Sets the specified value to thebufferOffset()
field. -
bufferRowLength
Sets the specified value to thebufferRowLength()
field. -
bufferImageHeight
Sets the specified value to thebufferImageHeight()
field. -
imageSubresource
Copies the specifiedVkImageSubresourceLayers
to theimageSubresource()
field. -
imageSubresource
Passes theimageSubresource()
field to the specifiedConsumer
. -
imageOffset
Copies the specifiedVkOffset3D
to theimageOffset()
field. -
imageOffset
Passes theimageOffset()
field to the specifiedConsumer
. -
imageExtent
Copies the specifiedVkExtent3D
to theimageExtent()
field. -
imageExtent
Passes theimageExtent()
field to the specifiedConsumer
. -
set
public VkBufferImageCopy set(long bufferOffset, int bufferRowLength, int bufferImageHeight, VkImageSubresourceLayers imageSubresource, VkOffset3D imageOffset, VkExtent3D imageExtent) 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 newVkBufferImageCopy
instance allocated withmemAlloc
. The instance must be explicitly freed. -
calloc
Returns a newVkBufferImageCopy
instance allocated withmemCalloc
. The instance must be explicitly freed. -
create
Returns a newVkBufferImageCopy
instance allocated withBufferUtils
. -
create
Returns a newVkBufferImageCopy
instance for the specified memory address. -
createSafe
-
malloc
Returns a newVkBufferImageCopy.Buffer
instance allocated withmemAlloc
. The instance must be explicitly freed.- Parameters:
capacity
- the buffer capacity
-
calloc
Returns a newVkBufferImageCopy.Buffer
instance allocated withmemCalloc
. The instance must be explicitly freed.- Parameters:
capacity
- the buffer capacity
-
create
Returns a newVkBufferImageCopy.Buffer
instance allocated withBufferUtils
.- Parameters:
capacity
- the buffer capacity
-
create
Create aVkBufferImageCopy.Buffer
instance at the specified memory.- Parameters:
address
- the memory addresscapacity
- the buffer capacity
-
createSafe
-
mallocStack
Deprecated.Deprecated for removal in 3.4.0. Usemalloc(MemoryStack)
instead. -
callocStack
Deprecated.Deprecated for removal in 3.4.0. Usecalloc(MemoryStack)
instead. -
mallocStack
Deprecated.Deprecated for removal in 3.4.0. Usemalloc(MemoryStack)
instead. -
callocStack
Deprecated.Deprecated for removal in 3.4.0. Usecalloc(MemoryStack)
instead. -
mallocStack
Deprecated.Deprecated for removal in 3.4.0. Usemalloc(int, MemoryStack)
instead. -
callocStack
Deprecated.Deprecated for removal in 3.4.0. Usecalloc(int, MemoryStack)
instead. -
mallocStack
Deprecated.Deprecated for removal in 3.4.0. Usemalloc(int, MemoryStack)
instead. -
callocStack
Deprecated.Deprecated for removal in 3.4.0. Usecalloc(int, MemoryStack)
instead. -
malloc
Returns a newVkBufferImageCopy
instance allocated on the specifiedMemoryStack
.- Parameters:
stack
- the stack from which to allocate
-
calloc
Returns a newVkBufferImageCopy
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.- Parameters:
stack
- the stack from which to allocate
-
malloc
Returns a newVkBufferImageCopy.Buffer
instance allocated on the specifiedMemoryStack
.- Parameters:
capacity
- the buffer capacitystack
- the stack from which to allocate
-
calloc
Returns a newVkBufferImageCopy.Buffer
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.- Parameters:
capacity
- the buffer capacitystack
- the stack from which to allocate
-
nbufferOffset
public static long nbufferOffset(long struct) Unsafe version ofbufferOffset()
. -
nbufferRowLength
public static int nbufferRowLength(long struct) Unsafe version ofbufferRowLength()
. -
nbufferImageHeight
public static int nbufferImageHeight(long struct) Unsafe version ofbufferImageHeight()
. -
nimageSubresource
Unsafe version ofimageSubresource()
. -
nimageOffset
Unsafe version ofimageOffset()
. -
nimageExtent
Unsafe version ofimageExtent()
. -
nbufferOffset
public static void nbufferOffset(long struct, long value) Unsafe version ofbufferOffset
. -
nbufferRowLength
public static void nbufferRowLength(long struct, int value) Unsafe version ofbufferRowLength
. -
nbufferImageHeight
public static void nbufferImageHeight(long struct, int value) Unsafe version ofbufferImageHeight
. -
nimageSubresource
Unsafe version ofimageSubresource
. -
nimageOffset
Unsafe version ofimageOffset
. -
nimageExtent
Unsafe version ofimageExtent
.
-