Class VkImportSemaphoreFdInfoKHR
- java.lang.Object
-
- org.lwjgl.system.Pointer.Default
-
- org.lwjgl.system.Struct
-
- org.lwjgl.vulkan.VkImportSemaphoreFdInfoKHR
-
- All Implemented Interfaces:
java.lang.AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
public class VkImportSemaphoreFdInfoKHR extends org.lwjgl.system.Struct implements org.lwjgl.system.NativeResourceStructure specifying POSIX file descriptor to import to a semaphore.Description
The handle types supported by
handleTypeare:Handle Types Supported by
VkImportSemaphoreFdInfoKHRHandle Type Transference Permanence Supported EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BITReference Temporary,Permanent EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BITCopy Temporary Valid Usage
handleTypemust be a value included in the Handle Types Supported byVkImportSemaphoreFdInfoKHRtablefdmust obey any requirements listed forhandleTypein external semaphore handle types compatibility- If
handleTypeisEXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT, theVkSemaphoreCreateInfo::flagsfield must match that of the semaphore from whichfdwas exported - If
handleTypeisEXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT, theVkSemaphoreTypeCreateInfo::semaphoreTypefield must match that of the semaphore from whichfdwas exported - If
flagscontainsSEMAPHORE_IMPORT_TEMPORARY_BIT, theVkSemaphoreTypeCreateInfo::semaphoreTypefield of the semaphore from whichfdwas exported must not beSEMAPHORE_TYPE_TIMELINE
If
handleTypeisEXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT, the special value-1forfdis treated like a valid sync file descriptor referring to an object that has already signaled. The import operation will succeed and theVkSemaphorewill have a temporarily imported payload as if a valid file descriptor had been provided.Note
This special behavior for importing an invalid sync file descriptor allows easier interoperability with other system APIs which use the convention that an invalid sync file descriptor represents work that has already completed and does not need to be waited for. It is consistent with the option for implementations to return a
-1file descriptor when exporting aEXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BITfrom aVkSemaphorewhich is signaled.Valid Usage (Implicit)
sTypemust beSTRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHRpNextmust beNULLsemaphoremust be a validVkSemaphorehandleflagsmust be a valid combination ofVkSemaphoreImportFlagBitsvalueshandleTypemust be a validVkExternalSemaphoreHandleTypeFlagBitsvalue
Host Synchronization
- Host access to
semaphoremust be externally synchronized
See Also
Layout
struct VkImportSemaphoreFdInfoKHR { VkStructureTypesType(); void const *pNext(); VkSemaphoresemaphore(); VkSemaphoreImportFlagsflags(); VkExternalSemaphoreHandleTypeFlagBitshandleType(); intfd(); }
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classVkImportSemaphoreFdInfoKHR.BufferAn array ofVkImportSemaphoreFdInfoKHRstructs.
-
Constructor Summary
Constructors Constructor Description VkImportSemaphoreFdInfoKHR(java.nio.ByteBuffer container)Creates aVkImportSemaphoreFdInfoKHRinstance at the current position of the specifiedByteBuffercontainer.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description static VkImportSemaphoreFdInfoKHRcalloc()Returns a newVkImportSemaphoreFdInfoKHRinstance allocated withmemCalloc.static VkImportSemaphoreFdInfoKHR.Buffercalloc(int capacity)Returns a newVkImportSemaphoreFdInfoKHR.Bufferinstance allocated withmemCalloc.static VkImportSemaphoreFdInfoKHR.Buffercalloc(int capacity, org.lwjgl.system.MemoryStack stack)Returns a newVkImportSemaphoreFdInfoKHR.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkImportSemaphoreFdInfoKHRcalloc(org.lwjgl.system.MemoryStack stack)Returns a newVkImportSemaphoreFdInfoKHRinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkImportSemaphoreFdInfoKHRcallocStack()Deprecated.static VkImportSemaphoreFdInfoKHR.BuffercallocStack(int capacity)Deprecated.static VkImportSemaphoreFdInfoKHR.BuffercallocStack(int capacity, org.lwjgl.system.MemoryStack stack)Deprecated.static VkImportSemaphoreFdInfoKHRcallocStack(org.lwjgl.system.MemoryStack stack)Deprecated.static VkImportSemaphoreFdInfoKHRcreate()Returns a newVkImportSemaphoreFdInfoKHRinstance allocated withBufferUtils.static VkImportSemaphoreFdInfoKHR.Buffercreate(int capacity)Returns a newVkImportSemaphoreFdInfoKHR.Bufferinstance allocated withBufferUtils.static VkImportSemaphoreFdInfoKHRcreate(long address)Returns a newVkImportSemaphoreFdInfoKHRinstance for the specified memory address.static VkImportSemaphoreFdInfoKHR.Buffercreate(long address, int capacity)Create aVkImportSemaphoreFdInfoKHR.Bufferinstance at the specified memory.static VkImportSemaphoreFdInfoKHRcreateSafe(long address)static VkImportSemaphoreFdInfoKHR.BuffercreateSafe(long address, int capacity)intfd()the external handle to import.VkImportSemaphoreFdInfoKHRfd(int value)Sets the specified value to thefd()field.intflags()a bitmask ofVkSemaphoreImportFlagBitsspecifying additional parameters for the semaphore payload import operation.VkImportSemaphoreFdInfoKHRflags(int value)Sets the specified value to theflags()field.inthandleType()aVkExternalSemaphoreHandleTypeFlagBitsvalue specifying the type offd.VkImportSemaphoreFdInfoKHRhandleType(int value)Sets the specified value to thehandleType()field.static VkImportSemaphoreFdInfoKHRmalloc()Returns a newVkImportSemaphoreFdInfoKHRinstance allocated withmemAlloc.static VkImportSemaphoreFdInfoKHR.Buffermalloc(int capacity)Returns a newVkImportSemaphoreFdInfoKHR.Bufferinstance allocated withmemAlloc.static VkImportSemaphoreFdInfoKHR.Buffermalloc(int capacity, org.lwjgl.system.MemoryStack stack)Returns a newVkImportSemaphoreFdInfoKHR.Bufferinstance allocated on the specifiedMemoryStack.static VkImportSemaphoreFdInfoKHRmalloc(org.lwjgl.system.MemoryStack stack)Returns a newVkImportSemaphoreFdInfoKHRinstance allocated on the specifiedMemoryStack.static VkImportSemaphoreFdInfoKHRmallocStack()Deprecated.static VkImportSemaphoreFdInfoKHR.BuffermallocStack(int capacity)Deprecated.static VkImportSemaphoreFdInfoKHR.BuffermallocStack(int capacity, org.lwjgl.system.MemoryStack stack)Deprecated.static VkImportSemaphoreFdInfoKHRmallocStack(org.lwjgl.system.MemoryStack stack)Deprecated.static intnfd(long struct)Unsafe version offd().static voidnfd(long struct, int value)Unsafe version offd.static intnflags(long struct)Unsafe version offlags().static voidnflags(long struct, int value)Unsafe version offlags.static intnhandleType(long struct)Unsafe version ofhandleType().static voidnhandleType(long struct, int value)Unsafe version ofhandleType.static longnpNext(long struct)Unsafe version ofpNext().static voidnpNext(long struct, long value)Unsafe version ofpNext.static longnsemaphore(long struct)Unsafe version ofsemaphore().static voidnsemaphore(long struct, long value)Unsafe version ofsemaphore.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.VkImportSemaphoreFdInfoKHRpNext(long value)Sets the specified value to thepNext()field.longsemaphore()the semaphore into which the payload will be imported.VkImportSemaphoreFdInfoKHRsemaphore(long value)Sets the specified value to thesemaphore()field.VkImportSemaphoreFdInfoKHRset(int sType, long pNext, long semaphore, int flags, int handleType, int fd)Initializes this struct with the specified values.VkImportSemaphoreFdInfoKHRset(VkImportSemaphoreFdInfoKHR src)Copies the specified struct data to this struct.intsizeof()intsType()the type of this structure.VkImportSemaphoreFdInfoKHRsType(int value)Sets the specified value to thesType()field.VkImportSemaphoreFdInfoKHRsType$Default()Sets theSTRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHRvalue to thesType()field.
-
-
-
Constructor Detail
-
VkImportSemaphoreFdInfoKHR
public VkImportSemaphoreFdInfoKHR(java.nio.ByteBuffer container)
Creates aVkImportSemaphoreFdInfoKHRinstance 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.
-
semaphore
public long semaphore()
the semaphore into which the payload will be imported.
-
flags
public int flags()
a bitmask ofVkSemaphoreImportFlagBitsspecifying additional parameters for the semaphore payload import operation.
-
handleType
public int handleType()
aVkExternalSemaphoreHandleTypeFlagBitsvalue specifying the type offd.
-
fd
public int fd()
the external handle to import.
-
sType
public VkImportSemaphoreFdInfoKHR sType(int value)
Sets the specified value to thesType()field.
-
sType$Default
public VkImportSemaphoreFdInfoKHR sType$Default()
Sets theSTRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHRvalue to thesType()field.
-
pNext
public VkImportSemaphoreFdInfoKHR pNext(long value)
Sets the specified value to thepNext()field.
-
semaphore
public VkImportSemaphoreFdInfoKHR semaphore(long value)
Sets the specified value to thesemaphore()field.
-
flags
public VkImportSemaphoreFdInfoKHR flags(int value)
Sets the specified value to theflags()field.
-
handleType
public VkImportSemaphoreFdInfoKHR handleType(int value)
Sets the specified value to thehandleType()field.
-
fd
public VkImportSemaphoreFdInfoKHR fd(int value)
Sets the specified value to thefd()field.
-
set
public VkImportSemaphoreFdInfoKHR set(int sType, long pNext, long semaphore, int flags, int handleType, int fd)
Initializes this struct with the specified values.
-
set
public VkImportSemaphoreFdInfoKHR set(VkImportSemaphoreFdInfoKHR src)
Copies the specified struct data to this struct.- Parameters:
src- the source struct- Returns:
- this struct
-
malloc
public static VkImportSemaphoreFdInfoKHR malloc()
Returns a newVkImportSemaphoreFdInfoKHRinstance allocated withmemAlloc. The instance must be explicitly freed.
-
calloc
public static VkImportSemaphoreFdInfoKHR calloc()
Returns a newVkImportSemaphoreFdInfoKHRinstance allocated withmemCalloc. The instance must be explicitly freed.
-
create
public static VkImportSemaphoreFdInfoKHR create()
Returns a newVkImportSemaphoreFdInfoKHRinstance allocated withBufferUtils.
-
create
public static VkImportSemaphoreFdInfoKHR create(long address)
Returns a newVkImportSemaphoreFdInfoKHRinstance for the specified memory address.
-
createSafe
@Nullable public static VkImportSemaphoreFdInfoKHR createSafe(long address)
-
malloc
public static VkImportSemaphoreFdInfoKHR.Buffer malloc(int capacity)
Returns a newVkImportSemaphoreFdInfoKHR.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
public static VkImportSemaphoreFdInfoKHR.Buffer calloc(int capacity)
Returns a newVkImportSemaphoreFdInfoKHR.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
public static VkImportSemaphoreFdInfoKHR.Buffer create(int capacity)
Returns a newVkImportSemaphoreFdInfoKHR.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
public static VkImportSemaphoreFdInfoKHR.Buffer create(long address, int capacity)
Create aVkImportSemaphoreFdInfoKHR.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
@Nullable public static VkImportSemaphoreFdInfoKHR.Buffer createSafe(long address, int capacity)
-
mallocStack
@Deprecated public static VkImportSemaphoreFdInfoKHR mallocStack()
Deprecated.Deprecated for removal in 3.4.0. Usemalloc(MemoryStack)instead.
-
callocStack
@Deprecated public static VkImportSemaphoreFdInfoKHR callocStack()
Deprecated.Deprecated for removal in 3.4.0. Usecalloc(MemoryStack)instead.
-
mallocStack
@Deprecated public static VkImportSemaphoreFdInfoKHR mallocStack(org.lwjgl.system.MemoryStack stack)
Deprecated.Deprecated for removal in 3.4.0. Usemalloc(MemoryStack)instead.
-
callocStack
@Deprecated public static VkImportSemaphoreFdInfoKHR callocStack(org.lwjgl.system.MemoryStack stack)
Deprecated.Deprecated for removal in 3.4.0. Usecalloc(MemoryStack)instead.
-
mallocStack
@Deprecated public static VkImportSemaphoreFdInfoKHR.Buffer mallocStack(int capacity)
Deprecated.Deprecated for removal in 3.4.0. Usemalloc(int, MemoryStack)instead.
-
callocStack
@Deprecated public static VkImportSemaphoreFdInfoKHR.Buffer callocStack(int capacity)
Deprecated.Deprecated for removal in 3.4.0. Usecalloc(int, MemoryStack)instead.
-
mallocStack
@Deprecated public static VkImportSemaphoreFdInfoKHR.Buffer mallocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Deprecated.Deprecated for removal in 3.4.0. Usemalloc(int, MemoryStack)instead.
-
callocStack
@Deprecated public static VkImportSemaphoreFdInfoKHR.Buffer callocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Deprecated.Deprecated for removal in 3.4.0. Usecalloc(int, MemoryStack)instead.
-
malloc
public static VkImportSemaphoreFdInfoKHR malloc(org.lwjgl.system.MemoryStack stack)
Returns a newVkImportSemaphoreFdInfoKHRinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
calloc
public static VkImportSemaphoreFdInfoKHR calloc(org.lwjgl.system.MemoryStack stack)
Returns a newVkImportSemaphoreFdInfoKHRinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
malloc
public static VkImportSemaphoreFdInfoKHR.Buffer malloc(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkImportSemaphoreFdInfoKHR.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocatecapacity- the buffer capacity
-
calloc
public static VkImportSemaphoreFdInfoKHR.Buffer calloc(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkImportSemaphoreFdInfoKHR.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().
-
nsemaphore
public static long nsemaphore(long struct)
Unsafe version ofsemaphore().
-
nflags
public static int nflags(long struct)
Unsafe version offlags().
-
nhandleType
public static int nhandleType(long struct)
Unsafe version ofhandleType().
-
nfd
public static int nfd(long struct)
Unsafe version offd().
-
nsType
public static void nsType(long struct, int value)Unsafe version ofsType.
-
npNext
public static void npNext(long struct, long value)Unsafe version ofpNext.
-
nsemaphore
public static void nsemaphore(long struct, long value)Unsafe version ofsemaphore.
-
nflags
public static void nflags(long struct, int value)Unsafe version offlags.
-
nhandleType
public static void nhandleType(long struct, int value)Unsafe version ofhandleType.
-
nfd
public static void nfd(long struct, int value)Unsafe version offd.
-
-