Monado OpenXR Runtime
m_eigen_interop.hpp File Reference

Interoperability helpers connecting internal math types and Eigen. More...

#include "math/m_api.h"
#include <Eigen/Core>
#include <Eigen/Geometry>
Include dependency graph for m_eigen_interop.hpp:

Go to the source code of this file.

Namespaces

namespace  xrt::auxiliary::math
 C++-only functionality in the Math helper library.
 

Functions

static Eigen::Map< const Eigen::Quaternionf > xrt::auxiliary::math::map_quat (const struct xrt_quat &q)
 Wrap an internal quaternion struct in an Eigen type, const overload. More...
 
static Eigen::Map< Eigen::Quaternionf > xrt::auxiliary::math::map_quat (struct xrt_quat &q)
 Wrap an internal quaternion struct in an Eigen type, non-const overload. More...
 
static Eigen::Map< const Eigen::Vector3f > xrt::auxiliary::math::map_vec3 (const struct xrt_vec3 &v)
 Wrap an internal 3D vector struct in an Eigen type, const overload. More...
 
static Eigen::Map< Eigen::Vector3f > xrt::auxiliary::math::map_vec3 (struct xrt_vec3 &v)
 Wrap an internal 3D vector struct in an Eigen type, non-const overload. More...
 
static Eigen::Map< const Eigen::Vector3d > xrt::auxiliary::math::map_vec3_f64 (const struct xrt_vec3_f64 &v)
 Wrap an internal 3D vector struct in an Eigen type, non-const overload. More...
 
static Eigen::Map< Eigen::Vector3d > xrt::auxiliary::math::map_vec3_f64 (struct xrt_vec3_f64 &v)
 Wrap an internal 3D vector struct in an Eigen type, non-const overload. More...
 
static Eigen::Map< const Eigen::Matrix3f > xrt::auxiliary::math::map_matrix_3x3 (const struct xrt_matrix_3x3 &m)
 Wrap an internal 3x3 matrix struct in an Eigen type, const overload. More...
 
static Eigen::Map< Eigen::Matrix3f > xrt::auxiliary::math::map_matrix_3x3 (struct xrt_matrix_3x3 &m)
 Wrap an internal 3x3 matrix struct in an Eigen type, non-const overload. More...
 
static Eigen::Map< Eigen::Matrix3d > xrt::auxiliary::math::map_matrix_3x3_f64 (struct xrt_matrix_3x3_f64 &m)
 Wrap an internal 3x3 matrix struct in an Eigen type, non-const overload. More...
 
static Eigen::Map< const Eigen::Matrix4f > xrt::auxiliary::math::map_matrix_4x4 (const struct xrt_matrix_4x4 &m)
 Wrap an internal 4x4 matrix struct in an Eigen type, const overload. More...
 
static Eigen::Map< Eigen::Matrix4f > xrt::auxiliary::math::map_matrix_4x4 (struct xrt_matrix_4x4 &m)
 Wrap an internal 4x4 matrix struct in an Eigen type, non-const overload. More...
 
static Eigen::Map< const Eigen::Matrix4d > xrt::auxiliary::math::map_matrix_4x4_f64 (const struct xrt_matrix_4x4_f64 &m)
 Wrap an internal 4x4 matrix f64 struct in an Eigen type, const overload. More...
 
static Eigen::Map< Eigen::Matrix4d > xrt::auxiliary::math::map_matrix_4x4_f64 (struct xrt_matrix_4x4_f64 &m)
 Wrap an internal 4x4 matrix struct in an Eigen type, non-const overload. More...
 
static Eigen::Map< const Eigen::Quaternionf > xrt::auxiliary::math::orientation (const struct xrt_pose &pose)
 Return a Eigen type wrapping a pose's orientation (const). More...
 
static Eigen::Map< Eigen::Quaternionf > xrt::auxiliary::math::orientation (struct xrt_pose &pose)
 Return a Eigen type wrapping a pose's orientation. More...
 
static Eigen::Map< const Eigen::Vector3f > xrt::auxiliary::math::position (const struct xrt_pose &pose)
 Return a Eigen type wrapping a pose's position (const). More...
 
static Eigen::Map< Eigen::Vector3f > xrt::auxiliary::math::position (struct xrt_pose &pose)
 Return a Eigen type wrapping a pose's position. More...
 

Detailed Description

Interoperability helpers connecting internal math types and Eigen.

Author
Rylie Pavlik rylie.nosp@m..pav.nosp@m.lik@c.nosp@m.olla.nosp@m.bora..nosp@m.com
Nis Madsen nima_.nosp@m.zero.nosp@m._one@.nosp@m.prot.nosp@m.onmai.nosp@m.l.co.nosp@m.m