添加GVF数据处理线程
This commit is contained in:
parent
64e0113290
commit
738f07624c
|
|
@ -6,11 +6,13 @@
|
|||
#include <QJsonDocument>
|
||||
#include <QJsonObject>
|
||||
#include <QDataStream>
|
||||
#include <QSqlDatabase>
|
||||
#include "SyncGvfFileDataTask.h"
|
||||
|
||||
|
||||
RequstDataProcesser::RequstDataProcesser(QObject *parent)
|
||||
: QTcpSocket{parent}
|
||||
{}
|
||||
{
|
||||
}
|
||||
|
||||
void RequstDataProcesser::OnReplayClient(const QByteArray& replay_data)
|
||||
{
|
||||
|
|
@ -114,17 +116,30 @@ void RequstDataProcesser::processStartMeasureCmd(const QString& device_guid, con
|
|||
replay_info = QStringLiteral(u"测量数据GVF文件未找到");
|
||||
} else {
|
||||
replay_info = measure_data_gvf_filename;
|
||||
SyncGvfFileDataTask* sync_gvf_data_task = new SyncGvfFileDataTask;
|
||||
connect(sync_gvf_data_task, &SyncGvfFileDataTask::finished, sync_gvf_data_task, &SyncGvfFileDataTask::deleteLater);
|
||||
connect(sync_gvf_data_task, &SyncGvfFileDataTask::syncGvfData, this, &RequstDataProcesser::OnReplayClient);
|
||||
connect(this, &RequstDataProcesser::stopSyncGvfFileDataTask, sync_gvf_data_task, &SyncGvfFileDataTask::OnStop);
|
||||
sync_gvf_data_task->start();
|
||||
}
|
||||
QByteArray replay_data;
|
||||
QDataStream replay_data_stream(&replay_data, QIODevice::Append);
|
||||
replay_data_stream << QString("START") << ok << replay_info;
|
||||
QMetaObject::invokeMethod(this, "OnReplayClient", Qt::QueuedConnection, Q_ARG(QByteArray, replay_data));
|
||||
}
|
||||
|
||||
SyncGvfFileDataTask* sync_gvf_data_task = new SyncGvfFileDataTask;
|
||||
connect(sync_gvf_data_task, &SyncGvfFileDataTask::finished, sync_gvf_data_task, &SyncGvfFileDataTask::deleteLater, Qt::DirectConnection);
|
||||
connect(sync_gvf_data_task, &SyncGvfFileDataTask::syncGvfData, this, &RequstDataProcesser::OnReplayClient, Qt::QueuedConnection);
|
||||
connect(this, &RequstDataProcesser::stopSyncGvfFileDataTask, sync_gvf_data_task, &SyncGvfFileDataTask::OnStop, Qt::DirectConnection);
|
||||
sync_gvf_data_task->start();
|
||||
}
|
||||
|
||||
void RequstDataProcesser::processStopMeasureCmd(const QString& device_guid)
|
||||
{
|
||||
MeasureDeviceController::Instance()->StopMeasure(device_guid);
|
||||
emit stopSyncGvfFileDataTask();
|
||||
|
||||
QByteArray replay_data;
|
||||
QDataStream replay_data_stream(&replay_data, QIODevice::Append);
|
||||
replay_data_stream << QString("STOP") << true << QStringLiteral(u"停止测量完成");
|
||||
|
|
|
|||
|
|
@ -15,6 +15,9 @@ public:
|
|||
public slots:
|
||||
void OnReplayClient(const QByteArray& replay_data);
|
||||
|
||||
signals:
|
||||
void stopSyncGvfFileDataTask();
|
||||
|
||||
private:
|
||||
void processStartMeasureCmd(const QString& device_guid, const QString& cmd_data);
|
||||
void processStopMeasureCmd(const QString& device_guid);
|
||||
|
|
|
|||
|
|
@ -23,13 +23,15 @@ SOURCES += \
|
|||
$${PWD}/MeasureServer.cpp \
|
||||
$${PWD}/main.cpp \
|
||||
$${PWD}/MeasureDeviceController.cpp \
|
||||
$${PWD}/RequstDataProcesser.cpp
|
||||
$${PWD}/RequstDataProcesser.cpp \
|
||||
SyncGvfFileDataTask.cpp
|
||||
|
||||
HEADERS += \
|
||||
$${PWD}/MeasureServer.h \
|
||||
$${PWD}/MeasureDeviceController.h \
|
||||
$${PWD}/MeasureServiceProtocol.h \
|
||||
$${PWD}/RequstDataProcesser.h
|
||||
$${PWD}/RequstDataProcesser.h \
|
||||
SyncGvfFileDataTask.h
|
||||
|
||||
|
||||
DEFINES += ENABLE_DEBUG
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user