Ryan Pavlik
d2cd0f4bb9
build: Fix destdir repetition when installing systemd units.
...
Found during packaging.
2020-07-10 18:11:37 -05:00
Jakob Bornecrantz
deedd10a50
xrt: Tidy xrt_instance_create argument order and add doc-comment
2020-07-08 14:41:12 +00:00
Ryan Pavlik
042fd54361
t/service: Make the socket RemoveOnStop.
2020-07-08 09:15:51 -05:00
Lubosz Sarnecki
53619fa64e
d/vive/controller: Move prober interface to vive_prober.
...
Create propper initializer for the controller and move the proper
interface to vive_prober to be more consistent with the device. This
will also allow to share more code like the config parsing in a later
patch.
2020-07-02 18:42:42 +02:00
Lubosz Sarnecki
f33c6356d7
d/vive: Rename vive_controller files.
...
To be more consistent with the rest of the driver, rename the controller
files to match the others style.
2020-07-02 18:42:42 +02:00
Pete Black
bd5aa24463
xrt: Add multi client and overlay client support
2020-06-25 15:48:34 +01:00
Ryan Pavlik
b38a8e8c24
targets/service: Remove unneeded xrt_prober_create function.
2020-06-03 16:28:21 -05:00
Ryan Pavlik
bc6cc85e7d
xrt: Improve doxygen documentation.
2020-06-03 16:28:18 -05:00
Ryan Pavlik
1438541147
st/gui: Port to using xrt_instance, instead of xrt_prober directly.
2020-05-27 18:40:56 -05:00
Ryan Pavlik
1a313b6f58
t/cli: Port to use xrt_instance, instead of xrt_prober directly.
2020-05-27 18:40:56 -05:00
Ryan Pavlik
51dba8ad94
t/common: Add a target_instance_no_comp library
2020-05-27 18:40:56 -05:00
Ryan Pavlik
3b1f003705
t/openxr: Remove reference to/implementation of xrt_prober_create
2020-05-27 18:40:56 -05:00
Ryan Pavlik
6c77b8d314
t/common: Replace references to xrt_prober_create
2020-05-27 18:40:56 -05:00
Ryan Pavlik
4638b0af7b
build: Switch all CMake options to XRT_... to match what's used in source.
...
Also revise other small related parts of the build to make them more clear and consistent.
2020-05-12 11:52:51 -05:00
Ryan Pavlik
4dd7a603f4
xrt: Temporarily fix build broken by layer violation.
2020-05-12 11:52:51 -05:00
Jakob Bornecrantz
d8538d3a2f
gui: Require OpenGL version 3.3
2020-05-11 18:13:49 +00:00
Christoph Haag
5908c33439
d/survive: Add survive driver
2020-05-09 13:12:06 +00:00
Ryan Pavlik
acbac4f1a6
t/service: Add ability to generate, link, install systemd unit files
2020-05-07 16:54:17 -05:00
Ryan Pavlik
b52b3ec649
meson: Improve build when sdl2 not available
...
Unfortunately doesn't fix 32-bit meson CI
2020-05-07 20:04:08 +00:00
Jakob Bornecrantz
7a70f86b2d
targets: Add and change targets to support service process
2020-04-29 15:13:43 +01:00
Ryan Pavlik
ba71b6f027
t/cli: Add missing include
2020-04-28 16:49:13 -05:00
Ryan Pavlik
777f905ee1
t/cli: Fix typos
2020-04-28 16:49:13 -05:00
Ryan Pavlik
974c68dead
xrt: Re-arrange build to avoid unnecessary includes.
...
Avoid unintentionally including cJSON from the source tree when using system,
etc. This adds granularity to the usage of "external" sources.
2020-04-28 21:36:46 +00:00
Ryan Pavlik
47710e0532
t/openxr: Fix build without OpenGL
2020-04-28 21:36:46 +00:00
Jakob Bornecrantz
80dd892987
xrt: Add serial and manufacturer to xrt_prober video device probing interface
2020-04-28 18:51:07 +00:00
Christoph Haag
d4e4a690db
d/vive_controller: Add basic 3dof vive_controller_driver
...
v2: Add basic 3DOF Index Controller support
Only the "gen1" watchman usb protocol is supported (almost same as vive wand).
Note: Lighthouse v2 data is not properly ignored, the IMU data is only parsed correctly
when controller is not hit by lighthouse lasers.
Supported:
* trigger value
* trigger button
* trackpad x, y
* trackpad touch
* thumbstick x, y
* thumbstick click
* system click
* a click,
* b click
Not supported:
* trigger touch
* touchpad force
* thumbstick touch
* system touch
* a touch
* b touch
* grip squeeze
* finger tracking
2020-04-28 10:22:42 +00:00
Ryan Pavlik
427808d09a
build: Use version script in Meson build too.
2020-04-27 17:33:43 -05:00
Ryan Pavlik
95b5c03f10
build: Relink if version script changes.
2020-04-27 17:33:38 -05:00
Ryan Pavlik
a11f5cc429
target/oxr: Mark the runtime target as a module, not a shared library.
2020-04-24 20:34:53 +00:00
Jakob Bornecrantz
945f2c82ed
targets: Move xrt_instance implementation into targets
2020-04-11 12:31:58 +01:00
Jakob Bornecrantz
c39cb39643
st/oxr: Use new xrt_instance object
2020-04-10 13:48:18 +01:00
Jakob Bornecrantz
fa0789343e
targets: Add stub implementations of xrt_gfx_provider_create_fd
...
This is needed by st/prober's default implementation of xrt_instance.
2020-04-10 13:48:18 +01:00
Jakob Bornecrantz
de20d87f87
xrt: Make it possible for the prober to pass in JSON data to the drivers
2020-04-10 12:29:21 +00:00
Jakob Bornecrantz
a8a4d8c3dd
d/arduino: Add new flexible arduino based input device
2020-03-27 10:22:19 +00:00
Ryan Pavlik
a974562d43
t/openxr: Unify configured files for Meson and CMake.
2020-03-23 17:29:43 -05:00
Ryan Pavlik
377ae07e53
xrt: Add missing SPDX tags
2020-03-23 17:29:43 -05:00
Ryan Pavlik
09c189b6ba
build: Install more targets
2020-03-23 17:29:43 -05:00
Pete Black
b6613db5d4
d/dd: Add Daydream driver
2020-03-11 21:36:49 +00:00
Ryan Pavlik
fe40691052
build: Start using version script to reduce the number of exported symbols
2020-03-04 09:55:16 -06:00
Ryan Pavlik
71c29425d4
build: Fix linking issues preventing the OpenXR runtime from working.
2020-03-04 09:54:47 -06:00
Ryan Pavlik
92205ab5be
build: Refactor CMake build to use static libraries instead of object bundles.
...
This allows transitive dependencies to work easier and improves compatibility.
It takes a little bit more storage at build time, and possibly a little extra time.
2020-03-04 11:15:35 +00:00
Ryan Pavlik
81d9983398
build: Improve handling of common dependencies, and portability
2020-03-03 10:33:14 +00:00
Ryan Pavlik
fdaede836c
build: Make it possible to turn off the main compositor lib and runtime target.
2020-03-03 10:33:14 +00:00
Jakob Bornecrantz
0619190d2b
build: Refactor how config defines are handled
...
With loads of changes from Ryan.
2020-03-03 10:33:14 +00:00
Jakob Bornecrantz
ca3c266dc1
comp: Split client and main in the build system as well
2020-03-02 12:01:04 +00:00
Jakob Bornecrantz
09aa8794b2
aux/vk: Refactor out helper code into own library
2020-03-02 11:58:40 +00:00
Jakob Bornecrantz
d6d934e35f
d/rs: Meson build
2020-02-10 20:07:31 +00:00
Jakob Bornecrantz
53201debdc
d/rs: Add a simple pure 6DOF device, for the T26[1|5] devices
2020-02-10 20:07:31 +00:00
Nova
981fe55a27
d/ns: Add North Star stub driver
2020-01-25 17:06:51 +00:00
Jakob Bornecrantz
d305f773ea
d/ohmd: Do not open External Device by default
2020-01-25 14:42:02 +00:00
Jakob Bornecrantz
356e4c18c1
d/dummy: Add dummy HMD driver
2020-01-25 14:42:02 +00:00
Ryan Pavlik
871395d5b5
build: Adjust meson build equivalently
2020-01-14 12:28:23 -06:00
Ryan Pavlik
47f704277a
xrt: Let BUILD_TRACKING mean you need more than just the IMU fusion.
...
This is required to build anything that uses the IMU fusion module
without OpenCV.
2020-01-14 11:51:12 -06:00
Ryan Pavlik
c1928468af
t/gui: Fix SDL flag enum type
2020-01-09 17:35:54 -06:00
Ryan Pavlik
c123195800
t/oxr: Fix type issue with sdl2 code
2020-01-09 17:35:54 -06:00
Ryan Pavlik
13c099f59e
xrt: Fix for mismatched parameter names
2020-01-09 22:54:01 +00:00
Ryan Pavlik
5c830f16b2
t/oxr: Fix linking in absence of SDL2
2019-12-07 18:25:37 +00:00
Ryan Pavlik
24158bd747
t/gui: Apply clang-tidy fixes to remove redundant returns.
2019-12-07 18:24:56 +00:00
Ryan Pavlik
d9fb855f6e
t/cli: Fix type correctness
2019-12-07 18:24:56 +00:00
Christoph Haag
b17f1c2f97
st/oxr: Initialize sdl on main thread
...
Calling SDL_Init() in different threads in the same process crashes.
In this SDL2 code X11_XOpenDisplay() will be a null pointer on the second thread;
if (SDL_X11_LoadSymbols()) {
display = X11_XOpenDisplay(NULL);
This becomes a problem when monado starts the debug UI in a thread,
and then an OpenXR client application tries to initialize SDL.
Two consecutive SDL_Init() in the same thread is harmless though.
2019-11-17 13:59:21 +00:00
Jakob Bornecrantz
a29dd8c0a4
st/oxr: Improve destruction of GUI hack
2019-11-09 12:53:42 +00:00
Ryan Pavlik
e8660a18bd
build: Use CMAKE_POSITION_INDEPENDENT_CODE instead of target props.
...
Reduces repetitive code.
2019-11-01 16:51:54 -05:00
Jakob Bornecrantz
5f4ddcc414
t/cli: Add a just probe command
2019-10-25 18:34:18 +01:00
Jakob Bornecrantz
8301bd8d4c
external: Refactor out sdl functions from main cimguo.cpp
2019-10-22 21:37:03 +01:00
Lubosz Sarnecki
02dc839ca8
d/vive: Add initial support for the Valve Index.
2019-10-22 19:18:47 +02:00
Lubosz Sarnecki
2ed3109c95
d/vive: Add initial support for Vive Pro.
2019-10-22 19:18:47 +02:00
Lubosz Sarnecki
e063e8245e
d/vive: Add native driver for the Vive.
...
This adds a driver for the Vive family of devices based on Philipp
Zabel's ouvrt.
The driver currently only handles the IMU and main board report streams,
but is able to acquire the JSON configuration and utilize it for IMU
calibration as well as distortion configuration.
2019-10-22 19:18:47 +02:00
Jakob Bornecrantz
e56271d968
st/oxr: Add super hacky debug gui
2019-10-15 20:54:57 +01:00
Jakob Bornecrantz
5f1078675d
st/gui: Do not call prober select in debug scene
2019-10-15 20:54:52 +01:00
Jakob Borncrantz
0bc91ab1cd
cmake: Make sure to link to pthreads
2019-10-15 21:00:12 +02:00
Lubosz Sarnecki
6ec8721899
xrt: Add num_devices to prober found interface.
...
In order to access multiple devices the prober found interface needs to
pass the length of the device list. This patch updates the found
interface in all drivers.
2019-10-11 15:56:20 +01:00
Drew DeVault
202d1d72aa
openxr/meson.build: remove install: true
...
This removes the meson feature warnings.
2019-10-10 22:58:10 +00:00
Jakob Bornecrantz
7680038f8b
t/gui: Request forward compatible OpenGL version and minimum 3.2
2019-10-10 16:06:57 +01:00
Jakob Bornecrantz
102e36efc9
st/gui: Don't include glad directly
2019-10-09 22:11:41 +01:00
Jakob Bornecrantz
1afc4df95c
st/gui: Refactor gui code into it's own state tracker
2019-10-09 21:53:21 +01:00
Jakob Bornecrantz
e327d56bf4
aux/ogl: Introduce a single small OpenGL library
2019-10-09 17:07:23 +01:00
Jakob Bornecrantz
420f25c7f7
t/gui: Refactor out SDL2 code
2019-10-09 16:32:58 +01:00
Lubosz Sarnecki
979536dd4b
xrt/comp/cmake: Enable build of Wayland backend.
...
Add pkgconfig based Wayland build including protocol generation.
2019-10-02 12:22:42 +02:00
Jakob Bornecrantz
3e27720083
t/gui: Better handling of sink interceptors
2019-09-28 18:02:41 +01:00
Jakob Bornecrantz
6dcf69df83
aux/tracking: Adjust checkerboard corners for subpixel accuracy
2019-09-28 02:47:42 +01:00
Jakob Bornecrantz
ee3f54adb6
aux/tracking: Add parameters to calibration
2019-09-27 20:49:31 +01:00
Jakob Bornecrantz
c295c8e6c9
xrt: Refactor meson and cmake (most) to fix cmake build
2019-09-27 12:19:48 +01:00
Jakob Bornecrantz
d848ea010f
xrt: s/XRT_BUILD_*/XRT_BUILD_DRIVER_*/g
2019-09-27 12:03:36 +01:00
Drew DeVault
064aef3526
build: port to meson
2019-09-26 15:05:22 +00:00
Jakob Bornecrantz
b1febd8971
t/gui: Add a calibration scene
2019-09-23 11:46:06 +01:00
Jakob Bornecrantz
b50415a367
t/gui: Add main menu and pure debug scene
2019-09-21 18:33:45 +01:00
Jakob Bornecrantz
65eeb19939
targets: Link with tracking if built
2019-09-21 18:21:05 +01:00
Ryan Pavlik
f123c41146
t/gui: Support quat values
2019-09-20 10:07:50 +01:00
Ryan Pavlik
f10eaafcdb
t/gui: Align floats by always outputting the + or -
2019-09-20 10:07:46 +01:00
Lubosz Sarnecki
910f16fd30
targets/cli: Fix build with OpenHMD disabled.
...
Without this patch the build is failing due to linker errors
when BUILD_WITH_OPENHMD is set to false.
2019-09-20 10:15:17 +02:00
Jakob Bornecrantz
9d1353c626
t/gui: Connect it all together
2019-09-15 18:52:17 +00:00
Jakob Bornecrantz
a507aee906
t/gui: Add two scenes
2019-09-15 18:52:17 +00:00
Jakob Bornecrantz
74bdb0cb38
t/gui: Add imgui code
2019-09-15 18:52:17 +00:00
Jakob Bornecrantz
71b3de9c46
t/gui: Add scene manager
2019-09-15 18:52:17 +00:00
Jakob Bornecrantz
c474112782
t/gui: Add OpenGL sink code
2019-09-15 18:52:17 +00:00
Jakob Bornecrantz
968952aa9e
t/gui: Add st/prober code
2019-09-15 18:52:17 +00:00
Jakob Bornecrantz
44d58037b7
t/gui: Add SDL2 based GUI target
2019-09-15 18:52:17 +00:00
Jakob Bornecrantz
3d744c5959
d/psmv: Add support for ZCM2
2019-09-15 15:29:45 +01:00
Jakob Bornecrantz
29b1713be9
xrt: Add enum xrt_device_name so that state trackers can reason about device
2019-09-04 12:47:18 +01:00
Jakob Bornecrantz
005abd5429
t/cli: Tidy CMakeLists.txt file
2019-08-27 08:52:57 +01:00