interfacethread.h 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. #ifndef INTERFACETHREAD_H
  2. #define INTERFACETHREAD_H
  3. #include <QThread>
  4. #include <QHostAddress>
  5. #include <QTcpSocket>
  6. #include <QString>
  7. #include <QDateTime>
  8. #include <QJsonDocument>
  9. #include <QJsonObject>
  10. #include <QJsonArray>
  11. #include <QJsonValue>
  12. #include <QVariant>
  13. #include <QJsonParseError>
  14. #include <QStringList>
  15. #include <QList>
  16. #include <QObject>
  17. #include <QUuid>
  18. #include <QRegExp>
  19. class InterfaceThread : public QThread
  20. {
  21. Q_OBJECT
  22. public:
  23. explicit InterfaceThread(qintptr socketDescriptor, QObject *parent = nullptr);
  24. ~InterfaceThread() override;
  25. void run() override;
  26. void setEchoString(QString string);
  27. bool chkCmdID(QString id);
  28. QString cmdID(){
  29. return CmdId;
  30. }
  31. signals://根据与平台的协议格式制定
  32. void resetRequest(QString deviceID, int commandType, int parameterType, int pseq);
  33. void requestRealTimeData(QString deviceID, int commandType, int parameterType, int pn, int queryNumber, int startPoint);
  34. void requestSetParameters(QString deviceID, int commandType, int parameterType, QString tmp);
  35. void CommData(QString deviceID, int dir, QString data);
  36. public slots:
  37. private:
  38. qintptr SocketDescriptor;
  39. QString CmdId, EchoString;
  40. bool waitEcho;
  41. bool getEcho;
  42. };
  43. #endif // INTERFACETHREAD_H