Class VkPresentIdKHR
- java.lang.Object
-
- org.lwjgl.system.Pointer.Default
-
- org.lwjgl.system.Struct
-
- org.lwjgl.vulkan.VkPresentIdKHR
-
- All Implemented Interfaces:
java.lang.AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
public class VkPresentIdKHR extends org.lwjgl.system.Struct implements org.lwjgl.system.NativeResourceThe list of presentation identifiers.Description
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 thepresentIdfeature is enabled, applications can include theVkPresentIdKHRstructure in thepNextchain of theVkPresentInfoKHRstructure to supply identifiers.Each
VkSwapchainKHRhas a presentId associated with it. This value is initially set to zero when theVkSwapchainKHRis created.When a
VkPresentIdKHRstructure with a non-NULLpPresentIdsis included in thepNextchain of aVkPresentInfoKHRstructure, eachpSwapchainsentry has a presentId associated in thepPresentIdsarray at the same index as the swapchain in thepSwapchainsarray. 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.
Valid Usage
swapchainCountmust be the same value asVkPresentInfoKHR::swapchainCount, where thisVkPresentIdKHRis in thepNextchain of theVkPresentInfoKHRstructure- Each
presentIdsentry must be greater than any previouspresentIdsentry passed for the associatedpSwapchainsentry
Valid Usage (Implicit)
sTypemust beSTRUCTURE_TYPE_PRESENT_ID_KHR- If
pPresentIdsis notNULL,pPresentIdsmust be a valid pointer to an array ofswapchainCountuint64_tvalues swapchainCountmust be greater than 0
Layout
struct VkPresentIdKHR { VkStructureTypesType(); void const *pNext(); uint32_tswapchainCount(); uint64_t const *pPresentIds(); }
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classVkPresentIdKHR.BufferAn array ofVkPresentIdKHRstructs.
-
Field Summary
Fields Modifier and Type Field Description static intALIGNOFThe struct alignment in bytes.static intPNEXT
PPRESENTIDSThe struct member offsets.static intSIZEOFThe struct size in bytes.static intSTYPE
SWAPCHAINCOUNTThe struct member offsets.
-
Constructor Summary
Constructors Constructor Description VkPresentIdKHR(java.nio.ByteBuffer container)Creates aVkPresentIdKHRinstance at the current position of the specifiedByteBuffercontainer.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static VkPresentIdKHRcalloc()Returns a newVkPresentIdKHRinstance allocated withmemCalloc.static VkPresentIdKHR.Buffercalloc(int capacity)Returns a newVkPresentIdKHR.Bufferinstance allocated withmemCalloc.static VkPresentIdKHR.Buffercalloc(int capacity, org.lwjgl.system.MemoryStack stack)Returns a newVkPresentIdKHR.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkPresentIdKHRcalloc(org.lwjgl.system.MemoryStack stack)Returns a newVkPresentIdKHRinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkPresentIdKHRcreate()Returns a newVkPresentIdKHRinstance allocated withBufferUtils.static VkPresentIdKHR.Buffercreate(int capacity)Returns a newVkPresentIdKHR.Bufferinstance allocated withBufferUtils.static VkPresentIdKHRcreate(long address)Returns a newVkPresentIdKHRinstance for the specified memory address.static VkPresentIdKHR.Buffercreate(long address, int capacity)Create aVkPresentIdKHR.Bufferinstance at the specified memory.static VkPresentIdKHRcreateSafe(long address)static VkPresentIdKHR.BuffercreateSafe(long address, int capacity)static VkPresentIdKHRmalloc()Returns a newVkPresentIdKHRinstance allocated withmemAlloc.static VkPresentIdKHR.Buffermalloc(int capacity)Returns a newVkPresentIdKHR.Bufferinstance allocated withmemAlloc.static VkPresentIdKHR.Buffermalloc(int capacity, org.lwjgl.system.MemoryStack stack)Returns a newVkPresentIdKHR.Bufferinstance allocated on the specifiedMemoryStack.static VkPresentIdKHRmalloc(org.lwjgl.system.MemoryStack stack)Returns a newVkPresentIdKHRinstance allocated on the specifiedMemoryStack.static longnpNext(long struct)Unsafe version ofpNext().static voidnpNext(long struct, long value)Unsafe version ofpNext.static java.nio.LongBuffernpPresentIds(long struct)Unsafe version ofpPresentIds.static voidnpPresentIds(long struct, java.nio.LongBuffer value)Unsafe version ofpPresentIds.static intnsType(long struct)Unsafe version ofsType().static voidnsType(long struct, int value)Unsafe version ofsType.static intnswapchainCount(long struct)Unsafe version ofswapchainCount().static voidnswapchainCount(long struct, int value)Sets the specified value to theswapchainCountfield of the specifiedstruct.longpNext()NULLor a pointer to a structure extending this structure.VkPresentIdKHRpNext(long value)Sets the specified value to thepNext()field.java.nio.LongBufferpPresentIds()NULLor a pointer to an array of uint64_t withswapchainCountentries.VkPresentIdKHRpPresentIds(java.nio.LongBuffer value)Sets the address of the specifiedLongBufferto thepPresentIds()field.VkPresentIdKHRset(int sType, long pNext, int swapchainCount, java.nio.LongBuffer pPresentIds)Initializes this struct with the specified values.VkPresentIdKHRset(VkPresentIdKHR src)Copies the specified struct data to this struct.intsizeof()intsType()the type of this structure.VkPresentIdKHRsType(int value)Sets the specified value to thesType()field.VkPresentIdKHRsType$Default()Sets theSTRUCTURE_TYPE_PRESENT_ID_KHRvalue to thesType()field.intswapchainCount()the number of swapchains being presented to thevkQueuePresentKHRcommand.VkPresentIdKHRswapchainCount(int value)Sets the specified value to theswapchainCount()field.
-
-
-
Constructor Detail
-
VkPresentIdKHR
public VkPresentIdKHR(java.nio.ByteBuffer container)
Creates aVkPresentIdKHRinstance 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 Detail
-
sizeof
public int sizeof()
- Specified by:
sizeofin classorg.lwjgl.system.Struct
-
sType
public int sType()
the type of this structure.
-
pNext
public long pNext()
NULLor a pointer to a structure extending this structure.
-
swapchainCount
public int swapchainCount()
the number of swapchains being presented to thevkQueuePresentKHRcommand.
-
pPresentIds
@Nullable public java.nio.LongBuffer pPresentIds()
NULLor a pointer to an array of uint64_t withswapchainCountentries. If notNULL, each non-zero value inpPresentIdsspecifies the present id to be associated with the presentation of the swapchain with the same index in theQueuePresentKHRcall.
-
sType
public VkPresentIdKHR sType(int value)
Sets the specified value to thesType()field.
-
sType$Default
public VkPresentIdKHR sType$Default()
Sets theSTRUCTURE_TYPE_PRESENT_ID_KHRvalue to thesType()field.
-
pNext
public VkPresentIdKHR pNext(long value)
Sets the specified value to thepNext()field.
-
swapchainCount
public VkPresentIdKHR swapchainCount(int value)
Sets the specified value to theswapchainCount()field.
-
pPresentIds
public VkPresentIdKHR pPresentIds(@Nullable java.nio.LongBuffer value)
Sets the address of the specifiedLongBufferto thepPresentIds()field.
-
set
public VkPresentIdKHR set(int sType, long pNext, int swapchainCount, @Nullable java.nio.LongBuffer pPresentIds)
Initializes this struct with the specified values.
-
set
public VkPresentIdKHR set(VkPresentIdKHR src)
Copies the specified struct data to this struct.- Parameters:
src- the source struct- Returns:
- this struct
-
malloc
public static VkPresentIdKHR malloc()
Returns a newVkPresentIdKHRinstance allocated withmemAlloc. The instance must be explicitly freed.
-
calloc
public static VkPresentIdKHR calloc()
Returns a newVkPresentIdKHRinstance allocated withmemCalloc. The instance must be explicitly freed.
-
create
public static VkPresentIdKHR create()
Returns a newVkPresentIdKHRinstance allocated withBufferUtils.
-
create
public static VkPresentIdKHR create(long address)
Returns a newVkPresentIdKHRinstance for the specified memory address.
-
createSafe
@Nullable public static VkPresentIdKHR createSafe(long address)
-
malloc
public static VkPresentIdKHR.Buffer malloc(int capacity)
Returns a newVkPresentIdKHR.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
public static VkPresentIdKHR.Buffer calloc(int capacity)
Returns a newVkPresentIdKHR.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
public static VkPresentIdKHR.Buffer create(int capacity)
Returns a newVkPresentIdKHR.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
public static VkPresentIdKHR.Buffer create(long address, int capacity)
Create aVkPresentIdKHR.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
@Nullable public static VkPresentIdKHR.Buffer createSafe(long address, int capacity)
-
malloc
public static VkPresentIdKHR malloc(org.lwjgl.system.MemoryStack stack)
Returns a newVkPresentIdKHRinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
calloc
public static VkPresentIdKHR calloc(org.lwjgl.system.MemoryStack stack)
Returns a newVkPresentIdKHRinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
malloc
public static VkPresentIdKHR.Buffer malloc(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkPresentIdKHR.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocatecapacity- the buffer capacity
-
calloc
public static VkPresentIdKHR.Buffer calloc(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkPresentIdKHR.Bufferinstance allocated on the specifiedMemoryStackand 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().
-
nswapchainCount
public static int nswapchainCount(long struct)
Unsafe version ofswapchainCount().
-
npPresentIds
@Nullable public static java.nio.LongBuffer npPresentIds(long struct)
Unsafe version ofpPresentIds.
-
nsType
public static void nsType(long struct, int value)Unsafe version ofsType.
-
npNext
public static void npNext(long struct, long value)Unsafe version ofpNext.
-
nswapchainCount
public static void nswapchainCount(long struct, int value)Sets the specified value to theswapchainCountfield of the specifiedstruct.
-
npPresentIds
public static void npPresentIds(long struct, @Nullable java.nio.LongBuffer value)Unsafe version ofpPresentIds.
-
-