Go to the documentation of this file.00001
00027 #ifndef SCREENINTERPRETERFILTER_H
00028 #define SCREENINTERPRETERFILTER_H
00029
00030 #include "filter.h"
00031 #include "posedata.h"
00032
00033 #include <ContextProvider>
00034
00047 class ScreenInterpreterFilter : public QObject, public Filter<PoseData, ScreenInterpreterFilter, PoseData>
00048 {
00049 Q_OBJECT
00050
00051 public:
00052 ScreenInterpreterFilter(ContextProvider::Property* topEdgeProperty, ContextProvider::Property* isCoveredProperty, ContextProvider::Property* isFlatProperty);
00053
00054 private:
00055 ContextProvider::Property* topEdgeProperty;
00056 ContextProvider::Property* isCoveredProperty;
00057 ContextProvider::Property* isFlatProperty;
00058 void interpret(unsigned, const PoseData* data);
00059 void provideScreenData(PoseData::Orientation orientation);
00060
00061 const float threshold;
00062 bool isCovered;
00063 bool isFlat;
00064 PoseData::Orientation lastOrientation;
00065 QString topEdge;
00066 int offset;
00067 static const char* orientationValues[4];
00068 };
00069
00070 #endif