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

Last change on this file since 452 was 397, checked in by Sanahuja Guillaume, 4 years ago

add ipc lib

  • Property svn:eol-style set to native
File size: 1.5 KB
Line 
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.