sensorfw
|
00001 00028 #ifndef ACCELEROMETERADAPTOR_H 00029 #define ACCELEROMETERADAPTOR_H 00030 00031 #include "inputdevadaptor.h" 00032 #include "deviceadaptorringbuffer.h" 00033 #include "datatypes/orientationdata.h" 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