From dfeb9f6ca7cdde61e7dde6acfb704f385432411b Mon Sep 17 00:00:00 2001 From: anxinglong <2910824064@qq.com> Date: Wed, 13 May 2026 11:04:24 +0800 Subject: [PATCH] =?UTF-8?q?=E7=AC=A6=E5=90=88=E8=83=BD=E8=B0=B1=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E8=AF=BB=E5=8F=96=E5=85=A8=E9=83=A8=E7=AC=A6=E5=90=88?= =?UTF-8?q?=E7=B2=92=E5=AD=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ConformToTheEnergySpectrum.cpp | 24 ++++++++++++------- .../ConformToTheEnergySpectrum.h | 2 +- 2 files changed, 17 insertions(+), 9 deletions(-) diff --git a/src/ConformToTheEnergySpectrum/ConformToTheEnergySpectrum.cpp b/src/ConformToTheEnergySpectrum/ConformToTheEnergySpectrum.cpp index 05d7367..f9c8630 100644 --- a/src/ConformToTheEnergySpectrum/ConformToTheEnergySpectrum.cpp +++ b/src/ConformToTheEnergySpectrum/ConformToTheEnergySpectrum.cpp @@ -77,10 +77,16 @@ void ConformToTheEnergySpectrum::InitViewWorkspace(const QString &project_name) void ConformToTheEnergySpectrum::SetAnalyzeDataFilename(const QMap &data_files_set) { - const QString& data_filename = data_files_set.first().toString(); - if (!data_filename.isEmpty() && QFileInfo(data_filename).exists()) { - this->_data_filename = data_filename; - this->loadAndProcess(); + _data_filenames.clear(); + for (const QVariant& file_value : data_files_set) { + QString filename = file_value.toString(); + if (!filename.isEmpty() && QFileInfo(filename).exists()) { + _data_filenames.append(filename); + } + } + + if (!_data_filenames.isEmpty()) { + loadAndProcess(); } } @@ -89,11 +95,12 @@ void ConformToTheEnergySpectrum::loadAndProcess() { _busy_indicator->Start(); auto functionToRun = [this]() { - if (_data_filename.isEmpty()) - return; - + if (_data_filenames.isEmpty()) return; std::vector rawData; - io::CSVReader<5> in(QStrToSysPath(_data_filename)); + + for (const QString& filename : _data_filenames) + { + io::CSVReader<5> in(QStrToSysPath(filename)); in.read_header(io::ignore_extra_column, QString(QStringLiteral(u"事件ID")).toStdString(), QString(QStringLiteral(u"板卡号")).toStdString(), @@ -120,6 +127,7 @@ void ConformToTheEnergySpectrum::loadAndProcess() }, Qt::QueuedConnection); return; } + } const int STEP = 1; std::map hist; diff --git a/src/ConformToTheEnergySpectrum/ConformToTheEnergySpectrum.h b/src/ConformToTheEnergySpectrum/ConformToTheEnergySpectrum.h index 4d0f76f..14d9cc2 100644 --- a/src/ConformToTheEnergySpectrum/ConformToTheEnergySpectrum.h +++ b/src/ConformToTheEnergySpectrum/ConformToTheEnergySpectrum.h @@ -32,7 +32,7 @@ private: BusyIndicator* _busy_indicator = nullptr; CustomQwtPlot* _plot = nullptr; QwtPlotCurve* _curve = nullptr; - QString _data_filename; + QStringList _data_filenames; }; #endif // CONFORMTOTHEENERGYSPECTRUM_H