| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Graphics.Vulkan.Extensions.VK_NN_vi_surface
Synopsis
- newtype VkViSurfaceCreateFlagsNN = VkViSurfaceCreateFlagsNN VkFlags
- pattern VK_STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: VkStructureType
- pattern VK_NN_VI_SURFACE_SPEC_VERSION :: Integral a => a
- pattern VK_NN_VI_SURFACE_EXTENSION_NAME :: (Eq a, IsString a) => a
- vkCreateViSurfaceNN :: ("instance" ::: VkInstance) -> ("pCreateInfo" ::: Ptr VkViSurfaceCreateInfoNN) -> ("pAllocator" ::: Ptr VkAllocationCallbacks) -> ("pSurface" ::: Ptr VkSurfaceKHR) -> IO VkResult
- data VkViSurfaceCreateInfoNN = VkViSurfaceCreateInfoNN {
- vkSType :: VkStructureType
- vkPNext :: Ptr ()
- vkFlags :: VkViSurfaceCreateFlagsNN
- vkWindow :: Ptr ()
Documentation
newtype VkViSurfaceCreateFlagsNN Source #
Constructors
| VkViSurfaceCreateFlagsNN VkFlags |
Instances
pattern VK_NN_VI_SURFACE_SPEC_VERSION :: Integral a => a Source #
pattern VK_NN_VI_SURFACE_EXTENSION_NAME :: (Eq a, IsString a) => a Source #
vkCreateViSurfaceNN :: ("instance" ::: VkInstance) -> ("pCreateInfo" ::: Ptr VkViSurfaceCreateInfoNN) -> ("pAllocator" ::: Ptr VkAllocationCallbacks) -> ("pSurface" ::: Ptr VkSurfaceKHR) -> IO VkResult Source #
vkCreateViSurfaceNN - Create a
VkSurfaceKHR object for a VI
layer
Parameters
instanceis the instance with which to associate the surface.
pCreateInfois a pointer to an instance of theVkViSurfaceCreateInfoNNstructure containing parameters affecting the creation of the surface object.pAllocatoris the allocator used for host memory allocated for the surface object when there is no more specific allocator available (see Memory Allocation).pSurfacepoints to aVkSurfaceKHRhandle in which the created surface object is returned.
Description
During the lifetime of a surface created using a particular
nn::vi::NativeWindowHandle any attempts to create another surface
for the same nn::vi::Layer and any attempts to connect to the same
nn::vi::Layer through other platform mechanisms will have
undefined results.
The currentExtent of a VI surface is always undefined. Applications
are expected to choose an appropriate size for the swapchain’s
imageExtent (e.g., by matching the the result of a call to
nn::vi::GetDisplayResolution).
Valid Usage (Implicit)
instancemust be a validVkInstancehandle
pCreateInfomust be a valid pointer to a validVkViSurfaceCreateInfoNNstructure- If
pAllocatoris notNULL,pAllocatormust be a valid pointer to a validVkAllocationCallbacksstructure pSurfacemust be a valid pointer to aVkSurfaceKHRhandle
Return Codes
[Success]
- VK_SUCCESS
[Failure]
- VK_ERROR_OUT_OF_HOST_MEMORY
VK_ERROR_OUT_OF_DEVICE_MEMORY
VK_ERROR_NATIVE_WINDOW_IN_USE_KHR
See Also
VkAllocationCallbacks,
VkInstance,
VkSurfaceKHR,
VkViSurfaceCreateInfoNN
data VkViSurfaceCreateInfoNN Source #
VkViSurfaceCreateInfoNN - Structure specifying parameters of a newly created VI surface object
Valid Usage
windowmust be a validnn::vi::NativeWindowHandle
Valid Usage (Implicit)
sTypemust beVK_STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN
pNextmust beNULLflagsmust be0
See Also
VkStructureType,
VkViSurfaceCreateFlagsNN, vkCreateViSurfaceNN
Constructors
| VkViSurfaceCreateInfoNN | |
Fields
| |
Instances
| Eq VkViSurfaceCreateInfoNN Source # | |
Methods (==) :: VkViSurfaceCreateInfoNN -> VkViSurfaceCreateInfoNN -> Bool # (/=) :: VkViSurfaceCreateInfoNN -> VkViSurfaceCreateInfoNN -> Bool # | |
| Show VkViSurfaceCreateInfoNN Source # | |
Methods showsPrec :: Int -> VkViSurfaceCreateInfoNN -> ShowS # show :: VkViSurfaceCreateInfoNN -> String # showList :: [VkViSurfaceCreateInfoNN] -> ShowS # | |
| Storable VkViSurfaceCreateInfoNN Source # | |
Methods sizeOf :: VkViSurfaceCreateInfoNN -> Int # alignment :: VkViSurfaceCreateInfoNN -> Int # peekElemOff :: Ptr VkViSurfaceCreateInfoNN -> Int -> IO VkViSurfaceCreateInfoNN # pokeElemOff :: Ptr VkViSurfaceCreateInfoNN -> Int -> VkViSurfaceCreateInfoNN -> IO () # peekByteOff :: Ptr b -> Int -> IO VkViSurfaceCreateInfoNN # pokeByteOff :: Ptr b -> Int -> VkViSurfaceCreateInfoNN -> IO () # peek :: Ptr VkViSurfaceCreateInfoNN -> IO VkViSurfaceCreateInfoNN # poke :: Ptr VkViSurfaceCreateInfoNN -> VkViSurfaceCreateInfoNN -> IO () # | |