Monado OpenXR Runtime
wmr_bt_controller.c File Reference

Driver for Bluetooth based WMR Controller. More...

#include "os/os_time.h"
#include "os/os_hid.h"
#include "util/u_trace_marker.h"
#include "wmr_common.h"
#include "wmr_bt_controller.h"
#include "wmr_controller.h"
#include "wmr_config_key.h"
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <assert.h>
#include <errno.h>
Include dependency graph for wmr_bt_controller.c:

Macros

#define WMR_TRACE(c, ...)   U_LOG_IFL_T(c->log_level, __VA_ARGS__)
 
#define WMR_DEBUG(c, ...)   U_LOG_IFL_D(c->log_level, __VA_ARGS__)
 
#define WMR_INFO(c, ...)   U_LOG_IFL_I(c->log_level, __VA_ARGS__)
 
#define WMR_WARN(c, ...)   U_LOG_IFL_W(c->log_level, __VA_ARGS__)
 
#define WMR_ERROR(c, ...)   U_LOG_IFL_E(c->log_level, __VA_ARGS__)
 

Functions

static struct wmr_bt_connectionwmr_bt_connection (struct wmr_controller_connection *p)
 
static bool read_packets (struct wmr_bt_connection *conn)
 
static bool send_bytes (struct wmr_controller_connection *wcc, const uint8_t *buffer, uint32_t buf_size)
 
static int read_sync (struct wmr_controller_connection *wcc, uint8_t *buffer, uint32_t buf_size, int timeout_ms)
 
static void * wmr_bt_connection_run_thread (void *ptr)
 
static void wmr_bt_connection_destroy (struct wmr_controller_connection *base)
 
struct xrt_devicewmr_bt_controller_create (struct os_hid_device *controller_hid, enum xrt_device_type controller_type, uint16_t vid, uint16_t pid, enum u_logging_level log_level)
 

Detailed Description

Driver for Bluetooth based WMR Controller.

Author
Nis Madsen nima_.nosp@m.zero.nosp@m._one@.nosp@m.prot.nosp@m.onmai.nosp@m.l.co.nosp@m.m