37 lines
862 B
C++
37 lines
862 B
C++
#pragma once
|
||
#include <QObject>
|
||
#include <QString>
|
||
#include "motorParams.h"
|
||
|
||
namespace MotorParams {
|
||
|
||
struct TCPConnectionParams
|
||
{
|
||
QString serverIP;
|
||
int port;
|
||
};
|
||
class CommunicationInterfaceBase :public QObject
|
||
{
|
||
Q_OBJECT
|
||
public:
|
||
CommunicationInterfaceBase(QObject* parent = nullptr);
|
||
~CommunicationInterfaceBase();
|
||
|
||
virtual bool connect2Motor() = 0;
|
||
//virtual void disconnect() = 0;
|
||
//virtual bool isConnected() const = 0;
|
||
|
||
virtual int sendCommand(const QString command) = 0;
|
||
//virtual void sendCommandAsync(const QString& command) = 0;
|
||
virtual int recvData(QByteArray& dataRecv) = 0;
|
||
|
||
signals:
|
||
void dataReceived(const QByteArray& data);
|
||
|
||
void connected(); // 不管串口还是TCP,都会发这个信号
|
||
void disconnected();
|
||
void errorOccurred(QString msg);
|
||
};
|
||
|
||
} // namespace MotorParams
|