| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Vulkan.Extensions.VK_KHR_android_surface
Synopsis
- createAndroidSurfaceKHR :: forall io. MonadIO io => Instance -> AndroidSurfaceCreateInfoKHR -> ("allocator" ::: Maybe AllocationCallbacks) -> io SurfaceKHR
- data AndroidSurfaceCreateInfoKHR = AndroidSurfaceCreateInfoKHR {}
- newtype AndroidSurfaceCreateFlagsKHR = AndroidSurfaceCreateFlagsKHR Flags
- type KHR_ANDROID_SURFACE_SPEC_VERSION = 6
- pattern KHR_ANDROID_SURFACE_SPEC_VERSION :: forall a. Integral a => a
- type KHR_ANDROID_SURFACE_EXTENSION_NAME = "VK_KHR_android_surface"
- pattern KHR_ANDROID_SURFACE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
- newtype SurfaceKHR = SurfaceKHR Word64
- data ANativeWindow
Documentation
createAndroidSurfaceKHR :: forall io. MonadIO io => Instance -> AndroidSurfaceCreateInfoKHR -> ("allocator" ::: Maybe AllocationCallbacks) -> io SurfaceKHR Source #
vkCreateAndroidSurfaceKHR - Create a
SurfaceKHR object for an Android native
window
Parameters
instanceis the instance to associate the surface with.
pCreateInfois a pointer to aAndroidSurfaceCreateInfoKHRstructure 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).pSurfaceis a pointer to aSurfaceKHRhandle in which the created surface object is returned.
Description
During the lifetime of a surface created using a particular
ANativeWindow handle any attempts to create
another surface for the same ANativeWindow
and any attempts to connect to the same
ANativeWindow through other platform
mechanisms will fail.
Note
In particular, only one SurfaceKHR can
exist at a time for a given window. Similarly, a native window cannot
be used by both a SurfaceKHR and
EGLSurface simultaneously.
If successful, createAndroidSurfaceKHR increments the
ANativeWindow’s reference count, and
destroySurfaceKHR will decrement it.
On Android, when a swapchain’s imageExtent does not match the
surface’s currentExtent, the presentable images will be scaled to the
surface’s dimensions during presentation. minImageExtent is (1,1), and
maxImageExtent is the maximum image size supported by the consumer.
For the system compositor, currentExtent is the window size (i.e. the
consumer’s preferred size).
Valid Usage (Implicit)
instancemust be a validInstancehandle
pCreateInfomust be a valid pointer to a validAndroidSurfaceCreateInfoKHRstructure- If
pAllocatoris notNULL,pAllocatormust be a valid pointer to a validAllocationCallbacksstructure pSurfacemust be a valid pointer to aSurfaceKHRhandle
Return Codes
See Also
AllocationCallbacks,
AndroidSurfaceCreateInfoKHR, Instance,
SurfaceKHR
data AndroidSurfaceCreateInfoKHR Source #
VkAndroidSurfaceCreateInfoKHR - Structure specifying parameters of a newly created Android surface object
Valid Usage (Implicit)
See Also
AndroidSurfaceCreateFlagsKHR,
StructureType,
createAndroidSurfaceKHR
Constructors
| AndroidSurfaceCreateInfoKHR | |
Fields
| |
Instances
newtype AndroidSurfaceCreateFlagsKHR Source #
Constructors
| AndroidSurfaceCreateFlagsKHR Flags |
Instances
type KHR_ANDROID_SURFACE_SPEC_VERSION = 6 Source #
pattern KHR_ANDROID_SURFACE_SPEC_VERSION :: forall a. Integral a => a Source #
type KHR_ANDROID_SURFACE_EXTENSION_NAME = "VK_KHR_android_surface" Source #
pattern KHR_ANDROID_SURFACE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a Source #
newtype SurfaceKHR Source #
VkSurfaceKHR - Opaque handle to a surface object
Description
The VK_KHR_surface extension declares the SurfaceKHR object, and
provides a function for destroying SurfaceKHR objects. Separate
platform-specific extensions each provide a function for creating a
SurfaceKHR object for the respective platform. From the application’s
perspective this is an opaque handle, just like the handles of other
Vulkan objects.
See Also
PhysicalDeviceSurfaceInfo2KHR,
SwapchainCreateInfoKHR,
createAndroidSurfaceKHR,
createDisplayPlaneSurfaceKHR,
createHeadlessSurfaceEXT,
createIOSSurfaceMVK,
createImagePipeSurfaceFUCHSIA,
createMacOSSurfaceMVK,
createMetalSurfaceEXT,
createStreamDescriptorSurfaceGGP,
createViSurfaceNN,
createWaylandSurfaceKHR,
createWin32SurfaceKHR,
createXcbSurfaceKHR,
createXlibSurfaceKHR,
destroySurfaceKHR,
getDeviceGroupSurfacePresentModesKHR,
getPhysicalDevicePresentRectanglesKHR,
getPhysicalDeviceSurfaceCapabilities2EXT,
getPhysicalDeviceSurfaceCapabilitiesKHR,
getPhysicalDeviceSurfaceFormatsKHR,
getPhysicalDeviceSurfacePresentModesKHR,
getPhysicalDeviceSurfaceSupportKHR
Constructors
| SurfaceKHR Word64 |
Instances
data ANativeWindow Source #