OSVR-Core
Namespaces | Functions
ThreadsafeBodyReporting.cpp File Reference

Implementation. More...

#include "ThreadsafeBodyReporting.h"
#include "AngVelTools.h"
#include <osvr/Util/EigenCoreGeometry.h>
#include <osvr/Util/EigenInterop.h>
#include <osvr/Util/EigenQuatExponentialMap.h>
#include <osvr/Util/TimeValueChrono.h>

Namespaces

 osvr
 The main namespace for all C++ elements of the framework, internal and external.
 

Functions

template<typename Derived >
Eigen::Quaterniond osvr::vbtracker::angVelVecToQuat (Eigen::Quaterniond const &orientation, double dt, Eigen::MatrixBase< Derived > const &vec)
 Turn a body-space angular velocity vector into a room-space incremental rotation quaternion. More...
 
void osvr::vbtracker::assignStateToBodyReport (BodyState const &state, BodyReport &report, Eigen::Isometry3d const &trackerToRoom)
 Helper function to assign from a Kalman state to a body report, whether we predicted or not. More...
 

Detailed Description

Implementation.

Date
2016
Author
Sensics, Inc. http://sensics.com/osvr

Function Documentation

§ angVelVecToQuat()

template<typename Derived >
Eigen::Quaterniond osvr::vbtracker::angVelVecToQuat ( Eigen::Quaterniond const &  orientation,
double  dt,
Eigen::MatrixBase< Derived > const &  vec 
)
inline

Turn a body-space angular velocity vector into a room-space incremental rotation quaternion.

Orientation is assumed to be normalized. dt must be chosen such that the velocity will not alias.

§ assignStateToBodyReport()

void osvr::vbtracker::assignStateToBodyReport ( BodyState const &  state,
BodyReport report,
Eigen::Isometry3d const &  trackerToRoom 
)
inline

Helper function to assign from a Kalman state to a body report, whether we predicted or not.