53 lines
1.5 KiB
C++
Executable File
53 lines
1.5 KiB
C++
Executable File
#pragma once
|
|
|
|
#include "lts_serial_port_querry_export.h"
|
|
#include "lts_seri"
|
|
#include <QObject>
|
|
#include <QtSerialPort/QtSerialPort>
|
|
#include <QtSerialPort/QSerialPortInfo>
|
|
|
|
|
|
|
|
|
|
namespace LtsSerialPortQuerry
|
|
{
|
|
class LTSSERIALPORTQUERRY_EXPORT LtsSerialPortQuerry : public QObject
|
|
{
|
|
Q_OBJECT
|
|
public:
|
|
explicit LtsSerialPortQuerry(QObject *parent = nullptr);
|
|
|
|
void setSerialPortSettings(const QSerialPort::BaudRate &baudRate,
|
|
const QSerialPort::OpenModeFlag &openModeFlag,
|
|
const QSerialPort::DataBits &dataBits,
|
|
const QSerialPort::FlowControl &flowControll,
|
|
const QSerialPort::Parity &parity,
|
|
const QSerialPort::StopBits &stopBits);
|
|
void continueQuerry();
|
|
void restartQuerry();
|
|
QSerialPort *currentSerialPort();
|
|
|
|
signals:
|
|
void connectionEstablished();
|
|
|
|
private:
|
|
void querrySerialPort(const QSerialPortInfo &info);
|
|
void closeAndDeleteCurrentPort();
|
|
|
|
private:
|
|
void onSerialPortError(QSerialPort::SerialPortError serialPortError);
|
|
|
|
private:
|
|
QList<QSerialPortInfo> m_serialPortInfos;
|
|
int m_currentQuerry;
|
|
QSerialPort::BaudRate m_baudRate;
|
|
QSerialPort::OpenModeFlag m_openModeFlag;
|
|
QSerialPort::DataBits m_dataBits;
|
|
QSerialPort::FlowControl m_flowControll;
|
|
QSerialPort::Parity m_parity;
|
|
QSerialPort::StopBits m_stopBits;
|
|
QSerialPort *m_currentSerialPort;
|
|
};
|
|
|
|
}
|