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 "IMUState.h"
13 #include "IMUDevice.h"
14 
15 namespace IMU
16 {
18  {
19  public:
20 
21  CIMUDeducedReckoning(const bool IsVerbose);
22  ~CIMUDeducedReckoning() override;
23 
24  inline const float* GetOrientationQuaternion() const
25  {
27  }
28 
29  inline const float* GetMagneticRotation() const
30  {
31  return m_MagneticRotation;
32  }
33 
34  inline const float* GetGyroscopeRotation() const
35  {
36  return m_GyroscopeRotation;
37  }
38 
39  inline const float* GetAccelaration() const
40  {
41  return m_Accelaration;
42  }
43 
44  protected:
45 
46  void OnIMUEvent(const CIMUEvent& Event) override;
47 
48  void OnIMUStart(const timeval& TimeStamp, const CIMUDevice* pIMUDevice);
49  void OnIMUStop(const timeval& TimeStamp, const CIMUDevice* pIMUDevice);
50  void OnIMUFusedCycle(const timeval& TimeStamp, const CIMUDevice* pIMUDevice);
51  void OnIMUCycle(const timeval& TimeStamp, const CIMUDevice* pIMUDevice);
52  void OnIMUIntegratedState(const timeval& TimeStamp, const CIMUDevice* pIMUDevice);
53  void OnIMUCustomEvent(const CIMUEvent& CustomEvent);
54 
55  const bool m_IsVerbose;
56  const float m_G;
57 
61  float m_Accelaration[3];
62  };
63 }
64 
IMU::CIMUDeducedReckoning::OnIMUStart
void OnIMUStart(const timeval &TimeStamp, const CIMUDevice *pIMUDevice)
Definition: IMUDeducedReckoning.cpp:57
IMU::CIMUDeducedReckoning::OnIMUIntegratedState
void OnIMUIntegratedState(const timeval &TimeStamp, const CIMUDevice *pIMUDevice)
Definition: IMUDeducedReckoning.cpp:149
IMU::CIMUDeducedReckoning::OnIMUCustomEvent
void OnIMUCustomEvent(const CIMUEvent &CustomEvent)
Definition: IMUDeducedReckoning.cpp:174
IMU::CIMUDeducedReckoning::m_Accelaration
float m_Accelaration[3]
Definition: IMUDeducedReckoning.h:61
IMU::CIMUDeducedReckoning::m_MagneticRotation
float m_MagneticRotation[3]
Definition: IMUDeducedReckoning.h:59
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:119
IMU::CIMUDeducedReckoning::m_G
const float m_G
Definition: IMUDeducedReckoning.h:56
IMU::CIMUDeducedReckoning::GetGyroscopeRotation
const float * GetGyroscopeRotation() const
Definition: IMUDeducedReckoning.h:34
IMUDevice.h
IMU::CIMUEvent
Definition: IMUEvent.h:17
IIMUEventDispatcher.h
IMU::CIMUDeducedReckoning::m_IsVerbose
const bool m_IsVerbose
Definition: IMUDeducedReckoning.h:55
IMU::CIMUDeducedReckoning::GetMagneticRotation
const float * GetMagneticRotation() const
Definition: IMUDeducedReckoning.h:29
IMU::CIMUDeducedReckoning::GetOrientationQuaternion
const float * GetOrientationQuaternion() const
Definition: IMUDeducedReckoning.h:24
IMU::IIMUEventDispatcher
Definition: IIMUEventDispatcher.h:18
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:27
IMU
Definition: IIMUEventDispatcher.cpp:12
IMU::CIMUDeducedReckoning::m_GyroscopeRotation
float m_GyroscopeRotation[3]
Definition: IMUDeducedReckoning.h:60
IMU::CIMUDeducedReckoning::GetAccelaration
const float * GetAccelaration() const
Definition: IMUDeducedReckoning.h:39
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:73
IMU::CIMUDeducedReckoning::OnIMUCycle
void OnIMUCycle(const timeval &TimeStamp, const CIMUDevice *pIMUDevice)
Definition: IMUDeducedReckoning.cpp:89
IMU::CIMUDeducedReckoning::m_OrientationQuaternion
float m_OrientationQuaternion[4]
Definition: IMUDeducedReckoning.h:58