Commit graph

30 commits

Author SHA1 Message Date
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
Korcan Hussein 60ae73f571 ipc: Add support for dynamic device roles 2023-10-24 09:24:49 +00:00
Ryan Pavlik 2c2aa92889 ipc: Factor out client connection setup and teardown for reuse. 2023-06-17 22:23:33 +01:00
Jakob Bornecrantz 4aaefc7588 ipc: Add xrt_space support 2023-03-10 00:03:46 +00:00
Moshi Turner 7485afbeaa xrt: Refactor oxr_sdl2_hack to u_debug_gui
And OXR_DEBUG_GUI to XRT_DEBUG_GUI

Co-authored-by: Jakob Bornecrantz <jakob@collabora.com>
2023-03-06 16:39:52 -06:00
Jakob Bornecrantz e629bbbe2b a/util: Split out process functions into own library 2022-10-27 17:19:57 +00:00
Julian Petrov d0f713c4c4 ipc: Add Windows support 2022-10-13 17:07:27 +00:00
Ryan Pavlik cc4007a69e cmake: Substantial cleanups and simplifications
We now have a cmake-format config file.
We no longer use list variables for sources, instead using
target_sources when we need to add, in accordance with current
best practice. (This makes it a lot easier to edit too.) There's no more
include_directories(), add_definitions(), or other gently-deprecated
directory-scoped commands, nor any CMake scripts that include
a parent directory reference (named targets instead)
2021-11-12 09:48:37 -06:00
Ryan Pavlik e82fafb186 cmake: Allow C++17 mode on all platforms, all modules.
Remove per-module C++17 settings.
2021-04-30 15:37:04 -05:00
Ryan Pavlik 01fbbc4ed5 ipc/server, t/server_lib: Implement mainloop code for Android, using a pipe. 2021-02-24 15:23:26 -06:00
Ryan Pavlik f15a14b193 ipc/server: Factor out the mainloop code that may vary between platforms 2021-02-22 17:03:16 -06:00
Jakob Bornecrantz 39186a1e1e ipc/server: Rename ipc_server_client.c to ipc_server_handler.c 2020-12-09 21:03:50 +00:00
Jakob Bornecrantz 1154e58d06 ipc/server: Refactor out per_client_thread 2020-12-09 21:03:50 +00:00
Ryan Pavlik 9c7cfa0229 ipc/android: Add Android-specific native code library. 2020-12-01 18:05:31 +01:00
Jakob Bornecrantz 3008e5482d ipc: Refactor folders 2020-10-29 17:02:06 +00:00
Ryan Pavlik 7c0df6506b ipc/client: Use Android allocator on client side. 2020-08-19 16:07:00 -05:00
Ryan Pavlik 20c65e74e3 ipc: Define shmem utilities for Linux and Android 2020-07-16 13:06:07 -05:00
Ryan Pavlik 44fe0e7709 build: Handle Android NDK better. 2020-07-14 16:37:55 -05:00
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 36f66ea630 ipc: Add factored-out basic message send/receive 2020-07-14 16:24:26 -05:00
Ryan Pavlik 1b88c7e089 ipc: Move data structure out of generation script 2020-07-14 16:18:17 -05:00
Pete Black bd5aa24463 xrt: Add multi client and overlay client support 2020-06-25 15:48:34 +01:00
Jakob Bornecrantz e59b4a1cb1 ipc: Use new frame timing code 2020-06-24 11:42:46 +01:00
Christoph Haag b32652c4df ipc: Implement xrWaitFrame by waiting on a shared semaphore v2
Version 2 additions by Jakob, still use a semaphore to wake up the client.
But now instead call the compositor wait frame and have that thread wake up
the client, and return immediatly on the IPC channel.
2020-05-13 17:07:08 +01:00
Ryan Pavlik 5935fad73b ipc: Add ability for service to be launched by systemd socket activation. 2020-05-07 16:54:11 -05:00
Ryan Pavlik d7e84cf5b5 build: Fix include directories for IPC server module 2020-05-07 15:46:29 -05:00
Jakob Bornecrantz 7c8a8a3f87 ipc: Add code to enable a service process
This enables out of process compositing.
2020-04-29 14:58:24 +01:00