25 #ifndef INCLUDED_IMUMessage_h_GUID_BF9DF56D_F7CB_4E92_C9E6_B44C56C8138D
26 #define INCLUDED_IMUMessage_h_GUID_BF9DF56D_F7CB_4E92_C9E6_B44C56C8138D
32 #include <boost/none_t.hpp>
33 #include <boost/variant.hpp>
47 enum class ImuMessageCategory { Empty, Orientation, AngularVelocity };
56 : imuPtr(&myImu), timestamp(tv), data(d) {}
69 template <
typename ReportType>
72 ReportType
const &d) {
78 using TimestampedOrientation = TimestampedImuReport<OSVR_OrientationReport>;
82 using TimestampedAngVel = TimestampedImuReport<OSVR_AngularVelocityReport>;
86 using TimestampedReports =
87 typepack::list<TimestampedOrientation, TimestampedAngVel>;
92 using IMUMessage = boost::variant<boost::none_t, TimestampedOrientation,
98 #endif // INCLUDED_IMUMessage_h_GUID_BF9DF56D_F7CB_4E92_C9E6_B44C56C8138D
Header providing a C++ wrapper around TimeValueC.h.
Standardized, portable parallel to struct timeval for representing both absolute times and time inter...