source: flair-src/trunk/lib/FlairSensorActuator/src/UgvControls.h@ 377

Last change on this file since 377 was 377, checked in by Sanahuja Guillaume, 2 years ago

ugv update

  • Property svn:eol-style set to native
File size: 1.6 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 UgvControls.h
7 * \brief Base class for ugv controls
8 * \author Guillaume Sanahuja, Copyright Heudiasyc UMR UTC/CNRS 7253
9 * \date 2020/12/09
10 * \version 4.0
11 */
12
13#ifndef UGVCONTROLS_H
14#define UGVCONTROLS_H
15
16#include <IODevice.h>
17
18namespace flair {
19namespace core {
20 class Matrix;
21}
22namespace gui {
23 class Tab;
24}
25}
26
27
28namespace flair {
29namespace actuator {
30/*! \class UgvControls
31*
32* \brief Base class for ugv controls
33*/
34class UgvControls : public core::IODevice {
35
36public:
37 /*!
38 * \brief Constructor
39 *
40 * Construct a UgvControls. It will be child of the FrameworkManager.
41 *
42 * \param name name
43 */
44 UgvControls(std::string name);
45
46 /*!
47 * \brief Destructor
48 *
49 */
50 ~UgvControls();
51
52 /*!
53 * \brief Use default plot
54 *
55 */
56 void UseDefaultPlot(void);
57
58 /*!
59 * \brief Output from motors
60 *
61 * First column is real speed if available, secund column is current if
62 *available
63 *
64 */
65 core::Matrix *Output(void) const;
66
67 /*!
68 * \brief Set controls values
69 *
70 * \param speed speed value
71 * \param turn turn value
72 */
73 virtual void SetControls(float speed,float turn)=0;
74
75protected:
76 core::Matrix *output;
77
78private:
79 /*!
80 * \brief Update using provided datas
81 *
82 * Reimplemented from IODevice.
83 *
84 * \param data data from the parent to process
85 */
86 void UpdateFrom(const core::io_data *data){};
87
88 gui::Tab *mainTab;
89};
90} // end namespace actuator
91} // end namespace flair
92#endif // UGVCONTROLS_H
Note: See TracBrowser for help on using the repository browser.