sensorfw
alssensor.h
Go to the documentation of this file.
26#ifndef ALS_SENSOR_CHANNEL_H
27#define ALS_SENSOR_CHANNEL_H
28
29#include <QObject>
30
31#include "deviceadaptor.h"
32#include "abstractsensor.h"
33#include "alssensor_a.h"
34#include "dataemitter.h"
36#include "datatypes/unsigned.h"
37
38class Bin;
39template <class TYPE> class BufferReader;
40class FilterBase;
41
42#ifdef PROVIDE_CONTEXT_INFO
43#include <ContextProvider>
44#endif
45
53 public AbstractSensorChannel,
54 public DataEmitter<TimedUnsigned>
55{
56 Q_OBJECT;
57 Q_PROPERTY(Unsigned lux READ lux);
58
59public:
64 static AbstractSensorChannel* factoryMethod(const QString& id)
65 {
68
69 return sc;
70 }
71
76 Unsigned lux() const { return previousValue_; }
77
78public Q_SLOTS:
79 bool start();
80 bool stop();
81
82signals:
87 void ALSChanged(const Unsigned& value);
88
89protected:
90 ALSSensorChannel(const QString& id);
92
93private:
94 TimedUnsigned previousValue_;
95 Bin* filterBin_;
96 Bin* marshallingBin_;
97 DeviceAdaptor* alsAdaptor_;
99 RingBuffer<TimedUnsigned>* outputBuffer_;
100
101 void emitData(const TimedUnsigned& value);
102
103#ifdef PROVIDE_CONTEXT_INFO
104 ContextProvider::Service service;
105 ContextProvider::Property isDarkProperty;
106 ContextProvider::Property isBrightProperty;
107 ContextProvider::Group propertyGroup;
108#endif
109};
110
111#endif // ALS_SENSOR_CHANNEL_H
D-Bus adaptor for ALSSensor.
Sensor for accessing the internal ambient light sensor measurements.
Definition: alssensor.h:55
static AbstractSensorChannel * factoryMethod(const QString &id)
Factory method for ALSSensorChannel.
Definition: alssensor.h:64
Unsigned lux() const
Property for accessing the measured value.
Definition: alssensor.h:76
Unsigned lux
Definition: alssensor.h:57
virtual ~ALSSensorChannel()
ALSSensorChannel(const QString &id)
void ALSChanged(const Unsigned &value)
Sent when a change in measured data is observed.
Datatype for unsigned integer value with timestamp.
Definition: timedunsigned.h:34
QObject facae for TimedUnsigned.
Definition: unsigned.h:37
Datatype for unsigned values.
QObject based datatype for TimedUnsigned.