Line data Source code
1 : // SPDX-FileCopyrightText: 2022-2024 Paul Colby <git@colby.id.au>
2 : // SPDX-License-Identifier: LGPL-3.0-or-later
3 :
4 : /*!
5 : * \file
6 : * Declares the DataLoggerServicePrivate class.
7 : */
8 :
9 : #ifndef QTPOKIT_DATALOGGERSERVICE_P_H
10 : #define QTPOKIT_DATALOGGERSERVICE_P_H
11 :
12 : #include <qtpokit/dataloggerservice.h>
13 :
14 : #include "abstractpokitservice_p.h"
15 :
16 : QTPOKIT_BEGIN_NAMESPACE
17 :
18 : class QTPOKIT_EXPORT DataLoggerServicePrivate : public AbstractPokitServicePrivate
19 : {
20 190 : Q_OBJECT
21 :
22 : public:
23 : explicit DataLoggerServicePrivate(QLowEnergyController * controller, DataLoggerService * const q);
24 :
25 : static QByteArray encodeSettings(const DataLoggerService::Settings &settings,
26 : const bool updateIntervalIs32bit);
27 :
28 : static DataLoggerService::Metadata parseMetadata(const QByteArray &value);
29 : static DataLoggerService::Samples parseSamples(const QByteArray &value);
30 :
31 : protected:
32 : void characteristicRead(const QLowEnergyCharacteristic &characteristic,
33 : const QByteArray &value) override;
34 : void characteristicWritten(const QLowEnergyCharacteristic &characteristic,
35 : const QByteArray &newValue) override;
36 : void characteristicChanged(const QLowEnergyCharacteristic &characteristic,
37 : const QByteArray &newValue) override;
38 :
39 : private:
40 114 : Q_DECLARE_PUBLIC(DataLoggerService)
41 : Q_DISABLE_COPY(DataLoggerServicePrivate)
42 : friend class TestDataLoggerService;
43 : };
44 :
45 : QTPOKIT_END_NAMESPACE
46 :
47 : #endif // QTPOKIT_DATALOGGERSERVICE_P_H
|