sensorfw
heartrate.h
Go to the documentation of this file.
1
27#ifndef HEARTRATE_H
28#define HEARTRATE_H
29
30#include <QDBusArgument>
32
36class HeartRate : public QObject
37{
38 Q_OBJECT
39
40 Q_PROPERTY(HrmStatus hrmStatus READ status)
41 Q_PROPERTY(int bpm READ bpm)
42
43public:
48
55
61 HeartRate(const HeartRate& heartRate);
62
68 const HeartRateData& heartRateData() const { return data_; }
69
75 HrmStatus status() const { return data_.status_; }
76
82 int bpm() const { return data_.bpm_; }
83
90 {
91 data_ = origin.heartRateData();
92 return *this;
93 }
94
95private:
96 HeartRateData data_;
98 friend const QDBusArgument &operator>>(const QDBusArgument &argument, HeartRate& heartRate);
99};
100
102
103
110inline QDBusArgument &operator<<(QDBusArgument &argument, const HeartRate &heartRate)
111{
112 argument.beginStructure();
113 argument << heartRate.heartRateData().status_ << heartRate.heartRateData().bpm_;
114 argument.endStructure();
115 return argument;
116}
117
125inline const QDBusArgument &operator>>(const QDBusArgument &argument, HeartRate &heartRate)
126{
127 argument.beginStructure();
128 argument >> heartRate.data_.status_ >> heartRate.data_.bpm_;
129 argument.endStructure();
130 return argument;
131}
132
133#endif // HEARTRATE_H
Class for vector type measurement data (timestamp, x, y, z).
Definition: heartratedata.h:70
int bpm_
beat per minute
Definition: heartratedata.h:87
HrmStatus status_
hrm status
Definition: heartratedata.h:86
QObject facade for HeartRateData.
Definition: heartrate.h:37
friend const QDBusArgument & operator>>(const QDBusArgument &argument, HeartRate &heartRate)
Unmarshall HeartRate data from the D-Bus argument.
Definition: heartrate.h:125
int bpm() const
Accessor for bpm.
Definition: heartrate.h:82
HrmStatus status() const
Accessor for hrm status.
Definition: heartrate.h:75
HeartRate(const HeartRate &heartRate)
Copy constructor.
HrmStatus hrmStatus
Definition: heartrate.h:40
const HeartRateData & heartRateData() const
Accessor for contained HeartRateData.
Definition: heartrate.h:68
int bpm
Definition: heartrate.h:41
HeartRate & operator=(const HeartRate &origin)
Assignment operator.
Definition: heartrate.h:89
HeartRate()
Default constructor.
Definition: heartrate.h:47
HeartRate(const HeartRateData &heartRateData)
Constructor.
Q_DECLARE_METATYPE(TMatrix)
const QDBusArgument & operator>>(const QDBusArgument &argument, HeartRate &heartRate)
Unmarshall HeartRate data from the D-Bus argument.
Definition: heartrate.h:125
Datatypes for different filters.
HrmStatus
Status.
Definition: heartratedata.h:38