Monado OpenXR Runtime
|
Main compositor struct tying everything in the compositor together. More...
#include <main/comp_compositor.h>
Data Fields | |
struct xrt_compositor_fd | base |
struct xrt_compositor * | client |
A link back to the compositor we are presenting to the client. More... | |
struct comp_renderer * | r |
Renderer helper. More... | |
struct comp_window * | window |
The window or display we are using. More... | |
struct xrt_device * | xdev |
The device we are displaying to. More... | |
struct comp_settings | settings |
The settings. More... | |
struct vk_bundle | vk |
Vulkan bundle of things. More... | |
int64_t | last_frame_time_ns |
Timestamp of last-rendered (immersive) frame. More... | |
struct { | |
int64_t last_begin | |
int64_t last_end | |
} | app_profiling |
Data exclusive to the begin_frame/end_frame for computing an estimate of the app's needs. More... | |
int64_t | frame_overhead_ns |
The time our compositor needs to do rendering. More... | |
struct { | |
int index | |
Current Index for times_ns. More... | |
int64_t times_ns [NUM_FRAME_TIMES] | |
Timestamps of last-rendered (immersive) frames. More... | |
float timings_ms [NUM_FRAME_TIMES] | |
Frametimes between last-rendered (immersive) frames. More... | |
float fps | |
Average FPS of last NUM_FRAME_TIMES rendered frames. More... | |
struct u_var_timing * debug_var | |
} | compositor_frame_times |
int64_t | expected_app_duration_ns |
Estimated rendering time per frame of the application. More... | |
int64_t | last_next_display_time |
The last time we provided in the results of wait_frame. More... | |
struct { | |
uint32_t width | |
uint32_t height | |
} | current |
The current state we are tracking. More... | |
struct { | |
struct u_threading_stack destroy_swapchains | |
Thread object for safely destroying swapchain. More... | |
} | threading |
Main compositor struct tying everything in the compositor together.
struct { ... } comp_compositor::app_profiling |
Data exclusive to the begin_frame/end_frame for computing an estimate of the app's needs.
struct xrt_compositor_fd comp_compositor::base |
Referenced by xrt_gfx_provider_create_fd().
struct xrt_compositor* comp_compositor::client |
A link back to the compositor we are presenting to the client.
struct { ... } comp_compositor::compositor_frame_times |
struct { ... } comp_compositor::current |
The current state we are tracking.
Settings is supposed to be read only.
struct u_var_timing* comp_compositor::debug_var |
struct u_threading_stack comp_compositor::destroy_swapchains |
Thread object for safely destroying swapchain.
int64_t comp_compositor::expected_app_duration_ns |
Estimated rendering time per frame of the application.
Set by the begin_frame/end_frame code.
float comp_compositor::fps |
Average FPS of last NUM_FRAME_TIMES rendered frames.
int64_t comp_compositor::frame_overhead_ns |
The time our compositor needs to do rendering.
uint32_t comp_compositor::height |
int comp_compositor::index |
Current Index for times_ns.
int64_t comp_compositor::last_begin |
int64_t comp_compositor::last_end |
int64_t comp_compositor::last_frame_time_ns |
Timestamp of last-rendered (immersive) frame.
int64_t comp_compositor::last_next_display_time |
The last time we provided in the results of wait_frame.
struct comp_renderer* comp_compositor::r |
Renderer helper.
struct comp_settings comp_compositor::settings |
The settings.
Referenced by comp_distortion_init(), and comp_window_direct_init_swapchain().
struct { ... } comp_compositor::threading |
int64_t comp_compositor::times_ns[NUM_FRAME_TIMES] |
Timestamps of last-rendered (immersive) frames.
float comp_compositor::timings_ms[NUM_FRAME_TIMES] |
Frametimes between last-rendered (immersive) frames.
struct vk_bundle comp_compositor::vk |
Vulkan bundle of things.
Referenced by comp_distortion_init(), and comp_swapchain_really_destroy().
uint32_t comp_compositor::width |
struct comp_window* comp_compositor::window |
The window or display we are using.
struct xrt_device* comp_compositor::xdev |
The device we are displaying to.