29 #ifndef INCLUDED_QuatlibInteropC_h_GUID_85D92019_F0CC_419C_5F6D_F5A3134AA5D4
30 #define INCLUDED_QuatlibInteropC_h_GUID_85D92019_F0CC_419C_5F6D_F5A3134AA5D4
47 OSVR_INLINE
void osvrQuatToQuatlib(q_type dest,
OSVR_Quaternion const *src) {
54 OSVR_INLINE
void osvrQuatFromQuatlib(
OSVR_Quaternion *dest, q_type
const src) {
61 OSVR_INLINE
void osvrVec3ToQuatlib(q_vec_type dest,
OSVR_Vec3 const *src) {
62 memcpy((
void *)(dest), (
void const *)(src->
data),
sizeof(
double) * 3);
65 OSVR_INLINE
void osvrVec3FromQuatlib(
OSVR_Vec3 *dest, q_vec_type
const src) {
66 memcpy((
void *)(dest->
data), (
void const *)(src),
sizeof(
double) * 3);
69 OSVR_INLINE
void osvrPose3ToQuatlib(q_xyz_quat_type *dest,
72 osvrQuatToQuatlib(dest->quat, &(src->
rotation));
75 OSVR_INLINE
void osvrPose3FromQuatlib(
OSVR_Pose3 *dest,
76 q_xyz_quat_type
const *src) {
77 osvrVec3FromQuatlib(&(dest->
translation), src->xyz);
78 osvrQuatFromQuatlib(&(dest->
rotation), src->quat);
void osvrQuatSetZ(OSVR_Quaternion *q, double val)
Setter for quaternion component Z.
double osvrQuatGetY(OSVR_Quaternion const *q)
Accessor for quaternion component Y.
A structure defining a 3D vector, often a position/translation.
OSVR_Quaternion rotation
Orientation as a unit quaternion.
A structure defining a quaternion, often a unit quaternion representing 3D rotation.
void osvrQuatSetY(OSVR_Quaternion *q, double val)
Setter for quaternion component Y.
double data[3]
Internal array data.
double osvrQuatGetX(OSVR_Quaternion const *q)
Accessor for quaternion component X.
void osvrQuatSetW(OSVR_Quaternion *q, double val)
Setter for quaternion component W.
Header providing basic C macros for defining API headers.
void osvrQuatSetX(OSVR_Quaternion *q, double val)
Setter for quaternion component X.
A structure defining a 3D (6DOF) rigid body pose: translation and rotation.
double osvrQuatGetW(OSVR_Quaternion const *q)
Accessor for quaternion component W.
double osvrQuatGetZ(OSVR_Quaternion const *q)
Accessor for quaternion component Z.
OSVR_Vec3 translation
Position vector.