Monado OpenXR Runtime
|
IMU fusion implementation - for inclusion into the single kalman-incuding translation unit. More...
#include "tracking/t_imu.h"
#include "tracking/t_imu_fusion.hpp"
#include "math/m_eigen_interop.hpp"
#include "util/u_misc.h"
#include <memory>
#include <cassert>
Data Structures | |
struct | imu_fusion |
Functions | |
struct imu_fusion * | imu_fusion_create () |
void | imu_fusion_destroy (struct imu_fusion *fusion) |
int | imu_fusion_incorporate_gyros (struct imu_fusion *fusion, uint64_t timestamp_ns, struct xrt_vec3 const *ang_vel, struct xrt_vec3 const *ang_vel_variance) |
int | imu_fusion_incorporate_accelerometer (struct imu_fusion *fusion, uint64_t timestamp_ns, struct xrt_vec3 const *accel, struct xrt_vec3 const *accel_variance, struct xrt_vec3 *out_world_accel) |
int | imu_fusion_get_prediction (struct imu_fusion const *fusion, uint64_t timestamp_ns, struct xrt_quat *out_quat, struct xrt_vec3 *out_ang_vel) |
int | imu_fusion_get_prediction_rotation_vec (struct imu_fusion const *fusion, uint64_t timestamp_ns, struct xrt_vec3 *out_rotation_vec) |
int | imu_fusion_incorporate_gyros_and_accelerometer (struct imu_fusion *fusion, uint64_t timestamp_ns, struct xrt_vec3 const *ang_vel, struct xrt_vec3 const *ang_vel_variance, struct xrt_vec3 const *accel, struct xrt_vec3 const *accel_variance, struct xrt_vec3 *out_world_accel) |
IMU fusion implementation - for inclusion into the single kalman-incuding translation unit.