5#include <QtBluetooth/QBluetoothDeviceInfo>
6#include <QtBluetooth/QBluetoothUuid>
7#include <QtCore/QPointer>
8#include <QtCore/QTimer>
static constexpr int MAX_RECONNECT_INTERVAL_MS
virtual void onSetupConnection()=0
void dataReceived(const QByteArray &data)
void writeData(const QByteArray &data)
const QBluetoothUuid _readCharacteristicUuid
QPointer< QTimer > _serviceDiscoveryTimer
void dataSent(const QByteArray &data)
const QBluetoothUuid _serviceUuid
void errorOccurred(const QString &errorString)
virtual void onWriteData(const QByteArray &data)=0
const QBluetoothUuid _writeCharacteristicUuid
void rssiUpdated(qint16 rssi)
static constexpr int MAX_CONSECUTIVE_FAILURES
virtual void onResetAfterConsecutiveFailures()=0
virtual void onConnectLink()=0
static constexpr int MAX_RECONNECT_ATTEMPTS
QPointer< QTimer > _reconnectTimer
void _serviceDiscoveryTimeout()
virtual void onServiceDiscoveryTimeout()=0
std::atomic< int > _reconnectAttempts
static BluetoothWorker * create(const BluetoothConfiguration *config, QObject *parent=nullptr)
std::atomic< bool > _connected
const QBluetoothDeviceInfo _device
~BluetoothWorker() override
virtual void onDisconnectLink()=0
std::atomic< bool > _intentionalDisconnect
static constexpr int RECONNECT_BASE_INTERVAL_MS
static constexpr int SERVICE_DISCOVERY_TIMEOUT_MS