EnergySpectrumAnalyer/src/EnergyScaleDataModel.h

37 lines
1.1 KiB
C
Raw Normal View History

#ifndef ENERGYSCALEDATAMODEL_H
#define ENERGYSCALEDATAMODEL_H
#include <QString>
#include <QVariantMap>
class EnergyScaleDataModel
{
public:
EnergyScaleDataModel(const QString& filename = QString());
~EnergyScaleDataModel();
void SetDataFilename(const QString& filename);
bool LoadData();
bool SaveData();
bool IsValid();
void SetEnergyFitDegree(const QString& channel_name, int fit_degree);
int GetEnergyFitDegree(const QString& channel_name);
void SetEnergyFitResultCoeffs(const QString& channel_name, std::vector<double> coeffs);
std::vector<double> GetEnergyFitResultCoeffs(const QString& channel_name);
void SetFwhmFitResultCoeffs(const QString& channel_name, std::vector<double> coeffs);
std::vector<double> GetFwhmFitResultCoeffs(const QString& channel_name);
void SetFitData(const QString& channel_name, const std::vector<std::vector<double> >& fit_data);
std::vector<std::vector<double> > GetFitData(const QString& channel_name);
private:
QString _data_filename;
QVariantMap _energy_scale_data_map;
};
#endif // ENERGYSCALEDATAMODEL_H