Structures

VkSemaphoreGetFdInfoKHR

Structure describing a POSIX FD semaphore export operation

The VkSemaphoreGetFdInfoKHR structure is defined as:

typedef struct VkSemaphoreGetFdInfoKHR {
    VkStructureType sType;
    const void* pNext;
    VkSemaphore semaphore;
    VkExternalSemaphoreHandleTypeFlagBits handleType;
} VkSemaphoreGetFdInfoKHR;
  • sType is a VkStructureType value identifying this structure.
  • pNext is NULL or a pointer to a structure extending this structure.
  • semaphore is the semaphore from which state will be exported.
  • handleType is a VkExternalSemaphoreHandleTypeFlagBits value specifying the type of handle requested.

The properties of the file descriptor returned depend on the value of handleType. See VkExternalSemaphoreHandleTypeFlagBits for a description of the properties of the defined external semaphore handle types.

Valid Usage

VUID-VkSemaphoreGetFdInfoKHR-handleType-01132

handleType must have been included in VkExportSemaphoreCreateInfo::handleTypes when semaphore’s current payload was created

VUID-VkSemaphoreGetFdInfoKHR-semaphore-01133

semaphore must not currently have its payload replaced by an imported payload as described below in Importing Semaphore Payloads unless that imported payload’s handle type was included in VkExternalSemaphoreProperties::exportFromImportedHandleTypes for handleType

VUID-VkSemaphoreGetFdInfoKHR-handleType-01134

If handleType refers to a handle type with copy payload transference semantics, as defined below in Importing Semaphore Payloads, there must be no queue waiting on semaphore

VUID-VkSemaphoreGetFdInfoKHR-handleType-01135

If handleType refers to a handle type with copy payload transference semantics, semaphore must be signaled, or have an associated semaphore signal operation pending execution

VUID-VkSemaphoreGetFdInfoKHR-handleType-01136

handleType must be defined as a POSIX file descriptor handle

VUID-VkSemaphoreGetFdInfoKHR-handleType-03253

If handleType refers to a handle type with copy payload transference semantics, semaphore must have been created with a VkSemaphoreType of VK_SEMAPHORE_TYPE_BINARY

VUID-VkSemaphoreGetFdInfoKHR-handleType-03254

If handleType refers to a handle type with copy payload transference semantics, semaphore must have an associated semaphore signal operation that has been submitted for execution and any semaphore signal operations on which it depends must have also been submitted for execution

Valid Usage (Implicit)