Monado OpenXR Runtime
|
Modules | |
Server Internals | |
These are only called by the platform-specific mainloop polling code. | |
Files | |
file | ipc_server.h |
Common server side code. | |
file | ipc_server_handler.c |
Handling functions called from generated dispatch function. | |
file | ipc_server_interface.h |
Interface for IPC server code. | |
file | ipc_server_mainloop_android.c |
Server mainloop details on Android. | |
file | ipc_server_mainloop_android.h |
Additional server entry points needed for Android. | |
file | ipc_server_mainloop_linux.c |
Server mainloop details on Linux. | |
file | ipc_server_mainloop_windows.cpp |
Server mainloop details on Windows. | |
file | ipc_server_per_client_thread.c |
Per client thread listening on the socket. | |
file | ipc_server_process.c |
Server process functions. | |
Data Structures | |
struct | ipc_swapchain_data |
Information about a single swapchain. More... | |
struct | ipc_client_state |
Holds the state for a single client. More... | |
struct | ipc_server_mainloop |
Platform-specific mainloop object for the IPC server. More... | |
struct | ipc_server |
Main IPC object for the server. More... | |
Functions | |
xrt_result_t | ipc_server_get_client_app_state (struct ipc_server *s, uint32_t client_id, struct ipc_app_state *out_ias) |
Get the current state of a client. More... | |
xrt_result_t | ipc_server_set_active_client (struct ipc_server *s, uint32_t client_id) |
Set the new active client. More... | |
xrt_result_t | ipc_server_toggle_io_client (struct ipc_server *s, uint32_t client_id) |
Toggle the io for this client. More... | |
void | ipc_server_activate_session (volatile struct ipc_client_state *ics) |
Called by client threads to set a session to active. More... | |
void | ipc_server_deactivate_session (volatile struct ipc_client_state *ics) |
Called by client threads to set a session to deactivate. More... | |
void | ipc_server_update_state (struct ipc_server *s) |
Called by client threads to recalculate active client. More... | |
void * | ipc_server_client_thread (void *_ics) |
Thread function for the client side dispatching. More... | |
int | ipc_server_main (int argc, char **argv) |
Main entrypoint to the compositor process. More... | |
Server side IPC code.
void ipc_server_activate_session | ( | volatile struct ipc_client_state * | ics | ) |
#include <ipc/server/ipc_server.h>
Called by client threads to set a session to active.
References os_mutex::os_mutex_lock(), and ipc_client_state::server.
void * ipc_server_client_thread | ( | void * | _ics | ) |
#include <ipc/server/ipc_server.h>
Thread function for the client side dispatching.
void ipc_server_deactivate_session | ( | volatile struct ipc_client_state * | ics | ) |
#include <ipc/server/ipc_server.h>
Called by client threads to set a session to deactivate.
References os_mutex::os_mutex_lock(), and ipc_client_state::server.
xrt_result_t ipc_server_get_client_app_state | ( | struct ipc_server * | s, |
uint32_t | client_id, | ||
struct ipc_app_state * | out_ias | ||
) |
#include <ipc/server/ipc_server.h>
Get the current state of a client.
References os_mutex::os_mutex_lock().
int ipc_server_main | ( | int | argc, |
char ** | argv | ||
) |
#include <ipc/server/ipc_server_interface.h>
Main entrypoint to the compositor process.
xrt_result_t ipc_server_set_active_client | ( | struct ipc_server * | s, |
uint32_t | client_id | ||
) |
xrt_result_t ipc_server_toggle_io_client | ( | struct ipc_server * | s, |
uint32_t | client_id | ||
) |
#include <ipc/server/ipc_server.h>
Toggle the io for this client.
References os_mutex::os_mutex_lock().
void ipc_server_update_state | ( | struct ipc_server * | s | ) |
#include <ipc/server/ipc_server.h>
Called by client threads to recalculate active client.
References os_mutex::os_mutex_lock().