59 lines
1.6 KiB
C++
59 lines
1.6 KiB
C++
#ifndef MEASUREANALYSISVIEW_H
|
|
#define MEASUREANALYSISVIEW_H
|
|
|
|
#include <QDataStream>
|
|
#include <QList>
|
|
#include <QMap>
|
|
#include <QVariantMap>
|
|
#include <QWidget>
|
|
|
|
enum class MeasureAnalysisViewType {
|
|
None,
|
|
DataTable,
|
|
CountSpectrum,
|
|
CoincidenceEnergySpectrum3D,
|
|
CountingRate,
|
|
EnergyPeakFit,
|
|
NuclideAnalysis,
|
|
ParticleInTime,
|
|
ParticleTimeDiff,
|
|
CoincidenceEventTime,
|
|
CoincidenceEnergySpectrum,
|
|
AntiCoincidenceSpectrum
|
|
};
|
|
|
|
class MeasureAnalysisView : public QWidget {
|
|
Q_OBJECT
|
|
public:
|
|
|
|
static MeasureAnalysisView* NewAnalyzeView(const QString& view_type_text);
|
|
static const QString& GetAnalyzeViewTypeText(MeasureAnalysisViewType type);
|
|
private:
|
|
static QMap<QString, MeasureAnalysisViewType> _s_analyze_view_type_list;
|
|
|
|
public:
|
|
explicit MeasureAnalysisView(QWidget* parent = nullptr);
|
|
|
|
MeasureAnalysisViewType GetAnalyzeViewType();
|
|
const QString& GetAnalyzeViewTypeText() const;
|
|
void SetViewName(const QString& name);
|
|
void SetViewDescription(const QString& description);
|
|
const QString& GetViewName() const;
|
|
const QString& GetViewDescription() const;
|
|
virtual void SetAnalyzeDataFilename(const QMap<QString, QVariant>& data_files_set) = 0;
|
|
|
|
protected:
|
|
void setAnalyzeViewType(MeasureAnalysisViewType type);
|
|
|
|
private:
|
|
MeasureAnalysisViewType _view_type;
|
|
QString _name;
|
|
QString _description;
|
|
|
|
public:
|
|
friend QDataStream& operator<<(QDataStream& out, const MeasureAnalysisView& view);
|
|
friend QDataStream& operator>>(QDataStream& in, MeasureAnalysisView& view);
|
|
};
|
|
|
|
#endif // MEASUREANALYSISVIEW_H
|