Commit graph

1356 commits

Author SHA1 Message Date
Ryan Pavlik abc580d2b1 ipc: Replace "out_fds" with more generic "out_handles"
Also, finish porting client code to use factored-out utils.
2020-07-14 16:37:12 -05:00
Ryan Pavlik 040c82cb24 ipc: Port server side to use new factored-out utils 2020-07-14 16:24:26 -05:00
Ryan Pavlik 166c041421 ipc: Start providing handle marshalling util functions 2020-07-14 16:24:26 -05:00
Ryan Pavlik 0e0f4b780e inc/xrt: Add handle typedefs, to use instead of "int" for file descriptors 2020-07-14 16:24:26 -05:00
Ryan Pavlik 1a692f5de6 ipc: Use factored-out utils on client side. 2020-07-14 16:24:26 -05:00
Ryan Pavlik 36f66ea630 ipc: Add factored-out basic message send/receive 2020-07-14 16:24:26 -05:00
Ryan Pavlik a5bde51c81 ipc: Change return type of some server functions from int to xrt_result_t 2020-07-14 16:24:26 -05:00
Ryan Pavlik c2e922b0f5 ipc: Formatting cleanup 2020-07-14 16:24:26 -05:00
Ryan Pavlik 87dbad9865 ipc: Have server utils return xrt_result_t 2020-07-14 16:24:26 -05:00
Ryan Pavlik 687beddcca ipc: Replace ipc_connection_t usage with struct ipc_connection 2020-07-14 16:24:23 -05:00
Ryan Pavlik cf68e11b97 ipc: Be more strict in type parsing 2020-07-14 16:18:17 -05:00
Ryan Pavlik 1b88c7e089 ipc: Move data structure out of generation script 2020-07-14 16:18:17 -05:00
Benjamin Saunders 1c78dd0246 c/client: Slightly improve barriers, taken from !360
Transplanted by Jakob, all the hard spec reading done by Ben.
2020-07-14 17:25:28 +01:00
Jakob Bornecrantz c37dd46b0c st/prober: Rework HMD logic a bit and put HMD always in first position 2020-07-14 12:55:18 +01:00
Christoph Haag 54f01b570c build: Enable service less build with meson too 2020-07-14 02:16:06 +02:00
Christoph Haag b073e3dfb9 xrt: Add support for assigned device roles
Abandons the assumption that in oxr_system.xdevs[], index 0 is HMD,
1 is left controller, 2 is right controller.

Now to represent the dynamically assigned roles, oxr_system.role contains
the index for a device in oxr_system.xdevs[] for head, left and right.

This role assignment happens on the client side and currently can not be updated
from the server side.

Also adds an enum that device drivers set indicating allowed assignments
(many controllers are physically designed to be held in a specific hand).

This also adds support for configurations with only a HMD and a right controller.
2020-07-13 18:03:01 +02:00
Christoph Haag 5788fb90a2 drivers: Add rotation/position tracking bool to xdev
xrGetSystemProperties() will return these values to application in XrSystemTrackingProperties
using the xdev assigned to head.
2020-07-13 18:03:01 +02:00
Christoph Haag 6429496439 build: respect meson install-active-runtime option 2020-07-13 14:15:13 +02:00
Christoph Haag 605e4e2027 build: Fix installing active_runtime.json on meson without DESTDIR
The -u setting for bash reported an error if DESTDIR is not set.

The syntax ${A-foo} returns the content of A if set, or the default "foo" if not,
"foo" being the empty string in this case.
2020-07-13 14:08:34 +02:00
Ryan Pavlik d2cd0f4bb9 build: Fix destdir repetition when installing systemd units.
Found during packaging.
2020-07-10 18:11:37 -05:00
Lubosz Sarnecki 261facd9f1 u/json: Fix a -Wmaybe-uninitialized on GCC 10.1.0. 2020-07-10 17:18:41 +02:00
Lubosz Sarnecki a5dc31359b c/compositor: Set a window title. 2020-07-10 17:03:28 +02:00
Lubosz Sarnecki 499751e4fa d/vive: Use VIVE_ERROR when vive_device is available. 2020-07-09 14:11:35 +02:00
Lubosz Sarnecki 8e682fdd1b u_logging: Format logging output.
To be in line with other log prints, put the log level first.
For better readability, put the function in [braces].
Remove ":" as separator between level and function.
2020-07-09 13:38:07 +02:00
Lubosz Sarnecki 4d412edaa1 d/vive/protocol: Port to u_logging. 2020-07-09 13:38:07 +02:00
Lubosz Sarnecki dce8da5130 d/vive/controller: Port to u_logging. 2020-07-09 13:38:07 +02:00
Lubosz Sarnecki 5dff60a93d d/vive: Create common header for controller and hmd. 2020-07-09 13:38:07 +02:00
Lubosz Sarnecki dfcff5e806 d/vive/device: Use VIVE_WARN and VIVE_INFO. 2020-07-09 13:38:07 +02:00
Lubosz Sarnecki 7121c260ae d/vive/device: Replace old debug macros with new ones. 2020-07-09 13:38:07 +02:00
Lubosz Sarnecki 7be5efbe82 d/vive/prober: Prettify logging. rename methods. 2020-07-09 13:38:07 +02:00
Lubosz Sarnecki eaea6888a7 d/vive: Port logging to u_logging. 2020-07-09 13:37:58 +02: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 323d794df3 ipc: Add a json schema for the IPC description 2020-07-08 09:15:51 -05:00
Ryan Pavlik 042fd54361 t/service: Make the socket RemoveOnStop. 2020-07-08 09:15:51 -05:00
Ryan Pavlik b2b2b0f4af u_logging: Fix comments/doxygen 2020-07-08 09:15:51 -05:00
Christoph Haag 763b122c3e comp: Print info about AllowHMD when direct mode fails on nvidia 2020-07-08 15:43:05 +02:00
Jakob Bornecrantz c5b930903e st/oxr: Fix conformance failure and tidy up action set attached logic
This caused a action set to act as if it has been attached, one might say that
this commit fixes a overly attached action set.

Extreme programmed with Ryan Pavlik, which I also ~~stole~~ borrowed the header
comments from verbatim.
2020-07-06 20:11:35 +01:00
Jakob Bornecrantz 59b7bdeee0 st/oxr: Properly name MNDX_ball_on_a_stick_controller 2020-07-06 11:58:42 +01:00
Jakob Bornecrantz fd8e19718c st/oxr: Reorder extension in prefix order 2020-07-06 11:42:16 +01:00
Jakob Bornecrantz 8a1c74338c st/oxr: Make script be up to date to what's generated 2020-07-06 11:42:16 +01:00
Jakob Bornecrantz 8ee7086ea6 xrt: Introduce xrt_swapchain_create_info 2020-07-04 11:04:07 +00:00
Jakob Bornecrantz 1b11abe6eb xrt: Tidy xrt_compositor.h 2020-07-04 11:04:07 +00:00
Jakob Bornecrantz ad266672f4 st/gui: Add a special UI for setting log level vars 2020-07-03 19:26:45 +01:00
Jakob Bornecrantz 20501b8e58 d/psmv: Use new log level var tracker 2020-07-03 19:01:55 +01:00
Jakob Bornecrantz c4741cc49f d/psmv: Use new logging level helper 2020-07-03 19:01:55 +01:00
Jakob Bornecrantz 9848f8b4b8 u/var: Add log level tracker 2020-07-03 19:01:55 +01:00
Jakob Bornecrantz be0430a38c u/debug: Add function to get logging level 2020-07-03 18:58:34 +01:00
Jakob Bornecrantz ffcc06e099 d/psmv: Use new logging functions 2020-07-03 14:55:44 +01:00
Jakob Bornecrantz b26c8135ae u/*: Use new logging functions 2020-07-03 14:55:44 +01:00
Jakob Bornecrantz 38685eba38 u/log: Add logging helpers 2020-07-03 14:33:54 +01:00