Roomba App  1.0
mainwindow.hh
Go to the documentation of this file.
1 
14 #ifndef MAINWINDOW_HH
15 #define MAINWINDOW_HH
16 
17 #include <QGroupBox>
18 #include <QMainWindow>
19 #include <QProgressBar>
20 #include <QSerialPort>
21 #include <QTimer>
22 
23 #include "communication.hh"
24 #include "frameThread.hh"
25 #include "joystick.hh"
26 #include "parser.hh"
27 
28 QT_BEGIN_NAMESPACE
29 namespace Ui
30 {
31 class MainWindow;
32 }
33 QT_END_NAMESPACE
34 
38 class MainWindow : public QMainWindow
39 {
40  Q_OBJECT
41 
42  public:
47  MainWindow(QWidget* parent = nullptr);
48 
53  ~MainWindow();
54 
55  protected:
60  void closeEvent(QCloseEvent* event) override;
61 
62  private slots:
68 
74 
80 
85  void connectSerialDevice(const QString& actionName);
86 
90  void serialTimeout();
91 
96  void showErrorMessage(const QString& message);
97 
102  void addMessageToLogs(const QString& message);
103 
108  void addValueSpeedL(const QString& message);
109 
114  void addValueSpeedR(const QString& message);
115 
120  void addValueGSpeedL(const QString& message);
121 
126  void addValueGSpeedR(const QString& message);
127 
132  void addValueAccelerationL(const QString& message);
133 
138  void addValueAccelerationR(const QString& message);
139 
144  void addValueBaterry(const int message);
145 
146  private:
150  Ui::MainWindow* ui;
151 
159  void addDropShadow(QGroupBox* group, int xOffset, int yOffset, int radius);
160 
165 
169  QTimer _serialTimer;
170 
175 
180 };
181 #endif // MAINWINDOW_HH
The Communication class.
The FrameThread class.
Definition: frameThread.hh:23
The MainWindow class.
Definition: mainwindow.hh:39
void showErrorMessage(const QString &message)
Show error message as status bar message.
Definition: mainwindow.cpp:160
void closeEvent(QCloseEvent *event) override
Reimplemented to savely close reading thread.
Definition: mainwindow.cpp:72
void on_actionDisconnect_triggered()
Disconnect from serial device.
Definition: mainwindow.cpp:86
FrameThread * _frameThread
Serial communication thread handle.
Definition: mainwindow.hh:174
void on_actionClose_triggered()
Close application.
Definition: mainwindow.cpp:79
Communication * _communication
Communication handle.
Definition: mainwindow.hh:164
Ui::MainWindow * ui
Pointer to all ui widgets.
Definition: mainwindow.hh:150
void addValueGSpeedL(const QString &message)
addValueSetSpeedL
Definition: mainwindow.cpp:185
void addValueSpeedR(const QString &message)
addValueVelocityR
Definition: mainwindow.cpp:195
void addMessageToLogs(const QString &message)
Add message to log widget.
Definition: mainwindow.cpp:165
Parser * _parser
_parser
Definition: mainwindow.hh:179
void addValueSpeedL(const QString &message)
addValueVelocityL
Definition: mainwindow.cpp:180
MainWindow(QWidget *parent=nullptr)
Constrict a new MainWindow object.
Definition: mainwindow.cpp:27
void addValueBaterry(const int message)
addValueBaterry
Definition: mainwindow.cpp:210
void addDropShadow(QGroupBox *group, int xOffset, int yOffset, int radius)
addDropShadow
Definition: mainwindow.cpp:172
void serialTimeout()
Slot to handle serial timeout which signals to update data from serial.
Definition: mainwindow.cpp:142
void addValueAccelerationR(const QString &message)
addValueAccelR
Definition: mainwindow.cpp:205
QTimer _serialTimer
Serial communication timer to get new frames.
Definition: mainwindow.hh:169
void on_actionSearch_triggered()
Search serial devices.
Definition: mainwindow.cpp:101
~MainWindow()
Delete MainWindow object.
Definition: mainwindow.cpp:67
void connectSerialDevice(const QString &actionName)
Connect to serial device.
Definition: mainwindow.cpp:123
void addValueAccelerationL(const QString &message)
addValueAccelL
Definition: mainwindow.cpp:190
void addValueGSpeedR(const QString &message)
addValueSetSpeedR
Definition: mainwindow.cpp:200
The Parser class.
Definition: parser.hh:32
Header file for Communication class.
Header file for FrameThread class.
Header file for Joystick class.
Definition: mainwindow.hh:30