The ith member of pPlaneLayouts describes the layout of the image’s ith memory plane (that is, VK_IMAGE_ASPECT_MEMORY_PLANE_i_BIT_EXT). In each element of pPlaneLayouts, the implementation must ignore size. The implementation calculates the size of each plane, which the application can query with GetImageSubresourceLayout.
When creating an image with VkImageDrmFormatModifierExplicitCreateInfoEXT, it is the application’s responsibility to satisfy all valid usage requirements. However, the implementation must validate that the provided pPlaneLayouts, when combined with the provided drmFormatModifier and other creation parameters in VkImageCreateInfo and its pNext chain, produce a valid image. (This validation is necessarily implementation-dependent and outside the scope of Vulkan, and therefore not described by valid usage requirements). If this validation fails, then CreateImage returns ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT.
drmFormatModifier must be compatible with the parameters in VkImageCreateInfo and its pNext chain, as determined by querying VkPhysicalDeviceImageFormatInfo2 extended with VkPhysicalDeviceImageDrmFormatModifierInfoEXTdrmFormatModifierPlaneCount must be equal to the VkDrmFormatModifierPropertiesEXT::drmFormatModifierPlaneCount associated with VkImageCreateInfo::format and drmFormatModifier, as found by querying VkDrmFormatModifierPropertiesListEXTpPlaneLayouts, size must be 0pPlaneLayouts, arrayPitch must be 0 if VkImageCreateInfo::arrayLayers is 1pPlaneLayouts, depthPitch must be 0 if VkImageCreateInfo::extent.depth is 1sType must be STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXTpPlaneLayouts must be a valid pointer to an array of drmFormatModifierPlaneCount VkSubresourceLayout structuresdrmFormatModifierPlaneCount must be greater than 0
struct VkImageDrmFormatModifierExplicitCreateInfoEXT {
VkStructureType sType;
void const * pNext;
uint64_t drmFormatModifier;
uint32_t drmFormatModifierPlaneCount;
VkSubresourceLayout const * pPlaneLayouts;
}
| Modifier and Type | Class and Description |
|---|---|
| public static class |
| Modifier and Type | Field and Description |
|---|---|
| public static final int | ALIGNOF
The struct alignment in bytes. |
| public static final int | DRMFORMATMODIFIER
The struct member offsets. |
| public static final int | DRMFORMATMODIFIERPLANECOUNT
The struct member offsets. |
| public static final int | PNEXT
The struct member offsets. |
| public static final int | PPLANELAYOUTS
The struct member offsets. |
| public static final int | SIZEOF
The struct size in bytes. |
| public static final int | STYPE
The struct member offsets. |
| Access | Constructor and Description |
|---|---|
| protected | |
| public | VkImageDrmFormatModifierExplicitCreateInfoEXT(ByteBuffer container)
Creates a |
| Modifier and Type | Method and Description |
|---|---|
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT | |
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT. | calloc(int
the buffer capacity capacity)Returns a new |
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT | calloc(MemoryStack
the stack from which to allocate stack)Returns a new |
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT. | calloc(int
the buffer capacity capacity, MemoryStack the stack from which to allocate stack)Returns a new |
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT | |
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT | |
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT. | |
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT. | |
| protected VkImageDrmFormatModifierExplicitCreateInfoEXT | create(long
the struct memory address address, ByteBuffer an optional container buffer, to be referenced strongly by the struct instance. container)Implements abstract org. the constructor, but returns the exact type of the Struct subclass.
|
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT | create()
Returns a new |
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT | create(long address)
Returns a new |
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT. | create(int
the buffer capacity capacity)Returns a new |
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT. | create(long
the memory address address, int the buffer capacity capacity)Create a |
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT | |
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT. | |
| public long | |
| public VkImageDrmFormatModifierExplicitCreateInfoEXT | |
| public int | drmFormatModifierPlaneCount()
the number of memory planes in the image (as reported by |
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT | |
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT. | malloc(int
the buffer capacity capacity)Returns a new |
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT | malloc(MemoryStack
the stack from which to allocate stack)Returns a new |
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT. | malloc(int
the buffer capacity capacity, MemoryStack the stack from which to allocate stack)Returns a new |
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT | |
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT | |
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT. | |
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT. | |
| public static long | |
| public static void | |
| public static int | |
| public static void | ndrmFormatModifierPlaneCount(long struct, int value)
Sets the specified value to the |
| public static long | |
| public static void | |
| public static VkSubresourceLayout. | |
| public static void | |
| public static int | |
| public static void | |
| public long | |
| public VkImageDrmFormatModifierExplicitCreateInfoEXT | |
| public VkSubresourceLayout. | pPlaneLayouts()
a pointer to an array of |
| public VkImageDrmFormatModifierExplicitCreateInfoEXT | pPlaneLayouts(VkSubresourceLayout.
Sets the address of the specified |
| public VkImageDrmFormatModifierExplicitCreateInfoEXT | set(int sType, long pNext, long drmFormatModifier, VkSubresourceLayout.
Initializes this struct with the specified values. |
| public VkImageDrmFormatModifierExplicitCreateInfoEXT | Returns: this structthe source struct src)Copies the specified struct data to this struct. |
| public int | |
| public int | |
| public VkImageDrmFormatModifierExplicitCreateInfoEXT | |
| public VkImageDrmFormatModifierExplicitCreateInfoEXT | sType$Default()
Sets the |
| public static void |
| ALIGNOF | back to summary |
|---|---|
| public static final int ALIGNOF The struct alignment in bytes. | |
| DRMFORMATMODIFIER | back to summary |
|---|---|
| public static final int DRMFORMATMODIFIER The struct member offsets. | |
| DRMFORMATMODIFIERPLANECOUNT | back to summary |
|---|---|
| public static final int DRMFORMATMODIFIERPLANECOUNT The struct member offsets. | |
| PNEXT | back to summary |
|---|---|
| public static final int PNEXT The struct member offsets. | |
| PPLANELAYOUTS | back to summary |
|---|---|
| public static final int PPLANELAYOUTS The struct member offsets. | |
| SIZEOF | back to summary |
|---|---|
| public static final int SIZEOF The struct size in bytes. | |
| STYPE | back to summary |
|---|---|
| public static final int STYPE The struct member offsets. | |
| VkImageDrmFormatModifierExplicitCreateInfoEXT | back to summary |
|---|---|
| protected VkImageDrmFormatModifierExplicitCreateInfoEXT(long address, ByteBuffer container) | |
| VkImageDrmFormatModifierExplicitCreateInfoEXT | back to summary |
|---|---|
| public VkImageDrmFormatModifierExplicitCreateInfoEXT(ByteBuffer container) Creates a The created instance holds a strong reference to the container object. | |
| calloc | back to summary |
|---|---|
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT calloc() Returns a new | |
| calloc | back to summary |
|---|---|
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT. Returns a new
| |
| calloc | back to summary |
|---|---|
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT calloc(MemoryStack stack) Returns a new
| |
| calloc | back to summary |
|---|---|
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT. Returns a new
| |
| callocStack | back to summary |
|---|---|
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT callocStack()
Deprecated
Deprecated for removal in 3.4.0. Use
| |
| callocStack | back to summary |
|---|---|
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT callocStack(MemoryStack stack)
Deprecated
Deprecated for removal in 3.4.0. Use
| |
| callocStack | back to summary |
|---|---|
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT. Deprecated
Deprecated for removal in 3.4.0. Use
| |
| callocStack | back to summary |
|---|---|
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT. Deprecated
Deprecated for removal in 3.4.0. Use
| |
| create | back to summary |
|---|---|
| protected VkImageDrmFormatModifierExplicitCreateInfoEXT create(long address, ByteBuffer container) Implements abstract org. Doc from org. Similar to Effectively, every
| |
| create | back to summary |
|---|---|
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT create() Returns a new | |
| create | back to summary |
|---|---|
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT create(long address) Returns a new | |
| create | back to summary |
|---|---|
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT. Returns a new
| |
| create | back to summary |
|---|---|
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT. Create a
| |
| createSafe | back to summary |
|---|---|
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT createSafe(long address) Like
| |
| createSafe | back to summary |
|---|---|
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT. Like
| |
| drmFormatModifier | back to summary |
|---|---|
| public long drmFormatModifier() the Linux DRM format modifier with which the image will be created.
| |
| drmFormatModifier | back to summary |
|---|---|
| public VkImageDrmFormatModifierExplicitCreateInfoEXT drmFormatModifier(long value) Sets the specified value to the | |
| drmFormatModifierPlaneCount | back to summary |
|---|---|
| public int drmFormatModifierPlaneCount() the number of memory planes in the image (as reported by
| |
| malloc | back to summary |
|---|---|
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT malloc() Returns a new | |
| malloc | back to summary |
|---|---|
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT. Returns a new
| |
| malloc | back to summary |
|---|---|
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT malloc(MemoryStack stack) Returns a new
| |
| malloc | back to summary |
|---|---|
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT. Returns a new
| |
| mallocStack | back to summary |
|---|---|
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT mallocStack()
Deprecated
Deprecated for removal in 3.4.0. Use
| |
| mallocStack | back to summary |
|---|---|
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT mallocStack(MemoryStack stack)
Deprecated
Deprecated for removal in 3.4.0. Use
| |
| mallocStack | back to summary |
|---|---|
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT. Deprecated
Deprecated for removal in 3.4.0. Use
| |
| mallocStack | back to summary |
|---|---|
| public static VkImageDrmFormatModifierExplicitCreateInfoEXT. Deprecated
Deprecated for removal in 3.4.0. Use
| |
| ndrmFormatModifier | back to summary |
|---|---|
| public static long ndrmFormatModifier(long struct) Unsafe version of | |
| ndrmFormatModifier | back to summary |
|---|---|
| public static void ndrmFormatModifier(long struct, long value) Unsafe version of | |
| ndrmFormatModifierPlaneCount | back to summary |
|---|---|
| public static int ndrmFormatModifierPlaneCount(long struct) Unsafe version of | |
| ndrmFormatModifierPlaneCount | back to summary |
|---|---|
| public static void ndrmFormatModifierPlaneCount(long struct, int value) Sets the specified value to the | |
| npNext | back to summary |
|---|---|
| public static long npNext(long struct) Unsafe version of | |
| npNext | back to summary |
|---|---|
| public static void npNext(long struct, long value) Unsafe version of | |
| npPlaneLayouts | back to summary |
|---|---|
| public static VkSubresourceLayout. Unsafe version of | |
| npPlaneLayouts | back to summary |
|---|---|
| public static void npPlaneLayouts(long struct, VkSubresourceLayout. Unsafe version of | |
| nsType | back to summary |
|---|---|
| public static int nsType(long struct) Unsafe version of | |
| nsType | back to summary |
|---|---|
| public static void nsType(long struct, int value) Unsafe version of | |
| pNext | back to summary |
|---|---|
| public long pNext()
| |
| pNext | back to summary |
|---|---|
| public VkImageDrmFormatModifierExplicitCreateInfoEXT pNext(long value) Sets the specified value to the | |
| pPlaneLayouts | back to summary |
|---|---|
| public VkSubresourceLayout. a pointer to an array of
| |
| pPlaneLayouts | back to summary |
|---|---|
| public VkImageDrmFormatModifierExplicitCreateInfoEXT pPlaneLayouts(VkSubresourceLayout. Sets the address of the specified | |
| set | back to summary |
|---|---|
| public VkImageDrmFormatModifierExplicitCreateInfoEXT set(int sType, long pNext, long drmFormatModifier, VkSubresourceLayout. Initializes this struct with the specified values. | |
| set | back to summary |
|---|---|
| public VkImageDrmFormatModifierExplicitCreateInfoEXT set(VkImageDrmFormatModifierExplicitCreateInfoEXT src) Copies the specified struct data to this struct.
| |
| sizeof | back to summary |
|---|---|
| public int sizeof() Implements abstract org. Doc from org. Returns
| |
| sType | back to summary |
|---|---|
| public int sType() a
| |
| sType | back to summary |
|---|---|
| public VkImageDrmFormatModifierExplicitCreateInfoEXT sType(int value) Sets the specified value to the | |
| sType$Default | back to summary |
|---|---|
| public VkImageDrmFormatModifierExplicitCreateInfoEXT sType$Default() Sets the | |
| validate | back to summary |
|---|---|
| public static void validate(long struct) Validates pointer members that should not be
| |
VkImageDrmFormatModifierExplicitCreateInfoEXT structs.
| Modifier and Type | Field and Description |
|---|---|
| private static final VkImageDrmFormatModifierExplicitCreateInfoEXT |
| Access | Constructor and Description |
|---|---|
| public | Buffer(ByteBuffer container)
Creates a new |
| public | |
| pack-priv |
| ELEMENT_FACTORY | back to summary |
|---|---|
| private static final VkImageDrmFormatModifierExplicitCreateInfoEXT ELEMENT_FACTORY | |
| Buffer | back to summary |
|---|---|
| public Buffer(ByteBuffer container) Creates a new Changes to the container's content will be visible to the struct buffer instance and vice versa. The two buffers' position, limit, and mark values
will be independent. The new buffer's position will be zero, its capacity and its limit will be the number of bytes remaining in this buffer divided
by The created buffer instance holds a strong reference to the container object. | |
| Buffer | back to summary |
|---|---|
| public Buffer(long address, int cap) | |
| Buffer | back to summary |
|---|---|
| pack-priv Buffer(long address, ByteBuffer container, int mark, int pos, int lim, int cap) | |
| drmFormatModifier | back to summary |
|---|---|
public long drmFormatModifier()
| |
| drmFormatModifier | back to summary |
|---|---|
| public VkImageDrmFormatModifierExplicitCreateInfoEXT. Sets the specified value to the | |
| drmFormatModifierPlaneCount | back to summary |
|---|---|
public int drmFormatModifierPlaneCount()
| |
| getElementFactory | back to summary |
|---|---|
| protected VkImageDrmFormatModifierExplicitCreateInfoEXT getElementFactory() Implements abstract org.
| |
| pNext | back to summary |
|---|---|
public long pNext()
| |
| pNext | back to summary |
|---|---|
| public VkImageDrmFormatModifierExplicitCreateInfoEXT. Sets the specified value to the | |
| pPlaneLayouts | back to summary |
|---|---|
public VkSubresourceLayout.
| |
| pPlaneLayouts | back to summary |
|---|---|
| public VkImageDrmFormatModifierExplicitCreateInfoEXT. Sets the address of the specified | |
| self | back to summary |
|---|---|
| protected VkImageDrmFormatModifierExplicitCreateInfoEXT. Implements abstract org.
| |
| sType | back to summary |
|---|---|
public int sType()
| |
| sType | back to summary |
|---|---|
| public VkImageDrmFormatModifierExplicitCreateInfoEXT. Sets the specified value to the | |
| sType$Default | back to summary |
|---|---|
| public VkImageDrmFormatModifierExplicitCreateInfoEXT. Sets the | |