Monado OpenXR Runtime
ipc_client_state Struct Reference

Holds the state for a single client. More...

#include </builds/monado/monado/src/xrt/ipc/server/ipc_server.h>

Collaboration diagram for ipc_client_state:

Data Fields

struct ipc_serverserver
 Link back to the main server. More...
 
struct xrt_sessionxs
 Session for this client. More...
 
struct xrt_compositorxc
 Compositor for this client. More...
 
bool io_active
 Is the inputs and outputs active. More...
 
uint32_t swapchain_count
 Number of swapchains in use by client. More...
 
struct xrt_swapchainxscs [32]
 Ptrs to the swapchains. More...
 
struct ipc_swapchain_data swapchain_data [32]
 Data for the swapchains. More...
 
uint32_t compositor_semaphore_count
 Number of compositor semaphores in use by client. More...
 
struct xrt_compositor_semaphorexcsems [8]
 Ptrs to the semaphores. More...
 
struct {
   uint32_t   root
 
   uint32_t   local
 
   uint32_t   stage
 
   uint32_t   unbounded
 
semantic_spaces
 
uint32_t space_count
 Number of spaces. More...
 
struct xrt_spacexspcs [128]
 Ptrs to the spaces. More...
 
bool ref_space_used [XRT_SPACE_REFERENCE_TYPE_COUNT]
 Which of the references spaces is the client using. More...
 
struct ipc_message_channel imc
 Socket fd used for client comms. More...
 
struct ipc_app_state client_state
 
int server_thread_index
 

Detailed Description

Holds the state for a single client.

Field Documentation

◆ compositor_semaphore_count

uint32_t ipc_client_state::compositor_semaphore_count

Number of compositor semaphores in use by client.

◆ imc

struct ipc_message_channel ipc_client_state::imc

Socket fd used for client comms.

◆ io_active

bool ipc_client_state::io_active

Is the inputs and outputs active.

◆ ref_space_used

bool ipc_client_state::ref_space_used[XRT_SPACE_REFERENCE_TYPE_COUNT]

Which of the references spaces is the client using.

◆ server

◆ space_count

uint32_t ipc_client_state::space_count

Number of spaces.

◆ swapchain_count

uint32_t ipc_client_state::swapchain_count

Number of swapchains in use by client.

Referenced by ipc_server_client_destroy_session_and_compositor().

◆ swapchain_data

struct ipc_swapchain_data ipc_client_state::swapchain_data[32]

Data for the swapchains.

◆ xc

struct xrt_compositor* ipc_client_state::xc

◆ xcsems

struct xrt_compositor_semaphore* ipc_client_state::xcsems[8]

Ptrs to the semaphores.

◆ xs

struct xrt_session* ipc_client_state::xs

Session for this client.

◆ xscs

struct xrt_swapchain* ipc_client_state::xscs[32]

Ptrs to the swapchains.

◆ xspcs

struct xrt_space* ipc_client_state::xspcs[128]

Ptrs to the spaces.


The documentation for this struct was generated from the following file: