Monado OpenXR Runtime
vive_calibration.h
Go to the documentation of this file.
1// Copyright 2020-2023, Collabora, Ltd.
2// SPDX-License-Identifier: BSL-1.0
3/*!
4 * @file
5 * @brief Vive calibration getters.
6 * @author Mateo de Mayo <mateo.demayo@collabora.com>
7 * @author Moses Turner <moses@collabora.com>
8 * @ingroup aux_vive
9 */
10
11#pragma once
12
13#include "xrt/xrt_compiler.h"
14#include "tracking/t_tracking.h"
15
16
17#ifdef __cplusplus
18extern "C" {
19#endif
20
21
22struct vive_config;
23
24/*!
25 * Get a @ref t_stereo_camera_calibration and @ref xrt_pose from left camera to head translation.
26 *
27 * @ingroup aux_vive
28 */
29bool
31 struct t_stereo_camera_calibration **calibration_ptr_to_ref,
32 struct xrt_pose *out_head_in_left_camera);
33
34/*!
35 * Get a @ref t_slam_camera_calibration one for each camera.
36 *
37 * @ingroup aux_vive
38 */
39void
41 struct t_slam_camera_calibration *out_calib0,
42 struct t_slam_camera_calibration *out_calib1);
43
44/*!
45 * Get a @ref t_imu_calibration for the IMU.
46 *
47 * @ingroup aux_vive
48 */
49void
50vive_get_imu_calibration(const struct vive_config *d, struct t_imu_calibration *out_calib);
51
52/*!
53 * Get a @ref t_slam_imu_calibration for the IMU.
54 *
55 * @ingroup aux_vive
56 */
57void
58vive_get_slam_imu_calibration(const struct vive_config *d, struct t_slam_imu_calibration *out_calib);
59
60
61#ifdef __cplusplus
62} // extern "C"
63#endif
void vive_get_imu_calibration(const struct vive_config *d, struct t_imu_calibration *out_calib)
Get a t_imu_calibration for the IMU.
Definition: vive_calibration.c:232
void vive_get_slam_imu_calibration(const struct vive_config *d, struct t_slam_imu_calibration *out_calib)
Get a t_slam_imu_calibration for the IMU.
Definition: vive_calibration.c:261
bool vive_get_stereo_camera_calibration(const struct vive_config *d, struct t_stereo_camera_calibration **calibration_ptr_to_ref, struct xrt_pose *out_head_in_left_camera)
Get a t_stereo_camera_calibration and xrt_pose from left camera to head translation.
Definition: vive_calibration.c:77
void vive_get_slam_cams_calib(const struct vive_config *d, struct t_slam_camera_calibration *out_calib0, struct t_slam_camera_calibration *out_calib1)
Get a t_slam_camera_calibration one for each camera.
Definition: vive_calibration.c:129
Combined IMU calibration data.
Definition: t_tracking.h:411
Extension to camera calibration for SLAM tracking.
Definition: t_tracking.h:613
Extension to IMU calibration for SLAM tracking.
Definition: t_tracking.h:625
Stereo camera calibration data to be given to trackers.
Definition: t_tracking.h:248
headset config.
Definition: vive_config.h:143
A pose composed of a position and orientation.
Definition: xrt_defines.h:465
Tracking API interface.
Header holding common defines.