sensorfw
downsamplefilter.h
Go to the documentation of this file.
1 
26 #ifndef DOWNSAMPLEFILTER_H
27 #define DOWNSAMPLEFILTER_H
28 
29 #include <QList>
30 #include <QObject>
32 #include "filter.h"
33 
41 class DownsampleFilter : public QObject, public Filter<TimedXyzData, DownsampleFilter, TimedXyzData>
42 {
43  Q_OBJECT
44  Q_DISABLE_COPY(DownsampleFilter)
45  Q_PROPERTY(unsigned int bufferSize READ bufferSize WRITE setBufferSize)
46  Q_PROPERTY(int timeout READ timeout WRITE setTimeout)
47 
48 public:
49 
55  static FilterBase* factoryMethod() { return new DownsampleFilter; }
56 
62  unsigned int bufferSize() const;
63 
69  void setBufferSize(unsigned int size);
70 
76  int timeout() const;
77 
84  void setTimeout(int ms);
85 
86 protected:
91 
92 private:
96  void filter(unsigned, const TimedXyzData*);
97 
99  typedef QList<TimedXyzData> TimedXyzDownsampleBuffer;
100 
101  unsigned int bufferSize_;
102  long timeout_;
103  TimedXyzDownsampleBuffer buffer_;
104 };
105 
106 #endif // DOWNSAMPLEFILTER_H
Downsample filter.
int timeout() const
Timeout in milliseconds for discarding too old samples from buffer.
void setTimeout(int ms)
Set timeout in milliseconds for discarding too old samples from buffer.
unsigned int bufferSize() const
Buffer size for downsampling.
void setBufferSize(unsigned int size)
Set buffer size for downsampling.
static FilterBase * factoryMethod()
Factory method.
unsigned int bufferSize
DownsampleFilter()
Constructor.
Class for vector type measurement data (timestamp, x, y, z).
Definition: genericdata.h:53
Datatypes for different filters.