source: flair-src/trunk/lib/FlairSensorActuator/src/SimuLaser.h@ 9

Last change on this file since 9 was 3, checked in by Sanahuja Guillaume, 9 years ago

sensoractuator

File size: 2.3 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 SimuUs.h
7 * \brief Class for a simulation UsRangeFinder
8 * \author Guillaume Sanahuja, Copyright Heudiasyc UMR UTC/CNRS 7253
9 * \date 2014/02/07
10 * \version 4.0
11 */
12
13#ifndef SIMULASER_H
14#define SIMULASER_H
15
16#include <LaserRangeFinder.h>
17#include <Thread.h>
18
19namespace flair
20{
21 namespace core
22 {
23 class SharedMem;
24 }
25 namespace gui
26 {
27 class SpinBox;
28 }
29}
30
31namespace flair
32{
33namespace sensor
34{
35 /*! \class SimuUs
36 *
37 * \brief Class for a simulation UsRangeFinder
38 */
39 class SimuLaser : public core::Thread, public LaserRangeFinder
40 {
41 public:
42 /*!
43 * \brief Constructor
44 *
45 * Construct a SimuUs. Control part.
46 *
47 * \param parent parent
48 * \param name name
49 * \param dev_id device id
50 * \param priority priority of the Thread
51 */
52 SimuLaser(const core::FrameworkManager* parent,std::string name,uint32_t dev_id,uint8_t priority);
53
54 /*!
55 * \brief Constructor
56 *
57 * Construct a SimuUs. Simulation part.\n
58 * The Thread of this class should not be run.
59 *
60 * \param parent parent
61 * \param name name
62 * \param dev_id device id
63 */
64 SimuLaser(const core::IODevice* parent,std::string name,uint32_t dev_id);
65
66 /*!
67 * \brief Destructor
68 *
69 */
70 ~SimuLaser();
71
72 protected:
73 /*!
74 * \brief SharedMem to access datas
75 *
76 */
77 core::SharedMem *shmem;
78
79 private:
80 /*!
81 * \brief Update using provided datas
82 *
83 * Reimplemented from IODevice.
84 *
85 * \param data data from the parent to process
86 */
87 void UpdateFrom(const core::io_data *data){};
88
89 /*!
90 * \brief Run function
91 *
92 * Reimplemented from Thread.
93 *
94 */
95 void Run(void);
96
97 gui::SpinBox *data_rate;
98 };
99} // end namespace sensor
100} // end namespace flair
101#endif // SIMULASER_H
Note: See TracBrowser for help on using the repository browser.