Monado OpenXR Runtime
twrap_slam.c File Reference

Tiny xrt_device exposing SLAM capabilities. More...

#include "math/m_vec3.h"
#include "util/u_sink.h"
#include "xrt/xrt_defines.h"
#include "xrt/xrt_frameserver.h"
#include "xrt/xrt_results.h"
#include "xrt/xrt_tracking.h"
#include "xrt/xrt_config_have.h"
#include "xrt/xrt_config_build.h"
#include "util/u_var.h"
#include "util/u_misc.h"
#include "util/u_debug.h"
#include "util/u_logging.h"
#include "util/u_trace_marker.h"
#include "math/m_api.h"
#include "tracking/t_tracking.h"
#include <assert.h>
#include "util/u_device.h"
#include "math/m_space.h"
#include "util/u_tracked_imu_3dof.h"
Include dependency graph for twrap_slam.c:

Data Structures

struct  slam_device
 

Macros

#define SLAM_TRACE(d, ...)   U_LOG_IFL_T(d->log_level, __VA_ARGS__)
 
#define SLAM_DEBUG(d, ...)   U_LOG_IFL_D(d->log_level, __VA_ARGS__)
 
#define SLAM_INFO(d, ...)   U_LOG_IFL_I(d->log_level, __VA_ARGS__)
 
#define SLAM_WARN(d, ...)   U_LOG_IFL_W(d->log_level, __VA_ARGS__)
 
#define SLAM_ERROR(d, ...)   U_LOG_IFL_E(d->log_level, __VA_ARGS__)
 

Functions

static struct slam_deviceslam_device (struct xrt_device *xdev)
 
static xrt_result_t twrap_slam_get_tracked_pose (struct xrt_device *xdev, enum xrt_input_name name, int64_t at_timestamp_ns, struct xrt_space_relation *out_relation)
 
static void twrap_slam_get_view_poses (struct xrt_device *xdev, const struct xrt_vec3 *default_eye_relation, int64_t at_timestamp_ns, uint32_t view_count, struct xrt_space_relation *out_head_relation, struct xrt_fov *out_fovs, struct xrt_pose *out_poses)
 
static void twrap_slam_destroy (struct xrt_device *xdev)
 
xrt_result_t twrap_slam_create_device (struct xrt_frame_context *xfctx, enum xrt_device_name name, struct xrt_slam_sinks **out_sinks, struct xrt_device **out_device)
 

Detailed Description

Tiny xrt_device exposing SLAM capabilities.

Author
Moses Turner moses.nosp@m.@col.nosp@m.labor.nosp@m.a.co.nosp@m.m