25 #ifndef INCLUDED_VideoIMUFusion_h_GUID_85338EA5_58E6_4787_16D2_EC53201EFE9F
26 #define INCLUDED_VideoIMUFusion_h_GUID_85338EA5_58E6_4787_16D2_EC53201EFE9F
50 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
58 const Eigen::Vector3d &angVel);
72 bool running()
const {
return m_state == State::Running; }
84 return m_lastVelocity;
94 return m_reorientedVideo;
111 void enterCameraPoseAcquisitionState();
112 void enterRunningState(Eigen::Isometry3d
const &rTc,
126 std::unique_ptr<StartupData> m_startupData;
128 std::unique_ptr<RunningData> m_runningData;
129 Eigen::Isometry3d m_rTc;
138 Eigen::Isometry3d m_roomCalib;
141 #endif // INCLUDED_VideoIMUFusion_h_GUID_85338EA5_58E6_4787_16D2_EC53201EFE9F
OSVR_PoseState const & getLatestCameraPose() const
void handleVideoTrackerDataWhileRunning(const OSVR_TimeValue ×tamp, const OSVR_PoseReport &report)
VideoIMUFusion(VideoIMUFusionParams const ¶ms=VideoIMUFusionParams())
Constructor.
Eigen::Matrix< double, 12, 12 > const & getErrorCovariance() const
EIGEN_MAKE_ALIGNED_OPERATOR_NEW void handleIMUData(const OSVR_TimeValue ×tamp, const OSVR_OrientationReport &report)
Header wrapping include of and for warning quieting.
A structure defining a quaternion, often a unit quaternion representing 3D rotation.
We do not yet know the relative pose of the camera.
OSVR_PoseState const & getLatestReorientedVideoPose() const
~VideoIMUFusion()
Out-of-line destructor required for unique_ptr pimpl idiom.
void handleVideoTrackerDataDuringStartup(const OSVR_TimeValue ×tamp, const OSVR_PoseReport &report, const OSVR_OrientationState &orientation)
Report type for an orientation callback on a tracker interface.
void handleIMUVelocity(const OSVR_TimeValue ×tamp, const Eigen::Vector3d &angVel)
Header providing a C++ wrapper around TimeValueC.h.
OSVR_PoseState const & getLatestPose() const
Returns the latest (fusion result, if available) pose.
A structure defining a 3D (6DOF) rigid body pose: translation and rotation.
Struct for combined velocity state.
Standardized, portable parallel to struct timeval for representing both absolute times and time inter...
Report type for a pose (position and orientation) callback on a tracker interface.
osvr::util::time::TimeValue const & getLatestTime() const