Monado OpenXR Runtime
ipc_server_per_client_thread.c File Reference

Per client thread listening on the socket. More...

#include "util/u_misc.h"
#include "util/u_trace_marker.h"
#include "shared/ipc_utils.h"
#include "server/ipc_server.h"
#include "ipc_server_generated.h"
#include <unistd.h>
#include <fcntl.h>
#include <errno.h>
#include <stdio.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <sys/epoll.h>
#include <sys/socket.h>
Include dependency graph for ipc_server_per_client_thread.c:

Functions

static void common_shutdown (volatile struct ipc_client_state *ics)
 
static int setup_epoll (volatile struct ipc_client_state *ics)
 
static void client_loop (volatile struct ipc_client_state *ics)
 
void ipc_server_client_destroy_session_and_compositor (volatile struct ipc_client_state *ics)
 This destroys the native compositor for this client and any extra objects created from it, like all of the swapchains. More...
 
void * ipc_server_client_thread (void *_ics)
 Thread function for the client side dispatching. More...
 

Detailed Description

Per client thread listening on the socket.

Author
Pete Black pblac.nosp@m.k@co.nosp@m.llabo.nosp@m.ra.c.nosp@m.om
Jakob Bornecrantz jakob.nosp@m.@col.nosp@m.labor.nosp@m.a.co.nosp@m.m

Function Documentation

◆ ipc_server_client_destroy_session_and_compositor()

void ipc_server_client_destroy_session_and_compositor ( volatile struct ipc_client_state ics)

This destroys the native compositor for this client and any extra objects created from it, like all of the swapchains.

References os_mutex::os_mutex_lock(), ipc_client_state::server, and ipc_client_state::swapchain_count.