sensorfw
lid.h
Go to the documentation of this file.
1
26#ifndef LID_H
27#define LID_H
28
29#include <QDBusArgument>
30
31#include <datatypes/liddata.h>
32
36class Lid : public QObject
37{
38 Q_OBJECT
39
40 // Q_PROPERTY(uint value READ value)
41 Q_PROPERTY(int type READ type)
42
43public:
47 Lid() {}
48
55
61 Lid(const Lid& lid);
62
67 const LidData& lidData() const { return data_; }
68
73 LidData::Type type() const { return data_.type_; }
74
75 unsigned value_;
76
77private:
78 LidData data_;
80 friend const QDBusArgument &operator>>(const QDBusArgument &argument, Lid& lid);
81};
82
84
85
92inline QDBusArgument &operator<<(QDBusArgument &argument, const Lid &lid)
93{
94 argument.beginStructure();
95 argument << lid.lidData().timestamp_ << (int)(lid.lidData().value_) << (int)(lid.lidData().type_);
96 argument.endStructure();
97 return argument;
98}
99
107inline const QDBusArgument &operator>>(const QDBusArgument &argument, Lid &lid)
108{
109 int tmp;
110 argument.beginStructure();
111 argument >> lid.data_.timestamp_;
112 argument >> tmp;
113 lid.data_.value_ = (unsigned)tmp;
114 argument >> tmp;
115 lid.data_.type_ = (LidData::Type)tmp;
116 argument.endStructure();
117 return argument;
118}
119
120#endif // LID_H
Datatype for device lid events.
Definition: liddata.h:36
Type
Type of lid.
Definition: liddata.h:42
LidData::Type type_
Type of lid.
Definition: liddata.h:48
unsigned value_
Measurement value.
Definition: liddata.h:49
QObject facade for LidData.
Definition: lid.h:37
Lid(const LidData &lidData)
Constructor.
Lid()
Default constructor.
Definition: lid.h:47
Lid(const Lid &lid)
Copy constructor.
LidData::Type type() const
Returns Lid type.
Definition: lid.h:73
friend const QDBusArgument & operator>>(const QDBusArgument &argument, Lid &lid)
Unmarshall Lid data from the D-Bus argument.
Definition: lid.h:107
unsigned value_
Definition: lid.h:75
int type
Definition: lid.h:41
const LidData & lidData() const
Returns the contained LidData.
Definition: lid.h:67
quint64 timestamp_
monotonic time (microsec)
Definition: genericdata.h:46
Q_DECLARE_METATYPE(TMatrix)
const QDBusArgument & operator>>(const QDBusArgument &argument, Lid &lid)
Unmarshall Lid data from the D-Bus argument.
Definition: lid.h:107
Datatype for device tap events.