source: flair-src/branches/mavlink/lib/FlairSensorActuator/src/UsRangeFinder.cpp @ 98

Last change on this file since 98 was 15, checked in by Bayard Gildas, 6 years ago

sources reformatted with flair-format-dir script

File size: 2.4 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/01/22
6//  filename:   UsRangeFinder.cpp
7//
8//  author:     Guillaume Sanahuja
9//              Copyright Heudiasyc UMR UTC/CNRS 7253
10//
11//  version:    $Id: $
12//
13//  purpose:    Base class for UsRangeFinder
14//
15//
16/*********************************************************************/
17
18#include "UsRangeFinder.h"
19#include <FrameworkManager.h>
20#include <Tab.h>
21#include <TabWidget.h>
22#include <GroupBox.h>
23#include <Layout.h>
24#include <DataPlot1D.h>
25#include <cvmatrix.h>
26
27using std::string;
28using namespace flair::core;
29using namespace flair::gui;
30
31namespace flair {
32namespace sensor {
33
34UsRangeFinder::UsRangeFinder(const FrameworkManager *parent, string name)
35    : IODevice(parent, name) {
36  plot_tab = NULL;
37
38  cvmatrix_descriptor *desc = new cvmatrix_descriptor(1, 1);
39  desc->SetElementName(0, 0, name);
40  output = new cvmatrix(this, desc, floatType);
41  AddDataToLog(output);
42
43  // station sol
44  main_tab = new Tab(parent->GetTabWidget(), name);
45  tab = new TabWidget(main_tab->NewRow(), name);
46  sensor_tab = new Tab(tab, "Reglages");
47  setup_groupbox = new GroupBox(sensor_tab->NewRow(), name);
48}
49
50UsRangeFinder::UsRangeFinder(const IODevice *parent, std::string name)
51    : IODevice(parent, name) {
52  plot_tab = NULL;
53  main_tab = NULL;
54  tab = NULL;
55  sensor_tab = NULL;
56  setup_groupbox = NULL;
57
58  output = NULL;
59}
60
61UsRangeFinder::~UsRangeFinder() {
62  if (main_tab != NULL)
63    delete main_tab;
64}
65
66GroupBox *UsRangeFinder::GetGroupBox(void) const { return setup_groupbox; }
67
68Layout *UsRangeFinder::GetLayout(void) const { return sensor_tab; }
69
70DataPlot1D *UsRangeFinder::GetPlot(void) const { return plot; }
71
72Tab *UsRangeFinder::GetPlotTab(void) const { return plot_tab; }
73
74void UsRangeFinder::UseDefaultPlot(void) {
75  if (tab == NULL) {
76    Err("not applicable for simulation part.\n");
77    return;
78  }
79
80  plot_tab = new Tab(tab, "Mesures");
81  plot = new DataPlot1D(plot_tab->NewRow(), ObjectName(), 0, 2);
82  plot->AddCurve(output->Element(0));
83}
84
85void UsRangeFinder::LockUserInterface(void) const {
86  setup_groupbox->setEnabled(false);
87}
88
89void UsRangeFinder::UnlockUserInterface(void) const {
90  setup_groupbox->setEnabled(true);
91}
92
93float UsRangeFinder::Value(void) const { return output->Value(0, 0); }
94
95} // end namespace sensor
96} // end namespace flair
Note: See TracBrowser for help on using the repository browser.