#ifndef RECOGNIZESYSTEM_H #define RECOGNIZESYSTEM_H #include #include #include #include #include #include #include #include class UpdateController; class ClientHandler; class RecognizeSystem : public QObject { Q_OBJECT public: RecognizeSystem(QObject *parent = nullptr); void initialize(UpdateController *updateController,DataParser *dataParser, QMutex *globalMutex, SendSystem *sendSystem, ClientHandler *handler); void recognize(); ~RecognizeSystem(); signals: void sigCalculateHash(); void sigSendToLogger(QString string); void sigXmlParser(ClientHandler *clientHandler,QByteArray data); void sigChangeVersion(QString versionName); void sigDeleteVersion(QString versionName); void sigCopyVersion(QString versionName,QString newVersionName,QString author); //void sigRecalculateDocs(); void sigSendDocs_forQtClient(QString docsPath); void signal_updateDocsXML(); private: UpdateController *updateController; SendSystem *sendSystem; DataParser *dataParser; QString command; PacketType packetType; QString filePath; ClientHandler *clientHandler; QMutex *mutex; QMutex *globalMutex; QTcpSocket *socket; QByteArray tmpBlock; qint64 sizeReceiveData; qint64 fileSize; int countSend; void packetTypeInit(PacketType packet,Client *client); bool checkIsChangeable(); }; #endif // RECOGNIZESYSTEM_H