OSVR-Core
Classes | Namespaces | Typedefs | Enumerations | Functions
IMUMessage.h File Reference

Header. More...

#include <boost/none_t.hpp>
#include <boost/variant.hpp>
#include <osvr/TypePack/List.h>
#include <osvr/Util/ClientReportTypesC.h>
#include <osvr/Util/TimeValue.h>

Go to the source code of this file.

Classes

class  osvr::vbtracker::TimestampedImuReport< ReportType >
 An IMU report data structure, along with the report time and the internal tracking system's pointer to IMU object. More...
 

Namespaces

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

Typedefs

using osvr::vbtracker::TimestampedOrientation = TimestampedImuReport< OSVR_OrientationReport >
 An orientation report data structure, along with the report time and the internal tracking system's pointer to IMU object. More...
 
using osvr::vbtracker::TimestampedAngVel = TimestampedImuReport< OSVR_AngularVelocityReport >
 An angular velocity report data structure, along with the report time and the internal tracking system's pointer to IMU object. More...
 
using osvr::vbtracker::TimestampedReports = typepack::list< TimestampedOrientation, TimestampedAngVel >
 Typelist containing only the member types of the MessageEntry variant type that actually constitute valid report types. More...
 
using osvr::vbtracker::IMUMessage = boost::variant< boost::none_t, TimestampedOrientation, TimestampedAngVel >
 A "typesafe tagged-union" variant that can hold an IMU report data along with the timestamp and the pointer to the tracking system's IMU object that it applies to. More...
 

Enumerations

enum  ImuMessageCategory { Empty, Orientation, AngularVelocity }
 

Functions

template<typename ReportType >
TimestampedImuReport< ReportType > osvr::vbtracker::makeImuReport (TrackedBodyIMU &myImu, util::time::TimeValue const &tv, ReportType const &d)
 Generic constructor/factory function.
 

Detailed Description

Header.

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

Typedef Documentation

§ IMUMessage

using osvr::vbtracker::IMUMessage = typedef boost::variant<boost::none_t, TimestampedOrientation, TimestampedAngVel>

A "typesafe tagged-union" variant that can hold an IMU report data along with the timestamp and the pointer to the tracking system's IMU object that it applies to.

§ TimestampedAngVel

using osvr::vbtracker::TimestampedAngVel = typedef TimestampedImuReport<OSVR_AngularVelocityReport>

An angular velocity report data structure, along with the report time and the internal tracking system's pointer to IMU object.

§ TimestampedOrientation

using osvr::vbtracker::TimestampedOrientation = typedef TimestampedImuReport<OSVR_OrientationReport>

An orientation report data structure, along with the report time and the internal tracking system's pointer to IMU object.

§ TimestampedReports

using osvr::vbtracker::TimestampedReports = typedef typepack::list<TimestampedOrientation, TimestampedAngVel>

Typelist containing only the member types of the MessageEntry variant type that actually constitute valid report types.