monado/src/xrt/compositor/main
Lubosz Sarnecki 4d0c49096d comp/window_direct_mode: Use XCB/Xlib interop.
Since there currently is no Vulkan extension that takes XCB handles to
aqcuire the display Xlib interop needs to be used.

Before this patch Monado was opening connections for both APIs, which
introduced overhead.

Even though all XCB handles can be casted to Xlib ones, this cannot be
done with the main xcb_connection_t / Display. In it's design the
interop between both APIs can create a xcb_connection_t from a XCB
handle, but not the other way round. So in an interop case the Xlib
connection is the main one, since it's on a higher level.
More information on this can be found here:
https://xcb.freedesktop.org/MixingCalls/

Unfortunately the clean solution for this would be to specify a Vulkan
extension that takes XCB handles. This would make sense since Vulkan
is aware of XCB in other parts of the API as well. In Mesa the Xlib
structs will be ultimately casted to XCB.
2020-03-31 17:47:17 +02:00
..
comp_compositor.c st/gui: Add compositor frame timing graph to debug ui 2020-03-09 12:59:12 +01:00
comp_compositor.h st/gui: Add compositor frame timing graph to debug ui 2020-03-09 12:59:12 +01:00
comp_distortion.c comp: Fix accidental code change from commit 9b662596 2020-03-09 14:40:10 +00:00
comp_distortion.h comp: Refactor documentation 2020-03-02 12:00:22 +00:00
comp_documentation.h comp: Refactor documentation 2020-03-02 12:00:22 +00:00
comp_renderer.c comp: Refactor documentation 2020-03-02 12:00:22 +00:00
comp_renderer.h comp: Refactor documentation 2020-03-02 12:00:22 +00:00
comp_settings.c comp: Refactor documentation 2020-03-02 12:00:22 +00:00
comp_settings.h comp: Refactor documentation 2020-03-02 12:00:22 +00:00
comp_swapchain.c comp: Refactor documentation 2020-03-02 12:00:22 +00:00
comp_vk_swapchain.c comp: Refactor documentation 2020-03-02 12:00:22 +00:00
comp_vk_swapchain.h comp: Refactor documentation 2020-03-02 12:00:22 +00:00
comp_window.h comp: Refactor documentation 2020-03-02 12:00:22 +00:00
comp_window_direct_mode.cpp comp/window_direct_mode: Use XCB/Xlib interop. 2020-03-31 17:47:17 +02:00
comp_window_wayland.c build: Refactor how config defines are handled 2020-03-03 10:33:14 +00:00
comp_window_xcb.cpp comp: Don't leak xcb replies. 2020-03-31 17:47:01 +02:00