vulkan-3.26.1: Bindings to the Vulkan graphics API.
Safe HaskellSafe-Inferred
LanguageHaskell2010

Vulkan.Extensions.VK_EXT_metal_surface

Description

Name

VK_EXT_metal_surface - instance extension

VK_EXT_metal_surface

Name String
VK_EXT_metal_surface
Extension Type
Instance extension
Registered Extension Number
218
Revision
1
Ratification Status
Not ratified
Extension and Version Dependencies
VK_KHR_surface
Contact

Other Extension Metadata

Last Modified Date
2018-10-01
IP Status
No known IP claims.
Contributors
  • Dzmitry Malyshau, Mozilla Corp.

Description

The VK_EXT_metal_surface extension is an instance extension. It provides a mechanism to create a SurfaceKHR object (defined by the VK_KHR_surface extension) from CAMetalLayer, which is the native rendering surface of Apple’s Metal framework.

New Base Types

New Commands

New Structures

New Bitmasks

New Enum Constants

Version History

  • Revision 1, 2018-10-01 (Dzmitry Malyshau)

    • Initial version

See Also

CAMetalLayer, MetalSurfaceCreateFlagsEXT, MetalSurfaceCreateInfoEXT, createMetalSurfaceEXT

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.

Synopsis

Documentation

createMetalSurfaceEXT Source #

Arguments

:: forall io. MonadIO io 
=> Instance

instance is the instance with which to associate the surface.

-> MetalSurfaceCreateInfoEXT

pCreateInfo is a pointer to a MetalSurfaceCreateInfoEXT structure specifying parameters affecting the creation of the surface object.

-> ("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).

-> io SurfaceKHR 

vkCreateMetalSurfaceEXT - Create a VkSurfaceKHR object for CAMetalLayer

Valid Usage (Implicit)

  • instance must be a valid Instance handle

Return Codes

Success
Failure

See Also

VK_EXT_metal_surface, AllocationCallbacks, Instance, MetalSurfaceCreateInfoEXT, SurfaceKHR

data MetalSurfaceCreateInfoEXT Source #

VkMetalSurfaceCreateInfoEXT - Structure specifying parameters of a newly created Metal surface object

Valid Usage (Implicit)

See Also

VK_EXT_metal_surface, MetalSurfaceCreateFlagsEXT, StructureType, createMetalSurfaceEXT

Constructors

MetalSurfaceCreateInfoEXT 

Fields

Instances

Instances details
Storable MetalSurfaceCreateInfoEXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_metal_surface

Show MetalSurfaceCreateInfoEXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_metal_surface

Eq MetalSurfaceCreateInfoEXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_metal_surface

FromCStruct MetalSurfaceCreateInfoEXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_metal_surface

ToCStruct MetalSurfaceCreateInfoEXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_metal_surface

Zero MetalSurfaceCreateInfoEXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_metal_surface

newtype MetalSurfaceCreateFlagsEXT Source #

VkMetalSurfaceCreateFlagsEXT - Reserved for future use

Description

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

See Also

VK_EXT_metal_surface, MetalSurfaceCreateInfoEXT

Instances

Instances details
Storable MetalSurfaceCreateFlagsEXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_metal_surface

Bits MetalSurfaceCreateFlagsEXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_metal_surface

Methods

(.&.) :: MetalSurfaceCreateFlagsEXT -> MetalSurfaceCreateFlagsEXT -> MetalSurfaceCreateFlagsEXT #

(.|.) :: MetalSurfaceCreateFlagsEXT -> MetalSurfaceCreateFlagsEXT -> MetalSurfaceCreateFlagsEXT #

xor :: MetalSurfaceCreateFlagsEXT -> MetalSurfaceCreateFlagsEXT -> MetalSurfaceCreateFlagsEXT #

complement :: MetalSurfaceCreateFlagsEXT -> MetalSurfaceCreateFlagsEXT #

shift :: MetalSurfaceCreateFlagsEXT -> Int -> MetalSurfaceCreateFlagsEXT #

rotate :: MetalSurfaceCreateFlagsEXT -> Int -> MetalSurfaceCreateFlagsEXT #

zeroBits :: MetalSurfaceCreateFlagsEXT #

bit :: Int -> MetalSurfaceCreateFlagsEXT #

setBit :: MetalSurfaceCreateFlagsEXT -> Int -> MetalSurfaceCreateFlagsEXT #

clearBit :: MetalSurfaceCreateFlagsEXT -> Int -> MetalSurfaceCreateFlagsEXT #

complementBit :: MetalSurfaceCreateFlagsEXT -> Int -> MetalSurfaceCreateFlagsEXT #

testBit :: MetalSurfaceCreateFlagsEXT -> Int -> Bool #

bitSizeMaybe :: MetalSurfaceCreateFlagsEXT -> Maybe Int #

bitSize :: MetalSurfaceCreateFlagsEXT -> Int #

isSigned :: MetalSurfaceCreateFlagsEXT -> Bool #

shiftL :: MetalSurfaceCreateFlagsEXT -> Int -> MetalSurfaceCreateFlagsEXT #

unsafeShiftL :: MetalSurfaceCreateFlagsEXT -> Int -> MetalSurfaceCreateFlagsEXT #

shiftR :: MetalSurfaceCreateFlagsEXT -> Int -> MetalSurfaceCreateFlagsEXT #

unsafeShiftR :: MetalSurfaceCreateFlagsEXT -> Int -> MetalSurfaceCreateFlagsEXT #

rotateL :: MetalSurfaceCreateFlagsEXT -> Int -> MetalSurfaceCreateFlagsEXT #

rotateR :: MetalSurfaceCreateFlagsEXT -> Int -> MetalSurfaceCreateFlagsEXT #

popCount :: MetalSurfaceCreateFlagsEXT -> Int #

FiniteBits MetalSurfaceCreateFlagsEXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_metal_surface

Read MetalSurfaceCreateFlagsEXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_metal_surface

Show MetalSurfaceCreateFlagsEXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_metal_surface

Eq MetalSurfaceCreateFlagsEXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_metal_surface

Ord MetalSurfaceCreateFlagsEXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_metal_surface

Zero MetalSurfaceCreateFlagsEXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_metal_surface

pattern EXT_METAL_SURFACE_SPEC_VERSION :: forall a. Integral a => a Source #

type EXT_METAL_SURFACE_EXTENSION_NAME = "VK_EXT_metal_surface" Source #

pattern EXT_METAL_SURFACE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a Source #

newtype SurfaceKHR Source #

Constructors

SurfaceKHR Word64 

Instances

Instances details
Storable SurfaceKHR Source # 
Instance details

Defined in Vulkan.Extensions.Handles

Show SurfaceKHR Source # 
Instance details

Defined in Vulkan.Extensions.Handles

Eq SurfaceKHR Source # 
Instance details

Defined in Vulkan.Extensions.Handles

Ord SurfaceKHR Source # 
Instance details

Defined in Vulkan.Extensions.Handles

HasObjectType SurfaceKHR Source # 
Instance details

Defined in Vulkan.Extensions.Handles

IsHandle SurfaceKHR Source # 
Instance details

Defined in Vulkan.Extensions.Handles

Zero SurfaceKHR Source # 
Instance details

Defined in Vulkan.Extensions.Handles