Monado OpenXR Runtime
Null compositor

A non-rendering alternate for the main compositor that still can support applications fully. More...

Collaboration diagram for Null compositor:

Files

file  null_compositor.c
 Null compositor implementation.
 
file  null_compositor.h
 Internal header for null compositor.
 
file  null_interfaces.h
 Header for null compositor interfaces.
 

Data Structures

struct  null_comp_frame
 Tracking frame state. More...
 
struct  null_compositor
 Main compositor struct tying everything in the compositor together. More...
 

Functions

xrt_result_t null_compositor_create_system (struct xrt_device *xdev, struct xrt_system_compositor **out_xsysc)
 Creates a null_compositor. More...
 

Detailed Description

A non-rendering alternate for the main compositor that still can support applications fully.

Monado's design is highly modular, including allowing alternate compositors to be used. If you are looking to write an additional or alternate compositor to the one in src/xrt/compositor/main, this code is your starting point. It is the basic implementation of xrt_compositor_native extracted from there, renamed, and with most implementations removed. Compare with similarly-named files there to see what was removed, and what helper functionality has been factored out and may be reusable. For example, you may be able to use comp_renderer, comp_resources, comp_shaders, and comp_target, among others.

Function Documentation

◆ null_compositor_create_system()

xrt_result_t null_compositor_create_system ( struct xrt_device xdev,
struct xrt_system_compositor **  out_xsysc 
)