Added measures.h and measures.cpp files. Changed resultdialog.h, .cpp and measuredial...
[speedfreak] / Client / accelerometer.h
1 #ifndef ACCELEROMETER_H
2 #define ACCELEROMETER_H
3
4 #include <QObject>
5 #include <QTime>
6 #include <QTimer>
7 #include <QFile>
8
9 #include "calculate.h"
10
11 class Accelerometer : public QObject
12 {
13     Q_OBJECT
14 public:
15     Accelerometer();
16     Accelerometer(int p_SampleRate);
17     ~Accelerometer();
18
19     void calibrate();
20
21     void start();
22     void stop();
23
24     void initValues();
25
26     void setSampleRate(int pSampleRate);
27     int getSampleRate();
28
29     qreal getTrueAccelerationX();
30     qreal getTrueAccelerationY();
31     qreal getTrueAccelerationZ();
32     qreal getPreviousSpeed();
33     qreal getCurrentSpeed();
34
35     qreal getDistanceTraveled();
36     qreal getLastDistanceTraveled();
37     qreal getAverageSpeed();
38
39     qreal getCurrentAcceleration();
40     qreal getTotalAcceleration();
41     qreal getPreviousTotalAcceleration();
42
43     int calibrationX;
44     int calibrationY;
45     int calibrationZ;
46
47     qreal getIntervalTime();
48     qreal getTotalTime();
49
50 private slots:
51     void processData();
52     void smoothData(qreal x, qreal y, qreal z);
53
54 private:
55     Calculate *calculate;
56
57     qreal accelerationX, accelerationY, accelerationZ;
58     qreal trueAccelerationX,trueAccelerationY,trueAccelerationZ;
59     qreal previousAccelerationX,previousAccelerationY,previousAccelerationZ;
60     qreal previousSpeed, currentSpeed;
61     qreal currentAcceleration, previousAcceleration, totalAcceleration;
62
63     QTime now;
64     QTimer *timer;
65
66     double intervalTime;
67     double totalTime;
68     double distanceTraveled;
69     double lastDistanceTraveled;
70     double averageSpeed;
71     double sampleRate;
72
73     bool reverseAcceleration;
74 };
75
76 #endif // ACCELEROMETER_H