HORIZON HASKELLDocslts/ghc-9.14.x45dd5372026-10-11Search names, modules, packages, or :: a typeCtrl K

GHC 9.14.1 · lts/ghc-9.14.x · 45dd537 · 2026-10-11

Modulevulkan-3.27GHC2021

Vulkan.Extensions.VK_MVK_ios_surface

Name

VK_MVK_ios_surface - instance extension

VK_MVK_ios_surface

Name String

VK_MVK_ios_surface

Extension Type

Instance extension

Registered Extension Number

123

Revision

3

Ratification Status

Not ratified

Extension and Version Dependencies

VK_KHR_surface

Deprecation State
Contact

Other Extension Metadata

Last Modified Date

2020-07-31

IP Status

No known IP claims.

Contributors
  • Bill Hollings, The Brenwill Workshop Ltd.

Description

The VK_MVK_ios_surface extension is an instance extension. It provides a mechanism to create a SurfaceKHR object (defined by the VK_KHR_surface extension) based on a UIView, the native surface type of iOS, which is underpinned by a CAMetalLayer, to support rendering to the surface using Apple’s Metal framework.

Deprecation by VK_EXT_metal_surface

The VK_MVK_ios_surface extension is considered deprecated and has been superseded by the VK_EXT_metal_surface extension.

New Commands

New Structures

New Bitmasks

New Enum Constants

Version History

  • Revision 1, 2017-02-15 (Bill Hollings)

    • Initial draft.

  • Revision 2, 2017-02-24 (Bill Hollings)

    • Minor syntax fix to emphasize firm requirement for UIView to be backed by a CAMetalLayer.

  • Revision 3, 2020-07-31 (Bill Hollings)

    • Update documentation on requirements for UIView.

    • Mark as deprecated by VK_EXT_metal_surface.

See Also

No cross-references are available

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.

  • 5 types
  • 1 value
  • Packagevulkan-3.27
  • Exports8
  • LanguageGHC2021
  • LicenceBSD-3-Clause
  • SourceVK_MVK_ios_surface.hs
valuecreateIOSSurfaceMVK
  1. :: MonadIO io
  2. => Instance

    instance is the instance with which to associate the surface.

  3. -> IOSSurfaceCreateInfoMVK

    pCreateInfo is a pointer to a IOSSurfaceCreateInfoMVK structure containing parameters affecting the creation of the surface object.

  4. -> "allocator" ::: Maybe AllocationCallbacks

    pAllocator is the allocator used for host memory allocated for the surface object when there is no more specific allocator available (see Memory Allocation).

  5. -> io SurfaceKHR
#

vkCreateIOSSurfaceMVK - Create a VkSurfaceKHR object for an iOS UIView

Description

The createIOSSurfaceMVK function is considered legacy and has been superseded by createMetalSurfaceEXT from the VK_EXT_metal_surface extension.

Valid Usage (Implicit)

  • instance must be a valid Instance handle

Return Codes

Success
Failure

See Also

VK_MVK_ios_surface, AllocationCallbacks, IOSSurfaceCreateInfoMVK, Instance, SurfaceKHR

VkIOSSurfaceCreateInfoMVK - Structure specifying parameters of a newly created iOS surface object

Valid Usage

  • If pView is a UIView object, it must be a valid UIView, must be backed by a CALayer object of type CAMetalLayer, and createIOSSurfaceMVK must be called on the main thread

Valid Usage (Implicit)

  • pNext must be NULL

  • flags must be 0

See Also

VK_MVK_ios_surface, IOSSurfaceCreateFlagsMVK, StructureType, createIOSSurfaceMVK

Constructors

Instances5Show, Storable, FromCStruct, ToCStruct, Zero
newtypenewtype IOSSurfaceCreateFlagsMVK
#

VkIOSSurfaceCreateFlagsMVK - Reserved for future use

Description

IOSSurfaceCreateFlagsMVK is a bitmask type for setting a mask, but is currently reserved for future use.

See Also

VK_MVK_ios_surface, Flags, IOSSurfaceCreateInfoMVK

Instances8Eq, Ord, Read, Show, Bits, FiniteBits, …
newtypenewtype SurfaceKHR
#
Instances7Eq, Ord, Show, Storable, HasObjectType, IsHandle, …