Commit graph

5601 commits

Author SHA1 Message Date
Jakob Bornecrantz 019343f3fc ipc: Print more client info 2023-12-23 16:19:07 +00:00
Jakob Bornecrantz 37938dc3af ipc: Silence warning [NFC] 2023-12-23 16:04:30 +00:00
Jakob Bornecrantz b38aece060 u/pp: Add xrt_reference_space_type printing 2023-12-21 21:51:00 +00:00
Jakob Bornecrantz 6a4d8530a6 u/pp: Tidy and add more enums 2023-12-21 21:50:52 +00:00
Jakob Bornecrantz 5d31fa7fe1 xrt: Move xrt_reference_space_type to xrt_defines.h 2023-12-21 21:50:45 +00:00
quic_yaommo 0bf275da3f xrt: Set runtime descriptions from CMake 2023-12-21 12:33:26 +00:00
Rylie Pavlik cd384f1f01 a/util: Document lack of thread safety in the bare HistoryBuffer class 2023-12-20 10:44:13 +00:00
Rylie Pavlik 93a1d58820 a/math: Mention thread safety of m_relation_history 2023-12-20 10:44:13 +00:00
Hui Xu d113f83f53 st/oxr: Support XR_FB_composition_layer_image_layout 2023-12-20 10:38:31 +00:00
Rylie Pavlik 960e723394 xrt: Fix outdated name/email address 2023-12-18 14:29:02 -06:00
yuloliu 8919463008 a/vk: Use the defines to manually unref android buffers
The import does not consume them

Co-authored-by: Rylie Pavlik <rylie.pavlik@collabora.com>
2023-12-18 14:24:03 -06:00
Rylie Pavlik c763a1cb86 xrt: Add XRT_GRAPHICS_BUFFER_HANDLE_CONSUMED_BY_VULKAN_IMPORT and friends 2023-12-18 14:23:54 -06:00
Jakob Bornecrantz 699bdf1b11 u/pacing: Fix logic error for selecting min frame period 2023-12-18 10:26:11 +00:00
Jakob Bornecrantz edd77ede44 st/oxr: Missed changes from swapchain format list
These where missed in the swapchain format list changes.
2023-12-17 19:37:56 +00:00
Jakob Bornecrantz 02d0a22aea st/oxr: Use correct define to test for extension support 2023-12-15 23:28:19 +00:00
Weijie Wang fa85b5e98a st/oxr: Add extension XR_KHR_composition_layer_color_scale_bias 2023-12-15 23:11:53 +00:00
Shawn Wallace 24b13de593 d/qwerty: Fix input timestamps 2023-12-15 22:33:59 +00:00
Jakob Bornecrantz ba79c268b1 u/space_overseer: Use broadcast event sink for reference space changes
Generates xrt_session_event_reference_space_change_pending events.
2023-12-14 16:22:09 +00:00
Jakob Bornecrantz 9a22d029a4 u/builder: Pass in broadcast to legacy space overseer helper 2023-12-14 16:22:09 +00:00
Jakob Bornecrantz 223b212ba3 d/remote: Take broadcast event sink to create devices 2023-12-14 16:22:09 +00:00
Jakob Bornecrantz 6f60116fa9 t/sdl_test: Move system init earlier 2023-12-14 16:22:09 +00:00
Jakob Bornecrantz 7dd45db8ea st/oxr: Support XrEventDataReferenceSpaceChangePending events 2023-12-14 16:22:09 +00:00
Jakob Bornecrantz 21f7ce976e xrt: Pass down broadcast sink to prober and builder when creating system 2023-12-14 16:22:09 +00:00
Jakob Bornecrantz 7017e5ed2d xrt: Add reference space change pending event 2023-12-14 16:22:09 +00:00
Jakob Bornecrantz 467ed130de ipc: Fix headless sessions 2023-12-14 14:33:48 +00:00
BabbleBones 4eac541d96 t/common: Implement SteamVR builder 2023-12-14 14:23:40 +00:00
BabbleBones 8b441bdb4a u/pacing: Add env var to use minimal frame period instead of calculated 2023-12-13 19:59:15 +00:00
Jakob Bornecrantz 17b81e34d7 st/oxr: Guard XR_EXTX_overlay events code 2023-12-12 21:39:47 +00:00
Jakob Bornecrantz 69ab1f486c st/oxr: Tidy events code [NFC] 2023-12-12 21:39:46 +00:00
Jakob Bornecrantz 88f83d0992 st/oxr: Reset action cache fully when doing bindings
If the devices changes actions where left bound when they shouldn't be.
2023-12-12 18:55:50 +00:00
Jakob Bornecrantz d751468785 st/oxr: Transition headless session to FOCUSED on begin session 2023-12-11 16:16:34 +00:00
Jakob Bornecrantz be4e0df9c4 st/oxr: Improve bindings logging a little bit 2023-12-11 16:16:34 +00:00
Jakob Bornecrantz 274b06cba3 st/oxr: Tidy oxr_input_combine_input function and call to function [NFC] 2023-12-11 16:16:34 +00:00
Jakob Bornecrantz 291d0163b6 st/oxr: Refactor input type to string into header [NFC] 2023-12-11 16:16:34 +00:00
Jakob Bornecrantz 6b8728a95b u/system: Fix hand-tracking devices not being assigned in helper 2023-12-11 16:16:34 +00:00
Jakob Bornecrantz bb1af47607 xrt: Change compositor events to be session events
The xrt_compositor_pull_events functions of the native compositors
where never called by the multi client module (aka multi compositor).
2023-12-10 17:05:55 +00:00
Jakob Bornecrantz 113278c68d xrt: Refactor native compositor creation 2023-12-10 17:01:51 +00:00
Jakob Bornecrantz 7806993e1f xrt: Return xrt_system when creating system 2023-12-10 17:01:51 +00:00
Jakob Bornecrantz 5d64b1d447 ipc: Refactor native compositor creation 2023-12-10 17:01:50 +00:00
Jakob Bornecrantz dd9a425202 ipc: Add support for xrt_system and xrt_session 2023-12-10 17:01:50 +00:00
Jakob Bornecrantz f0dbb46cd9 u/[session|system]: Add default and optional implementation for system and session 2023-12-10 17:01:50 +00:00
Jakob Bornecrantz 76c630d2bd xrt: Add xrt_system and xrt_session 2023-12-10 15:43:00 +00:00
Jakob Bornecrantz d7b3b1b827 xrt: Add IPC compositor not created result 2023-12-09 10:11:47 +00:00
Jakob Bornecrantz 0a5d9f47f2 xrt: Add compositor not available error 2023-12-09 10:11:47 +00:00
Jakob Bornecrantz bf5107125a t/sdl_test: Even more documentation 2023-12-08 18:57:25 +00:00
Jakob Bornecrantz 9b69099a65 c/multi: Even more documentation 2023-12-08 18:50:13 +00:00
Rylie Pavlik bd4312d019 t/sdl_test: Improve docs for sdl_compositor 2023-12-08 12:49:14 -06:00
Rylie Pavlik 5f99ce41e4 c/util: Improve docs for comp_base 2023-12-08 12:49:03 -06:00
Rylie Pavlik 52d17583db c/null: Improve docs for comp_null 2023-12-08 12:48:35 -06:00
Rylie Pavlik e85faec8d5 c/main: Improve docs for comp_compositor 2023-12-08 12:48:15 -06:00
Rylie Pavlik 8d393ad3fa c/multi: Improve docs/markup of multi_compositor.
This makes the xrt_compositor inheritance diagram in Doxygen complete.
2023-12-08 11:43:49 -06:00
Jakob Bornecrantz d97d7d75c7 st/oxr: Handle XR_REFERENCE_SPACE_TYPE_LOCALIZATION_MAP_ML 2023-12-08 12:11:49 +00:00
Jakob Bornecrantz 142969b509 u/misc: Only free memory if there was an allocation error 2023-12-08 12:11:49 +00:00
0y8w1x 66e8db5d5a d/ulv5: Add UltraLeap v5 driver 2023-12-05 16:07:32 +00:00
utzcoz 0428ce4b0f s/oxr: Add explicit casting for PFNEGLGETPROCADDRESSPROC
Signed-off-by: utzcoz <utzcoz@outlook.com>
2023-12-05 15:41:34 +00:00
Jakob Bornecrantz 0ee84ea4a8 t/common: Use new u_builder helper 2023-12-05 12:55:42 +00:00
Jakob Bornecrantz dbcf753b1e t/common: Tidy builders a bit [NFC] 2023-12-05 12:55:42 +00:00
Jakob Bornecrantz 972c929333 u/builder: Add new u_builder helper
This does some of the heavy lifting when it comes to managing the system
devices and the space overseer. The same code was replicated in basically
all of the builders, this lets us avoid that.
2023-12-05 12:55:42 +00:00
Ryan Pavlik 1d09587bac t/oxr: Clean up docs 2023-12-04 22:27:09 +00:00
Ryan Pavlik debd15f6da t/oxr_android: Clean up gradle 2023-12-04 22:27:09 +00:00
Ryan Pavlik 4cb14719a9 d/sample: Implement missing APIs 2023-12-04 22:27:09 +00:00
Rylie Pavlik 617a704b29 xrt: Fix comment typo 2023-12-04 11:54:01 -06:00
Rylie Pavlik 9c7851f076 xrt: Fix typos, clarify docs 2023-12-04 11:53:32 -06:00
Jakob Bornecrantz 79a2f3f3d6 d/remote: Tidy [NFC] 2023-12-01 18:51:01 +00:00
utzcoz 7485975bfb d/remote: Use socket_close for destroy
Signed-off-by: utzcoz <utzcoz@outlook.com>
2023-12-02 02:12:43 +08:00
Charlton Rodda 1b93431173 d/remote: Fix socket closing on Windows 2023-12-01 15:31:18 +00:00
Christoph Haag e2a6f0501e st/oxr: Fix swapchain format list assert 2023-12-01 14:34:31 +00:00
Jakob Bornecrantz d380414731 t/libmonado: Support recentering of local spaces 2023-11-28 12:43:37 +00:00
Jakob Bornecrantz d43334120c t/ctl: Support recentering of local spaces 2023-11-28 12:43:37 +00:00
Jakob Bornecrantz dfbe48a188 ipc: Add support for recentering local spaces 2023-11-28 12:43:37 +00:00
Jakob Bornecrantz a3a9782272 u/space_overseer: Implement recentering for supported setups 2023-11-28 12:43:37 +00:00
Jakob Bornecrantz b77d460d59 u/space_overseer: Improve comment [NFC] 2023-11-28 12:43:37 +00:00
Jakob Bornecrantz 74b6d263e9 u/pp: Add new error message to print 2023-11-28 12:43:37 +00:00
Jakob Bornecrantz 9b5cfadc64 xrt: Add function to request recentering of local spaces 2023-11-28 12:43:37 +00:00
Jakob Bornecrantz 8c1ee42fee a/tracking: Change destructor to be private 2023-11-27 19:49:24 +00:00
Jakob Bornecrantz e9d8e0db21 a/tracking: Tidy and document FrameMat [NFC] 2023-11-27 19:49:24 +00:00
Jakob Bornecrantz 9070894455 ipc: Verify length of received commands on Windows
Co-authored-by: Simon Zeni <simon.zeni@collabora.com>
2023-11-26 14:03:52 +00:00
Simon Zeni 81246de70a ipc: Read only the exact size of the ipc_command in client_loop on Linux 2023-11-26 13:45:21 +00:00
Simon Zeni 9b6eeb0bba ipc: Add ipc_command_size function to prototype generation 2023-11-26 13:45:21 +00:00
Christoph Haag e5060d166b st/oxr: Fix build with XR_FB_display_refresh_rate disabled 2023-11-24 16:03:09 +01:00
Christoph Haag c58f06f94c ipc: Fix type warning 2023-11-24 16:03:09 +01:00
Jakob Bornecrantz c197ba999f st/oxr: Add support for reference space usage 2023-11-21 21:37:06 +00:00
Jakob Bornecrantz a0a0f7cfa6 ipc: Add support for reference space usage 2023-11-21 21:37:06 +00:00
Jakob Bornecrantz 5a789ff623 u/space_overseer: Add support for reference space usage 2023-11-21 21:37:06 +00:00
Jakob Bornecrantz d80036fd0e xrt: Add reference space usage information 2023-11-20 22:05:34 +00:00
Jakob Bornecrantz 4fe85a0acc xrt: Add LOCAL_FLOOR and UNBOUNDED generic space poses 2023-11-20 22:05:34 +00:00
Jakob Bornecrantz fffdfa1c4b xrt: Refactor reference functions to be clearer 2023-11-20 22:02:06 +00:00
Jakob Bornecrantz 11ae300946 xrt: Tidy and improve docs in xrt_defines.h [NFC] 2023-11-20 22:02:06 +00:00
Jakob Bornecrantz a6d840b0b1 c/util: Fix leaks of image views in swapchain
This fixes a regression I introduced in !1417.
2023-11-20 21:55:11 +00:00
Jakob Bornecrantz add64c1531 c/util: Improve error paths in swapchain creation 2023-11-20 21:55:11 +00:00
Jakob Bornecrantz c6a4f62e6c c/util: Tidy comp_swapchain.c [NFC] 2023-11-20 21:55:11 +00:00
Jakob Bornecrantz 9ac135edce ipc: Share per client thread shutdown code [NFC]
The two paths was already identical, so just make it one.
2023-11-20 21:40:14 +00:00
Jakob Bornecrantz adc3fe879d c/main: Guard VkQueue access when calling vkQueuePresentKHR
The VkQueue in vkQueuePresentKHR is externally synchronized, so we need
to take the queue_mutex when we call that function.

Found this with the [latest validation layers][1] and the OpenXR CTS test
Swapchains. This has probably been a longstanding bug in Monado as that
particular code is fairly old.

[1]: https://github.com/KhronosGroup/Vulkan-ValidationLayers/pull/6631
2023-11-20 18:09:53 +00:00
Jakob Bornecrantz c3157335ef c/main: A few more uses of VK_CHK helpers [NFC] 2023-11-20 18:03:10 +00:00
Jakob Bornecrantz c7ec85cfd2 a/vk: Improve vk_print_result 2023-11-20 18:03:10 +00:00
Zhongwang Zhang ccb9f957bf st/oxr: Complete implementation of extension [XR_FB_display_refresh_rate] 2023-11-20 16:58:31 +00:00
Zhongwang Zhang 74df016dbf ipc: Implement display refresh rate functions 2023-11-20 16:58:31 +00:00
Zhongwang Zhang df07128590 c/multi: Implement display refresh rate functions 2023-11-20 16:58:31 +00:00
Zhongwang Zhang a9017c8501 c/main: Implement display refresh rates function stubs 2023-11-20 16:58:31 +00:00
Zhongwang Zhang 195efff9ba xrt: Add new API in xrt_compositor and xrt_multi_compositor_control interfaces 2023-11-20 16:58:31 +00:00