Monado OpenXR Runtime
wmr_hmd.h File Reference

Interface to the WMR HMD driver code. More...

#include "tracking/t_tracking.h"
#include "xrt/xrt_device.h"
#include "xrt/xrt_frame.h"
#include "xrt/xrt_prober.h"
#include "os/os_threading.h"
#include "math/m_imu_3dof.h"
#include "util/u_logging.h"
#include "util/u_distortion_mesh.h"
#include "util/u_var.h"
#include "wmr_protocol.h"
#include "wmr_config.h"
#include "wmr_camera.h"
#include "wmr_common.h"
#include "wmr_hmd_controller.h"
Include dependency graph for wmr_hmd.h:

Go to the source code of this file.

Data Structures

struct  wmr_headset_descriptor
 
struct  wmr_hmd_distortion_params
 
struct  wmr_hmd
 

Macros

#define WMR_MAX_CONTROLLERS   2
 

Functions

static struct wmr_hmdwmr_hmd (struct xrt_device *p)
 
void wmr_hmd_create (enum wmr_headset_type hmd_type, struct os_hid_device *hid_holo, struct os_hid_device *hid_ctrl, struct xrt_prober_device *dev_holo, enum u_logging_level log_level, struct xrt_device **out_hmd, struct xrt_device **out_handtracker, struct xrt_device **out_left_controller, struct xrt_device **out_right_controller)
 
bool wmr_hmd_send_controller_packet (struct wmr_hmd *hmd, const uint8_t *buffer, uint32_t buf_size)
 
int wmr_hmd_read_sync_from_controller (struct wmr_hmd *hmd, uint8_t *buffer, uint32_t buf_size, int timeout_ms)
 

Detailed Description

Function Documentation

◆ wmr_hmd_create()

void wmr_hmd_create ( enum wmr_headset_type  hmd_type,
struct os_hid_device hid_holo,
struct os_hid_device hid_ctrl,
struct xrt_prober_device dev_holo,
enum u_logging_level  log_level,
struct xrt_device **  out_hmd,
struct xrt_device **  out_handtracker,
struct xrt_device **  out_left_controller,
struct xrt_device **  out_right_controller 
)
Todo:
Could reach this due to !XRT_HAVE_LIBUSB but the HMD should keep working