| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Vulkan.Core11.Enums.ExternalFenceHandleTypeFlagBits
Synopsis
- type ExternalFenceHandleTypeFlags = ExternalFenceHandleTypeFlagBits
- newtype ExternalFenceHandleTypeFlagBits where
- ExternalFenceHandleTypeFlagBits Flags
- pattern EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT :: ExternalFenceHandleTypeFlagBits
- pattern EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT :: ExternalFenceHandleTypeFlagBits
- pattern EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT :: ExternalFenceHandleTypeFlagBits
- pattern EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT :: ExternalFenceHandleTypeFlagBits
Documentation
newtype ExternalFenceHandleTypeFlagBits Source #
VkExternalFenceHandleTypeFlagBits - Bitmask of valid external fence handle types
Description
EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BITspecifies a POSIX file descriptor handle that has only limited valid usage outside of Vulkan and other compatible APIs. It must be compatible with the POSIX system callsdup,dup2,close, and the non-standard system calldup3. Additionally, it must be transportable over a socket using anSCM_RIGHTScontrol message. It owns a reference to the underlying synchronization primitive represented by its Vulkan fence object.
EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BITspecifies an NT handle that has only limited valid usage outside of Vulkan and other compatible APIs. It must be compatible with the functionsDuplicateHandle,CloseHandle,CompareObjectHandles,GetHandleInformation, andSetHandleInformation. It owns a reference to the underlying synchronization primitive represented by its Vulkan fence object.EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BITspecifies a global share handle that has only limited valid usage outside of Vulkan and other compatible APIs. It is not compatible with any native APIs. It does not own a reference to the underlying synchronization primitive represented by its Vulkan fence object, and will therefore become invalid when all Vulkan fence objects associated with it are destroyed.EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BITspecifies a POSIX file descriptor handle to a Linux Sync File or Android Fence. It can be used with any native API accepting a valid sync file or fence as input. It owns a reference to the underlying synchronization primitive associated with the file descriptor. Implementations which support importing this handle type must accept any type of sync or fence FD supported by the native system they are running on.
Some external fence handle types can only be shared within the same underlying physical device and/or the same driver version, as defined in the following table:
| Handle type | PhysicalDeviceIDProperties::driverUUID | PhysicalDeviceIDProperties::deviceUUID |
EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT | Must match | Must match |
EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT | Must match | Must match |
EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT | Must match | Must match |
EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT | No restriction | No restriction |
External Fence Handle Types Compatibility
See Also
VK_KHR_external_fence_capabilities,
VK_VERSION_1_1,
ExternalFenceHandleTypeFlags,
FenceGetFdInfoKHR,
FenceGetWin32HandleInfoKHR,
ImportFenceFdInfoKHR,
ImportFenceWin32HandleInfoKHR,
PhysicalDeviceExternalFenceInfo
Constructors
| ExternalFenceHandleTypeFlagBits Flags |
Bundled Patterns