sensorfw
accelerometersensor.h
Go to the documentation of this file.
1 
28 #ifndef ACCELEROMETER_SENSOR_CHANNEL_H
29 #define ACCELEROMETER_SENSOR_CHANNEL_H
30 
31 #include "abstractsensor.h"
32 #include "abstractchain.h"
33 #include "accelerometersensor_a.h"
34 #include "dataemitter.h"
36 
37 class Bin;
38 template <class TYPE> class BufferReader;
39 class FilterBase;
40 
41 
49  public AbstractSensorChannel,
50  public DataEmitter<AccelerationData>
51 {
52  Q_OBJECT;
53  Q_PROPERTY(XYZ value READ get);
54 
55 public:
60  static AbstractSensorChannel* factoryMethod(const QString& id)
61  {
64 
65  return sc;
66  }
67 
68  XYZ get() const { return previousSample_; }
69 
70  virtual void removeSession(int sessionId);
71 
72  virtual bool downsamplingSupported() const;
73 
74 public Q_SLOTS:
75  bool start();
76  bool stop();
77 
78 signals:
83  void dataAvailable(const XYZ& data);
84 
85 protected:
86  AccelerometerSensorChannel(const QString& id);
88 
89 private:
90  static double aconv_[3][3];
91  Bin* filterBin_;
92  Bin* marshallingBin_;
93  AbstractChain* accelerometerChain_;
94  BufferReader<AccelerationData>* accelerometerReader_;
95  RingBuffer<AccelerationData>* outputBuffer_;
96  AccelerationData previousSample_;
97  TimedXyzDownsampleBuffer downsampleBuffer_;
98 
99  void emitData(const AccelerationData& value);
100 };
101 
102 #endif
D-Bus adaptor for AccelerometerSensor.
Sensor providing accelerometer measurements.
virtual ~AccelerometerSensorChannel()
virtual void removeSession(int sessionId)
void dataAvailable(const XYZ &data)
Sent when new measurement data has become available.
virtual bool downsamplingSupported() const
AccelerometerSensorChannel(const QString &id)
static AbstractSensorChannel * factoryMethod(const QString &id)
Factory method for AccelerometerSensorChannel.
Class for vector type measurement data (timestamp, x, y, z).
Definition: genericdata.h:53
QObject facade for XYZData.
Definition: xyz.h:37
Datatypes for different filters.