Dokit
dev
v0.6.0
v0.5.8
v0.5.7
v0.5.6
v0.5.5
v0.5.4
v0.5.3
v0.5.2
v0.5.1
v0.5.0
v0.4.0
v0.3.0
v0.2.0
v0.1.2
v0.1.1
v0.1.0
User docs
Internal
Coverage
Internal development documentation
Toggle main menu visibility
Loading...
Searching...
No Matches
abstractpokitservice.h
Go to the documentation of this file.
1
// SPDX-FileCopyrightText: 2022-2026 Paul Colby <git@colby.id.au>
2
// SPDX-License-Identifier: LGPL-3.0-or-later
3
4
/*!
5
* \file
6
* Declares the AbstractPokitService class.
7
*/
8
9
#ifndef QTPOKIT_ABSTRACTPOKITSERVICE_H
10
#define QTPOKIT_ABSTRACTPOKITSERVICE_H
11
12
#include "
qtpokit_global.h
"
13
#include "
pokitproducts.h
"
14
15
#include <QLowEnergyService>
16
#include <QObject>
17
18
#include <optional>
19
20
class
QLowEnergyController
;
21
22
QTPOKIT_BEGIN_NAMESPACE
23
24
class
AbstractPokitServicePrivate
;
25
26
class
QTPOKIT_EXPORT
AbstractPokitService :
public
QObject
27
{
28
Q_OBJECT
29
30
public
:
31
AbstractPokitService() =
delete
;
32
virtual
~AbstractPokitService();
33
34
virtual
bool
readCharacteristics
() = 0;
35
36
bool
autoDiscover
()
const
;
37
void
setAutoDiscover
(
const
bool
discover =
true
);
38
39
std::optional<PokitProduct>
pokitProduct
()
const
;
40
void
setPokitProduct
(
const
PokitProduct
product);
41
42
QLowEnergyService
*
service
();
43
const
QLowEnergyService
*
service
()
const
;
44
45
Q_SIGNALS
:
46
void
serviceDetailsDiscovered
();
47
void
serviceErrorOccurred
(
QLowEnergyService::ServiceError
newError);
48
49
protected
:
50
/// \cond internal
51
AbstractPokitServicePrivate
*
d_ptr
;
///< Internal d-pointer.
52
AbstractPokitService(
AbstractPokitServicePrivate
*
const
d,
QObject
*
const
parent
);
53
/// \endcond
54
55
private
:
56
Q_DECLARE_PRIVATE(AbstractPokitService)
57
Q_DISABLE_COPY
(AbstractPokitService)
58
QTPOKIT_BEFRIEND_TEST
(AbstractPokitService)
59
};
60
61
QTPOKIT_END_NAMESPACE
62
63
#endif
// QTPOKIT_ABSTRACTPOKITSERVICE_H
AbstractPokitServicePrivate
The AbstractPokitServicePrivate class provides private implementation for AbstractPokitService.
Definition
abstractpokitservice_p.h:26
AbstractPokitService::pokitProduct
std::optional< PokitProduct > pokitProduct() const
Returns the Pokit product this service is attached to.
Definition
abstractpokitservice.cpp:90
AbstractPokitService::autoDiscover
bool autoDiscover() const
Returns true if autodiscovery of services and service details is enabled, false otherwise.
Definition
abstractpokitservice.cpp:64
AbstractPokitService::service
QLowEnergyService * service()
Returns a non-const pointer to the internal service object, if any.
Definition
abstractpokitservice.cpp:123
AbstractPokitService::setAutoDiscover
void setAutoDiscover(const bool discover=true)
If discover is true, autodiscovery will be attempted.
Definition
abstractpokitservice.cpp:79
AbstractPokitService::serviceErrorOccurred
void serviceErrorOccurred(QLowEnergyService::ServiceError newError)
This signal is emitted whenever an error occurs on the underlying QLowEnergyService.
AbstractPokitService::setPokitProduct
void setPokitProduct(const PokitProduct product)
Sets the current Pokit product.
Definition
abstractpokitservice.cpp:114
AbstractPokitService::readCharacteristics
virtual bool readCharacteristics()=0
Read all characteristics.
AbstractPokitService::d_ptr
AbstractPokitServicePrivate * d_ptr
Internal d-pointer.
Definition
abstractpokitservice.h:51
AbstractPokitService::serviceDetailsDiscovered
void serviceDetailsDiscovered()
This signal is emitted when the Pokit service details have been discovered.
pokitproducts.h
Declares the PokitProduct enumeration, and related helper functions.
PokitProduct
PokitProduct
Pokit products known to, and supported by, the QtPokit library.
Definition
pokitproducts.h:21
QLowEnergyController
QLowEnergyService
QLowEnergyService::ServiceError
ServiceError
QObject::QObject
QObject(QObject *parent)
QObject::Q_DISABLE_COPY
Q_DISABLE_COPY(Class)
QObject::Q_OBJECT
Q_OBJECTQ_OBJECT
QObject::Q_SIGNALS
Q_SIGNALSQ_SIGNALS
QObject::parent
QObject * parent() const const
qtpokit_global.h
Global QtPokit library macros.
QTPOKIT_BEFRIEND_TEST
#define QTPOKIT_BEFRIEND_TEST(Class)
Macro for befriending a related unit test class, but only when QT_TESTLIB_LIB is defined.
Definition
qtpokit_global.h:118
QTPOKIT_BEGIN_NAMESPACE
#define QTPOKIT_BEGIN_NAMESPACE
Macro for starting the QtPokit library's top-most namespace (if one is defined).
Definition
qtpokit_global.h:81
QTPOKIT_EXPORT
#define QTPOKIT_EXPORT
QtPokit library export/import macro.
Definition
qtpokit_global.h:26
QTPOKIT_END_NAMESPACE
#define QTPOKIT_END_NAMESPACE
Macro for ending the QtPokit library's top-most namespace (if one is defined).
Definition
qtpokit_global.h:82
dokit
dokit
include
qtpokit
abstractpokitservice.h
Generated by
1.18.0