Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- displayPowerControlEXT :: forall io. MonadIO io => Device -> DisplayKHR -> DisplayPowerInfoEXT -> io ()
- registerDeviceEventEXT :: forall io. MonadIO io => Device -> DeviceEventInfoEXT -> ("allocator" ::: Maybe AllocationCallbacks) -> io Fence
- registerDisplayEventEXT :: forall io. MonadIO io => Device -> DisplayKHR -> DisplayEventInfoEXT -> ("allocator" ::: Maybe AllocationCallbacks) -> io Fence
- getSwapchainCounterEXT :: forall io. MonadIO io => Device -> SwapchainKHR -> SurfaceCounterFlagBitsEXT -> io ("counterValue" ::: Word64)
- data DisplayPowerInfoEXT = DisplayPowerInfoEXT {}
- data DeviceEventInfoEXT = DeviceEventInfoEXT {}
- data DisplayEventInfoEXT = DisplayEventInfoEXT {}
- data SwapchainCounterCreateInfoEXT = SwapchainCounterCreateInfoEXT {}
- newtype DisplayPowerStateEXT where
- newtype DeviceEventTypeEXT where
- newtype DisplayEventTypeEXT where
- type EXT_DISPLAY_CONTROL_SPEC_VERSION = 1
- pattern EXT_DISPLAY_CONTROL_SPEC_VERSION :: forall a. Integral a => a
- type EXT_DISPLAY_CONTROL_EXTENSION_NAME = "VK_EXT_display_control"
- pattern EXT_DISPLAY_CONTROL_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
- newtype DisplayKHR = DisplayKHR Word64
- newtype SwapchainKHR = SwapchainKHR Word64
- newtype SurfaceCounterFlagBitsEXT where
- type SurfaceCounterFlagsEXT = SurfaceCounterFlagBitsEXT
Documentation
displayPowerControlEXT :: forall io. MonadIO io => Device -> DisplayKHR -> DisplayPowerInfoEXT -> io () Source #
vkDisplayPowerControlEXT - Set the power state of a display
Parameters
device
is a logical device associated withdisplay
.
display
is the display whose power state is modified.pDisplayPowerInfo
is aDisplayPowerInfoEXT
structure specifying the new power state ofdisplay
.
Valid Usage (Implicit)
device
must be a validDevice
handle
display
must be a validDisplayKHR
handlepDisplayPowerInfo
must be a valid pointer to a validDisplayPowerInfoEXT
structure- Both of
device
, anddisplay
must have been created, allocated, or retrieved from the samePhysicalDevice
Return Codes
See Also
registerDeviceEventEXT :: forall io. MonadIO io => Device -> DeviceEventInfoEXT -> ("allocator" ::: Maybe AllocationCallbacks) -> io Fence Source #
vkRegisterDeviceEventEXT - Signal a fence when a device event occurs
Parameters
device
is a logical device on which the event may occur.
pDeviceEventInfo
is a pointer to aDeviceEventInfoEXT
structure describing the event of interest to the application.pAllocator
controls host memory allocation as described in the Memory Allocation chapter.pFence
is a pointer to a handle in which the resulting fence object is returned.
Valid Usage (Implicit)
device
must be a validDevice
handle
pDeviceEventInfo
must be a valid pointer to a validDeviceEventInfoEXT
structure- If
pAllocator
is notNULL
,pAllocator
must be a valid pointer to a validAllocationCallbacks
structure pFence
must be a valid pointer to aFence
handle
Return Codes
See Also
registerDisplayEventEXT :: forall io. MonadIO io => Device -> DisplayKHR -> DisplayEventInfoEXT -> ("allocator" ::: Maybe AllocationCallbacks) -> io Fence Source #
vkRegisterDisplayEventEXT - Signal a fence when a display event occurs
Parameters
device
is a logical device associated withdisplay
display
is the display on which the event may occur.pDisplayEventInfo
is a pointer to aDisplayEventInfoEXT
structure describing the event of interest to the application.pAllocator
controls host memory allocation as described in the Memory Allocation chapter.pFence
is a pointer to a handle in which the resulting fence object is returned.
Valid Usage (Implicit)
device
must be a validDevice
handle
display
must be a validDisplayKHR
handlepDisplayEventInfo
must be a valid pointer to a validDisplayEventInfoEXT
structure- If
pAllocator
is notNULL
,pAllocator
must be a valid pointer to a validAllocationCallbacks
structure pFence
must be a valid pointer to aFence
handle- Both of
device
, anddisplay
must have been created, allocated, or retrieved from the samePhysicalDevice
Return Codes
See Also
AllocationCallbacks
,
Device
, DisplayEventInfoEXT
,
DisplayKHR
,
Fence
getSwapchainCounterEXT :: forall io. MonadIO io => Device -> SwapchainKHR -> SurfaceCounterFlagBitsEXT -> io ("counterValue" ::: Word64) Source #
vkGetSwapchainCounterEXT - Query the current value of a surface counter
Parameters
device
is theDevice
associated withswapchain
.
swapchain
is the swapchain from which to query the counter value.counter
is the counter to query.pCounterValue
will return the current value of the counter.
Description
If a counter is not available because the swapchain is out of date, the
implementation may return
ERROR_OUT_OF_DATE_KHR
.
Valid Usage
- One or more present commands on
swapchain
must have been processed by the presentation engine
Valid Usage (Implicit)
device
must be a validDevice
handle
swapchain
must be a validSwapchainKHR
handlecounter
must be a validSurfaceCounterFlagBitsEXT
valuepCounterValue
must be a valid pointer to auint64_t
value- Both of
device
, andswapchain
must have been created, allocated, or retrieved from the sameInstance
Return Codes
See Also
data DisplayPowerInfoEXT Source #
VkDisplayPowerInfoEXT - Describe the power state of a display
Valid Usage (Implicit)
See Also
DisplayPowerInfoEXT | |
|
Instances
data DeviceEventInfoEXT Source #
VkDeviceEventInfoEXT - Describe a device event to create
Valid Usage (Implicit)
See Also
DeviceEventInfoEXT | |
|
Instances
data DisplayEventInfoEXT Source #
VkDisplayEventInfoEXT - Describe a display event to create
Valid Usage (Implicit)
See Also
DisplayEventInfoEXT | |
|
Instances
data SwapchainCounterCreateInfoEXT Source #
VkSwapchainCounterCreateInfoEXT - Specify the surface counters desired
Valid Usage
- The bits in
surfaceCounters
must be supported bySwapchainCreateInfoKHR
::surface
, as reported bygetPhysicalDeviceSurfaceCapabilities2EXT
Valid Usage (Implicit)
sType
must beSTRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT
surfaceCounters
must be a valid combination ofSurfaceCounterFlagBitsEXT
values
See Also
SwapchainCounterCreateInfoEXT | |
|
Instances
newtype DisplayPowerStateEXT Source #
pattern DISPLAY_POWER_STATE_OFF_EXT :: DisplayPowerStateEXT |
|
pattern DISPLAY_POWER_STATE_SUSPEND_EXT :: DisplayPowerStateEXT |
|
pattern DISPLAY_POWER_STATE_ON_EXT :: DisplayPowerStateEXT |
|
Instances
newtype DeviceEventTypeEXT Source #
pattern DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT :: DeviceEventTypeEXT |
|
Instances
newtype DisplayEventTypeEXT Source #
pattern DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT :: DisplayEventTypeEXT |
|
Instances
type EXT_DISPLAY_CONTROL_SPEC_VERSION = 1 Source #
pattern EXT_DISPLAY_CONTROL_SPEC_VERSION :: forall a. Integral a => a Source #
type EXT_DISPLAY_CONTROL_EXTENSION_NAME = "VK_EXT_display_control" Source #
pattern EXT_DISPLAY_CONTROL_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a Source #
newtype DisplayKHR Source #
VkDisplayKHR - Opaque handle to a display object
See Also
DisplayPlanePropertiesKHR
,
DisplayPropertiesKHR
,
acquireXlibDisplayEXT
,
createDisplayModeKHR
,
displayPowerControlEXT
,
getDisplayModeProperties2KHR
,
getDisplayModePropertiesKHR
,
getDisplayPlaneSupportedDisplaysKHR
,
getRandROutputDisplayEXT
,
registerDisplayEventEXT
,
releaseDisplayEXT
Instances
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
Instances
newtype SurfaceCounterFlagBitsEXT Source #
VkSurfaceCounterFlagBitsEXT - Surface-relative counter types
See Also
pattern SURFACE_COUNTER_VBLANK_EXT :: SurfaceCounterFlagBitsEXT |
|