Users dialog files added.
[speedfreak] / Client / accrealtimedialog.h
1 /*
2  * Acceleration info in real time dialog
3  *
4  * @author      Jukka Kurttila  <jukka.kurttila@fudeco.com>
5  * @author      Toni Jussila    <toni.jussila@fudeco.com>
6  * @copyright   (c) 2010 Speed Freak team
7  * @license     http://opensource.org/licenses/gpl-license.php GNU Public License
8  */
9 #ifndef ACCREALTIMEDIALOG_H
10 #define ACCREALTIMEDIALOG_H
11
12 #include <QDialog>
13 #include <QTimer>
14 #include "accelerometer.h"
15 #include "movingaverage.h"
16 #include "resultdialog.h"
17
18
19 namespace Ui {
20     class AccRealTimeDialog;
21 }
22
23 class AccRealTimeDialog : public QDialog {
24     Q_OBJECT
25 public:
26     AccRealTimeDialog(QWidget *parent = 0);
27     ~AccRealTimeDialog();
28     ResultDialog* resultDialog;
29     void Calibrate();
30     void startAccelerationMeasure();
31     void SetStopMeasureSpeed(double speed);
32
33 protected:
34     void changeEvent(QEvent *e);
35
36 private:
37     Ui::AccRealTimeDialog *ui;
38     void resetAccelerometerMeasurements();
39
40     QTimer *accelerometerTimer;
41     QTime elapsedTime;
42     Accelerometer* accelerometer;
43     Calculate *calculate;
44     MovingAverage* movingAverageZ;
45     MovingAverage* movingAverageY;
46
47     int updateScreenCounter;
48     double accelerationStartThreshold;
49     double currentAcceleration;
50     double currentTime;
51     double previousTime;
52     double time;
53     double speed;
54     double stopMeasureSpeed;
55     bool vehicleStartedMoving;
56     bool isNewRun;
57
58     QString currentSpeed;
59     QString totalTime;
60
61 private slots:
62     void on_buttonAbort_clicked();
63     void readAccelerometerData();
64     void sendResult(double);
65     void killResultDialog();
66
67 signals:
68     void sendresult(double);
69 };
70
71 #endif // ACCREALTIMEDIALOG_H