Changed file structure and removed useless output files.
[speedfreak] / Client / accelerometer.h
1 #ifndef ACCELEROMETER_H
2 #define ACCELEROMETER_H
3
4 #include <QObject>
5 #include <QTime>
6 #include <QTimer>
7
8 class Accelerometer : public QObject
9 {
10     Q_OBJECT
11 public:
12     Accelerometer();
13     ~Accelerometer();
14
15     void start();
16     void stop();
17
18     void initValues();
19
20     void setSampleRate(int pSampleRate);
21     int getSampleRate();
22
23     qreal getTrueAccelerationX();
24     qreal getTrueAccelerationY();
25     qreal getTrueAccelerationZ();
26     qreal getPreviousSpeed();
27     qreal getCurrentSpeed();
28
29     qreal getDistanceTraveled();
30     qreal getLastDistanceTraveled();
31     qreal getAverageSpeed();
32
33     qreal getCurrentAcceleration();
34     qreal getTotalAcceleration();
35     qreal getPreviousTotalAcceleration();
36
37     qreal getintervalTime();
38
39 private slots:
40     void processData();
41     void smoothData(qreal x, qreal y, qreal z);
42
43 private:
44     qreal accelerationX, accelerationY, accelerationZ;
45     qreal trueAccelerationX,trueAccelerationY,trueAccelerationZ;
46     qreal previousAccelerationX,previousAccelerationY,previousAccelerationZ;
47     qreal previousSpeed, currentSpeed;
48     qreal currentAcceleration, previousAcceleration, totalAcceleration;
49     QTime now;
50     QTimer *timer;
51     double intervalTime;
52     double totalTime;
53     double distanceTraveled,lastDistanceTraveled,averageSpeed;
54     double sampleRate;
55 };
56
57 #endif // ACCELEROMETER_H