source: flair-src/trunk/lib/FlairCore/src/RangeFinderPlot.h@ 235

Last change on this file since 235 was 214, checked in by Sanahuja Guillaume, 7 years ago

matrix

File size: 2.2 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 RangeFinderPlot.h
7 * \brief Class displaying a 2D plot on the ground station for laser range
8 * finder like Hokuyo
9 * \author Guillaume Sanahuja, Copyright Heudiasyc UMR UTC/CNRS 7253
10 * \date 2014/07/23
11 * \version 4.0
12 */
13
14#ifndef RANGEFINDERPLOT_H
15#define RANGEFINDERPLOT_H
16
17#include <SendData.h>
18#include <stdint.h>
19
20namespace flair {
21namespace core {
22class Matrix;
23}
24}
25
26namespace flair {
27namespace gui {
28
29class LayoutPosition;
30
31/*! \class RangeFinderPlot
32*
33* \brief Class displaying a 2D plot on the ground station for laser range finder
34*like Hokuyo
35*
36*/
37class RangeFinderPlot : public SendData {
38public:
39 /*!
40 * \brief Constructor
41 *
42 * Construct a 2D plot at given position. \n
43 * The RangeFinderPlot will automatically be child of position->getLayout()
44 *Layout. After calling this constructor,
45 * position will be deleted as it is no longer usefull.
46 *
47 * \param position position to display the plot
48 * \param name name
49 * \param x_name name of x axis
50 * \param xmin default xmin of the plot
51 * \param xmax default xmax of the plot
52 * \param y_name name of y axis
53 * \param ymin default ymin of the plot
54 * \param ymax default ymax of the plot
55 * \param datas laser datas
56 * \param start_angle start angle of the laser
57 * \param end_angle end angle of the laser
58 * \param nb_samples number of samples
59 */
60 RangeFinderPlot(const LayoutPosition *position, std::string name,
61 std::string x_name, float xmin, float xmax,
62 std::string y_name, float ymin, float ymax,
63 const core::Matrix *datas, float start_angle,
64 float end_angle, uint32_t nb_samples);
65
66 /*!
67 * \brief Destructor
68 *
69 */
70 ~RangeFinderPlot();
71
72private:
73 /*!
74 * \brief Copy datas to specified buffer
75 *
76 * Reimplemented from SendData.
77 *
78 * \param buf output buffer
79 */
80 void CopyDatas(char *buf) const;
81
82 /*!
83 * \brief Extra Xml event
84 *
85 * Reimplemented from SendData.
86 */
87 void ExtraXmlEvent(void){};
88
89 const core::Matrix *datas;
90};
91
92} // end namespace gui
93} // end namespace flair
94
95#endif // RANGEFINDERPLOT_H
Note: See TracBrowser for help on using the repository browser.