Skip to content

Class ILLIXR::vulkan::display_provider

ClassList > ILLIXR > vulkan > display_provider

A display sink is a service that can display the rendered images to the screen. More...

  • #include <display_provider.hpp>

Inherits the following classes: ILLIXR::phonebook::service

Public Attributes

Type Name
std::vector< const char * > enabled_device_extensions_
std::vector< const char * > enabled_instance_extensions_
VkPhysicalDeviceFeatures2 features_
std::unordered_map< queue::queue_type, queue > queues_
VkExtent2D swapchain_extent_ = {display\_params::width\_pixels, display\_params::height\_pixels}
VkSurfaceFormatKHR swapchain_image_format_
std::vector< VkImageView > swapchain_image_views_
std::vector< VkImage > swapchain_images_
VkDevice vk_device_ = VK\_NULL\_HANDLE
VkInstance vk_instance_ = VK\_NULL\_HANDLE
VkPhysicalDevice vk_physical_device_ = VK\_NULL\_HANDLE
VkSurfaceKHR vk_surface_ = VK\_NULL\_HANDLE
VkSwapchainKHR vk_swapchain_ = VK\_NULL\_HANDLE
VmaAllocator vma_allocator_

Public Functions

Type Name
virtual void poll_window_events ()
Polls window events using whatever the windowing backend is.
virtual void recreate_swapchain ()
Recreates the swapchain when an outdated or nonoptimal swapchain is detected.
~display_provider () override

Public Functions inherited from ILLIXR::phonebook::service

See ILLIXR::phonebook::service

Type Name
virtual ~service () = default

Detailed Description

A display sink is a service created with the necessary Vulkan resources to display the rendered images to the screen. It is created either by display_vk, a plugin that configures the Vulkan resources and swapchain, or by monado_vulkan_integration, which populate the Vulkan resources and swapchain from Monado. Previously with the GL implementation, this was not required since we were using GL and Monado was using Vulkan.

Public Attributes Documentation

variable enabled_device_extensions_

std::vector<const char*> ILLIXR::vulkan::display_provider::enabled_device_extensions_;

variable enabled_instance_extensions_

std::vector<const char*> ILLIXR::vulkan::display_provider::enabled_instance_extensions_;

variable features_

VkPhysicalDeviceFeatures2 ILLIXR::vulkan::display_provider::features_;

variable queues_

std::unordered_map<queue::queue_type, queue> ILLIXR::vulkan::display_provider::queues_;

variable swapchain_extent_

VkExtent2D ILLIXR::vulkan::display_provider::swapchain_extent_;

variable swapchain_image_format_

VkSurfaceFormatKHR ILLIXR::vulkan::display_provider::swapchain_image_format_;

variable swapchain_image_views_

std::vector<VkImageView> ILLIXR::vulkan::display_provider::swapchain_image_views_;

variable swapchain_images_

std::vector<VkImage> ILLIXR::vulkan::display_provider::swapchain_images_;

variable vk_device_

VkDevice ILLIXR::vulkan::display_provider::vk_device_;

variable vk_instance_

VkInstance ILLIXR::vulkan::display_provider::vk_instance_;

variable vk_physical_device_

VkPhysicalDevice ILLIXR::vulkan::display_provider::vk_physical_device_;

variable vk_surface_

VkSurfaceKHR ILLIXR::vulkan::display_provider::vk_surface_;

variable vk_swapchain_

VkSwapchainKHR ILLIXR::vulkan::display_provider::vk_swapchain_;

variable vma_allocator_

VmaAllocator ILLIXR::vulkan::display_provider::vma_allocator_;

Public Functions Documentation

function poll_window_events

Polls window events using whatever the windowing backend is.

inline virtual void ILLIXR::vulkan::display_provider::poll_window_events () 


function recreate_swapchain

Recreates the swapchain when an outdated or nonoptimal swapchain is detected.

inline virtual void ILLIXR::vulkan::display_provider::recreate_swapchain () 


function ~display_provider

ILLIXR::vulkan::display_provider::~display_provider () override


The documentation for this class was generated from the following file /home/friedel/devel/ILLIXR/include/illixr/vk/display_provider.hpp