Monado OpenXR Runtime
comp_window_direct_randr Struct Reference

Direct mode "window" into a device, using Vulkan direct mode extension and xcb. More...

Inheritance diagram for comp_window_direct_randr:
Collaboration diagram for comp_window_direct_randr:

Public Member Functions

struct comp_targetcomp_window_direct_randr_create (struct comp_compositor *c)
 Create a direct surface to an HMD over RandR. More...
 

Data Fields

struct comp_target_swapchain base
 
Display * dpy
 
xcb_screen_t * screen
 
struct comp_window_direct_randr_displaydisplays
 
uint16_t display_count
 
- Data Fields inherited from comp_target_swapchain
struct comp_target base
 Base target. More...
 
struct u_pacing_compositorupc
 Compositor frame pacing helper. More...
 
enum comp_target_display_timing_usage timing_usage
 If we should use display timing. More...
 
int64_t current_frame_id
 Also works as a frame index. More...
 
struct {
   bool   compositor_extent
 Should we ignore the compositor's preferred extents. More...
 
   VkExtent2D   extent
 The extents that a sub-class wants us to use, see ignore_compositor_extent above. More...
 
override
 
struct {
   VkSwapchainKHR   handle
 
swapchain
 
struct {
   VkSurfaceKHR   handle
 
   VkSurfaceFormatKHR   format
 
surface
 
struct {
   VkFormat   color_format
 
   VkColorSpaceKHR   color_space
 
preferred
 
VkPresentModeKHR present_mode
 Present mode that the system must support. More...
 
VkDisplayKHR display
 The current display used for direct mode, VK_NULL_HANDLE else. More...
 
struct {
   bool   has_started
 Must only be accessed from main compositor thread. More...
 
   bool   should_wait
 Protected by event_thread lock. More...
 
   uint64_t   last_vblank_ns
 Protected by event_thread lock. More...
 
   struct os_thread_helper   event_thread
 Thread waiting on vblank_event_fence (first pixel out). More...
 
vblank
 
bool has_logged_info
 We print swapchain info as INFO the first time we create a VkSWapchain, this keeps track if we have done it. More...
 

Additional Inherited Members

- Protected Member Functions inherited from comp_target_swapchain
void comp_target_swapchain_init_and_set_fnptrs (struct comp_target_swapchain *cts, enum comp_target_display_timing_usage timing_usage)
 Pre Vulkan initialisation, sets function pointers. More...
 
void comp_target_swapchain_override_extents (struct comp_target_swapchain *cts, VkExtent2D extent)
 Set that any size from the compositor should be ignored and that given size must be used for the VkSwapchain the helper code creates. More...
 
void comp_target_swapchain_cleanup (struct comp_target_swapchain *cts)
 Free all managed resources on the given comp_target_swapchain, does not free the struct itself. More...
 

Detailed Description

Direct mode "window" into a device, using Vulkan direct mode extension and xcb.


The documentation for this struct was generated from the following files: