Safe Haskell | None |
---|---|
Language | Haskell2010 |
Name
VK_EXT_queue_family_foreign - device extension
VK_EXT_queue_family_foreign
- Name String
VK_EXT_queue_family_foreign
- Extension Type
- Device extension
- Registered Extension Number
- 127
- Revision
- 1
- Extension and Version Dependencies
- Requires Vulkan 1.0
- Requires
VK_KHR_external_memory
- Contact
Other Extension Metadata
- Last Modified Date
- 2017-11-01
- IP Status
- No known IP claims.
- Contributors
- Chad Versace, Google
- James Jones, NVIDIA
- Jason Ekstrand, Intel
- Jesse Hall, Google
- Daniel Rakos, AMD
- Ray Smith, ARM
Description
This extension defines a special queue family,
QUEUE_FAMILY_FOREIGN_EXT
, which can be used
to transfer ownership of resources backed by external memory to foreign,
external queues. This is similar to
QUEUE_FAMILY_EXTERNAL_KHR
, defined in
VK_KHR_external_memory
. The key differences between the two are:
- The queues represented by
QUEUE_FAMILY_EXTERNAL_KHR
must share the same physical device and the same driver version as the currentInstance
.QUEUE_FAMILY_FOREIGN_EXT
has no such restrictions. It can represent devices and drivers from other vendors, and can even represent non-Vulkan-capable devices. - All resources backed by external memory support
QUEUE_FAMILY_EXTERNAL_KHR
. Support forQUEUE_FAMILY_FOREIGN_EXT
is more restrictive. - Applications should expect transitions to/from
QUEUE_FAMILY_FOREIGN_EXT
to be more expensive than transitions to/fromQUEUE_FAMILY_EXTERNAL_KHR
.
New Enum Constants
Version History
Revision 1, 2017-11-01 (Chad Versace)
- Squashed internal revisions
See Also
Document Notes
For more information, see the Vulkan Specification
This page is a generated document. Fixes and changes should be made to the generator scripts, not directly.
Documentation
type EXT_QUEUE_FAMILY_FOREIGN_SPEC_VERSION = 1 Source #
pattern EXT_QUEUE_FAMILY_FOREIGN_SPEC_VERSION :: forall a. Integral a => a Source #
type EXT_QUEUE_FAMILY_FOREIGN_EXTENSION_NAME = "VK_EXT_queue_family_foreign" Source #
pattern EXT_QUEUE_FAMILY_FOREIGN_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a Source #
type QUEUE_FAMILY_FOREIGN_EXT = 4294967293 Source #
pattern QUEUE_FAMILY_FOREIGN_EXT :: Word32 Source #