vOOlkan
An object oriented approach to Vulkan
SwapchainCapabilities.h
Go to the documentation of this file.
1#ifndef VULKAN_SWAPCHAINCAPABILITIES
2#define VULKAN_SWAPCHAINCAPABILITIES
3
4#include <vulkan/vulkan.h>
5#include <algorithm>
6
7
8namespace Vulkan { class PhysicalDevice; class Window; class WindowSurface; namespace SwapchainOptions{ class Capabilities; } }
9
14 public:
15
22 Capabilities(const PhysicalDevice& realGpu, const WindowSurface& windowSurface);
23
24
25 Capabilities() = default;
26
27
33 const VkSurfaceCapabilitiesKHR& operator+() const;
34
35
42 VkExtent2D chooseSwapExtent(const Window& window) const;
43
44 private:
45 VkSurfaceCapabilitiesKHR capabilities;
46};
47
48#endif
Represents the GPU (or any other device) that will be used with Vulkan to perform computer graphics.
Definition: PhysicalDevice.h:17
The capabilities of a swapchain define some important properties of the images in the swapchain,...
Definition: SwapchainCapabilities.h:13
VkExtent2D chooseSwapExtent(const Window &window) const
Chooses the best swap extent (basically the resolution of the images to be shown) based on the window...
Definition: SwapchainCapabilities.cpp:17
const VkSurfaceCapabilitiesKHR & operator+() const
Returns the underlying VkSurfaceCapabilitiesKHR.
Definition: SwapchainCapabilities.cpp:12
Manages the creation and lifetime of an OS window.
Definition: Window.h:15
A window surface is the connection between Vulkan and the OS windows environment.
Definition: WindowSurface.h:13
Types of queue families.
Definition: Animations.h:17