sensorfw
sensors/contextplugin/orientationbin.h
Go to the documentation of this file.
00001 
00026 #ifndef ORIENTATION_BIN_H
00027 #define ORIENTATION_BIN_H
00028 
00029 #include "bin.h"
00030 #include "bufferreader.h"
00031 #include "abstractchain.h"
00032 #include "datatypes/orientationdata.h"
00033 #include "posedata.h"
00034 
00035 #include "screeninterpreterfilter.h"
00036 
00037 #include <ContextProvider>
00038 
00039 #include <QPair>
00040 
00041 class DeviceAdaptor;
00042 
00043 class OrientationBin : public QObject, Bin
00044 {
00045     Q_OBJECT
00046 
00047 public:
00048     OrientationBin(ContextProvider::Service& service);
00049     ~OrientationBin();
00050 
00051 private Q_SLOTS:
00052     void startRun();
00053     void stopRun();
00054 
00055 private:
00056     ContextProvider::Property topEdgeProperty;
00057     ContextProvider::Property isCoveredProperty;
00058     ContextProvider::Property isFlatProperty;
00059     ContextProvider::Group group;
00060 
00061     BufferReader<AccelerationData> accelerometerReader;
00062     BufferReader<PoseData> topEdgeReader;
00063     BufferReader<PoseData> faceReader;
00064 
00065     AbstractChain* orientationChain;
00066     ScreenInterpreterFilter screenInterpreterFilter;
00067 
00068     int sessionId;
00069 
00070     static const int POLL_INTERVAL;
00071 };
00072 
00073 #endif