XNSim/XNMonitor/DataCollectionWidget/DataCollectionWidget.h
2025-04-28 12:25:20 +08:00

39 lines
1.2 KiB
C++
Executable File

#pragma once
#include <QWidget>
#include <QSplitter>
#include "DataCollectionThread.h"
#include "../TypeDefine.h"
#include "../XNCustomPlot.h"
class DataCollectionWidget : public QWidget
{
Q_OBJECT
public:
explicit DataCollectionWidget(QWidget *parent = nullptr);
~DataCollectionWidget();
signals:
void stopDataCollection();
public slots:
void onSetCurrentTabIndex(int index);
void onUpdateDataCollectionTime(const unsigned int newTime);
void onDataCollectionStatus(const bool &status, const QString &filePath);
private:
void setupTabDataCollection(); // 设置数据采集标签页的函数声明
void
setupTabDataCollectionLeftPanel(QSplitter *horizontalSplitter); // 设置数据采集左面板的函数声明
void
setupTabDataCollectionRightPanel(QSplitter *horizontalSplitter); // 设置数据采集右面板的函数声明
void openDataCollectionFile(const QString &filePath);
void setupPlotWidget(XNCustomPlot *customPlot);
private:
unsigned int dataPlotIndex; // 数据采集索引
QMap<QString, QVector<double>> collectionData;
QMap<QString, QVector<double>> referenceData;
int currentTabIndex = 0; // 当前选中的标签页索引
QCPItemTracer *m_tracer;
QCPItemText *m_coordLabel;
};