Monado OpenXR Runtime
oxr_system.c File Reference

Holds system related entrypoints. More...

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <assert.h>
#include "xrt/xrt_device.h"
#include "util/u_debug.h"
#include "util/u_verify.h"
#include "oxr_objects.h"
#include "oxr_logger.h"
#include "oxr_two_call.h"
#include "oxr_chain.h"
#include "oxr_api_verify.h"
Include dependency graph for oxr_system.c:

Macros

#define imin(a, b)   (a < b ? a : b)
 

Functions

static enum xrt_form_factor convert_form_factor (XrFormFactor form_factor)
 
static bool oxr_system_matches (struct oxr_logger *log, struct oxr_system *sys, XrFormFactor form_factor)
 
XrResult oxr_system_select (struct oxr_logger *log, struct oxr_system **systems, uint32_t system_count, XrFormFactor form_factor, struct oxr_system **out_selected)
 
XrResult oxr_system_verify_id (struct oxr_logger *log, const struct oxr_instance *inst, XrSystemId systemId)
 
XrResult oxr_system_get_by_id (struct oxr_logger *log, struct oxr_instance *inst, XrSystemId systemId, struct oxr_system **system)
 
XrResult oxr_system_fill_in (struct oxr_logger *log, struct oxr_instance *inst, XrSystemId systemId, uint32_t view_count, struct oxr_system *sys)
 
bool oxr_system_get_hand_tracking_support (struct oxr_logger *log, struct oxr_instance *inst)
 
bool oxr_system_get_eye_gaze_support (struct oxr_logger *log, struct oxr_instance *inst)
 
bool oxr_system_get_force_feedback_support (struct oxr_logger *log, struct oxr_instance *inst)
 
void oxr_system_get_face_tracking_htc_support (struct oxr_logger *log, struct oxr_instance *inst, bool *supports_eye, bool *supports_lip)
 
void oxr_system_get_face_tracking2_fb_support (struct oxr_logger *log, struct oxr_instance *inst, bool *supports_audio, bool *supports_visual)
 
static bool oxr_system_get_body_tracking_support (struct oxr_logger *log, struct oxr_instance *inst, const enum xrt_input_name body_tracking_name)
 
bool oxr_system_get_body_tracking_fb_support (struct oxr_logger *log, struct oxr_instance *inst)
 
XrResult oxr_system_get_properties (struct oxr_logger *log, struct oxr_system *sys, XrSystemProperties *properties)
 
XrResult oxr_system_enumerate_view_confs (struct oxr_logger *log, struct oxr_system *sys, uint32_t viewConfigurationTypeCapacityInput, uint32_t *viewConfigurationTypeCountOutput, XrViewConfigurationType *viewConfigurationTypes)
 
XrResult oxr_system_enumerate_blend_modes (struct oxr_logger *log, struct oxr_system *sys, XrViewConfigurationType viewConfigurationType, uint32_t environmentBlendModeCapacityInput, uint32_t *environmentBlendModeCountOutput, XrEnvironmentBlendMode *environmentBlendModes)
 
XrResult oxr_system_get_view_conf_properties (struct oxr_logger *log, struct oxr_system *sys, XrViewConfigurationType viewConfigurationType, XrViewConfigurationProperties *configurationProperties)
 
static void view_configuration_view_fill_in (XrViewConfigurationView *target_view, XrViewConfigurationView *source_view)
 
XrResult oxr_system_enumerate_view_conf_views (struct oxr_logger *log, struct oxr_system *sys, XrViewConfigurationType viewConfigurationType, uint32_t viewCapacityInput, uint32_t *viewCountOutput, XrViewConfigurationView *views)
 

Detailed Description