This repository has been archived on 2026-05-31. You can view files and clone it, but cannot push or open issues or pull requests.
powersync-app/libnymea-app-core/connection/discovery/bluetoothservicediscovery.h
Michael Zanetti 22dd3fe27d intermediate commit.
Working pretty well now. No cleanup done. some broken menu entries related to
connect.

TBC
2019-02-06 03:00:43 +01:00

47 lines
1.1 KiB
C++

#ifndef BLUETOOTHSERVICEDISCOVERY_H
#define BLUETOOTHSERVICEDISCOVERY_H
#include <QObject>
#include <QBluetoothUuid>
#include <QBluetoothLocalDevice>
#include <QBluetoothServiceDiscoveryAgent>
class NymeaHosts;
class BluetoothServiceDiscovery : public QObject
{
Q_OBJECT
public:
explicit BluetoothServiceDiscovery(NymeaHosts *nymeaHosts, QObject *parent = nullptr);
bool discovering() const;
bool available() const;
Q_INVOKABLE void discover();
Q_INVOKABLE void stopDiscovery();
private:
NymeaHosts *m_nymeaHosts = nullptr;
QBluetoothLocalDevice *m_localDevice = nullptr;
QBluetoothServiceDiscoveryAgent *m_serviceDiscovery = nullptr;
QBluetoothUuid m_nymeaServiceUuid;
bool m_enabed = false;
bool m_discovering = false;
bool m_available = false;
void setDiscovering(const bool &discovering);
signals:
void discoveringChanged(bool discovering);
private slots:
void onHostModeChanged(const QBluetoothLocalDevice::HostMode &mode);
void onServiceDiscovered(const QBluetoothServiceInfo &serviceInfo);
void onServiceDiscoveryFinished();
};
#endif // BLUETOOTHSERVICEDISCOVERY_H