IMUDeducedReckoning.h
Go to the documentation of this file.
1 /*
2  * IMUDeducedReckoning.h
3  *
4  * Created on: Mar 16, 2014
5  * Author: Dr.-Ing. David Israel González Aguirre
6  * Mail: david.gonzalez@kit.edu
7  */
8 
9 #pragma once
10 
11 #include "IIMUEventDispatcher.h"
12 #include "IMUDevice.h"
13 #include "IMUState.h"
14 
15 namespace IMU
16 {
18  {
19  public:
20  CIMUDeducedReckoning(const bool IsVerbose);
21  ~CIMUDeducedReckoning() override;
22 
23  inline const float*
25  {
27  }
28 
29  inline const float*
31  {
32  return m_MagneticRotation;
33  }
34 
35  inline const float*
37  {
38  return m_GyroscopeRotation;
39  }
40 
41  inline const float*
43  {
44  return m_Accelaration;
45  }
46 
47  protected:
48  void OnIMUEvent(const CIMUEvent& Event) override;
49 
50  void OnIMUStart(const timeval& TimeStamp, const CIMUDevice* pIMUDevice);
51  void OnIMUStop(const timeval& TimeStamp, const CIMUDevice* pIMUDevice);
52  void OnIMUFusedCycle(const timeval& TimeStamp, const CIMUDevice* pIMUDevice);
53  void OnIMUCycle(const timeval& TimeStamp, const CIMUDevice* pIMUDevice);
54  void OnIMUIntegratedState(const timeval& TimeStamp, const CIMUDevice* pIMUDevice);
55  void OnIMUCustomEvent(const CIMUEvent& CustomEvent);
56 
57  const bool m_IsVerbose;
58  const float m_G;
59 
63  float m_Accelaration[3];
64  };
65 } // namespace IMU
IMU::CIMUDeducedReckoning::OnIMUStart
void OnIMUStart(const timeval &TimeStamp, const CIMUDevice *pIMUDevice)
Definition: IMUDeducedReckoning.cpp:60
IMU::CIMUDeducedReckoning::OnIMUIntegratedState
void OnIMUIntegratedState(const timeval &TimeStamp, const CIMUDevice *pIMUDevice)
Definition: IMUDeducedReckoning.cpp:237
IMU::CIMUDeducedReckoning::OnIMUCustomEvent
void OnIMUCustomEvent(const CIMUEvent &CustomEvent)
Definition: IMUDeducedReckoning.cpp:291
IMU::CIMUDeducedReckoning::m_Accelaration
float m_Accelaration[3]
Definition: IMUDeducedReckoning.h:63
IMU::CIMUDeducedReckoning::m_MagneticRotation
float m_MagneticRotation[3]
Definition: IMUDeducedReckoning.h:61
IMU::CIMUDeducedReckoning
Definition: IMUDeducedReckoning.h:17
IMU::CIMUDeducedReckoning::~CIMUDeducedReckoning
~CIMUDeducedReckoning() override
IMU::CIMUDeducedReckoning::OnIMUFusedCycle
void OnIMUFusedCycle(const timeval &TimeStamp, const CIMUDevice *pIMUDevice)
Definition: IMUDeducedReckoning.cpp:174
IMU::CIMUDeducedReckoning::m_G
const float m_G
Definition: IMUDeducedReckoning.h:58
IMU::CIMUDeducedReckoning::GetGyroscopeRotation
const float * GetGyroscopeRotation() const
Definition: IMUDeducedReckoning.h:36
IMUDevice.h
IMU::CIMUEvent
Definition: IMUEvent.h:18
IIMUEventDispatcher.h
IMU::CIMUDeducedReckoning::m_IsVerbose
const bool m_IsVerbose
Definition: IMUDeducedReckoning.h:57
IMU::CIMUDeducedReckoning::GetMagneticRotation
const float * GetMagneticRotation() const
Definition: IMUDeducedReckoning.h:30
IMU::CIMUDeducedReckoning::GetOrientationQuaternion
const float * GetOrientationQuaternion() const
Definition: IMUDeducedReckoning.h:24
IMU::IIMUEventDispatcher
Definition: IIMUEventDispatcher.h:19
IMU::CIMUDevice
This class contains the the devices module and the thread for read the measurements.
Definition: IMUDevice.h:41
IMU::CIMUDeducedReckoning::OnIMUEvent
void OnIMUEvent(const CIMUEvent &Event) override
Definition: IMUDeducedReckoning.cpp:29
IMU
Definition: IIMUEventDispatcher.cpp:13
IMU::CIMUDeducedReckoning::m_GyroscopeRotation
float m_GyroscopeRotation[3]
Definition: IMUDeducedReckoning.h:62
IMU::CIMUDeducedReckoning::GetAccelaration
const float * GetAccelaration() const
Definition: IMUDeducedReckoning.h:42
IMU::CIMUDeducedReckoning::CIMUDeducedReckoning
CIMUDeducedReckoning(const bool IsVerbose)
Definition: IMUDeducedReckoning.cpp:13
IMUState.h
IMU::CIMUDeducedReckoning::OnIMUStop
void OnIMUStop(const timeval &TimeStamp, const CIMUDevice *pIMUDevice)
Definition: IMUDeducedReckoning.cpp:86
IMU::CIMUDeducedReckoning::OnIMUCycle
void OnIMUCycle(const timeval &TimeStamp, const CIMUDevice *pIMUDevice)
Definition: IMUDeducedReckoning.cpp:112
IMU::CIMUDeducedReckoning::m_OrientationQuaternion
float m_OrientationQuaternion[4]
Definition: IMUDeducedReckoning.h:60