|
Ream v0.1.0-1
C++ graphics library for Linux
|
Wayland-client Vulkan swapchain (VK_KHR_wayland_surface + VkSwapchainKHR). More...
#include <RVKSwapchainWL.h>
Inheritance diagram for RVKSwapchainWL:Public Member Functions | |
| std::optional< const RSwapchainImage > | acquire () noexcept override |
| Acquire the next available swapchain image. | |
| bool | present (const RSwapchainImage &image, SkRegion *damage=nullptr) noexcept override |
| Present a previously acquired image to the display. | |
| bool | resize (SkISize size) noexcept override |
| Request a resize of future swapchain images. | |
Public Member Functions inherited from RWLSwapchain | |
| wl_surface * | surface () const noexcept |
| Returns the Wayland surface this swapchain presents to. | |
Public Member Functions inherited from RSwapchain | |
| RSwapchain (SkISize size) noexcept | |
| Construct a swapchain with the given image size. | |
| SkISize | size () const noexcept |
| The size of swapchain images in pixels. | |
Public Member Functions inherited from RObject | |
| RObject ()=default | |
| Constructs a default RObject. | |
Additional Inherited Members | |
Static Public Member Functions inherited from RWLSwapchain | |
| static std::shared_ptr< RWLSwapchain > | Make (wl_surface *surface, SkISize size) noexcept |
| Creates a Wayland swapchain for the given surface. | |
Wayland-client Vulkan swapchain (VK_KHR_wayland_surface + VkSwapchainKHR).
Acquire blocks on a fence (the image must be ready before either the painter or Skia renders into it, and it doubles as frame pacing). Present is asynchronous: the PRESENT_SRC transition is submitted without a CPU wait, signalling a per-image semaphore that vkQueuePresentKHR waits on, so the CPU can run ahead into the next frame (one-frame-deep CPU/GPU pipelining).
|
overridevirtualnoexcept |
Acquire the next available swapchain image.
Implements RSwapchain.
|
overridevirtualnoexcept |
Present a previously acquired image to the display.
| image | The image to be presented. |
| damage | Region of the image that has changed since the last frame.
|
true if the presentation succeeded, otherwise false. Implements RSwapchain.
|
overridevirtualnoexcept |
Request a resize of future swapchain images.
This affects only newly acquired images, currently acquired images remain at the previous size until released.
| size | The new desired image size in pixels. |
true if the resize request was accepted, otherwise false. Implements RSwapchain.