Package org.lwjgl.vulkan
Class VkBufferImageCopy2
java.lang.Object
org.lwjgl.system.Pointer.Default
org.lwjgl.system.Struct<VkBufferImageCopy2>
org.lwjgl.vulkan.VkBufferImageCopy2
- All Implemented Interfaces:
AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
- Direct Known Subclasses:
VkBufferImageCopy2KHR
public class VkBufferImageCopy2
extends org.lwjgl.system.Struct<VkBufferImageCopy2>
implements org.lwjgl.system.NativeResource
Structure specifying a buffer image copy operation.
Description
This structure is functionally identical to VkBufferImageCopy, but adds sType and pNext parameters, allowing it to be more easily extended.
Valid Usage
bufferRowLengthmust be 0, or greater than or equal to thewidthmember ofimageExtentbufferImageHeightmust be 0, or greater than or equal to theheightmember ofimageExtent- The
aspectMaskmember ofimageSubresourcemust only have a single bit set imageExtent.widthmust not be 0imageExtent.heightmust not be 0imageExtent.depthmust not be 0
Valid Usage (Implicit)
sTypemust beSTRUCTURE_TYPE_BUFFER_IMAGE_COPY_2pNextmust beNULLor a pointer to a valid instance ofVkCopyCommandTransformInfoQCOM- The
sTypevalue of each struct in thepNextchain must be unique imageSubresourcemust be a validVkImageSubresourceLayersstructure
See Also
VkCopyBufferToImageInfo2, VkCopyImageToBufferInfo2, VkExtent3D, VkImageSubresourceLayers, VkOffset3D
Layout
struct VkBufferImageCopy2 {
VkStructureType sType();
void const * pNext();
VkDeviceSize bufferOffset();
uint32_t bufferRowLength();
uint32_t bufferImageHeight();
VkImageSubresourceLayers imageSubresource();
VkOffset3D imageOffset();
VkExtent3D imageExtent();
}-
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 member offsets.static final intThe struct member offsets.static final intThe struct member offsets.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
ConstructorsConstructorDescriptionVkBufferImageCopy2(ByteBuffer container) Creates aVkBufferImageCopy2instance at the current position of the specifiedByteBuffercontainer. -
Method Summary
Modifier and TypeMethodDescriptionintseebufferRowLengthbufferImageHeight(int value) Sets the specified value to thebufferImageHeight()field.longthe 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.intbufferRowLengthandbufferImageHeightspecify 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 VkBufferImageCopy2calloc()Returns a newVkBufferImageCopy2instance allocated withmemCalloc.static VkBufferImageCopy2.Buffercalloc(int capacity) Returns a newVkBufferImageCopy2.Bufferinstance allocated withmemCalloc.static VkBufferImageCopy2.Buffercalloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkBufferImageCopy2.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkBufferImageCopy2calloc(org.lwjgl.system.MemoryStack stack) Returns a newVkBufferImageCopy2instance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkBufferImageCopy2create()Returns a newVkBufferImageCopy2instance allocated withBufferUtils.static VkBufferImageCopy2.Buffercreate(int capacity) Returns a newVkBufferImageCopy2.Bufferinstance allocated withBufferUtils.static VkBufferImageCopy2create(long address) Returns a newVkBufferImageCopy2instance for the specified memory address.static VkBufferImageCopy2.Buffercreate(long address, int capacity) Create aVkBufferImageCopy2.Bufferinstance at the specified memory.static @Nullable VkBufferImageCopy2createSafe(long address) static @Nullable VkBufferImageCopy2.BuffercreateSafe(long address, int capacity) the size in texels of the image to copy inwidth,heightanddepth.imageExtent(Consumer<VkExtent3D> consumer) Passes theimageExtent()field to the specifiedConsumer.imageExtent(VkExtent3D value) Copies the specifiedVkExtent3Dto theimageExtent()field.selects the initialx,y,zoffsets 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 specifiedVkOffset3Dto theimageOffset()field.aVkImageSubresourceLayersused 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 specifiedVkImageSubresourceLayersto theimageSubresource()field.static VkBufferImageCopy2malloc()Returns a newVkBufferImageCopy2instance allocated withmemAlloc.static VkBufferImageCopy2.Buffermalloc(int capacity) Returns a newVkBufferImageCopy2.Bufferinstance allocated withmemAlloc.static VkBufferImageCopy2.Buffermalloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkBufferImageCopy2.Bufferinstance allocated on the specifiedMemoryStack.static VkBufferImageCopy2malloc(org.lwjgl.system.MemoryStack stack) Returns a newVkBufferImageCopy2instance allocated on the specifiedMemoryStack.static intnbufferImageHeight(long struct) Unsafe version ofbufferImageHeight().static voidnbufferImageHeight(long struct, int value) Unsafe version ofbufferImageHeight.static longnbufferOffset(long struct) Unsafe version ofbufferOffset().static voidnbufferOffset(long struct, long value) Unsafe version ofbufferOffset.static intnbufferRowLength(long struct) Unsafe version ofbufferRowLength().static voidnbufferRowLength(long struct, int value) Unsafe version ofbufferRowLength.static VkExtent3DnimageExtent(long struct) Unsafe version ofimageExtent().static voidnimageExtent(long struct, VkExtent3D value) Unsafe version ofimageExtent.static VkOffset3DnimageOffset(long struct) Unsafe version ofimageOffset().static voidnimageOffset(long struct, VkOffset3D value) Unsafe version ofimageOffset.static VkImageSubresourceLayersnimageSubresource(long struct) Unsafe version ofimageSubresource().static voidnimageSubresource(long struct, VkImageSubresourceLayers value) Unsafe version ofimageSubresource.static longnpNext(long struct) Unsafe version ofpNext().static voidnpNext(long struct, long value) Unsafe version ofpNext.static intnsType(long struct) Unsafe version ofsType().static voidnsType(long struct, int value) Unsafe version ofsType.longpNext()NULLor a pointer to a structure extending this structure.pNext(long value) Sets the specified value to thepNext()field.Prepends the specifiedVkCopyCommandTransformInfoQCOMvalue to thepNextchain.set(int sType, long pNext, long bufferOffset, int bufferRowLength, int bufferImageHeight, VkImageSubresourceLayers imageSubresource, VkOffset3D imageOffset, VkExtent3D imageExtent) Initializes this struct with the specified values.set(VkBufferImageCopy2 src) Copies the specified struct data to this struct.intsizeof()intsType()aVkStructureTypevalue identifying this structure.sType(int value) Sets the specified value to thesType()field.Sets theSTRUCTURE_TYPE_BUFFER_IMAGE_COPY_2value to thesType()field.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. -
STYPE
public static final int STYPEThe struct member offsets. -
PNEXT
public static final int PNEXTThe struct member offsets. -
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
-
VkBufferImageCopy2
Creates aVkBufferImageCopy2instance 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<VkBufferImageCopy2>
-
sType
public int sType()aVkStructureTypevalue identifying this structure. -
pNext
public long pNext()NULLor a pointer to a structure extending this structure. -
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()bufferRowLengthandbufferImageHeightspecify 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
aVkImageSubresourceLayersused to specify the specific image subresources of the image used for the source or destination image data. -
imageOffset
selects the initialx,y,zoffsets in texels of the sub-region of the source or destination image data. -
imageExtent
the size in texels of the image to copy inwidth,heightanddepth. -
sType
Sets the specified value to thesType()field. -
sType$Default
Sets theSTRUCTURE_TYPE_BUFFER_IMAGE_COPY_2value to thesType()field. -
pNext
Sets the specified value to thepNext()field. -
pNext
Prepends the specifiedVkCopyCommandTransformInfoQCOMvalue to thepNextchain. -
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 specifiedVkImageSubresourceLayersto theimageSubresource()field. -
imageSubresource
Passes theimageSubresource()field to the specifiedConsumer. -
imageOffset
Copies the specifiedVkOffset3Dto theimageOffset()field. -
imageOffset
Passes theimageOffset()field to the specifiedConsumer. -
imageExtent
Copies the specifiedVkExtent3Dto theimageExtent()field. -
imageExtent
Passes theimageExtent()field to the specifiedConsumer. -
set
public VkBufferImageCopy2 set(int sType, long pNext, 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 newVkBufferImageCopy2instance allocated withmemAlloc. The instance must be explicitly freed. -
calloc
Returns a newVkBufferImageCopy2instance allocated withmemCalloc. The instance must be explicitly freed. -
create
Returns a newVkBufferImageCopy2instance allocated withBufferUtils. -
create
Returns a newVkBufferImageCopy2instance for the specified memory address. -
createSafe
-
malloc
Returns a newVkBufferImageCopy2.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
Returns a newVkBufferImageCopy2.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
Returns a newVkBufferImageCopy2.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
Create aVkBufferImageCopy2.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
-
malloc
Returns a newVkBufferImageCopy2instance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
calloc
Returns a newVkBufferImageCopy2instance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
malloc
Returns a newVkBufferImageCopy2.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
capacity- the buffer capacitystack- the stack from which to allocate
-
calloc
Returns a newVkBufferImageCopy2.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
capacity- the buffer capacitystack- the stack from which to allocate
-
nsType
public static int nsType(long struct) Unsafe version ofsType(). -
npNext
public static long npNext(long struct) Unsafe version ofpNext(). -
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(). -
nsType
public static void nsType(long struct, int value) Unsafe version ofsType. -
npNext
public static void npNext(long struct, long value) Unsafe version ofpNext. -
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.
-