#ifndef REPLAY_H #define REPLAY_H #include #include "QThread" #include "QMutex" #include "QMessageBox" #include "QDebug" #include "QFile" #include "replay.h" #include "QDataStream" #include "mavlink.h" #include #include "QByteArray" #include #include "ThreadTemplet.h" #ifdef QtMavlinkNode #include class MAVLINKNODESHARED_EXPORT Replay : public ThreadTemplet { #else class Replay : public ThreadTemplet { #endif Q_OBJECT public: explicit Replay(QObject *parent = nullptr); ~Replay(); QByteArray readAll(void); signals: void readReady(); void currentPercentage(float vlaue); void replayComplete(); public slots: //线程对外接口 //对外接口 void setLogfile(const QString name,float percent = 0); void setPercentage(float value); void startReplay(bool flag); void setMultiple(double value); private slots: //线程私有接口 void process(); protected: QString logFile; QFile *file = nullptr; float percentage = 0.5; int position = 0; bool ispause = true;//控制暂停 bool isplaying = false;//控制开始和结束 QByteArray buff; double multiple = 1; }; #endif // MAVLINKNODE_H