source: flair-src/trunk/lib/FlairSensorActuator/src/LaserRangeFinder.cpp @ 157

Last change on this file since 157 was 148, checked in by Sanahuja Guillaume, 5 years ago

m

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//  created:    2014/07/22
6//  filename:   LaserRangeFinder.cpp
7//
8//  author:     César RICHARD
9//              Copyright Heudiasyc UMR UTC/CNRS 7253
10//
11//  version:    $Id: $
12//
13//  purpose:    Classe generique des recepteurs LaserRangeFinder
14//
15//
16/*********************************************************************/
17
18#include "LaserRangeFinder.h"
19#include <cvmatrix.h>
20#include <Tab.h>
21#include <TabWidget.h>
22#include <GridLayout.h>
23#include <GroupBox.h>
24#include <PushButton.h>
25#include <FrameworkManager.h>
26#include <Label.h>
27#include <RangeFinderPlot.h>
28#include <string.h>
29
30using std::string;
31using namespace flair::core;
32using namespace flair::gui;
33
34namespace flair {
35namespace sensor {
36
37LaserRangeFinder::LaserRangeFinder(string name)
38    : IODevice(getFrameworkManager(), name) {
39  cvmatrix_descriptor *desc = new cvmatrix_descriptor(360, 1);
40  output = new cvmatrix(this, desc, floatType);
41  delete desc;
42  AddDataToLog(output);
43Warn("output matrix is created in LaserRangeFinder and utm30lx\n");
44  // station sol
45  main_tab = new Tab(getFrameworkManager()->GetTabWidget(), name);
46  tab = new TabWidget(main_tab->NewRow(), name);
47  sensor_tab = new Tab(tab, "Reglages");
48  setup_groupbox = new GroupBox(sensor_tab->NewRow(), name);
49}
50
51LaserRangeFinder::LaserRangeFinder(const IODevice *parent, std::string name)
52    : IODevice(parent, name) {
53  plot_tab = NULL;
54  main_tab = NULL;
55  tab = NULL;
56  sensor_tab = NULL;
57  setup_groupbox = NULL;
58
59  output = NULL;
60}
61
62LaserRangeFinder::~LaserRangeFinder() {}
63
64GroupBox *LaserRangeFinder::GetGroupBox(void) const { return setup_groupbox; }
65
66Layout *LaserRangeFinder::GetLayout(void) const { return sensor_tab; }
67
68RangeFinderPlot *LaserRangeFinder::GetPlot(void) const { return plot; }
69
70void LaserRangeFinder::UseDefaultPlot(void) {
71  if (tab == NULL) {
72    Err("not applicable for simulation part.\n");
73    return;
74  }
75
76  plot_tab = new Tab(tab, "Mesures");
77  plot = new RangeFinderPlot(plot_tab->NewRow(), "plot", "x", -30, 30, "y", -30,
78                             30, output, 0, 359, output->Rows());
79}
80} // end namespace sensor
81} // end namespace flair
Note: See TracBrowser for help on using the repository browser.