|
Monado OpenXR Runtime
|
Common compositor base. More...
#include <xrt/xrt_compositor.h>

Data Fields | |
| uint32_t | num_formats |
| Number of formats. More... | |
| int64_t | formats [XRT_MAX_SWAPCHAIN_FORMATS] |
| Supported formats. More... | |
| struct xrt_swapchain *(* | create_swapchain )(struct xrt_compositor *xc, enum xrt_swapchain_create_flags create, enum xrt_swapchain_usage_bits bits, int64_t format, uint32_t sample_count, uint32_t width, uint32_t height, uint32_t face_count, uint32_t array_size, uint32_t mip_count) |
| Create a swapchain with a set of images. More... | |
| void(* | poll_events )(struct xrt_compositor *xc, uint64_t *WIP) |
| Poll events from this compositor. More... | |
| void(* | prepare_session )(struct xrt_compositor *xc) |
| This function is implicit in the OpenXR spec but made explicit here. More... | |
| void(* | begin_session )(struct xrt_compositor *xc, enum xrt_view_type view_type) |
| See xrBeginSession. More... | |
| void(* | end_session )(struct xrt_compositor *xc) |
| See xrEndSession, unlike the OpenXR one the state tracker is responsible to call discard frame before calling this function. More... | |
| void(* | wait_frame )(struct xrt_compositor *xc, uint64_t *predicted_display_time, uint64_t *predicted_display_period) |
| See xrWaitFrame. More... | |
| void(* | begin_frame )(struct xrt_compositor *xc) |
| See xrBeginFrame. More... | |
| void(* | discard_frame )(struct xrt_compositor *xc) |
| This isn't in the OpenXR API but is explicit in the XRT interfaces. More... | |
| void(* | end_frame )(struct xrt_compositor *xc, enum xrt_blend_mode blend_mode, struct xrt_swapchain **xscs, const uint32_t *image_index, uint32_t *layers, uint32_t num_swapchains) |
| See xrEndFrame. More... | |
| void(* | destroy )(struct xrt_compositor *xc) |
| Teardown the compositor. More... | |
Common compositor base.
| void(* xrt_compositor::begin_frame) (struct xrt_compositor *xc) |
See xrBeginFrame.
| void(* xrt_compositor::begin_session) (struct xrt_compositor *xc, enum xrt_view_type view_type) |
See xrBeginSession.
Referenced by xrt_gfx_provider_create_fd().
| struct xrt_swapchain*(* xrt_compositor::create_swapchain) (struct xrt_compositor *xc, enum xrt_swapchain_create_flags create, enum xrt_swapchain_usage_bits bits, int64_t format, uint32_t sample_count, uint32_t width, uint32_t height, uint32_t face_count, uint32_t array_size, uint32_t mip_count) |
Create a swapchain with a set of images.
Referenced by client_vk_compositor_create(), and xrt_gfx_provider_create_fd().
| void(* xrt_compositor::destroy) (struct xrt_compositor *xc) |
Teardown the compositor.
The state tracker must have made sure that no frames or sessions are currently pending. See discard_frame, end_frame, end_session.
| void(* xrt_compositor::discard_frame) (struct xrt_compositor *xc) |
This isn't in the OpenXR API but is explicit in the XRT interfaces.
Two calls to xrBeginFrame will cause the state tracker to call.
| void(* xrt_compositor::end_frame) (struct xrt_compositor *xc, enum xrt_blend_mode blend_mode, struct xrt_swapchain **xscs, const uint32_t *image_index, uint32_t *layers, uint32_t num_swapchains) |
See xrEndFrame.
| void(* xrt_compositor::end_session) (struct xrt_compositor *xc) |
See xrEndSession, unlike the OpenXR one the state tracker is responsible to call discard frame before calling this function.
See discard_frame.
| int64_t xrt_compositor::formats[XRT_MAX_SWAPCHAIN_FORMATS] |
Supported formats.
| uint32_t xrt_compositor::num_formats |
Number of formats.
| void(* xrt_compositor::poll_events) (struct xrt_compositor *xc, uint64_t *WIP) |
Poll events from this compositor.
This function is very much WIP.
| void(* xrt_compositor::prepare_session) (struct xrt_compositor *xc) |
This function is implicit in the OpenXR spec but made explicit here.
| void(* xrt_compositor::wait_frame) (struct xrt_compositor *xc, uint64_t *predicted_display_time, uint64_t *predicted_display_period) |
See xrWaitFrame.
1.8.13