1D801Desktop/bluetooth1d801.h

77 lines
3.4 KiB
C++
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

#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