77 lines
3.4 KiB
C++
77 lines
3.4 KiB
C++
#ifndef BLUETOOTH1D801_H
|
||
#define BLUETOOTH1D801_H
|
||
|
||
#include <QObject>
|
||
#include <QListWidget>
|
||
#include <QDebug>
|
||
|
||
#include <QBluetoothDeviceDiscoveryAgent>
|
||
#include <QBluetoothServiceDiscoveryAgent>
|
||
#include <QBluetoothDeviceInfo>
|
||
#include <QBluetoothSocket>
|
||
#include <QBluetoothLocalDevice>
|
||
|
||
|
||
#include <QtCore/qmetaobject.h>
|
||
#include <QLatin1StringView>
|
||
|
||
|
||
|
||
///прописать статус
|
||
/// перечисление статусов
|
||
/// сигнал статусИзменен
|
||
|
||
|
||
class Bluetooth1d801 : public QObject
|
||
{
|
||
|
||
Q_OBJECT
|
||
|
||
public:
|
||
explicit Bluetooth1d801(QObject *parent = nullptr); // туду сюда вкорячить из конструктора мэйна
|
||
~Bluetooth1d801(); // туду сделать деструктор. Мы же не быдлокодеры!!!
|
||
|
||
public slots:
|
||
void startDiscovery(); //запускаем bluetooth поиск
|
||
void stopDiscovery(); //прерываем его
|
||
void connectTo(QListWidgetItem *item); // подключится к сервису
|
||
|
||
//команды для модуля в первородном виде
|
||
void GetParam(); //получить параметры измерения
|
||
void SetParam(); // запись параметров измерения
|
||
void GetMeas(); //Чтение измеренных значений
|
||
void GetWave(); //Чтение временного сигнала виброускорения /виброскорости /виброперемещения
|
||
void GetSpectrum();//Чтение спектра виброускорения /виброскорости /виброперемещения
|
||
void GetStatus();//Cтатус прибора
|
||
void SetTime();//Синхронизация часов
|
||
void GetSpectrumEnv(); //Чтение спектра огибающей виброускорения
|
||
void GetWaveEnv();//Чтение сигнала огибающей виброускорения
|
||
|
||
private slots:
|
||
void serviceDiscovered(const QBluetoothServiceInfo &serviceInfo); //отрабатываю сигнал обнаруженного сервиса
|
||
void readSocket(); //отработка сигнала прибывших данных
|
||
void connected(); // отработка подключения
|
||
void onSocketErrorOccurred(QBluetoothSocket::SocketError error);//отработка ошибки
|
||
void discoveryFinished();
|
||
|
||
|
||
signals:
|
||
void discoveryResult(QListWidgetItem *res_p); //возвращаем обнаруженные сервисы
|
||
//void MainWindow::addDiscoveryResult(QListWidgetItem *res_p)
|
||
//ui->listWidgetDevice->addItem(res_p);
|
||
void rawDataRecived(QByteArray); // прилетели какие то данные!
|
||
void disconnected(); // отключилось устройство
|
||
void socketErrorOccurred(const QString &errorString);
|
||
void connected(const QString &name); // отработка подключения
|
||
|
||
|
||
private:
|
||
QBluetoothSocket *socket = nullptr; // объект сокета для порта
|
||
QBluetoothLocalDevice localDevice; // обьект локального устройства
|
||
QString localDeviceName; // имя свистка
|
||
QMap<QListWidgetItem *, QBluetoothServiceInfo> discoveredServices; // обнаруженные сервисы
|
||
QBluetoothServiceDiscoveryAgent *discoveryAgent;
|
||
};
|
||
|
||
#endif // BLUETOOTH1D801_H
|