femtoCAM/statsview.h
2025-12-14 01:27:15 +01:00

64 lines
1.2 KiB
C++

#ifndef STATSVIEW_H
#define STATSVIEW_H
#include <QDialog>
#include <QChart>
#include <QChartView>
#include <QLineSeries>
#include <QValueAxis>
#include <QBarSeries>
#include <QBarSet>
#include <QBarCategoryAxis>
#include <opencv4/opencv2/opencv.hpp>
using namespace QtCharts;
namespace Ui {
class StatsView;
}
class CountChart : public QObject
{
Q_OBJECT
public:
CountChart(QChartView* view);
private:
QChartView* chartView = nullptr;
QValueAxis axisX{};
QValueAxis axisY{};
QLineSeries series{};
};
class BarChart : public QObject
{
Q_OBJECT
public:
BarChart(QChartView* view);
private:
QChartView* chartView = nullptr;
QBarCategoryAxis axisX{};
QValueAxis axisY{};
QBarSeries sets{};
quint64 n_since_res = 0;
public slots:
void new_batch_data(quint64 distr[10]);
};
class StatsView : public QDialog
{
Q_OBJECT
public:
explicit StatsView(QWidget *parent = nullptr);
~StatsView();
BarChart *histogramm;
public slots:
void vis_new_batch_view(cv::Mat *img);
void vis_new_avg_view(cv::Mat *img);
private:
Ui::StatsView *ui;
cv::Mat* cur_batch_vis = nullptr;
};
#endif // STATSVIEW_H