Go to the documentation of this file.00001
00027 #ifndef ACCELEROMETERADAPTOR_H
00028 #define ACCELEROMETERADAPTOR_H
00029
00030 #include "inputdevadaptor.h"
00031 #include "deviceadaptorringbuffer.h"
00032 #include "datatypes/orientationdata.h"
00033 #include <QTime>
00034
00046 class AccelerometerAdaptor : public InputDevAdaptor
00047 {
00048 Q_OBJECT;
00049 public:
00054 static DeviceAdaptor* factoryMethod(const QString& id)
00055 {
00056 return new AccelerometerAdaptor(id);
00057 }
00058
00059 protected:
00064 AccelerometerAdaptor(const QString& id);
00065 ~AccelerometerAdaptor();
00066
00070 virtual unsigned int evaluateIntervalRequests(int& sessionId) const;
00071
00072 private:
00073 DeviceAdaptorRingBuffer<AccelerationData>* accelerometerBuffer_;
00074 AccelerationData orientationValue_;
00075
00076 void interpretEvent(int src, struct input_event *ev);
00077 void commitOutput(struct input_event *ev);
00078 void interpretSync(int src, struct input_event *ev);
00079 };
00080
00081 #endif