Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- setHdrMetadataEXT :: Device -> ("swapchains" ::: Vector SwapchainKHR) -> ("metadata" ::: Vector HdrMetadataEXT) -> IO ()
- data XYColorEXT = XYColorEXT {}
- data HdrMetadataEXT = HdrMetadataEXT {}
- type EXT_HDR_METADATA_SPEC_VERSION = 2
- pattern EXT_HDR_METADATA_SPEC_VERSION :: forall a. Integral a => a
- type EXT_HDR_METADATA_EXTENSION_NAME = "VK_EXT_hdr_metadata"
- pattern EXT_HDR_METADATA_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
- newtype SwapchainKHR = SwapchainKHR Word64
Documentation
setHdrMetadataEXT :: 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 inpSwapchains
.pSwapchains
is a pointer to an array ofswapchainCount
SwapchainKHR
handles.pMetadata
is a pointer to an array ofswapchainCount
HdrMetadataEXT
structures.
Valid Usage (Implicit)
pSwapchains
must be a valid pointer to an array ofswapchainCount
validSwapchainKHR
handlespMetadata
must be a valid pointer to an array ofswapchainCount
validHdrMetadataEXT
structuresswapchainCount
must be greater than0
- Both of
Device
, and the elements ofpSwapchains
must have been created, allocated, or retrieved from the sameInstance
See Also
data XYColorEXT Source #
Instances
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
HdrMetadataEXT | |
|
Instances
Show HdrMetadataEXT Source # | |
Defined in Graphics.Vulkan.Extensions.VK_EXT_hdr_metadata showsPrec :: Int -> HdrMetadataEXT -> ShowS # show :: HdrMetadataEXT -> String # showList :: [HdrMetadataEXT] -> ShowS # | |
FromCStruct HdrMetadataEXT Source # | |
ToCStruct HdrMetadataEXT Source # | |
Defined in Graphics.Vulkan.Extensions.VK_EXT_hdr_metadata withCStruct :: HdrMetadataEXT -> (Ptr HdrMetadataEXT -> IO b) -> IO b Source # pokeCStruct :: Ptr HdrMetadataEXT -> HdrMetadataEXT -> IO b -> IO b Source # withZeroCStruct :: (Ptr HdrMetadataEXT -> IO b) -> IO b Source # pokeZeroCStruct :: Ptr HdrMetadataEXT -> IO b -> IO b Source # cStructSize :: Int Source # | |
Zero HdrMetadataEXT Source # | |
type EXT_HDR_METADATA_SPEC_VERSION = 2 Source #
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