Monado OpenXR Runtime
rift_driver.c File Reference

Driver for the Oculus Rift. More...

#include "os/os_time.h"
#include "xrt/xrt_defines.h"
#include "xrt/xrt_device.h"
#include "xrt/xrt_results.h"
#include "math/m_relation_history.h"
#include "math/m_clock_tracking.h"
#include "math/m_api.h"
#include "math/m_vec2.h"
#include "math/m_mathinclude.h"
#include "util/u_debug.h"
#include "util/u_device.h"
#include "util/u_distortion_mesh.h"
#include "util/u_logging.h"
#include "util/u_misc.h"
#include "util/u_time.h"
#include "util/u_var.h"
#include "util/u_visibility_mask.h"
#include "util/u_trace_marker.h"
#include <stdio.h>
#include <assert.h>
#include "rift_distortion.h"
#include "rift_internal.h"
#include "rift_usb.h"
Include dependency graph for rift_driver.c:

Functions

static int rift_sensor_thread_tick (struct rift_hmd *hmd)
 
static void * rift_sensor_thread (void *ptr)
 
static void rift_hmd_destroy (struct xrt_device *xdev)
 
static xrt_result_t rift_hmd_get_tracked_pose (struct xrt_device *xdev, enum xrt_input_name name, int64_t at_timestamp_ns, struct xrt_space_relation *out_relation)
 
static xrt_result_t rift_hmd_get_view_poses (struct xrt_device *xdev, const struct xrt_vec3 *default_eye_relation, int64_t at_timestamp_ns, enum xrt_view_type view_type, uint32_t view_count, struct xrt_space_relation *out_head_relation, struct xrt_fov *out_fovs, struct xrt_pose *out_poses)
 
static xrt_result_t rift_hmd_get_visibility_mask (struct xrt_device *xdev, enum xrt_visibility_mask_type type, uint32_t view_index, struct xrt_visibility_mask **out_mask)
 
static xrt_result_t rift_hmd_get_presence (struct xrt_device *xdev, bool *out_presence)
 
int rift_devices_create (struct os_hid_device *dev, enum rift_variant variant, const char *device_name, const char *serial_number, struct rift_hmd **out_hmd, struct xrt_device **out_xdevs)
 

Detailed Description

Driver for the Oculus Rift.

Based largely on simulated_hmd.c, with reference to the DK1/DK2 firmware and OpenHMD's rift driver.

Author
Jakob Bornecrantz jakob.nosp@m.@col.nosp@m.labor.nosp@m.a.co.nosp@m.m
Rylie Pavlik rylie.nosp@m..pav.nosp@m.lik@c.nosp@m.olla.nosp@m.bora..nosp@m.com
Beyley Cardellio ep1cm.nosp@m.1n10.nosp@m.n123@.nosp@m.gmai.nosp@m.l.com