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
Zhongwang Zhang
f84bef916f
xrt: Add hz suffix, follow code style and add limit to refresh rate array
2023-11-20 16:58:23 +00:00
Simon Zeni
8f6603d019
st/oxr: Implement XR_KHR_vulkan_swapchain_format_list
2023-11-20 09:40:20 -05:00
Jakob Bornecrantz
24ecd455ea
st/oxr: Track graphics extension used to create session
2023-11-20 09:40:20 -05:00
Simon Zeni
fb023e001a
a/vk: Use formats list from xrt_swapchain_create_info in create_image
2023-11-20 09:40:20 -05:00
Simon Zeni
2571ef8d57
xrt: Add formats list to xrt_swapchain_create_info
2023-11-18 12:30:58 +00:00
Simon Zeni
b727aa9df7
xrt: Use uint32_t instead of int64_t for swapchain format
2023-11-18 12:30:58 +00:00
Simon Zeni
afb12a4c5d
xrt: Fix graphics includes in xrt_openxr_includes
2023-11-18 12:30:54 +00:00
Rylie Pavlik
8f380925b8
c/main: Handle return value
2023-11-17 11:19:37 -06:00
Rylie Pavlik
3ebac955a6
c/main: More propagate errors
2023-11-17 11:19:37 -06:00
Rylie Pavlik
a23cefd968
c/main: Fix duplicate include [NFC]
2023-11-17 11:19:37 -06:00
Rylie Pavlik
b3d4ee2186
c/util: Propagate some Vulkan errors
2023-11-17 11:19:37 -06:00
Rylie Pavlik
9e5c0d72e1
c/util: Make sure to zero array_size
...
Co-authored-by: Jakob Bornecrantz <jakob@collabora.com>
2023-11-17 11:19:37 -06:00
Jakob Bornecrantz
580ff4ceb8
c/util: Re-order functions in comp_swapchain.c [NFC]
2023-11-17 11:19:37 -06:00
Jakob Bornecrantz
ab3c7e99ff
c/util: Use vk_mini_helpers for image destruction
2023-11-17 11:19:37 -06:00
Rylie Pavlik
bafdd8ddbc
a/vk: Improve documentation for vulkan error handlers
2023-11-17 11:19:37 -06:00
Jakob Bornecrantz
d28e647744
st/oxr: Make debug utils forcible
...
And don't always turn it on for XR_KHR_vulkan_enable, as it would
result in crashes on old Vulkan drivers (like those on Pixel 3).
2023-11-17 16:39:55 +00:00
Simon Zeni
0fe8737ec5
cmake: Fix build with SDL2 on Alpine Linux
...
Co-authored-by: Jakob Bornecrantz <jakob@collabora.com>
Co-authored-by: Rylie Pavlik <rylie.pavlik@collabora.com>
2023-11-16 14:06:54 +00:00
Jakob Bornecrantz
7e8d35a1a8
st/oxr: Use function helper [NFC]
2023-11-16 00:17:39 +00:00
Jakob Bornecrantz
3060690cbe
d/ohmd: Tidy includes [NFC]
2023-11-16 00:17:39 +00:00
Jakob Bornecrantz
37e46a9083
d/ohmd: Fix warnings [NFC]
2023-11-16 00:17:39 +00:00
Jakob Bornecrantz
28315ecdc4
d/vive: Follow common naming of update_inputs [NFC]
2023-11-16 00:17:39 +00:00
Jakob Bornecrantz
b02645980b
d/wmr: Follow common naming of update_inputs [NFC]
2023-11-16 00:17:39 +00:00
Jakob Bornecrantz
c8bb2009f2
xrt: Tidy xrt_device [NFC]
2023-11-16 00:17:39 +00:00
Rylie Pavlik
9a4bc4d9c7
monado: Adding IWYU pragmas
2023-11-15 12:37:07 -06:00
Rylie Pavlik
0ac6fdae94
scripts: Add include-what-you-use (iwyu) related scripts and configs
2023-11-15 12:37:07 -06:00
Rylie Pavlik
e4be3cbd96
c/util: Fix doxygen warning
2023-11-15 11:11:22 -06:00
Rylie Pavlik
99e2e005f8
c/render: Fix doxygen warning
2023-11-15 11:11:22 -06:00
Rylie Pavlik
4671d1adb2
a/vive: Fix doxygen warning
2023-11-15 11:11:22 -06:00
Rylie Pavlik
0fab8c23b4
c/client: Fix doxygen warnings
2023-11-15 11:11:22 -06:00
Rylie Pavlik
4ef986aab0
st/oxr: Fix doxygen warning
2023-11-15 11:11:22 -06:00
utzcoz
4c1fd41641
gradle: Migrate gradle's buildToolsVersion to property one
...
Signed-off-by: utzcoz <utzcoz@outlook.com>
2023-11-15 10:06:20 -06:00
utzcoz
33602482a2
xrt/android: Migrate deprecated flavorDimensions gradle API
...
Signed-off-by: utzcoz <utzcoz@outlook.com>
2023-11-15 10:06:20 -06:00
utzcoz
1e82e8e5f0
xrt/android: Move extractNativeLibs to build script for openxr_android
...
It's recommended by Android Studio when upgrading AGP.
Signed-off-by: utzcoz <utzcoz@outlook.com>
2023-11-15 10:06:20 -06:00
utzcoz
2561475fc4
xrt/android: Enable buildFeature aidl for ipc/android
...
It's recommended when upgrading AGP with Android Studio.
Signed-off-by: utzcoz <utzcoz@outlook.com>
2023-11-15 10:06:20 -06:00
utzcoz
30ebd2fe1b
xrt/android: Apply Java code format by latest google-java-format
...
Signed-off-by: utzcoz <utzcoz@outlook.com>
2023-11-15 10:06:20 -06:00
utzcoz
7d61a6f892
xrt/android: Bump google-java-format to 1.18.1
...
Use the latest google-java-format to support JDK17 for AGP 8.x.
Signed-off-by: utzcoz <utzcoz@outlook.com>
2023-11-15 10:06:20 -06:00
Jakob Bornecrantz
33498dc6b2
st/oxr: Make misc extensions a build time option
2023-11-15 13:16:50 +00:00
Jakob Bornecrantz
b7299ead15
st/oxr: Make interaction profiles a build time option
2023-11-15 13:16:50 +00:00
Jakob Bornecrantz
179c10c399
st/oxr: Properly guard misc extensions with ifdefs
2023-11-15 13:16:50 +00:00
Jakob Bornecrantz
60df8b60ba
st/oxr: Properly guard interaction extensions access with ifdefs
2023-11-15 13:16:50 +00:00
Jakob Bornecrantz
d71082b5e1
st/oxr: Properly check all extension interaction profiles
2023-11-15 13:16:50 +00:00
Simon Zeni
818e519f50
xrt: make get_visibility_mask return xrt_return_t
2023-11-15 12:51:04 +00:00
Christoph Haag
7cd151484e
st/oxr: Add forgotten newline to quirks output [NFC]
2023-11-15 12:38:59 +00:00
Jakob Bornecrantz
6e8a40112b
st/oxr: Handle view index for visibility mask
2023-11-15 12:03:06 +00:00
Jakob Bornecrantz
9a09d7956d
xrt: Add view_index to visibility mask getter
...
And add helper caller function.
2023-11-15 12:02:08 +00:00
Jakob Bornecrantz
6123deaa75
u/mask: Scale output to FoV of the view
2023-11-15 12:02:08 +00:00
Jakob Bornecrantz
0064d16f47
u/mask: Tidy function
2023-11-15 12:02:08 +00:00
Jakob Bornecrantz
8bdc2f1edf
ipc: Fix visibility mask leak
2023-11-15 12:02:08 +00:00
Zhongwang Zhang
bb6e8eb9f8
st/oxr: Handle the XR_SESSION_NOT_FOCUSED case for XRInput
2023-11-15 11:47:32 +00:00
Jakob Bornecrantz
88cf637e95
ipc: Check return of ipc_call_space_create_semantic_ids
2023-11-14 20:27:15 +00:00
Jakob Bornecrantz
7c96a23325
ipc: Tidy ipc_generated_protocol.h generator function
2023-11-14 19:38:05 +00:00
Jakob Bornecrantz
195d45d960
ipc: Protect ipc_generated_protocol.h with cpp header guard
2023-11-14 19:24:13 +00:00
Simon Zeni
96be7675ed
st/oxr: Implement XR_KHR_visibility_mask
2023-11-14 17:02:24 +00:00
Simon Zeni
c1ce722d6d
st/oxr: Add view index verify helper
2023-11-14 17:02:24 +00:00
Simon Zeni
5656f86c47
ipc: Add get_visibility_mask
2023-11-14 17:02:24 +00:00
Simon Zeni
1ec26ded40
u/mask: Introduce u_visibility_mask
2023-11-14 17:02:24 +00:00
Jakob Bornecrantz
69afb62742
xrt: Add visibility mask interface
2023-11-14 10:49:46 -05:00
Jakob Bornecrantz
2d79fb1a3f
st/oxr: Enable XR_MSFT_unbounded_reference_space
2023-11-14 12:51:28 +00:00
Jakob Bornecrantz
72a68cf54b
st/oxr: Enable XR_EXT_local_floor
2023-11-14 12:51:28 +00:00
Jakob Bornecrantz
0c2f1e83e0
st/oxr: Expose unbounded if extension enabled and space is supported
2023-11-14 12:51:28 +00:00
Jakob Bornecrantz
c2c74b8b85
st/oxr: Expose local_floor if extension enabled and space is supported
2023-11-14 12:51:28 +00:00
Jakob Bornecrantz
2fbe588f66
st/oxr: Validate XrReferenceSpaceType in common code
...
Also deal with the different types of error code returns that the CTS expects.
2023-11-14 12:51:28 +00:00
Jakob Bornecrantz
6cb275803c
st/oxr: Make reference space type support per system
...
Let's systems support different sets of references spaces.
2023-11-14 12:51:28 +00:00
Jakob Bornecrantz
1b80d7182e
ipc: Add support for local_floor
2023-11-14 12:43:58 +00:00
Jakob Bornecrantz
f11c1fa699
u/space: Add support for local_floor
2023-11-14 12:43:58 +00:00
Jakob Bornecrantz
c5b800b324
d/remote: Add support for local_floor
2023-11-14 12:43:58 +00:00
Jakob Bornecrantz
050db98b7d
xrt: Add local_floor to xrt_space_overseer
...
Used to implement XR_EXT_local_floor.
2023-11-14 12:43:58 +00:00
Jakob Bornecrantz
83b77285bd
ipc: Use check helpers in other client code as well
2023-11-14 01:20:51 +00:00
Jakob Bornecrantz
bfaf615d4f
ipc: Replace IPC_CHK_CALL macro with other helper
2023-11-14 01:20:51 +00:00
Jakob Bornecrantz
8d61577081
ipc: Add xrt check return helpers
2023-11-14 01:20:51 +00:00
Jakob Bornecrantz
440b1f2660
ipc: Add ipc_print_result helper
2023-11-14 01:20:51 +00:00
Jakob Bornecrantz
3de7bab023
c/util: Fix synchronisation errors with scratch images on gfx path
2023-11-13 23:09:43 +00:00
Christoph Haag
7efd580a70
st/oxr: CTS fix: return XR_SUCCESS for no action sets synced
2023-11-13 17:11:57 +00:00
Weijie Wang
86c3e217cc
c/main,a/android,external: Add argument to specify display mode id for surface creation
2023-11-13 16:09:11 +00:00
Jakob Bornecrantz
4a8400538c
ipc: Use message channel's log_level in client
2023-11-13 12:47:12 +00:00
Jakob Bornecrantz
2d7041c797
ipc: Move ipc_message_channel functions to own files
...
What actually happened:
copy src/xrt/ipc/shared/{ipc_utils.h => ipc_message_channel.h} (95%)
rename src/xrt/ipc/shared/{ipc_utils_unix.c => ipc_message_channel_unix.c} (99%)
rename src/xrt/ipc/shared/{ipc_utils_windows.cpp => ipc_message_channel_windows.cpp} (99%)
rewrite src/xrt/ipc/shared/ipc_utils.h (94%)
2023-11-13 12:47:12 +00:00
Jakob Bornecrantz
850e57a002
ipc: Move non-channel functions to utils [NFC]
2023-11-13 12:47:12 +00:00
Jakob Bornecrantz
5dfdab9e80
ipc: Split UNIX and Windows utils implementations more
2023-11-13 12:47:12 +00:00
Jakob Bornecrantz
5e92df460d
ipc: Tidy Windows utils file [NFC]
2023-11-13 12:47:12 +00:00
Jakob Bornecrantz
f0c2167fb8
ipc: Tidy UNIX utils files [NFC]
2023-11-13 12:47:12 +00:00
Jakob Bornecrantz
a339d7adf4
ipc: Remove unused function [NFC]
2023-11-13 12:47:12 +00:00
Michael Graham
255b62e892
d/wmr: Add Dell Visor support to WMR driver
2023-11-13 11:56:13 +00:00
Jakob Bornecrantz
cec787ba0f
ipc: Add variable number of views get function
2023-11-09 18:37:47 +00:00
Jakob Bornecrantz
7251417569
ipc: Add functions to lock/unlock the client connection
2023-11-09 17:56:27 +00:00
Jakob Bornecrantz
e576424995
ipc: Add ability to do variable length calls
2023-11-09 17:56:27 +00:00
Jakob Bornecrantz
6d990ba480
ipc: Refactor proto generation a little bit
2023-11-09 17:49:35 +00:00
Zhongwang Zhang
d6168fdbb4
st/oxr: Add KHR_vulkan_enable rdc capture support
2023-11-09 13:45:48 +00:00
Zhongwang Zhang
e328c42121
st/oxr: RenderDoc support on Vulkan/GLES client sides and Android platform
...
Makes it so RenderDoc can be captured by the button in UI.
2023-11-09 13:45:48 +00:00
Zhongwang Zhang
b1aedcf1d5
st/oxr: Enable VK_EXT_debug_utils extension for client side on the platform that support it
2023-11-09 13:45:48 +00:00
Zhongwang Zhang
aadb9517f3
st/oxr: Enable RenderDoc compiling on Android
2023-11-09 13:45:48 +00:00
Zhongwang Zhang
f93d08c7f5
c/client: Add renderdoc_enabled implementation for VK and EGL
...
Currently only used on Android platforms.
2023-11-09 13:45:48 +00:00
Zhongwang Zhang
23595274ee
c/client: Allow passing down debug_utils_enabled flag
2023-11-09 13:45:48 +00:00
Zhongwang Zhang
3dde1f2d27
a/vk: Enable VK_EXT_debug_utils to be enabled in given
2023-11-09 13:45:48 +00:00
Zhongwang Zhang
51690cf20e
a/vk: Add RenderDoc helpers
...
Adds helper for inserting frame delimiter.
2023-11-09 13:45:48 +00:00
Zhongwang Zhang
017e2b2f29
xrt: Enable passing down renderdoc status
2023-11-09 13:45:43 +00:00
Zhongwang Zhang
0f257e1bed
xrt: Enable passing down VK_EXT_debug_utils enabled status
2023-11-09 13:45:23 +00:00
Jarvis Huang
9e913b5a31
c/main: Support creating surface with title on Android
2023-11-08 17:51:29 +00:00
Jakob Bornecrantz
60bbded2e2
ipc: Remove left over static roles
2023-11-07 22:57:44 +00:00
Jakob Bornecrantz
f1d275708d
libmonado: Fix dynamic roles
2023-11-07 22:57:44 +00:00
Jakob Bornecrantz
14d94d8d9a
t/common: Fix North Star builder
...
Closes #296
2023-11-07 22:51:27 +00:00