123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- #ifndef SMARTLIGHTCOMMTHREAD_H
- #define SMARTLIGHTCOMMTHREAD_H
- #include <QThread>
- #include <QHostAddress>
- #include <QTcpSocket>
- #include <QString>
- #include <QDateTime>
- #include <QStringList>
- #include <QList>
- class SmartLightCommThread : public QThread
- {
- Q_OBJECT
- public:
- explicit SmartLightCommThread(qintptr socketDescriptor, QObject *parent = nullptr);
- ~SmartLightCommThread() override;
- void run() override;
- void close_self(QTcpSocket *so);
- void stop();
- void readData(QTcpSocket *so);
- bool checkDataFrame(QTcpSocket *so, QByteArray dat);
- bool checkDataBody(QTcpSocket *so, QByteArray body);
- QByteArray mkDataFrame(QByteArray body);
- quint16 chk_crcc(QByteArray buff, int len);
- void confirm_report(QTcpSocket *so);
- void check_idx();
- float get_repValue(int type, QByteArray dat);
- QString deviceID();
- void mk_EventList_qry(QString deviceId, quint8 type, quint8 cur, quint8 num);
- void mk_hisData_qry(QString deviceId, quint16 f_pno, quint16 f_fno, QDateTime t1, QDateTime t2, quint8 sep, quint8 num);
- int get_fp_byte(int num);
- signals:
- void CommData(QString deviceid, int dir, QString data);
- void getEAlarm(QString DeviceCode, int erc, int sta, int arg1, int arg2, int arg3, float value, float v2, QString others, QDateTime t);
- void getEAnalogValue(QString DeviceCode, int point, float ave, float rtv, QDateTime t, float maxv, QDateTime maxt, float minv, QDateTime mint);
- void getERealtimeValue(QString DeviceCode, int point, float rtv, QDateTime t);
- void getNewDev(QString DeviceCode);
- public slots:
- private:
- qintptr SocketDescriptor;
- bool keepcomm;
- bool WaitEcho;
- quint16 WaitCount;
- qint16 DevType;
- int err_count;
- QString DeviceID;
- int ErrorCount[2];
- int WirelessSignal;
- int idx;
- QList<QByteArray> CmdList;
- };
- #endif // SMARTLIGHTCOMMTHREAD_H
|