Jakob Bornecrantz
d0cc7e4082
d/remote: Use xrt_system_devices directly in the driver
...
And also make shutdown properly work.
2022-06-01 16:50:19 +01:00
Jakob Bornecrantz
64694a7e56
st/prober: Remove remote code in legacy path
...
Implemented by a builder instead
2022-06-01 16:50:19 +01:00
Jakob Bornecrantz
3c1576fc44
st/gui: Make it possible to pass in remote address from the command line
2022-06-01 16:50:19 +01:00
Jakob Bornecrantz
b782478571
st/gui: Make it possible to enter address and port for remote
2022-06-01 16:50:19 +01:00
Campbell Suter
0f8da1900b
a/math: Fix math_pose_invert breaking on rotated poses, and add a test
...
Previously, math_pose_invert would apply a multiplication in the wrong
order. This lead to the position of the 'original' pose being rotated.
This patch fixes that, and adds a unit test to check this case.
2022-06-01 16:44:03 +01:00
Campbell Suter
bb414f7d39
d/qwerty: Fix the aim pose not being HMD-relative
...
Commit e41cc1eec3
added support for the XRT_INPUT_SIMPLE_AIM_POSE pose
input in the QWERTY driver. Unfortunately it didn't change the code that
identifies whether the pose for a controller or HMD is being read.
In the QWERTY driver, the hands are positioned relative to the HMD, so
if you move or rotate the HMD the hands stay in the same place
on-screen. Whether a pose lookup is multiplied by the HMD transform
depends on whether the pose being looked up is that of a controller.
Thus the aim pose would not be positioned relative to the HMD.
2022-06-01 12:52:17 +00:00
Campbell Suter
45703f0952
d/remote: Mark pose as invalid when deactivated
...
Previously the pose on the remote driver controllers would always have
the set pose and the valid-tracking flags set. Leaving the pose set
makes sense (you might want to track how your game behaves when a
controller looses tracking but still has a pose set, for example
tracking issues caused by occlusion) but it wasn't possible to test with
the pose marked as not being tracked.
Therefore this patch deactivates the tracking flags when the controller
is not marked as active.
2022-06-01 17:36:49 +12:00
Moses Turner
68d3e117d8
t/hand: Remove gstreamer dependency
2022-05-31 22:39:17 +01:00
Jakob Bornecrantz
fc469e7d5f
a/tracking: Document and fix cond var loop in psvr
2022-05-31 13:38:56 +00:00
Jakob Bornecrantz
d2a2005212
a/tracking: Document and fix cond var loop in psmv
2022-05-31 13:38:56 +00:00
Jakob Bornecrantz
b41addbbe7
t/hand: Document and fix cond var loop
2022-05-31 13:38:56 +00:00
Jakob Bornecrantz
2300e4fa57
c/main: Document cond var loop
2022-05-31 13:38:56 +00:00
Ryan Pavlik
bbda2bac48
d/wmr: Add TODO at suspicious code.
2022-05-31 13:38:56 +00:00
Charlton Rodda
aa31ac3789
st/oxr: Implement dpad emulation
2022-05-31 13:25:48 +00:00
Charlton Rodda
803d679e11
st/oxr: Add dpad bindings
2022-05-31 13:25:48 +00:00
Jakob Bornecrantz
59fc679152
st/oxr: Verify EXT_dpad_bindings structs
2022-05-31 13:25:48 +00:00
Jakob Bornecrantz
fb0f94c900
st/oxr: Add dpad state and functions
2022-05-31 13:25:48 +00:00
Jakob Bornecrantz
9b27fb1a2e
WIP: aux/binding: Add dpad_emulation support
2022-05-31 13:25:48 +00:00
Jakob Bornecrantz
90df723853
st/oxr: Check requirements for EXT_dpad_binding
2022-05-31 13:25:48 +00:00
Jakob Bornecrantz
6a54b4e6e3
st/oxr: Generate headers for XR_KHR_binding_modification
2022-05-31 13:25:48 +00:00
Jakob Bornecrantz
6296c9ded5
st/oxr: Generate headers for XR_EXT_dpad_binding
2022-05-31 13:25:48 +00:00
Jakob Bornecrantz
2715b0e144
aux/bindings: Fix a few pep8 errors
2022-05-31 13:25:48 +00:00
Jakob Bornecrantz
a8c254a8cf
aux/bindings: Refactor path verify function generation
2022-05-31 13:25:48 +00:00
Jakob Bornecrantz
037c49ce30
aux/bindings: Update generated file copyright
2022-05-31 13:25:48 +00:00
Alex
642b36c5ad
depthai : added missing target
2022-05-30 18:21:14 -07:00
Jakob Bornecrantz
7e45fc7dd9
t/common: Integrate null compositor
2022-05-28 17:30:19 +00:00
Jakob Bornecrantz
c976c54008
c/null: Add null compositor
...
Based on sample compositor code.
Co-authored-by: Jakob Bornecrantz <jakob@collabora.com>
Co-authored-by: Ryan Pavlik <ryan.pavlik@collabora.com>
2022-05-28 17:30:19 +00:00
Jakob Bornecrantz
8effde1d61
t/service: Do not depend directly on comp_main
...
Because target_instance does so already.
2022-05-28 17:30:19 +00:00
Jakob Bornecrantz
9ee54a44a7
ext/openxr: Update headers to 1.0.23
2022-05-28 11:44:04 +01:00
Jakob Bornecrantz
fc769347a8
c/client: Better error logging when failing to make current context
2022-05-27 15:14:59 +00:00
Jakob Bornecrantz
7646fa64c8
st/oxr: Make sure to init session fields as early as possible
...
Noticed that on debug builds the mutex wasn't inited and the session
destroy function was called on failure to create the compositor.
2022-05-27 15:14:59 +00:00
Simon Zeni
c8b4f7c64c
c/client: implement EGL context begin and end
2022-05-27 15:08:40 +00:00
Simon Zeni
f91ada32c2
ipc: add missing sys/types include
2022-05-27 15:08:40 +00:00
Mateo de Mayo
29aefe2ba8
misc: Use pretty printers and remove stale matrix print functions
...
Use u_pp_matrix_* instead.
2022-05-26 18:35:39 +00:00
Mateo de Mayo
7d80729358
u/pp: Add array and array2d f64 pretty printers
2022-05-26 18:35:39 +00:00
Mateo de Mayo
2785c6bcfa
d/wmr: Wait until first IMU sample to send frames
...
In an Odyssey+, it seems that before the first IMU sample the frame timestamps
do not make sense and thus can make the SLAM system crash.
Also, this commit enables SLAM submission from start unless specified.
SLAM for WMR headsets now works "out of the box" :)
2022-05-26 18:35:39 +00:00
Mateo de Mayo
24be4b0a98
d/wmr: Send calibration to SLAM tracker
...
This makes it possible to use Basalt without having to create a calibration file
for the headset anymore.
2022-05-26 18:35:39 +00:00
Mateo de Mayo
8adbdc27e5
t/slam: Allow drivers to send calibration info to SLAM tracker
...
There were a couple of properties that didn't fit well in our current
calibration structs and so I created t_slam_calib_extras struct to store them.
2022-05-26 18:35:39 +00:00
Mateo de Mayo
dad70ab7d0
external/slam: Improve cam_calibration feature struct
2022-05-26 18:35:39 +00:00
Mateo de Mayo
3bf07a2711
d/wmr: Load IMU calibration
2022-05-26 18:35:39 +00:00
Mateo de Mayo
02abc49313
t/calib: Add IMU intrinsics struct
2022-05-26 18:35:39 +00:00
Mateo de Mayo
05b8e320a5
a/math: Add multiple isometry-related matrix functions
...
An isometry is a rigid body transform. In this context I'm using the term to
refer to 4x4 homogeneous matrices in SE(3). I.e., matrices comprised of a
3x3 rotation, a 3x1 translation, and a [0,0,0,1] last row.
This matrix represent both rigid body transforms.
2022-05-26 18:35:39 +00:00
Mateo de Mayo
8b2fa955b9
a/math: Fix matrix identities and use isometry
...
Isometry3f is a 4x4 matrix transform that performs only rotation and translation
(an SE(3) matrix). Its inverse can be computed trivially by Eigen compared to a
regular 4x4 transform.
2022-05-26 18:35:39 +00:00
Mateo de Mayo
2212cf95cf
a/math: Add missing extern C
2022-05-26 18:35:39 +00:00
Mateo de Mayo
9281cb1d16
misc: Silence unused warnings on release builds
2022-05-26 18:35:39 +00:00
bjorn
d3a0f10acb
c/client: rm client swapchain layout transition;
...
This was only there to satisfy a validation layer bug, which appears
to have since been fixed. It doesn't make sense to transition an XR
swapchain image to PRESENT_SRC, and the client transitions from
UNDEFINED anyway when acquiring the image.
This also fixes a case where monado violates the OpenXR specification:
> The list of OpenXR functions where the OpenXR runtime may access the
> VkQueue are:
> - xrBeginFrame
> - xrEndFrame
> - xrAcquireSwapchainImage
> - xrReleaseSwapchainImage
> The runtime must not access the VkQueue in any OpenXR function that is
> not listed above or in an extension definition.
2022-05-26 17:39:02 +00:00
bjorn
2d954d84af
c/render: Fix invalid synchronization when uploading images;
...
`queue_upload_for_first_level_and_layer` uploads pixels to an image.
It performs a layout transition, does the copy, and does another layout
transition. There is an execution dependency between the the copy and
the second layout transition, but the memory dependency was missing.
Caught/tested via enabling synchronization validation.
2022-05-26 17:27:15 +00:00
Ryan Pavlik
e5f6045b57
gradle: Be able to fetch Eigen if it's not found on the system.
2022-05-26 11:43:11 -05:00
Jakob Bornecrantz
9c44bc98fa
c/multi: Document why unsetting waiting so late
2022-05-26 14:06:18 +00:00
Jakob Bornecrantz
1b7631bd54
c/multi: Also check if a semaphore or fence has been pushed in layer_begin
...
Closes #171
2022-05-26 14:06:18 +00:00
Jakob Bornecrantz
433915b0bf
u/pp: Add math object printers
2022-05-26 14:10:06 +01:00
Moses Turner
5652ddd718
a/util: Fix function signature for u_builder_find_prober_device
...
Was this ever working?
2022-05-25 20:53:46 +00:00
Moses Turner
bbd6475da0
mercury: Better warn if we get bad aspect ratio
2022-05-25 20:53:46 +00:00
Jakob Bornecrantz
f404cc4c50
c/multi: Document flattened out producer/consumer construct
2022-05-25 21:42:58 +01:00
Jakob Bornecrantz
2afdb79895
c/multi: Document spurious wakeups
2022-05-25 21:42:58 +01:00
Jakob Bornecrantz
72dbed3ab5
c/multi: Make sure that wait thread has started in creation
...
Co-authored-by: Ryan Pavlik <ryan.pavlik@collabora.com>
Co-authored-by: Jakob Bornecrantz <jakob@collabora.com>
2022-05-25 21:42:58 +01:00
Jakob Bornecrantz
3e9a5da3c6
c/multi: Ensure that only one thread waits for wait thread
2022-05-25 21:42:58 +01:00
Ryan Pavlik
fd3a0a1435
c/multi: Fix condition var waiting for wait thread.
...
Spurious wakeups happen, have to actually have a condition
to check in a loop with the cond var wait.
2022-05-25 20:41:10 +00:00
bjorn
d523001b6e
aux/vk: Use correct image type for 3D images;
2022-05-25 20:24:17 +00:00
Ryan Pavlik
e3874383d0
st/oxr: Fix one conformance issue with d3d11
2022-05-25 18:12:22 +00:00
Ryan Pavlik
2da547ce66
a/util: Update pretty printing of results
2022-05-25 18:12:22 +00:00
Ryan Pavlik
596d15a50c
a/d3d: Further namespace the d3d11-specific functions
2022-05-25 18:12:22 +00:00
Ryan Pavlik
79dffbf3f6
st/oxr: Split out some code that is d3d-version independent
2022-05-25 18:12:22 +00:00
zhibinw
38b22f9b8e
oxr:check EGL_NO_CONTEXT and return error
2022-05-25 22:59:16 +08:00
Aidan Thornton
2fdd01afdd
d/android: initialize our thread and mutex
2022-05-25 12:30:21 +01:00
Ryan Pavlik
4a91eb3d84
c/client: Sync/waiting in D3D11
...
Co-Authored-By: Jakob Bornecrantz <jakob@collabora.com>
2022-05-24 16:55:45 -05:00
Ryan Pavlik
903fd01272
a/d3d: Add a fence waiting helper
2022-05-24 16:55:45 -05:00
Ryan Pavlik
3f777350e1
a/d3d: Fix docs for fence helper
2022-05-24 16:11:36 -05:00
Ryan Pavlik
bb94363f94
a/d3d: Turn off some swapchain formats that we can't roundtrip properly
2022-05-24 16:11:36 -05:00
Ryan Pavlik
8ee10c5a6b
xrt: Factor out deleters
2022-05-24 13:11:41 -05:00
Mateo de Mayo
2cf07dedf2
t/euroc: Fix crash when recording euroc dataset by providing UI button
...
Previously, a crash occurred in some situations when the second sample was
written before the first sample was able to create the necessary CSV files.
2022-05-23 17:51:11 -03:00
Moses Turner
6ef55d1f73
d/survive: Initialize threading primitive
2022-05-23 14:27:42 +00:00
Jakob Bornecrantz
a4983fa5b1
auxiliary: Break apart CMakeLists.txt file
2022-05-23 09:12:54 -05:00
Jakob Bornecrantz
935de808c0
a/bindings: Do not depend on util
2022-05-23 09:12:54 -05:00
Jakob Bornecrantz
38eac9dddc
xrt: Do not depend on util
2022-05-23 09:12:54 -05:00
Jakob Bornecrantz
037872e2b8
c/client: Include u_time.h in D3D11 compositor
2022-05-23 09:12:54 -05:00
Jakob Bornecrantz
a75e00d25e
d/qwerty: Include u_time.h in device file
2022-05-23 09:12:54 -05:00
Jakob Bornecrantz
b64660d458
a/util: Include u_time.h in hand tracking helper
2022-05-23 09:12:54 -05:00
Jakob Bornecrantz
08d100d7b0
d/hydra: Depend on util
2022-05-23 09:12:54 -05:00
Ryan Pavlik
5656de8b72
a/d3d: Fence helpers
2022-05-23 14:11:43 +00:00
Jakob Bornecrantz
658a21a177
a/d3d: Tidy headers
2022-05-23 14:11:43 +00:00
Jakob Bornecrantz
b8b42a4bcb
c/client: Tidy D3D11 flip comments
2022-05-23 14:11:43 +00:00
Jakob Bornecrantz
d91d6e2aa3
c/client: Do not flip projection layers in D3D11
2022-05-23 14:11:43 +00:00
Jakob Bornecrantz
0d055bb740
d/vive: Fix threading primitive initialization
2022-05-23 13:54:42 +00:00
Moses Turner
96d3896664
t/hand/mercury: Initialize the frame timing widget correctly
2022-05-23 13:19:58 +00:00
Moses Turner
9386e56c3d
a/util: Paranoia for u_frame_times_widget
2022-05-23 13:19:58 +00:00
Mateo de Mayo
bcac379cf5
ipc: Init connection mutex
2022-05-21 23:57:55 -03:00
Mateo de Mayo
dd802f7fef
c/main: Init vblank.even_thread
2022-05-21 23:50:19 -03:00
Mateo de Mayo
7a0a142dba
misc: Fix some uninitialized mutexes
2022-05-21 23:31:18 -03:00
Jakob Bornecrantz
490e90b493
a/vk: Also check for d3d12 fence semaphores
2022-05-21 13:37:28 +01:00
Ryan Pavlik
ea35e79ec7
ipc: Clarify that wait_image timeout is nanoseconds
2022-05-20 23:31:59 +01:00
Ryan Pavlik
e54d336844
c/util: Clarify that wait_image timeout is nanoseconds
2022-05-20 23:31:59 +01:00
Ryan Pavlik
1b01eb808c
c/mock: Clarify that wait_image timeout is nanoseconds
2022-05-20 23:31:59 +01:00
Ryan Pavlik
1cd435f321
c/client: Clarify that wait_image timeout is nanoseconds
2022-05-20 23:31:59 +01:00
Ryan Pavlik
753f37c41f
xrt: Clarify that wait_image timeout is nanoseconds
2022-05-20 23:31:59 +01:00
Jakob Bornecrantz
4fa406610f
a/os: Fix fallout from name change
2022-05-20 23:07:33 +01:00
Ryan Pavlik
fcc18cf839
comp: Add a basic "mock" native compositor for testing purposes
2022-05-20 22:37:15 +01:00
Ryan Pavlik
b6bb442162
st/oxr: Verify the LUID we get
2022-05-20 22:37:15 +01:00
Ryan Pavlik
cdb8d54ca1
st/oxr: Work on D3D11
2022-05-20 22:37:15 +01:00
Ryan Pavlik
945603a8be
comp/client: Initial D3D11 client compositor
...
Still missing image synchronization/waiting for completion.
2022-05-20 22:37:15 +01:00
Ryan Pavlik
9337ea375c
auxiliary: Add new d3d helper library
2022-05-20 22:37:15 +01:00
Ryan Pavlik
e6d58cf451
xrt: Add a D3D11 error
2022-05-20 22:37:15 +01:00
Ryan Pavlik
bbfc06cc3e
xrt: Add interfaces for D3D11
2022-05-20 22:37:15 +01:00
Ryan Pavlik
8bcc2cd195
xrt: Add D3D11 to the OpenXR include header
2022-05-20 22:37:15 +01:00
Ryan Pavlik
4dd1608950
st/oxr: Update extension support header for D3D11
2022-05-20 22:37:15 +01:00
Ryan Pavlik
ccb58dbe8a
build: Add option to support D3D11
2022-05-20 22:37:15 +01:00
Ryan Pavlik
907edf10a3
a/os: Add more docs for correct use of condition variables
2022-05-20 21:30:41 +00:00
Ryan Pavlik
c7580c5242
c/main: Fix a condition var wait in windows win
2022-05-20 21:30:41 +00:00
Ryan Pavlik
5a81d1412a
c/main: Fix Windows window backend to handle being shut down and started up again.
2022-05-20 21:30:41 +00:00
Ryan Pavlik
1fe1e8847e
c/main: Get more data on our errors
2022-05-20 21:30:41 +00:00
Ryan Pavlik
795db8712b
c/main: Be sure to clean up window class when done.
2022-05-20 21:30:41 +00:00
Ryan Pavlik
230424eec9
xrt: Add an XRT_INFINITE_DURATION define
...
Matches XR_INFINITE_DURATION
2022-05-20 21:30:41 +00:00
Ryan Pavlik
588b4831a2
a/util: Improve docs structure
2022-05-20 15:48:19 -05:00
Ryan Pavlik
fd25fc75bc
a/os: Rearrange time header to get the docs outside of the ifdefs.
...
Easier to read, easure to be sure we don't accidentally miss something
for doxygen.
2022-05-20 15:48:02 -05:00
Jakob Bornecrantz
875815b55b
c/main: Init comp_base as early as possible
2022-05-20 19:06:14 +01:00
Ryan Pavlik
ea4c14c3aa
a/os: Rename os_thread_helper_stop to os_thread_helper_stop_and_wait
2022-05-20 18:46:37 +01:00
Ryan Pavlik
14aed90183
a/os: Add "initialized" flags to threading primitives (in debug builds)
...
Failling to init these (other than zero-init) works fine on Linux, but fails on Windows.
So now we at least have an assert on Linux.
2022-05-20 18:40:18 +01:00
Ryan Pavlik
1aba4348dc
a/os: Fix naming convention for function pointer
2022-05-20 18:40:16 +01:00
Ryan Pavlik
4d9c3650cc
c/multi: Unlock when multi system loop exits
2022-05-20 18:40:14 +01:00
Jakob Bornecrantz
fee6809bc2
c/multi: Destroy threads instead of only stopping them
2022-05-20 18:40:11 +01:00
Christoph Haag
aac68971c4
cmake: Fix service build with -DXRT_BUILD_DRIVER_QWERTY=OFF
2022-05-19 23:52:14 +00:00
Jakob Bornecrantz
6de4e4afaa
u/worker: Init mutex and cond var
2022-05-19 23:13:48 +01:00
Mateo de Mayo
3e6fd9ba73
u/aeg: Fix clang warnings
2022-05-19 18:21:36 -03:00
Jakob Bornecrantz
03a6f079e0
t/common: Do not compile for builders when no driver is enabled
2022-05-19 15:51:06 +00:00
Jakob Bornecrantz
1c29b22cae
st/oxr: Do not enable XR_EXT_debug_utils as it's not implemented yet
2022-05-19 14:32:06 +00:00
Mateo de Mayo
85bdbc1817
u/aeg: Implement state machine to correct overshooting and avoid oscillations
2022-05-19 14:03:17 +00:00
Mateo de Mayo
bf311f3c2e
u/aeg: Add log functions
2022-05-19 14:03:17 +00:00
Mateo de Mayo
63b477d250
a/math: Add MIN, MAX and CLAMP macros
2022-05-19 14:03:17 +00:00
Mateo de Mayo
df5b5f40a9
d/wmr: Add auto exposure
2022-05-19 14:03:17 +00:00
Mateo de Mayo
77139b02a1
u/aeg: Add utility for automatic exposure and gain computation
2022-05-19 14:03:17 +00:00
Mateo de Mayo
7ea7cce930
u/var: Add u_var_histogram_f32
2022-05-19 14:03:17 +00:00
Mateo de Mayo
84422acd74
d/wmr: Centralize exposure and gain update logic
...
Also use the new draggable_u16 UI input for exposure.
2022-05-19 14:03:17 +00:00
Mateo de Mayo
7d266c76b5
u/var: Add u_var_draggable_u16
2022-05-19 14:03:17 +00:00
Ryan Pavlik
e5b0840de3
t/common: Fix missing ifdef guard in target builder remote.
2022-05-18 10:37:04 -05:00
Ryan Pavlik
fad9eb0e12
st/p: Fix mismatched prototype.
2022-05-18 10:36:49 -05:00
Arkadiusz Drohomirecki
d444412221
a/math: Add a clear() method to RelationHistory/m_relation_history
2022-05-18 14:45:12 +00:00
Jakob Bornecrantz
4c6b3b4609
t/common: Fix instance get_prober function
2022-05-18 15:39:17 +01:00
Jakob Bornecrantz
b68806956b
st/oxr: Remove unused variable
2022-05-18 11:19:30 +01:00
Jakob Bornecrantz
b180605ebe
t/common: List the simulated device
2022-05-18 11:02:12 +01:00
Ryan Pavlik
4fb62a8d8f
xrt: Word choice/clarity
2022-05-17 17:40:58 -05:00
Ryan Pavlik
0c6f342db3
tracking/hand: Word choice/clarity
2022-05-17 17:40:58 -05:00
Ryan Pavlik
54be3b958b
targets: Word choice/clarity
2022-05-17 17:40:58 -05:00
Ryan Pavlik
825ec9f549
t/oxr: Improve word choice/clarity
2022-05-17 17:40:58 -05:00
Ryan Pavlik
894b5c955a
st/steamvr_drv: Word choice/clarity
2022-05-17 17:40:58 -05:00
Ryan Pavlik
2f2405fc1f
st/prober: Improve word choice/clarity
2022-05-17 17:40:58 -05:00
Ryan Pavlik
a25bb73921
st/oxr: Word choice/clarity
2022-05-17 17:40:58 -05:00
Ryan Pavlik
26b522d1d2
st/gui: Improve word choice/clarity
2022-05-17 17:40:58 -05:00
Ryan Pavlik
45263ea8de
prober: word choice/clarity
2022-05-17 17:40:58 -05:00
Ryan Pavlik
7f600569e7
ipc: Word choice/clarity
2022-05-17 17:40:58 -05:00
Ryan Pavlik
6706180cd8
drivers: Improve word choice/clarity
2022-05-17 17:40:58 -05:00
Ryan Pavlik
ba42730af3
compositor: Improve word choice/clarity
2022-05-17 17:40:58 -05:00
Ryan Pavlik
25cb2e1790
c/render: Improve word choice/clarity
2022-05-17 17:40:58 -05:00
Ryan Pavlik
973b8f3b7f
c/main: Improve word choice/clarity
2022-05-17 17:40:58 -05:00
Ryan Pavlik
0730f08f2d
c/client: Improve word choice/clarity
2022-05-17 17:40:58 -05:00
Ryan Pavlik
3b54152563
auxiliary: Improve word choice/clarity
2022-05-17 17:40:56 -05:00
Ryan Pavlik
6e78ec1127
a/util: Improve word choice/clarity
2022-05-17 17:39:52 -05:00
Ryan Pavlik
276f24c9ad
a/tracking: Improve word choice/clarity
2022-05-17 17:39:52 -05:00
Ryan Pavlik
2a54dcdb19
a/math: Improve word choice/clarity
2022-05-17 17:39:52 -05:00
Ryan Pavlik
56a1c25378
d/simulated: Rename the simulated device driver.
2022-05-17 17:39:52 -05:00
Ryan Pavlik
df413a3809
d/ht: Fix doxygen warnings
2022-05-17 14:42:02 -05:00
Ryan Pavlik
0e4f40c980
d/wmr: Fix doxygen warning
2022-05-17 14:42:02 -05:00
Ryan Pavlik
d5bed66734
c/render: Docs improvements
2022-05-17 14:42:02 -05:00
Ryan Pavlik
7af6a78e54
c/client: doc and naming convention improvements
2022-05-17 14:42:02 -05:00
Ryan Pavlik
9edc6dd0bf
a/util: Doc improvements
2022-05-17 14:42:02 -05:00
Ryan Pavlik
cc8c034556
a/vk: Improve comment
2022-05-17 14:42:02 -05:00
Ryan Pavlik
507be96326
xrt: Improve docs, fixing doxygen warnings
2022-05-17 19:30:40 +00:00
Ryan Pavlik
6bd18ecb38
st/oxr: Clean up swapchain usage
2022-05-17 19:30:40 +00:00
Jakob Bornecrantz
61323c32d2
xrt: Use error messages in various instance and prober functions
2022-05-17 20:10:40 +01:00
Jakob Bornecrantz
58438db241
xrt: Add some error messages
2022-05-17 20:10:40 +01:00
Jakob Bornecrantz
cf9c5b9dc7
u/var: Put in a namespace and add some documentation
2022-05-17 20:09:19 +01:00
Ryan Pavlik
8cb26df99d
c/multi: Name some threads
2022-05-17 12:39:44 -05:00
Ryan Pavlik
e33a9b3481
c/main: Name some threads
2022-05-17 12:39:44 -05:00
Ryan Pavlik
e123a50438
comp/multi: Name the multi-system-compositor thread.
2022-05-17 12:39:44 -05:00
Ryan Pavlik
8bd7d199cb
a/os: Improve docs in the threading header.
2022-05-17 12:39:44 -05:00
Ryan Pavlik
1e307e8e9f
a/os: Add a function to set thread name.
2022-05-17 12:39:44 -05:00
Ryan Pavlik
147624348f
a/vk: Add an internal check to ensure graphics buffer ref worked.
2022-05-17 17:38:07 +00:00
Jakob Bornecrantz
9285bee210
u/system_helpers: Use new xrt_prober_create_system function
2022-05-17 11:20:40 +01:00
Jakob Bornecrantz
3357cd4400
t/common: Add a few builders
2022-05-17 11:20:40 +01:00
Jakob Bornecrantz
f91db16dac
u/builders: Add xrt_builder_helpers
2022-05-17 11:20:40 +01:00
Jakob Bornecrantz
46c6412cc5
st/prober: Implement xrt_builder functionallity
2022-05-17 11:20:40 +01:00
Jakob Bornecrantz
850527adc5
xrt: Add system builders and update xrt_prober interface
...
Aka setter uppers.
2022-05-17 11:20:40 +01:00
Jakob Bornecrantz
82e2ce6390
st/oxr: Fix crash when there is no optional extension in the list
2022-05-16 21:18:23 +00:00
Frederic Plourde
2e42373d21
aux/os: Fix os_semaphore_get_realtime_clock()
...
Function was previously using output param 'ts' as
input for computing 'now' internally.
2022-05-16 20:56:53 +00:00
Moses Turner
8ac95a5177
d/ht: Add some things to the WMR creation interface, and make it the default interface.
2022-05-16 19:15:33 +01:00
Ryan Pavlik
2f457d0665
build: Search for DXGI and WinRT (WindowsApp) libraries
2022-05-16 11:00:27 -05:00
Ryan Pavlik
213f4b6003
a/util: Add a COM guard object.
...
Need COM initialized to do some things (like d3d11) on Windows,
don't know if the app already initialized it, don't have a big preference
for "how" we initialize it.
2022-05-16 11:00:27 -05:00
Ryan Pavlik
46a3c7b039
build: Look for WIL (Windows Implementation Library)
...
Also define XRT_HAVE_WIL if we have it.
2022-05-16 11:00:27 -05:00
Moses Turner
bd0d24ad5c
mercury: Hopefully fix 1DOF joint limiting
2022-05-16 16:09:32 +01:00
Moses Turner
0aadc85a79
mercury: Initialize variables
...
Caused heisencrashes sometimes.
2022-05-16 16:03:18 +01:00
Moses Turner
85f30f48c6
mercury: Correctly handle lower resolution input images
...
And better calibration debug prints
2022-05-16 16:03:18 +01:00
Jakob Bornecrantz
85d4a72d0f
d/psmv: Fix NULL check
2022-05-15 21:40:26 +01:00
Jakob Bornecrantz
0201274764
c/render: Drop s from interface file for consistant naming
2022-05-15 18:04:45 +01:00
Jakob Bornecrantz
f4ab51f78b
u/pp: Add xrt_result_t printing
2022-05-15 15:02:08 +01:00
Jakob Bornecrantz
535cb839fa
u/pp: Add stack only sink for printing messages
2022-05-15 14:54:00 +01:00
Jakob Bornecrantz
6a2426c0a2
d/psmv: Refactor device creation in preperation of builders
2022-05-15 14:45:01 +01:00
Jakob Bornecrantz
ddb142564f
d/psvr: Refactor device creation in preperation of builders
2022-05-15 14:45:01 +01:00
Jakob Bornecrantz
23ed0a6632
xrt: Remove unused xdev argument to trackers
2022-05-14 22:40:36 +01:00
Mateo de Mayo
4e20384f11
gui: Make imgui.ini file live in config directory
2022-05-14 16:46:20 -03:00
Moses Turner
bcfd50c839
u/sink: Make sure gen-locked frames have the same timestamp
2022-05-13 14:18:02 +01:00
Jakob Bornecrantz
2e8d1f9b34
ipc: Set xdev_count on xrt_system_devices
2022-05-13 10:57:28 +01:00
Moses Turner
5122ecd0b0
d/dai: Fisheye calibration was upstreamed, actually use it now
2022-05-12 20:01:15 +00:00
Jakob Bornecrantz
faca646193
u/logging: Change suffix to _func_t
2022-05-12 11:59:12 +00:00
Jakob Bornecrantz
aeb11566cd
xrt: Re-order things in xrt_prober
2022-05-12 11:59:12 +00:00
Jakob Bornecrantz
3a9ac6aa5d
xrt: Move prober creation functions and struct last
2022-05-12 11:59:12 +00:00
Jakob Bornecrantz
116d1a9bf8
xrt: Typedefs have a _t suffix
2022-05-12 11:59:12 +00:00
Jakob Bornecrantz
126dbb540f
xrt: Remove functions now living in helper code
2022-05-12 11:59:12 +00:00
Jakob Bornecrantz
a38ea4231c
d/vive: Use prober helper code
2022-05-12 11:59:12 +00:00
Jakob Bornecrantz
b9d88f4eab
d/wmr: Use prober helper code
2022-05-12 11:59:12 +00:00
Jakob Bornecrantz
ceed09d9b5
u/prober: Add helper file for prober functions
2022-05-12 11:59:12 +00:00
Jakob Bornecrantz
d76b1f5e9a
st/prober: Remove last vestiges of hand tracking
2022-05-12 12:53:16 +01:00
Jakob Bornecrantz
1a358d3a92
u/sink: Remove unused downstream2
2022-05-12 12:53:14 +01:00
Jakob Bornecrantz
fc093e2c7b
u/sink: Assert on downstream being null
2022-05-12 12:53:12 +01:00
Jakob Bornecrantz
add6cb639a
st/gui: Fix crash if no instance have been created
2022-05-11 15:36:53 +01:00
Jakob Bornecrantz
aafbaecbc9
xrt: Remove old unused instance functions
2022-05-11 10:49:15 +01:00
Moses Turner
d6f62633e9
st/gui: Use xrt_system_devices struct and xrt_instance_create_system call
...
Includes fixes from Christoph Haag:
```
st/gui: Fix segfault when starting monado-gui without arguments
```
```
st/gui: Run gui_prober_select only in the modules that need a prober
This also speeds up starting up the monado-gui main menu.
```
Co-authored-by: Moses Turner <moses@collabora.com>
Co-authored-by: Jakob Bornecrantz <jakob@collabora.com>
Co-authored-by: Christoph Haag <christoph.haag@collabora.com>
2022-05-11 10:49:15 +01:00
Jakob Bornecrantz
65aa7581d2
st/ovrd: Use xrt_instance_create_system
2022-05-11 10:49:15 +01:00
Jakob Bornecrantz
3c6bf7b912
st/oxr: Use xrt_instance_create_system
2022-05-11 10:49:15 +01:00
Jakob Bornecrantz
634d495301
ipc: Use and support xrt_instance_create_system
2022-05-11 10:18:35 +01:00
Jakob Bornecrantz
d642848bb1
t/cli: Use xrt_instance_create_system call
2022-05-11 10:16:08 +01:00
Jakob Bornecrantz
1b8cbfd226
t/common: Implement xrt_instance_create_system call
2022-05-11 10:15:18 +01:00
Jakob Bornecrantz
d84819eee7
u/system_helpers: Add helper code for system devices
2022-05-11 10:14:00 +01:00
Jakob Bornecrantz
224b473dba
xrt: Add xrt_instance_create_system call
2022-05-11 10:11:43 +01:00
Jakob Bornecrantz
d0d3e0cac8
xrt: Add xrt_system_devices struct
2022-05-11 10:10:38 +01:00
Jakob Bornecrantz
ccfe8c8de0
c/main: Fix doxygen ref
2022-05-11 10:08:03 +01:00
Moses Turner
ec191bd9de
targets: Add DepthAI head tracker
2022-05-10 23:47:30 +01:00
Moses Turner
e8776fd705
d/dai: Add little xrt_device implementation for head tracking
2022-05-10 23:47:30 +01:00
Moses Turner
c7cb763b38
inc/xrt, steamvr_drv: add DepthAI device type
2022-05-10 23:47:30 +01:00
Moses Turner
5ba7ae3c53
d/dai: Add initial IMU support
2022-05-10 23:47:30 +01:00
Moses Turner
af5516f4b6
d/dai: We didn't need this calibration struct for anything
2022-05-10 23:47:30 +01:00
Moses Turner
e25ee4058d
xrt: Remove xrt_tracked_hand
2022-05-10 18:53:58 +01:00
Christoph Haag
71c7ec2382
c/main: Add thread waiting for vblank events
...
Co-authored-by: Christoph Haag <christoph.haag@collabora.com>
Co-authored-by: Jakob Bornecrantz <jakob@collabora.com>
2022-05-10 11:22:51 +01:00
Jakob Bornecrantz
e140cfad5c
u/pacing: Add vblank timing function for display control
2022-05-10 11:22:04 +01:00
Jakob Bornecrantz
57070ad620
u/pacing: Make the comp time be at least 2ms in fake pacer
2022-05-10 11:18:52 +01:00
Jakob Bornecrantz
b9b9ced43d
u/pacing: Predict present time and then calculate display time in fake pacer
2022-05-10 11:18:52 +01:00
Jakob Bornecrantz
6c9c1e9249
u/pacing: Make present_to_display_offset_ns more clear
2022-05-10 11:18:51 +01:00
Jakob Bornecrantz
e93b1c61ff
st/oxr: Make VK_KHR_external_[fence|semaphore]_fd optional
...
Only for XR_KHR_vulkan_enable2, harder to do for XR_KHR_vulkan_enable.
2022-05-09 14:01:20 +00:00
Jakob Bornecrantz
8945153bc9
st/oxr: Work around clang-format (NFC)
2022-05-09 14:01:20 +00:00
Jakob Bornecrantz
c6b0089c51
xrt: Pass external_[fence|semaphore]_fd status in
2022-05-09 14:01:20 +00:00
Jakob Bornecrantz
989c4334a3
c/client: Pass external_[fence|semaphore]_fd status in
2022-05-09 14:01:20 +00:00
Jakob Bornecrantz
c8de67ad94
c/main: Make VK_KHR_external_[fence|semaphore]_fd optional
2022-05-09 14:01:20 +00:00
Jakob Bornecrantz
cd018c98f8
c/main: Work around clang-format (NFC)
2022-05-09 14:01:20 +00:00
Jakob Bornecrantz
fd35f6668a
c/util: Print device info as well
2022-05-09 14:01:20 +00:00
Jakob Bornecrantz
2b042d48ff
a/vk: Add function to print opened device info
2022-05-09 14:01:20 +00:00
Jakob Bornecrantz
6c61965790
a/vk: Tidy vk_print_device_info
2022-05-09 14:01:20 +00:00
Jakob Bornecrantz
e092a3687b
a/vk: Pass external_[fence|samaphore]_fd status to vk_init_from_given
2022-05-09 14:01:20 +00:00
Jakob Bornecrantz
6a8e679f87
a/vk: Check for VK_KHR_external_fence_fd and VK_KHR_external_semaphore_fd
2022-05-09 14:01:20 +00:00
Jakob Bornecrantz
308aeb8e21
a/vk: Sort checked extensions
2022-05-09 14:01:20 +00:00
Jakob Bornecrantz
759162ebeb
ipc: Return correct status if we fail to create a semaphore
2022-05-09 14:01:20 +00:00
Christoph Haag
2064fd8721
c/main: zero initialize xrt_system_compositor_info
...
Fixes valgrind warning
==354193== Thread 39:
==354193== Syscall param sendmsg(msg.msg_iov[0]) points to uninitialised byte(s)
==354193== at 0xC0A146D: sendmsg (in /usr/lib/libc.so.6)
==354193== by 0x18527D: ipc_send (src/xrt/ipc/shared/ipc_utils.c:65)
==354193== by 0x157771: ipc_dispatch (ipc_server_generated.c:165)
==354193== by 0x15C88D: client_loop (src/xrt/ipc/server/ipc_server_per_client_thread.c:112)
==354193== by 0x15C60C: ipc_server_client_thread (src/xrt/ipc/server/ipc_server_per_client_thread.c:183)
==354193== by 0xC01A5C1: start_thread (in /usr/lib/libc.so.6)
==354193== by 0xC09F583: clone (in /usr/lib/libc.so.6)
==354193== Address 0xc0866afc is on thread 39's stack
==354193== in frame #2 , created by ipc_dispatch (ipc_server_generated.c:23)
==354193== Uninitialised value was created by a stack allocation
==354193== at 0x15F830: xrt_gfx_provider_create_system (src/xrt/compositor/main/comp_compositor.c:1118)
2022-05-09 15:53:25 +02:00
Christoph Haag
f76b31795f
ipc: zero initialize message buffer
2022-05-09 15:53:00 +02:00
Jakob Bornecrantz
a24551b24b
c/main: Refactor image count selection
2022-05-09 10:57:05 +00:00
Jakob Bornecrantz
9b8fe97ba9
c/main: Remove pre-declared function declarations
...
Split in two commits to improve git diff for previous commit.
2022-05-09 10:57:05 +00:00
Jakob Bornecrantz
c052b856cf
c/main: Refactor comp_target_swapchain to not pre-declare any internal functions
2022-05-09 10:57:05 +00:00
Jakob Bornecrantz
41cb0bc2e3
c/main: Whitespace in comp_target_swapchain
2022-05-09 10:57:05 +00:00
Jakob Bornecrantz
35e7a7c6ff
c/main: Fix copy typo
2022-05-09 10:57:05 +00:00
Jakob Bornecrantz
6b19eedf9c
d/survive: Use shared bindings
2022-05-09 10:46:44 +00:00
Jakob Bornecrantz
456f9c7f09
d/vive: Use shared bindings
2022-05-09 10:46:44 +00:00
Jakob Bornecrantz
56b77248c9
a/vive: Add bindings to touch controller
2022-05-09 10:46:44 +00:00
Jakob Bornecrantz
7d4b19766c
a/vive: Add bindings
2022-05-09 10:46:44 +00:00
Jakob Bornecrantz
8cf120a6f2
c/render: Fix comment (NFC)
2022-05-08 10:09:07 +01:00
Jakob Bornecrantz
d2f2a06e91
c/render: Use query pool to measure GPU time
2022-05-08 10:09:07 +01:00
Jakob Bornecrantz
6d02d67f78
c/main: Ask for VK_EXT_calibrated_timestamps if available
2022-05-08 10:09:07 +01:00
Jakob Bornecrantz
c4f0e17e88
c/main: Setting logging level when checking vulkan caps
2022-05-08 10:09:07 +01:00
Christoph Haag
611a0f644d
c/main: Use at least 3 vk images for comp target swapchain if supported
2022-05-08 10:09:07 +01:00
Mateo de Mayo
1a687cdee4
d/wmr: Add initial hand tracking for WMR devices
...
Co-authored-by: Moses Turner <moses@collabora.com>
2022-05-07 15:53:56 +00:00
Mateo de Mayo
7e1f9a7964
t/hand: Add option for allowing xfctx to be managed externally
...
Other trackers (e.g., psmv, slam, etc) work as sinks and the xfctx that manages
them is handled by the device providing the data streams. This change helps
the hand tracker have a more similar interface to other trackers.
2022-05-07 15:53:56 +00:00
Mateo de Mayo
44dac0eb5d
d/wmr: Refactor UI and tracker initialization into their own methods (NFC)
2022-05-07 15:53:56 +00:00
Mateo de Mayo
e3fadb5364
doc: Fix some doxygen warnings
2022-05-07 15:53:56 +00:00
Ryan Pavlik
bcdc2416a7
cmake: Adjust deps of XRT_INSTALL_*_SYSTEMD_*
...
Value may be ignored in this repo without the service target,
but it's harmless to have it on, and more flexible to build on.
2022-05-06 14:30:49 -05:00
Ryan Pavlik
ccbb658e49
st/oxr: Fix renderdoc build on Windows.
2022-05-06 13:59:24 -05:00
Ryan Pavlik
e79a13f0ac
a/util: Fix log corruption on Windows.
2022-05-06 00:26:39 +01:00
Ryan Pavlik
dd6b0debd0
c/main: Populate LUID in xrt_system_compositor_info
2022-05-06 00:26:34 +01:00
Ryan Pavlik
f958091578
st/oxr: Fix vulkan luid logging
2022-05-06 00:26:34 +01:00
Ryan Pavlik
422666efb3
cmake: Hide some warnings on external code.
2022-05-04 11:24:02 -05:00
Ryan Pavlik
3287c984aa
cmake: Reorganize options, renaming some.
...
Rename XRT_HAVE_SLAM to XRT_FEATURE_SLAM,
moving it from xrt_config_have.h to xrt_config_build.h
accordingly.
2022-05-04 11:24:02 -05:00
Ryan Pavlik
097eeb4f29
cmake: Switch to a new way of setting options more in line with expectations.
...
If you explicitly request an option, and it's not available due to dependencies,
we now error out instead of silently changing the value.
2022-05-04 11:24:02 -05:00
Jakob Bornecrantz
38f68dc104
xrt: Use xrt_luid_t for deviceLUID
2022-05-04 15:11:24 +00:00
Jakob Bornecrantz
b62d871498
xrt: Add xrt_luid_t
2022-05-04 15:11:24 +00:00
Jakob Bornecrantz
4ba23faa6b
auxiliary: Deal with clang-format-14 fallout (NFC)
2022-05-04 15:58:01 +01:00
Jakob Bornecrantz
45ba6ff1b1
c/client: Add support for xrt_swapchain_create_properties
2022-05-04 15:51:34 +01:00
Jakob Bornecrantz
a36620fad3
ipc: Use xrt_swapchain_create_properties when using XINA
2022-05-04 15:51:16 +01:00
Jakob Bornecrantz
6805b40ac2
ipc: Add support for xrt_swapchain_create_properties
2022-05-04 15:50:54 +01:00
Jakob Bornecrantz
f78f334473
c/multi: Add support for xrt_swapchain_create_properties
2022-05-04 15:50:20 +01:00
Jakob Bornecrantz
dd1da49aa5
c/base: Add support for xrt_swapchain_create_properties
2022-05-04 15:50:00 +01:00
Jakob Bornecrantz
07fe47d053
xrt: Add xrt_swapchain_create_properties and related function
2022-05-04 15:48:57 +01:00
Moses Turner
a5024060eb
d/dai: Autodetect OAK-D vs OAK-D Lite
...
Co-authored-by: Jakob Bornecrantz <jakob@collabora.com>
2022-05-04 13:43:43 +00:00
Ryan Pavlik
3f9e5c2a30
st/steamvr_drv: Guard GNU pragmas
2022-05-03 22:45:05 +01:00
Ryan Pavlik
fedb4fd413
t/steamvr_drv: Adjust ifdef
2022-05-03 22:44:46 +01:00
Ryan Pavlik
fc9fba9ab2
st/oxr: Adjust ifdef
2022-05-03 22:44:46 +01:00
Ryan Pavlik
f9b4af04e4
a/tracking: Fix conversion warnings
2022-05-03 22:44:37 +01:00
Ryan Pavlik
d8970f25f9
a/math: Fix conversion warnings
2022-05-03 22:44:28 +01:00
Ryan Pavlik
32a893fd2b
st/oxr: Grab LUID from Vulkan if possible
2022-05-03 22:39:58 +01:00
Ryan Pavlik
49c45bf16a
c/main: Store LUID
2022-05-03 22:34:47 +01:00
Ryan Pavlik
63fdadae3f
c/util: Query GPU LUID when possible
2022-05-03 22:33:57 +01:00
Ryan Pavlik
3691d881fc
xrt: Adjust includes for intrinsics on Windows/msvc
2022-05-03 22:33:57 +01:00
Ryan Pavlik
14f37dbe4c
xrt: Add GPU LUID to xrt_system_compositor_info
2022-05-03 22:32:17 +01:00
Jakob Bornecrantz
96fbb1e59a
c/client: Print the EGL return when failing to set context
2022-05-03 15:20:19 +00:00
Jakob Bornecrantz
e791f3ea2f
d/android: Fix various bugs
2022-05-03 14:22:34 +00:00
Ryan Pavlik
7a039543d1
st/prober: We want to support HID devices
2022-05-02 17:16:04 +01:00
Jakob Bornecrantz
dbb0461db4
st/prober: Tidy
2022-05-02 17:16:04 +01:00
Jakob Bornecrantz
d6dcba29ed
st/oxr: Tidy
2022-05-02 17:16:04 +01:00
Jakob Bornecrantz
05d186083a
st/gui: Fix conversion warnings
2022-05-02 17:16:04 +01:00
Jakob Bornecrantz
f8bce0b213
st/oxr: Fix conversion warnings
2022-05-02 17:16:04 +01:00
Jakob Bornecrantz
243c2e5326
d/psvr: Fix conversion warnings
2022-05-02 17:16:04 +01:00
Jakob Bornecrantz
2035ac03ff
st/prober: Silence warnings
2022-05-02 17:16:04 +01:00
Jakob Bornecrantz
a98c589a30
c/client: Fix conversion warning
2022-05-02 17:16:04 +01:00
Jakob Bornecrantz
065c1c4ee2
c/render: Fix conversion warnings
...
c/render: Fix conversion warnings
2022-05-02 17:16:04 +01:00
Jakob Bornecrantz
e39648bab1
c/multi: Fix conversion warnings
2022-05-02 17:16:04 +01:00
Jakob Bornecrantz
32d563d26c
c/main: Fix conversion warnings
...
c/main: Fix conversion warnings
2022-05-02 17:16:04 +01:00
Jakob Bornecrantz
d1d58c4bce
u/distortion: Fix conversion warning
2022-05-02 17:16:04 +01:00
Jakob Bornecrantz
d8003b4c8f
u/pacing: Fix conversion warning
2022-05-02 17:16:04 +01:00
Jakob Bornecrantz
fa988a7f74
u/time: Fix conversion warning
2022-05-02 17:16:04 +01:00
Jakob Bornecrantz
5981a508d2
u/sink: Fix conversion warnings
2022-05-02 17:16:04 +01:00
Jakob Bornecrantz
1afc18108e
m/3dof: Fix conversion warning
2022-05-02 17:16:04 +01:00
Jakob Bornecrantz
0a0d4a49d5
m/space: Fix function call warning
2022-05-02 17:16:04 +01:00
Jakob Bornecrantz
d1512f0005
m/lowpass: Fix no define parameter warning
2022-05-02 17:16:04 +01:00
Jakob Bornecrantz
91facd10f1
xrt: Add xrt_uuid_t
2022-05-02 17:16:04 +01:00
Jakob Bornecrantz
428e46617a
st/oxr: Avoid using sprintf
2022-05-02 17:16:04 +01:00
Jakob Bornecrantz
545ad5c1bf
st/oxr: Avoid using strncpy
2022-05-02 17:16:04 +01:00
Jakob Bornecrantz
c6208482b8
c/util: Avoid using sprintf
2022-05-02 17:16:04 +01:00
Jakob Bornecrantz
6d2011abfd
u/file: Avoid using fopen
2022-05-02 17:16:04 +01:00
Jakob Bornecrantz
42ba279050
u/file: Avoid using getenv
2022-05-02 17:16:04 +01:00
Jakob Bornecrantz
fbc51366e6
u/config: Avoid using strncpy
2022-05-02 17:16:04 +01:00
Jakob Bornecrantz
9ab5195337
st/oxr: Make sure defines are set for graphics integration files
2022-05-02 15:40:31 +00:00
Jakob Bornecrantz
5f421503e9
st/oxr: Set XR_USE_GRAPHICS_API_VULKAN as a compile define like the others
2022-05-02 15:40:31 +00:00
Jakob Bornecrantz
d7613b9b67
st/oxr: Match comp client XLIB deps
...
Fixes #168
2022-05-02 15:40:31 +00:00
Jakob Bornecrantz
f4c26bbabb
st/oxr: oxr_session_gfx_gl.c to oxr_session_gfx_gl_xlib.c
2022-05-02 15:40:31 +00:00
Antonio Ospite
bd06961188
a/util: Silence percetto warnings also when building with g++
...
Percetto is using designated struct initializers, but those are not
supported in standard C++ before C++20, resulting in some compilation
warnings.
The previous fix for that was using a diagnostic valid for clang but not
for g++ resulting in another warning when building with g++:
-----------------------------------------------------------------------
In file included from ../monado/src/xrt/auxiliary/math/m_relation_history.cpp:19:
../monado/src/xrt/auxiliary/util/u_trace_marker.h:21:32: warning: unknown option after ‘#pragma GCC diagnostic’ kind [-Wpragmas]
21 | #pragma GCC diagnostic ignored "-Wc99-designator"
| ^~~~~~~~~~~~~~~~~~
-----------------------------------------------------------------------
For GCC the diagnostics to disable is actually "-Wpedantic", as shown
below:
-----------------------------------------------------------------------
In file included from ../monado/src/xrt/auxiliary/util/u_trace_marker.h:25,
from ../monado/src/xrt/auxiliary/math/m_relation_history.cpp:19:
../external/percetto/src/percetto.h: In function ‘void percetto_event_with_args(percetto_category*, uint32_t, const char*, int32_t, const percetto_track*, int64_t, uint64_t)’:
../external/percetto/src/percetto.h:424:5: warning: C++ designated initializers only available with ‘-std=c++2a’ or ‘-std=gnu++2a’ [-Wpedantic]
424 | .track = track,
| ^
-----------------------------------------------------------------------
And for clang "-Wc++20-designator" should be slightly more accurate:
-----------------------------------------------------------------------
In file included from ../monado/src/xrt/auxiliary/util/u_trace_marker.h:29:
../external/percetto/src/percetto.h:424:5: warning: designated initializers are a C++20 extension [-Wc++20-designator]
.track = track,
^
-----------------------------------------------------------------------
Fix all the warnings by ignoring the right diagnostics depending on the
compiler, taking care of differentiating clang++ from g++ as they both
define __GNUC__.
2022-05-02 17:31:11 +02:00
Jakob Bornecrantz
175ff58f10
build: Remove meson files
2022-04-28 21:36:25 +00:00
Jakob Bornecrantz
bc89a23280
c/client: Use helper function to see if timeline semaphore is avaiable
2022-04-28 10:55:55 +01:00
Jakob Bornecrantz
0dbe9857c3
a/vk: Add function to check timeline semaphore import/export cap
2022-04-28 10:55:55 +01:00
Jakob Bornecrantz
3492c9e948
st/oxr: Tidy and print out suggested uuid in physical device selection code
2022-04-28 10:29:56 +01:00
Jakob Bornecrantz
8dfae6d1d1
st/oxr: Log information when creating VkInstance & VkDevice
2022-04-28 10:27:11 +01:00
Ryan Pavlik
a10206dce6
a/vk: Fix MSVC build.
...
Apparently static initializers referring to other statics are not enjoyed
by Microsoft's compiler
2022-04-27 15:23:24 +00:00
Ryan Pavlik
7db9131aab
a/util: Add pop_back to HistoryBuffer
2022-04-27 09:51:12 -05:00
nima01
232b3bade5
aux/math: More double-precision matrix and vector support
2022-04-25 19:14:46 +00:00
Jakob Bornecrantz
27e4577acb
a/vk: Tidy calls to vk_get_memory_type
2022-04-24 22:47:51 +01:00
Jakob Bornecrantz
045fc9c33f
a/vk: Add caller_name argument to vk_alloc_and_bind_image_memory for better debugging
2022-04-24 22:47:51 +01:00
Jakob Bornecrantz
917265d1b2
a/vk: Add vk_convert_timestamps_to_host_ns function
2022-04-24 22:47:51 +01:00
Jakob Bornecrantz
f217046810
a/vk: Get the timestamp valid bits
2022-04-24 11:10:03 +01:00
Jakob Bornecrantz
599527fe01
a/vk: Fill in timestamp feature information
2022-04-24 11:10:03 +01:00
Jakob Bornecrantz
3aa4fdb096
a/vk: Add function to print device features
2022-04-24 11:10:03 +01:00
Jakob Bornecrantz
f65a8b1eda
a/vk: Add VK_EXT_calibrated_timestamps
2022-04-24 00:29:41 +01:00
Jakob Bornecrantz
9e58ab69e0
a/vk: Add VkQueryPool functions
2022-04-24 00:29:41 +01:00
Ryan Pavlik
2f78acd108
cmake: Copy some deps over when installing on Windows.
2022-04-21 17:17:16 -05:00
Ryan Pavlik
0926ce1dab
cmake: Clean up how we install the runtime
2022-04-21 17:17:16 -05:00
Ryan Pavlik
86ee913086
cmake: Use new module for generating manifests
...
Remove the old parts.
2022-04-21 17:17:16 -05:00
Ryan Pavlik
e75fae4d80
cmake: Fix where we install the runtime on Windows
2022-04-21 16:29:17 -05:00
Ryan Pavlik
ad6b70267e
cmake: Apparently Windows needs backslashes in the manifest files.
2022-04-21 16:23:49 -05:00
Ryan Pavlik
aa4f43b049
cmake: Improve manifest installation, allowing relative paths to be generated.
2022-04-20 11:47:04 -05:00