Monado OpenXR Runtime
vive_source.h
Go to the documentation of this file.
1// Copyright 2022-2023, Collabora, Ltd.
2// SPDX-License-Identifier: BSL-1.0
3/*!
4 * @file
5 * @brief Interface for vive data sources
6 * @author Mateo de Mayo <mateo.demayo@collabora.com>
7 * @ingroup drv_vive
8 */
9
10#pragma once
11
12#include "xrt/xrt_frame.h"
13#include "xrt/xrt_tracking.h"
14
15/*!
16 * Vive data sources
17 *
18 * @addtogroup drv_vive
19 * @{
20 */
21
22
23#ifdef __cplusplus
24extern "C" {
25#endif
26
27struct vive_source *
29
30void
31vive_source_push_imu_packet(struct vive_source *vs, uint32_t age, timepoint_ns t, struct xrt_vec3 a, struct xrt_vec3 g);
32
33void
34vive_source_push_frame_ticks(struct vive_source *vs, timepoint_ns ticks);
35
36void
37vive_source_hook_into_sinks(struct vive_source *vs, struct xrt_slam_sinks *sinks);
38
39/*!
40 * @}
41 */
42
43#ifdef __cplusplus
44}
45#endif
int64_t timepoint_ns
Integer timestamp type.
Definition: u_time.h:70
struct vive_source * vive_source_create(struct xrt_frame_context *xfctx)
Exported functions.
Definition: vive_source.c:181
Manages the data streaming state related to a vive headset.
Definition: vive_source.c:31
Object used to track all sinks and frame producers in a graph.
Definition: xrt_frame.h:108
Container of pointers to sinks that could be used for a SLAM system.
Definition: xrt_tracking.h:202
A 3 element vector with single floats.
Definition: xrt_defines.h:271
Data frame header.
Header defining the tracking system integration in Monado.