For applications to be able to reference specific presentation events queued by a call to vkQueuePresentKHR, an identifier needs to be associated with them. When the presentId feature is enabled, applications can include the VkPresentIdKHR structure in the pNext chain of the VkPresentInfoKHR structure to supply identifiers.
Each VkSwapchainKHR has a presentId associated with it. This value is initially set to zero when the VkSwapchainKHR is created.
When a VkPresentIdKHR structure with a non-NULL pPresentIds is included in the pNext chain of a VkPresentInfoKHR structure, each pSwapchains entry has a presentId associated in the pPresentIds array at the same index as the swapchain in the pSwapchains array. If this presentId is non-zero, then the application can later use this value to refer to that image presentation. A value of zero indicates that this presentation has no associated presentId. A non-zero presentId must be greater than any non-zero presentId passed previously by the application for the same swapchain.
There is no requirement for any precise timing relationship between the presentation of the image to the user and the update of the presentId value, but implementations should make this as close as possible to the presentation of the first pixel in the new image to the user.
swapchainCount must be the same value as VkPresentInfoKHR::swapchainCount, where this VkPresentIdKHR is in the pNext chain of the VkPresentInfoKHR structurepresentIds entry must be greater than any previous presentIds entry passed for the associated pSwapchains entrysType must be STRUCTURE_TYPE_PRESENT_ID_KHRpPresentIds is not NULL, pPresentIds must be a valid pointer to an array of swapchainCount uint64_t valuesswapchainCount must be greater than 0
struct VkPresentIdKHR {
VkStructureType sType;
void const * pNext;
uint32_t swapchainCount;
uint64_t const * pPresentIds;
}
| Modifier and Type | Class and Description |
|---|---|
| public static class | VkPresentIdKHR.
An array of |
| Modifier and Type | Field and Description |
|---|---|
| public static final int | ALIGNOF
The struct alignment in bytes. |
| public static final int | PNEXT
The struct member offsets. |
| public static final int | PPRESENTIDS
The struct member offsets. |
| public static final int | SIZEOF
The struct size in bytes. |
| public static final int | STYPE
The struct member offsets. |
| public static final int | SWAPCHAINCOUNT
The struct member offsets. |
| Access | Constructor and Description |
|---|---|
| protected | |
| public | VkPresentIdKHR(ByteBuffer container)
Creates a |
| Modifier and Type | Method and Description |
|---|---|
| public static VkPresentIdKHR | |
| public static VkPresentIdKHR. | calloc(int
the buffer capacity capacity)Returns a new |
| public static VkPresentIdKHR | calloc(MemoryStack
the stack from which to allocate stack)Returns a new |
| public static VkPresentIdKHR. | calloc(int
the buffer capacity capacity, MemoryStack the stack from which to allocate stack)Returns a new |
| protected VkPresentIdKHR | 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 VkPresentIdKHR | |
| public static VkPresentIdKHR | |
| public static VkPresentIdKHR. | create(int
the buffer capacity capacity)Returns a new |
| public static VkPresentIdKHR. | create(long
the memory address address, int the buffer capacity capacity)Create a |
| public static VkPresentIdKHR | |
| public static VkPresentIdKHR. | |
| public static VkPresentIdKHR | |
| public static VkPresentIdKHR. | malloc(int
the buffer capacity capacity)Returns a new |
| public static VkPresentIdKHR | malloc(MemoryStack
the stack from which to allocate stack)Returns a new |
| public static VkPresentIdKHR. | malloc(int
the buffer capacity capacity, MemoryStack the stack from which to allocate stack)Returns a new |
| public static long | |
| public static void | |
| public static LongBuffer | |
| public static void | |
| public static int | |
| public static void | |
| public static int | |
| public static void | nswapchainCount(long struct, int value)
Sets the specified value to the |
| public long | |
| public VkPresentIdKHR | |
| public LongBuffer | |
| public VkPresentIdKHR | |
| public VkPresentIdKHR | set(int sType, long pNext, int swapchainCount, LongBuffer pPresentIds)
Initializes this struct with the specified values. |
| public VkPresentIdKHR | Returns: this structthe source struct src)Copies the specified struct data to this struct. |
| public int | |
| public int | |
| public VkPresentIdKHR | |
| public VkPresentIdKHR | |
| public int | |
| public VkPresentIdKHR |
| ALIGNOF | back to summary |
|---|---|
| public static final int ALIGNOF The struct alignment in bytes. | |
| PNEXT | back to summary |
|---|---|
| public static final int PNEXT The struct member offsets. | |
| PPRESENTIDS | back to summary |
|---|---|
| public static final int PPRESENTIDS 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. | |
| SWAPCHAINCOUNT | back to summary |
|---|---|
| public static final int SWAPCHAINCOUNT The struct member offsets. | |
| VkPresentIdKHR | back to summary |
|---|---|
| protected VkPresentIdKHR(long address, ByteBuffer container) | |
| VkPresentIdKHR | back to summary |
|---|---|
| public VkPresentIdKHR(ByteBuffer container) Creates a The created instance holds a strong reference to the container object. | |
| calloc | back to summary |
|---|---|
| public static VkPresentIdKHR calloc() Returns a new | |
| calloc | back to summary |
|---|---|
| public static VkPresentIdKHR. Returns a new
| |
| calloc | back to summary |
|---|---|
| public static VkPresentIdKHR calloc(MemoryStack stack) Returns a new
| |
| calloc | back to summary |
|---|---|
| public static VkPresentIdKHR. Returns a new
| |
| create | back to summary |
|---|---|
| protected VkPresentIdKHR create(long address, ByteBuffer container) Implements abstract org. Doc from org. Similar to Effectively, every
| |
| create | back to summary |
|---|---|
| public static VkPresentIdKHR create() Returns a new | |
| create | back to summary |
|---|---|
| public static VkPresentIdKHR create(long address) Returns a new | |
| create | back to summary |
|---|---|
| public static VkPresentIdKHR. Returns a new
| |
| create | back to summary |
|---|---|
| public static VkPresentIdKHR. Create a
| |
| createSafe | back to summary |
|---|---|
| public static VkPresentIdKHR createSafe(long address) Like
| |
| createSafe | back to summary |
|---|---|
| public static VkPresentIdKHR. Like
| |
| malloc | back to summary |
|---|---|
| public static VkPresentIdKHR malloc() Returns a new | |
| malloc | back to summary |
|---|---|
| public static VkPresentIdKHR. Returns a new
| |
| malloc | back to summary |
|---|---|
| public static VkPresentIdKHR malloc(MemoryStack stack) Returns a new
| |
| malloc | back to summary |
|---|---|
| public static VkPresentIdKHR. Returns a new
| |
| 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 | |
| npPresentIds | back to summary |
|---|---|
| public static LongBuffer npPresentIds(long struct) Unsafe version of
| |
| npPresentIds | back to summary |
|---|---|
| public static void npPresentIds(long struct, LongBuffer value) 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 | |
| nswapchainCount | back to summary |
|---|---|
| public static int nswapchainCount(long struct) Unsafe version of | |
| nswapchainCount | back to summary |
|---|---|
| public static void nswapchainCount(long struct, int value) Sets the specified value to the | |
| pNext | back to summary |
|---|---|
| public long pNext()
| |
| pNext | back to summary |
|---|---|
| public VkPresentIdKHR pNext(long value) Sets the specified value to the | |
| pPresentIds | back to summary |
|---|---|
| public LongBuffer pPresentIds()
| |
| pPresentIds | back to summary |
|---|---|
| public VkPresentIdKHR pPresentIds(LongBuffer value) Sets the address of the specified | |
| set | back to summary |
|---|---|
| public VkPresentIdKHR set(int sType, long pNext, int swapchainCount, LongBuffer pPresentIds) Initializes this struct with the specified values. | |
| set | back to summary |
|---|---|
| public VkPresentIdKHR set(VkPresentIdKHR 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 VkPresentIdKHR sType(int value) Sets the specified value to the | |
| sType$Default | back to summary |
|---|---|
| public VkPresentIdKHR sType$Default() Sets the | |
| swapchainCount | back to summary |
|---|---|
| public int swapchainCount() the number of swapchains being presented to the
| |
| swapchainCount | back to summary |
|---|---|
| public VkPresentIdKHR swapchainCount(int value) Sets the specified value to the | |
VkPresentIdKHR structs.
| Modifier and Type | Field and Description |
|---|---|
| private static final VkPresentIdKHR |
| Access | Constructor and Description |
|---|---|
| public | Buffer(ByteBuffer container)
Creates a new |
| public | |
| pack-priv |
| Modifier and Type | Method and Description |
|---|---|
| protected VkPresentIdKHR | |
| public long | |
| public VkPresentIdKHR. | |
| public LongBuffer | |
| public VkPresentIdKHR. | pPresentIds(LongBuffer value)
Sets the address of the specified |
| protected VkPresentIdKHR. | |
| public int | |
| public VkPresentIdKHR. | |
| public VkPresentIdKHR. | |
| public int | |
| public VkPresentIdKHR. |
| ELEMENT_FACTORY | back to summary |
|---|---|
| private static final VkPresentIdKHR 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) | |
| getElementFactory | back to summary |
|---|---|
| protected VkPresentIdKHR getElementFactory() Implements abstract org.
| |
| pNext | back to summary |
|---|---|
public long pNext()
| |
| pNext | back to summary |
|---|---|
| public VkPresentIdKHR. Sets the specified value to the | |
| pPresentIds | back to summary |
|---|---|
public LongBuffer pPresentIds()
| |
| pPresentIds | back to summary |
|---|---|
| public VkPresentIdKHR. Sets the address of the specified | |
| self | back to summary |
|---|---|
| protected VkPresentIdKHR. Implements abstract org.
| |
| sType | back to summary |
|---|---|
public int sType()
| |
| sType | back to summary |
|---|---|
| public VkPresentIdKHR. Sets the specified value to the | |
| sType$Default | back to summary |
|---|---|
| public VkPresentIdKHR. Sets the | |
| swapchainCount | back to summary |
|---|---|
public int swapchainCount()
| |
| swapchainCount | back to summary |
|---|---|
| public VkPresentIdKHR. Sets the specified value to the | |