source: flair-src/trunk/lib/FlairIpc/src/IpcAhrsSensor.h @ 397

Last change on this file since 397 was 397, checked in by Sanahuja Guillaume, 8 months ago

add ipc lib

  • Property svn:eol-style set to native
File size: 1.5 KB
RevLine 
[397]1// %flair:license{
2// This file is part of the Flair framework distributed under the
3// CECILL-C License, Version 1.0.
4// %flair:license}
5/*!
6 * \file IpcAhrsSensor.h
7 * \brief Class for an ipc Ahrs
8 * \author Sébastien Ambroziak, Copyright Heudiasyc UMR UTC/CNRS 7253
9 * \date 2021/03/03
10 * \version 4.0
11 */
12
13#ifndef IPCAHRSSENSOR_H
14#define IPCAHRSSENSOR_H
15
16#include <Ahrs.h>
17#include <Thread.h>
18
19template <typename T>
20class IpcReceiver;
21
22namespace ipc{
23  namespace type{
24    struct ahrs;
25  }
26}
27
28namespace flair {
29namespace filter {
30/*! \class IpcAhrs
31*
32* \brief Class for an ipc Ahrs
33*
34*/
35class IpcAhrsSensor : public filter::Ahrs, public core::Thread {
36public:
37  /*!
38  * \brief Constructor
39  *
40  * Construct an ipc Ahrs. It will be child of the FrameworkManager.
41  *
42  * \param name name
43  * \param priority priority of the SimulatedImu Thread
44  * \param ipc_name name of the ipc
45  * \param ipc_channel ipc channel number
46  */
47  IpcAhrsSensor(std::string name, uint8_t priority, const char* ipc_name, int ipc_channel);
48
49  /*!
50  * \brief Destructor
51  *
52  */
53  ~IpcAhrsSensor();
54
55private:
56  /*!
57  * \brief Run function
58  *
59  * Reimplemented from Thread.
60  *
61  */
62  void Run(void);
63
64  /*!
65  * \brief Update using provided datas
66  *
67  * Reimplemented from IODevice.
68  *
69  * \param data data from the parent to process
70  */
71  void UpdateFrom(const core::io_data *data){};
72
73  IpcReceiver<ipc::type::ahrs>* receiver;
74};
75} // end namespace filter
76} // end namespace flair
77#endif // IPCAHRSSENSOR_H
Note: See TracBrowser for help on using the repository browser.