Package org.lwjgl.vulkan
Class VkPhysicalDeviceImageDrmFormatModifierInfoEXT
- java.lang.Object
-
- org.lwjgl.system.Pointer.Default
-
- org.lwjgl.system.Struct
-
- org.lwjgl.vulkan.VkPhysicalDeviceImageDrmFormatModifierInfoEXT
-
- All Implemented Interfaces:
java.lang.AutoCloseable
,org.lwjgl.system.NativeResource
,org.lwjgl.system.Pointer
public class VkPhysicalDeviceImageDrmFormatModifierInfoEXT extends org.lwjgl.system.Struct implements org.lwjgl.system.NativeResource
Structure specifying a DRM format modifier as image creation parameter.Description
If the
drmFormatModifier
is incompatible with the parameters specified inVkPhysicalDeviceImageFormatInfo2
and itspNext
chain, thenGetPhysicalDeviceImageFormatProperties2
returnsERROR_FORMAT_NOT_SUPPORTED
. The implementation must support the query of anydrmFormatModifier
, including unknown and invalid modifier values.Valid Usage
- If
sharingMode
isSHARING_MODE_CONCURRENT
, thenpQueueFamilyIndices
must be a valid pointer to an array ofqueueFamilyIndexCount
uint32_t
values. - If
sharingMode
isSHARING_MODE_CONCURRENT
, thenqueueFamilyIndexCount
must be greater than 1. - If
sharingMode
isSHARING_MODE_CONCURRENT
, each element ofpQueueFamilyIndices
must be unique and must be less than thepQueueFamilyPropertyCount
returned byGetPhysicalDeviceQueueFamilyProperties2
for thephysicalDevice
that was used to createdevice
.
Valid Usage (Implicit)
sType
must beSTRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT
sharingMode
must be a validVkSharingMode
value
Member documentation
sType
– the type of this structure.pNext
–NULL
or a pointer to an extension-specific structure.drmFormatModifier
– the image’s Linux DRM format modifier, corresponding toVkImageDrmFormatModifierExplicitCreateInfoEXT
::modifier
or toVkImageDrmFormatModifierListCreateInfoEXT
::pModifiers
.sharingMode
– specifies how the image will be accessed by multiple queue families.queueFamilyIndexCount
– the number of entries in thepQueueFamilyIndices
array.pQueueFamilyIndices
– a list of queue families that will access the image (ignored ifsharingMode
is notSHARING_MODE_CONCURRENT
).
Layout
struct VkPhysicalDeviceImageDrmFormatModifierInfoEXT { VkStructureType sType; void const * pNext; uint64_t drmFormatModifier; VkSharingMode sharingMode; uint32_t queueFamilyIndexCount; uint32_t const * pQueueFamilyIndices; }
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
VkPhysicalDeviceImageDrmFormatModifierInfoEXT.Buffer
An array ofVkPhysicalDeviceImageDrmFormatModifierInfoEXT
structs.
-
Field Summary
Fields Modifier and Type Field Description static int
ALIGNOF
The struct alignment in bytes.static int
DRMFORMATMODIFIER
PNEXT
PQUEUEFAMILYINDICES
QUEUEFAMILYINDEXCOUNT
SHARINGMODEThe struct member offsets.static int
SIZEOF
The struct size in bytes.static int
STYPE
The struct member offsets.
-
Constructor Summary
Constructors Constructor Description VkPhysicalDeviceImageDrmFormatModifierInfoEXT(java.nio.ByteBuffer container)
Creates aVkPhysicalDeviceImageDrmFormatModifierInfoEXT
instance at the current position of the specifiedByteBuffer
container.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static VkPhysicalDeviceImageDrmFormatModifierInfoEXT
calloc()
Returns a newVkPhysicalDeviceImageDrmFormatModifierInfoEXT
instance allocated withmemCalloc
.static VkPhysicalDeviceImageDrmFormatModifierInfoEXT.Buffer
calloc(int capacity)
Returns a newVkPhysicalDeviceImageDrmFormatModifierInfoEXT.Buffer
instance allocated withmemCalloc
.static VkPhysicalDeviceImageDrmFormatModifierInfoEXT
callocStack()
Returns a newVkPhysicalDeviceImageDrmFormatModifierInfoEXT
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.static VkPhysicalDeviceImageDrmFormatModifierInfoEXT.Buffer
callocStack(int capacity)
Returns a newVkPhysicalDeviceImageDrmFormatModifierInfoEXT.Buffer
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.static VkPhysicalDeviceImageDrmFormatModifierInfoEXT.Buffer
callocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkPhysicalDeviceImageDrmFormatModifierInfoEXT.Buffer
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.static VkPhysicalDeviceImageDrmFormatModifierInfoEXT
callocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkPhysicalDeviceImageDrmFormatModifierInfoEXT
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.static VkPhysicalDeviceImageDrmFormatModifierInfoEXT
create()
Returns a newVkPhysicalDeviceImageDrmFormatModifierInfoEXT
instance allocated withBufferUtils
.static VkPhysicalDeviceImageDrmFormatModifierInfoEXT.Buffer
create(int capacity)
Returns a newVkPhysicalDeviceImageDrmFormatModifierInfoEXT.Buffer
instance allocated withBufferUtils
.static VkPhysicalDeviceImageDrmFormatModifierInfoEXT
create(long address)
Returns a newVkPhysicalDeviceImageDrmFormatModifierInfoEXT
instance for the specified memory address.static VkPhysicalDeviceImageDrmFormatModifierInfoEXT.Buffer
create(long address, int capacity)
Create aVkPhysicalDeviceImageDrmFormatModifierInfoEXT.Buffer
instance at the specified memory.static VkPhysicalDeviceImageDrmFormatModifierInfoEXT
createSafe(long address)
static VkPhysicalDeviceImageDrmFormatModifierInfoEXT.Buffer
createSafe(long address, int capacity)
long
drmFormatModifier()
Returns the value of thedrmFormatModifier
field.VkPhysicalDeviceImageDrmFormatModifierInfoEXT
drmFormatModifier(long value)
Sets the specified value to thedrmFormatModifier
field.static VkPhysicalDeviceImageDrmFormatModifierInfoEXT
malloc()
Returns a newVkPhysicalDeviceImageDrmFormatModifierInfoEXT
instance allocated withmemAlloc
.static VkPhysicalDeviceImageDrmFormatModifierInfoEXT.Buffer
malloc(int capacity)
Returns a newVkPhysicalDeviceImageDrmFormatModifierInfoEXT.Buffer
instance allocated withmemAlloc
.static VkPhysicalDeviceImageDrmFormatModifierInfoEXT
mallocStack()
Returns a newVkPhysicalDeviceImageDrmFormatModifierInfoEXT
instance allocated on the thread-localMemoryStack
.static VkPhysicalDeviceImageDrmFormatModifierInfoEXT.Buffer
mallocStack(int capacity)
Returns a newVkPhysicalDeviceImageDrmFormatModifierInfoEXT.Buffer
instance allocated on the thread-localMemoryStack
.static VkPhysicalDeviceImageDrmFormatModifierInfoEXT.Buffer
mallocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkPhysicalDeviceImageDrmFormatModifierInfoEXT.Buffer
instance allocated on the specifiedMemoryStack
.static VkPhysicalDeviceImageDrmFormatModifierInfoEXT
mallocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkPhysicalDeviceImageDrmFormatModifierInfoEXT
instance allocated on the specifiedMemoryStack
.static long
ndrmFormatModifier(long struct)
Unsafe version ofdrmFormatModifier()
.static void
ndrmFormatModifier(long struct, long value)
Unsafe version ofdrmFormatModifier
.static long
npNext(long struct)
Unsafe version ofpNext()
.static void
npNext(long struct, long value)
Unsafe version ofpNext
.static java.nio.IntBuffer
npQueueFamilyIndices(long struct)
Unsafe version ofpQueueFamilyIndices
.static void
npQueueFamilyIndices(long struct, java.nio.IntBuffer value)
Unsafe version ofpQueueFamilyIndices
.static int
nqueueFamilyIndexCount(long struct)
Unsafe version ofqueueFamilyIndexCount()
.static void
nqueueFamilyIndexCount(long struct, int value)
Sets the specified value to thequeueFamilyIndexCount
field of the specifiedstruct
.static int
nsharingMode(long struct)
Unsafe version ofsharingMode()
.static void
nsharingMode(long struct, int value)
Unsafe version ofsharingMode
.static int
nsType(long struct)
Unsafe version ofsType()
.static void
nsType(long struct, int value)
Unsafe version ofsType
.long
pNext()
Returns the value of thepNext
field.VkPhysicalDeviceImageDrmFormatModifierInfoEXT
pNext(long value)
Sets the specified value to thepNext
field.java.nio.IntBuffer
pQueueFamilyIndices()
Returns aIntBuffer
view of the data pointed to by thepQueueFamilyIndices
field.VkPhysicalDeviceImageDrmFormatModifierInfoEXT
pQueueFamilyIndices(java.nio.IntBuffer value)
Sets the address of the specifiedIntBuffer
to thepQueueFamilyIndices
field.int
queueFamilyIndexCount()
Returns the value of thequeueFamilyIndexCount
field.VkPhysicalDeviceImageDrmFormatModifierInfoEXT
set(int sType, long pNext, long drmFormatModifier, int sharingMode, java.nio.IntBuffer pQueueFamilyIndices)
Initializes this struct with the specified values.VkPhysicalDeviceImageDrmFormatModifierInfoEXT
set(VkPhysicalDeviceImageDrmFormatModifierInfoEXT src)
Copies the specified struct data to this struct.int
sharingMode()
Returns the value of thesharingMode
field.VkPhysicalDeviceImageDrmFormatModifierInfoEXT
sharingMode(int value)
Sets the specified value to thesharingMode
field.int
sizeof()
int
sType()
Returns the value of thesType
field.VkPhysicalDeviceImageDrmFormatModifierInfoEXT
sType(int value)
Sets the specified value to thesType
field.static void
validate(long struct)
Validates pointer members that should not beNULL
.static void
validate(long array, int count)
Callsvalidate(long)
for each struct contained in the specified struct array.
-
-
-
Constructor Detail
-
VkPhysicalDeviceImageDrmFormatModifierInfoEXT
public VkPhysicalDeviceImageDrmFormatModifierInfoEXT(java.nio.ByteBuffer container)
Creates aVkPhysicalDeviceImageDrmFormatModifierInfoEXT
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
-
sType
public int sType()
Returns the value of thesType
field.
-
pNext
public long pNext()
Returns the value of thepNext
field.
-
drmFormatModifier
public long drmFormatModifier()
Returns the value of thedrmFormatModifier
field.
-
sharingMode
public int sharingMode()
Returns the value of thesharingMode
field.
-
queueFamilyIndexCount
public int queueFamilyIndexCount()
Returns the value of thequeueFamilyIndexCount
field.
-
pQueueFamilyIndices
@Nullable public java.nio.IntBuffer pQueueFamilyIndices()
Returns aIntBuffer
view of the data pointed to by thepQueueFamilyIndices
field.
-
sType
public VkPhysicalDeviceImageDrmFormatModifierInfoEXT sType(int value)
Sets the specified value to thesType
field.
-
pNext
public VkPhysicalDeviceImageDrmFormatModifierInfoEXT pNext(long value)
Sets the specified value to thepNext
field.
-
drmFormatModifier
public VkPhysicalDeviceImageDrmFormatModifierInfoEXT drmFormatModifier(long value)
Sets the specified value to thedrmFormatModifier
field.
-
sharingMode
public VkPhysicalDeviceImageDrmFormatModifierInfoEXT sharingMode(int value)
Sets the specified value to thesharingMode
field.
-
pQueueFamilyIndices
public VkPhysicalDeviceImageDrmFormatModifierInfoEXT pQueueFamilyIndices(@Nullable java.nio.IntBuffer value)
Sets the address of the specifiedIntBuffer
to thepQueueFamilyIndices
field.
-
set
public VkPhysicalDeviceImageDrmFormatModifierInfoEXT set(int sType, long pNext, long drmFormatModifier, int sharingMode, @Nullable java.nio.IntBuffer pQueueFamilyIndices)
Initializes this struct with the specified values.
-
set
public VkPhysicalDeviceImageDrmFormatModifierInfoEXT set(VkPhysicalDeviceImageDrmFormatModifierInfoEXT src)
Copies the specified struct data to this struct.- Parameters:
src
- the source struct- Returns:
- this struct
-
malloc
public static VkPhysicalDeviceImageDrmFormatModifierInfoEXT malloc()
Returns a newVkPhysicalDeviceImageDrmFormatModifierInfoEXT
instance allocated withmemAlloc
. The instance must be explicitly freed.
-
calloc
public static VkPhysicalDeviceImageDrmFormatModifierInfoEXT calloc()
Returns a newVkPhysicalDeviceImageDrmFormatModifierInfoEXT
instance allocated withmemCalloc
. The instance must be explicitly freed.
-
create
public static VkPhysicalDeviceImageDrmFormatModifierInfoEXT create()
Returns a newVkPhysicalDeviceImageDrmFormatModifierInfoEXT
instance allocated withBufferUtils
.
-
create
public static VkPhysicalDeviceImageDrmFormatModifierInfoEXT create(long address)
Returns a newVkPhysicalDeviceImageDrmFormatModifierInfoEXT
instance for the specified memory address.
-
createSafe
@Nullable public static VkPhysicalDeviceImageDrmFormatModifierInfoEXT createSafe(long address)
-
malloc
public static VkPhysicalDeviceImageDrmFormatModifierInfoEXT.Buffer malloc(int capacity)
Returns a newVkPhysicalDeviceImageDrmFormatModifierInfoEXT.Buffer
instance allocated withmemAlloc
. The instance must be explicitly freed.- Parameters:
capacity
- the buffer capacity
-
calloc
public static VkPhysicalDeviceImageDrmFormatModifierInfoEXT.Buffer calloc(int capacity)
Returns a newVkPhysicalDeviceImageDrmFormatModifierInfoEXT.Buffer
instance allocated withmemCalloc
. The instance must be explicitly freed.- Parameters:
capacity
- the buffer capacity
-
create
public static VkPhysicalDeviceImageDrmFormatModifierInfoEXT.Buffer create(int capacity)
Returns a newVkPhysicalDeviceImageDrmFormatModifierInfoEXT.Buffer
instance allocated withBufferUtils
.- Parameters:
capacity
- the buffer capacity
-
create
public static VkPhysicalDeviceImageDrmFormatModifierInfoEXT.Buffer create(long address, int capacity)
Create aVkPhysicalDeviceImageDrmFormatModifierInfoEXT.Buffer
instance at the specified memory.- Parameters:
address
- the memory addresscapacity
- the buffer capacity
-
createSafe
@Nullable public static VkPhysicalDeviceImageDrmFormatModifierInfoEXT.Buffer createSafe(long address, int capacity)
-
mallocStack
public static VkPhysicalDeviceImageDrmFormatModifierInfoEXT mallocStack()
Returns a newVkPhysicalDeviceImageDrmFormatModifierInfoEXT
instance allocated on the thread-localMemoryStack
.
-
callocStack
public static VkPhysicalDeviceImageDrmFormatModifierInfoEXT callocStack()
Returns a newVkPhysicalDeviceImageDrmFormatModifierInfoEXT
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.
-
mallocStack
public static VkPhysicalDeviceImageDrmFormatModifierInfoEXT mallocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkPhysicalDeviceImageDrmFormatModifierInfoEXT
instance allocated on the specifiedMemoryStack
.- Parameters:
stack
- the stack from which to allocate
-
callocStack
public static VkPhysicalDeviceImageDrmFormatModifierInfoEXT callocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkPhysicalDeviceImageDrmFormatModifierInfoEXT
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.- Parameters:
stack
- the stack from which to allocate
-
mallocStack
public static VkPhysicalDeviceImageDrmFormatModifierInfoEXT.Buffer mallocStack(int capacity)
Returns a newVkPhysicalDeviceImageDrmFormatModifierInfoEXT.Buffer
instance allocated on the thread-localMemoryStack
.- Parameters:
capacity
- the buffer capacity
-
callocStack
public static VkPhysicalDeviceImageDrmFormatModifierInfoEXT.Buffer callocStack(int capacity)
Returns a newVkPhysicalDeviceImageDrmFormatModifierInfoEXT.Buffer
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.- Parameters:
capacity
- the buffer capacity
-
mallocStack
public static VkPhysicalDeviceImageDrmFormatModifierInfoEXT.Buffer mallocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkPhysicalDeviceImageDrmFormatModifierInfoEXT.Buffer
instance allocated on the specifiedMemoryStack
.- Parameters:
stack
- the stack from which to allocatecapacity
- the buffer capacity
-
callocStack
public static VkPhysicalDeviceImageDrmFormatModifierInfoEXT.Buffer callocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkPhysicalDeviceImageDrmFormatModifierInfoEXT.Buffer
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.- Parameters:
stack
- the stack from which to allocatecapacity
- the buffer capacity
-
nsType
public static int nsType(long struct)
Unsafe version ofsType()
.
-
npNext
public static long npNext(long struct)
Unsafe version ofpNext()
.
-
ndrmFormatModifier
public static long ndrmFormatModifier(long struct)
Unsafe version ofdrmFormatModifier()
.
-
nsharingMode
public static int nsharingMode(long struct)
Unsafe version ofsharingMode()
.
-
nqueueFamilyIndexCount
public static int nqueueFamilyIndexCount(long struct)
Unsafe version ofqueueFamilyIndexCount()
.
-
npQueueFamilyIndices
@Nullable public static java.nio.IntBuffer npQueueFamilyIndices(long struct)
Unsafe version ofpQueueFamilyIndices
.
-
nsType
public static void nsType(long struct, int value)
Unsafe version ofsType
.
-
npNext
public static void npNext(long struct, long value)
Unsafe version ofpNext
.
-
ndrmFormatModifier
public static void ndrmFormatModifier(long struct, long value)
Unsafe version ofdrmFormatModifier
.
-
nsharingMode
public static void nsharingMode(long struct, int value)
Unsafe version ofsharingMode
.
-
nqueueFamilyIndexCount
public static void nqueueFamilyIndexCount(long struct, int value)
Sets the specified value to thequeueFamilyIndexCount
field of the specifiedstruct
.
-
npQueueFamilyIndices
public static void npQueueFamilyIndices(long struct, @Nullable java.nio.IntBuffer value)
Unsafe version ofpQueueFamilyIndices
.
-
validate
public static void validate(long struct)
Validates pointer members that should not beNULL
.- Parameters:
struct
- the struct to validate
-
validate
public static void validate(long array, int count)
Callsvalidate(long)
for each struct contained in the specified struct array.- Parameters:
array
- the struct array to validatecount
- the number of structs inarray
-
-