vulkan-3.2.0.0: Bindings to the Vulkan graphics API.

Safe HaskellNone
LanguageHaskell2010

Graphics.Vulkan.Extensions.VK_EXT_hdr_metadata

Synopsis

Documentation

setHdrMetadataEXT :: forall io. MonadIO io => Device -> ("swapchains" ::: Vector SwapchainKHR) -> ("metadata" ::: Vector HdrMetadataEXT) -> io () Source #

vkSetHdrMetadataEXT - function to set Hdr metadata

Parameters

  • device is the logical device where the swapchain(s) were created.
  • swapchainCount is the number of swapchains included in pSwapchains.
  • pSwapchains is a pointer to an array of swapchainCount SwapchainKHR handles.
  • pMetadata is a pointer to an array of swapchainCount HdrMetadataEXT structures.

Valid Usage (Implicit)

  • device must be a valid Device handle
  • pSwapchains must be a valid pointer to an array of swapchainCount valid SwapchainKHR handles
  • pMetadata must be a valid pointer to an array of swapchainCount valid HdrMetadataEXT structures
  • swapchainCount must be greater than 0
  • Both of device, and the elements of pSwapchains must have been created, allocated, or retrieved from the same Instance

See Also

Device, HdrMetadataEXT, SwapchainKHR

data XYColorEXT Source #

VkXYColorEXT - structure to specify X,Y chromaticity coordinates

See Also

HdrMetadataEXT

Constructors

XYColorEXT 

Fields

data HdrMetadataEXT Source #

VkHdrMetadataEXT - structure to specify Hdr metadata

Valid Usage (Implicit)

Note

The validity and use of this data is outside the scope of Vulkan.

See Also

StructureType, XYColorEXT, setHdrMetadataEXT

Constructors

HdrMetadataEXT 

Fields

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

type EXT_HDR_METADATA_EXTENSION_NAME = "VK_EXT_hdr_metadata" Source #

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

newtype SwapchainKHR Source #

VkSwapchainKHR - Opaque handle to a swapchain object

Description

A swapchain is an abstraction for an array of presentable images that are associated with a surface. The presentable images are represented by Image objects created by the platform. One image (which can be an array image for multiview/stereoscopic-3D surfaces) is displayed at a time, but multiple images can be queued for presentation. An application renders to the image, and then queues the image for presentation to the surface.

A native window cannot be associated with more than one non-retired swapchain at a time. Further, swapchains cannot be created for native windows that have a non-Vulkan graphics API surface associated with them.

Note

The presentation engine is an abstraction for the platform’s compositor or display engine.

The presentation engine may be synchronous or asynchronous with respect to the application and/or logical device.

Some implementations may use the device’s graphics queue or dedicated presentation hardware to perform presentation.

The presentable images of a swapchain are owned by the presentation engine. An application can acquire use of a presentable image from the presentation engine. Use of a presentable image must occur only after the image is returned by acquireNextImageKHR, and before it is presented by queuePresentKHR. This includes transitioning the image layout and rendering commands.

An application can acquire use of a presentable image with acquireNextImageKHR. After acquiring a presentable image and before modifying it, the application must use a synchronization primitive to ensure that the presentation engine has finished reading from the image. The application can then transition the image’s layout, queue rendering commands to it, etc. Finally, the application presents the image with queuePresentKHR, which releases the acquisition of the image.

The presentation engine controls the order in which presentable images are acquired for use by the application.

Note

This allows the platform to handle situations which require out-of-order return of images after presentation. At the same time, it allows the application to generate command buffers referencing all of the images in the swapchain at initialization time, rather than in its main loop.

See Also

AcquireNextImageInfoKHR, BindImageMemorySwapchainInfoKHR, ImageSwapchainCreateInfoKHR, PresentInfoKHR, SwapchainCreateInfoKHR, acquireFullScreenExclusiveModeEXT, acquireNextImageKHR, createSharedSwapchainsKHR, createSwapchainKHR, destroySwapchainKHR, getPastPresentationTimingGOOGLE, getRefreshCycleDurationGOOGLE, getSwapchainCounterEXT, getSwapchainImagesKHR, getSwapchainStatusKHR, releaseFullScreenExclusiveModeEXT, setHdrMetadataEXT, setLocalDimmingAMD

Constructors

SwapchainKHR Word64 
Instances
Eq SwapchainKHR Source # 
Instance details

Defined in Graphics.Vulkan.Extensions.Handles

Ord SwapchainKHR Source # 
Instance details

Defined in Graphics.Vulkan.Extensions.Handles

Show SwapchainKHR Source # 
Instance details

Defined in Graphics.Vulkan.Extensions.Handles

Storable SwapchainKHR Source # 
Instance details

Defined in Graphics.Vulkan.Extensions.Handles

Zero SwapchainKHR Source # 
Instance details

Defined in Graphics.Vulkan.Extensions.Handles

IsHandle SwapchainKHR Source # 
Instance details

Defined in Graphics.Vulkan.Extensions.Handles