修改符合数据事件ID问题
This commit is contained in:
parent
5d8caba6f0
commit
c039e9bf61
|
|
@ -499,17 +499,17 @@ bool CoincidenceEventAnalysisTask::processTask()
|
||||||
project_dir.mkpath(coincidence_data_dir_name);
|
project_dir.mkpath(coincidence_data_dir_name);
|
||||||
const QString& coincidence_data_dir_path = project_dir.filePath(coincidence_data_dir_name);
|
const QString& coincidence_data_dir_path = project_dir.filePath(coincidence_data_dir_name);
|
||||||
QMap<int, std::shared_ptr<std::ofstream> > coincidence_data_out_stream_map;
|
QMap<int, std::shared_ptr<std::ofstream> > coincidence_data_out_stream_map;
|
||||||
|
unsigned long long event_id = 0;
|
||||||
for (const CoincidenceEvent& event : events) {
|
for (const CoincidenceEvent& event : events) {
|
||||||
|
++ event_id;
|
||||||
const QString& event_data_filename = QDir(coincidence_data_dir_path).filePath(QStringLiteral(u"[%1ns]%2个粒子符合事件[未刻度].csv").arg(project_model->GetConformTimeWin()).arg(event.coincidence_order));
|
const QString& event_data_filename = QDir(coincidence_data_dir_path).filePath(QStringLiteral(u"[%1ns]%2个粒子符合事件[未刻度].csv").arg(project_model->GetConformTimeWin()).arg(event.coincidence_order));
|
||||||
if ( !coincidence_data_out_stream_map.contains(event.coincidence_order) ) {
|
if ( !coincidence_data_out_stream_map.contains(event.coincidence_order) ) {
|
||||||
std::shared_ptr<std::ofstream> out_stream(new std::ofstream(QStrToSysPath(event_data_filename)));
|
std::shared_ptr<std::ofstream> out_stream(new std::ofstream(QStrToSysPath(event_data_filename)));
|
||||||
*out_stream << event_id_str << "," << board_id_str << "," << channel_id_str << "," << addr_str << "," << time_str << std::endl;
|
*out_stream << event_id_str << "," << board_id_str << "," << channel_id_str << "," << addr_str << "," << time_str << std::endl;
|
||||||
coincidence_data_out_stream_map[event.coincidence_order] = out_stream;
|
coincidence_data_out_stream_map[event.coincidence_order] = out_stream;
|
||||||
}
|
}
|
||||||
unsigned long long event_id = 0;
|
|
||||||
std::shared_ptr<std::ofstream> out_stream = coincidence_data_out_stream_map[event.coincidence_order];
|
std::shared_ptr<std::ofstream> out_stream = coincidence_data_out_stream_map[event.coincidence_order];
|
||||||
for (const SpectrumData& data_item : event.events) {
|
for (const SpectrumData& data_item : event.events) {
|
||||||
++ event_id;
|
|
||||||
*out_stream << event_id << "," << data_item.board_id << "," << data_item.channel_id << "," << data_item.energy << "," << data_item.timestamp << std::endl;
|
*out_stream << event_id << "," << data_item.board_id << "," << data_item.channel_id << "," << data_item.energy << "," << data_item.timestamp << std::endl;
|
||||||
}
|
}
|
||||||
project_model->SetTimeWinConformParticleData(project_model->GetConformTimeWin(), event.coincidence_order, event_data_filename);
|
project_model->SetTimeWinConformParticleData(project_model->GetConformTimeWin(), event.coincidence_order, event_data_filename);
|
||||||
|
|
|
||||||
|
|
@ -1,14 +1,18 @@
|
||||||
#include "MeasureAnalysisHistoryForm.h"
|
#include "MeasureAnalysisHistoryForm.h"
|
||||||
|
#include "MeasureAnalysisProjectModel.h"
|
||||||
#include "ui_MeasureAnalysisHistoryForm.h"
|
#include "ui_MeasureAnalysisHistoryForm.h"
|
||||||
|
#include <QDebug>
|
||||||
|
#include <QDir>
|
||||||
|
|
||||||
MeasureAnalysisHistoryForm::MeasureAnalysisHistoryForm(QWidget *parent)
|
MeasureAnalysisHistoryForm::MeasureAnalysisHistoryForm(QWidget* parent)
|
||||||
: QWidget(parent)
|
: QWidget(parent)
|
||||||
, ui(new Ui::MeasureAnalysisHistoryForm)
|
, ui(new Ui::MeasureAnalysisHistoryForm)
|
||||||
{
|
{
|
||||||
ui->setupUi(this);
|
ui->setupUi(this);
|
||||||
connect(ui->btn_query, &QPushButton::clicked, [this](){
|
connect(ui->btn_query, &QPushButton::clicked, [this]() {
|
||||||
queryHistory();
|
queryHistory();
|
||||||
});
|
});
|
||||||
|
loadHistoryInfo();
|
||||||
}
|
}
|
||||||
|
|
||||||
MeasureAnalysisHistoryForm::~MeasureAnalysisHistoryForm()
|
MeasureAnalysisHistoryForm::~MeasureAnalysisHistoryForm()
|
||||||
|
|
@ -18,11 +22,59 @@ MeasureAnalysisHistoryForm::~MeasureAnalysisHistoryForm()
|
||||||
|
|
||||||
void MeasureAnalysisHistoryForm::loadHistoryInfo()
|
void MeasureAnalysisHistoryForm::loadHistoryInfo()
|
||||||
{
|
{
|
||||||
|
auto row_count = ui->tablew_history->rowCount();
|
||||||
|
for (int row = row_count - 1; row >= 0; --row) {
|
||||||
|
QPushButton* btn_remove_row = dynamic_cast<QPushButton*>(ui->tablew_history->cellWidget(row, 8));
|
||||||
|
if (btn_remove_row) {
|
||||||
|
ui->tablew_history->removeRow(row);
|
||||||
|
btn_remove_row->deleteLater();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 遍历可执行文件目录下Projects目录下的所有文件夹,找出所有项目文件夹下的.msproject文件
|
||||||
|
QDir projects_dir(QDir(qApp->applicationDirPath()).filePath("Projects"));
|
||||||
|
if (!projects_dir.exists()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
QList<QString> project_dirs = projects_dir.entryList(QDir::Dirs | QDir::NoDotAndDotDot);
|
||||||
|
for (const QString& project_dir : project_dirs) {
|
||||||
|
QDir project_dir_path(projects_dir.path() + "/" + project_dir);
|
||||||
|
if (project_dir_path.exists()) {
|
||||||
|
QList<QString> msproject_files = project_dir_path.entryList(QStringList({ "*.msproject" }));
|
||||||
|
if (msproject_files.isEmpty()) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
const QString& project_filename = project_dir_path.filePath(msproject_files.first());
|
||||||
|
qDebug() << project_filename;
|
||||||
|
MeasureAnalysisProjectModel project_model;
|
||||||
|
project_model.LoadProjectModel(project_filename);
|
||||||
|
|
||||||
|
// int row = ui->tablew_history->rowCount();
|
||||||
|
// ui->tablew_history->insertRow(row);
|
||||||
|
// ui->tablew_history->setItem(row, 0, new QTableWidgetItem(channel_name));
|
||||||
|
// ui->tablew_history->item(row, 0)->setCheckState(Qt::Unchecked);
|
||||||
|
// ui->tablew_history->setItem(row, 1, new QTableWidgetItem(QString::number(fit_data_item[0])));
|
||||||
|
// ui->tablew_history->setItem(row, 2, new QTableWidgetItem(QString::number(fit_data_item[1])));
|
||||||
|
// ui->tablew_history->setItem(row, 3, new QTableWidgetItem(QString::number(fit_data_item[2])));
|
||||||
|
// ui->tablew_history->setItem(row, 4, new QTableWidgetItem(QString::number(fit_data_item[3])));
|
||||||
|
// ui->tablew_history->setItem(row, 5, new QTableWidgetItem(QString::number(fit_data_item[4])));
|
||||||
|
// ui->tablew_history->setItem(row, 6, new QTableWidgetItem(QString::number(fit_data_item[5])));
|
||||||
|
// ui->tablew_history->setItem(row, 7, new QTableWidgetItem(QString::number(fit_data_item[6])));
|
||||||
|
// QTableWidgetItem* item = new QTableWidgetItem;
|
||||||
|
// ui->tablew_history->setItem(row, 8, item);
|
||||||
|
// QPushButton* btn_remove_row = new QPushButton(QStringLiteral(u"删除"));
|
||||||
|
// btn_remove_row->setMaximumWidth(35);
|
||||||
|
// connect(btn_remove_row, &QPushButton::clicked, [this, channel_name, item, btn_remove_row]() {
|
||||||
|
// item->setCheckState(Qt::Unchecked);
|
||||||
|
// int remove_row = item->row();
|
||||||
|
// ui->tablew_history->removeRow(remove_row);
|
||||||
|
// btn_remove_row->deleteLater();
|
||||||
|
// });
|
||||||
|
// ui->tablew_history->setCellWidget(row, 8, btn_remove_row);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void MeasureAnalysisHistoryForm::queryHistory()
|
void MeasureAnalysisHistoryForm::queryHistory()
|
||||||
{
|
{
|
||||||
const QString& query_text = ui->linedit_query->text();
|
const QString& query_text = ui->linedit_query->text();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user